-
Notifications
You must be signed in to change notification settings - Fork 296
[WIP] Add developer-facing documentation (user-facing docs to follow) #1174
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
Conversation
|
|
85b050f to
219582f
Compare
|
Parallelly, some typing stub files (for mypy type checking for example) would also be useful. |
This allows us to properly organize user-facing as well as developer-facing documentation when we add more in the future.
Details can be filled in as needed, but this is a fairly comprehensive list of constants, functions, methods and classes that either can be called or will need to be implemented by plugin developers.
This page only talks about Plover-specific items like the entry point system and integrating with the Plover API, so we offload the general packaging stuff to the official docs.
This is pretty much copied from the existing wiki, with some changes regarding macOS 11 Big Sur, since the pre-built Plover binaries don't currently work on this platform and will have to be built from source. This grouping also allows me to split up the docs into a "quick start" for people who just want to use Plover as-is, and an advanced usage section involving things like plugins and non-English systems.
|
|
||
| ```ini | ||
| [options.entry_points] | ||
| plover.gui_qt.machine_options = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was following this guide, and found that I needed to use this instead:
| plover.gui_qt.machine_options = | |
| plover.gui.qt.machine_option = |
Summary of changes
This pull request adds more developer-oriented documentation to the
doc/directory, primarily consisting of plugin development docs (based on the plugins wiki page) and an API reference (not currently documented). I believe the ideal place for documentation is adjacent to the code it's for, but I'm not sure how y'all feel about docstrings and type annotations directly in the code so I think this is the next best thing.I've set the repository up for Read the Docs (https://readthedocs.org), which provides documentation hosting free of charge for a public repository like this one. The documentation on that site is updated for every commit, so there's no need to worry as much about keeping it updated.
My WIP branch is currently hosted at https://plover.readthedocs.io/ using my personal account, though of course I'd be happy to hand over ownership of the RTD project when this gets merged. Eventually I'd like for it to be hosted at something like https://docs.ploversteno.org/.
In the future, I'd like for this site to contain much of the user-facing documentation that is currently in the wiki as well -- installation instructions, hardware options and setup guides -- but my priority right now is the developer docs since that is currently not as complete.
Pull request checklist