Skip to content

User Documentation #137

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
romanofski opened this issue Dec 30, 2017 · 7 comments
Closed

User Documentation #137

romanofski opened this issue Dec 30, 2017 · 7 comments
Assignees
Labels
Milestone

Comments

@romanofski
Copy link
Member

Well, for a 1.0 release we also need user facing documentation. Question is, what to we want to provide for our first release:

  • user guide
  • reference

in what format:

  • man page
  • HTML
@romanofski romanofski added this to the 1.0 milestone Dec 30, 2017
@romanofski romanofski added the doc label Jan 14, 2018
@romanofski
Copy link
Member Author

I'm realising, that we might be able to leverage haddock for the reference. Wouldn't we need to put in a reference for all the configuration options we have? In that case, we could possibly use docstrings from haddock for each configuration option to describe what they're for or what they do. That way we can update it easily next to our code, without having the problem that the documentation goes out of sync.

romanofski added a commit that referenced this issue Sep 17, 2019
This adds documentation for most of our functions and the purpose of
those in order to improve general orientation for developers throughout
Purebred.

I made small adjustments to function placements as well as removed dead
code.

The API documentation is by no means complete.

This is related to #137.

Fixes #324
romanofski added a commit that referenced this issue Sep 17, 2019
This adds documentation for most of our functions and the purpose of
those in order to improve general orientation for developers throughout
Purebred.

I made small adjustments to function placements as well as removed dead
code.

The API documentation is by no means complete.

This is related to #137.

Fixes #324
romanofski added a commit that referenced this issue Sep 17, 2019
This adds documentation for most of our functions and the purpose of
those in order to improve general orientation for developers throughout
Purebred.

I made small adjustments to function placements as well as removed dead
code.

The API documentation is by no means complete.

This is related to #137.

Fixes #324
romanofski added a commit that referenced this issue Sep 18, 2019
This adds documentation for most of our functions and the purpose of
those in order to improve general orientation for developers throughout
Purebred.

I made small adjustments to function placements as well as removed dead
code.

The API documentation is by no means complete.

This is related to #137.

Fixes #324
romanofski added a commit that referenced this issue Sep 18, 2019
This adds documentation for most of our functions and the purpose of
those in order to improve general orientation for developers throughout
Purebred.

I made small adjustments to function placements as well as removed dead
code.

The API documentation is by no means complete.

This is related to #137.

Fixes #324
@romanofski
Copy link
Member Author

I think I'm picking this up next. I'll have a look whether we can easily hook this into the UI as well. My current idea would be to:

  • Write the user docs in asciidoc.
  • The reference documentation stays Haddock, but will have to be improved.

What I'm not so sure about, but want to investigate:

  • The sections/chapters(?) of the user documentation can be exported as man pages.
  • Those man pages can be referenced/looked up with an internal dictionary/hashmap to show user docs inside the Purebred UI. Perhaps just using the Brick.suspendAndresumewith man may just do the trick ...

@frasertweedale
Copy link
Member

yeah, running man seems fine to me. Dunno where that would leave Windows users but until someone asks I wouldn't bother :)

@romanofski
Copy link
Member Author

Actually thinking more about this... perhaps there might be a point using a browser for the docs. This could be either a console browser or a firefox or whatever. The benefit of this would be that it's easier to deliver the docs (either offline or online) and we can link to the haddock reference as well.

@frasertweedale
Copy link
Member

Sure, build the docs and publish somewhere, and optionally package them for local installation. Whatever you prefer mate. It's not even either/or TBH. But whatever you want to deliver will be better than what we currently have (nothing!)

@romanofski
Copy link
Member Author

One itch I'd like to scratch is some form of referencing our current configuration. The typical thing which happens with documentation is that the reference basically duplicates what we have in code and therefore renders the documentation less useful.

Haddock is great of providing the base for like developer documentation, but it would be less useful for using it as a user manual. Our target isn't novice users anyways, but it would still be good to provide some form of go to steps for the intermediates who can navigate their way through Haskell.

I wrote this little tool (purebred-dump-config) as a proof of concept which can basically dump our configuration in order to include it in the manual. I've used the show instances to get a feel for how it might work and obviously at the moment it's very verbose. It currently is also included as a source file. I wonder if it could dump more asciidoc compliant markup, so we would know if references are broken when the source file changes.

@romanofski
Copy link
Member Author

Meh.. Looking at what we already have available in our haddock I think pretty printing the config is most likely overkill. Instead what I'll focus on is to use the tool to dump our keybindings similarly to what we have in our help view. In fact I might be able to use (almost) the same code ...

@romanofski romanofski self-assigned this Apr 17, 2020
romanofski added a commit that referenced this issue May 8, 2020
This adds a man page to as (currently a simple) form of user manual.

Fixes #137
romanofski added a commit that referenced this issue May 9, 2020
This adds a man page to as (currently a simple) form of user manual.

Fixes #137
romanofski added a commit that referenced this issue May 9, 2020
This adds a man page to as (currently a simple) form of user manual.

Fixes #137
romanofski added a commit that referenced this issue May 11, 2020
This adds a man page to as (currently a simple) form of user manual.

Fixes #137
romanofski added a commit that referenced this issue May 13, 2020
This adds a man page to as (currently a simple) form of user manual.

Fixes #137
romanofski added a commit that referenced this issue May 15, 2020
This adds a man page to as (currently a simple) form of user manual.

Fixes #137
romanofski added a commit that referenced this issue May 18, 2020
This adds a man page to as (currently a simple) form of user manual.

Fixes #137
romanofski added a commit that referenced this issue Jun 11, 2020
This adds a man page to as (currently a simple) form of user manual.

Fixes #137
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants