gpgme/lang/python/docs/TODO.org

75 lines
2.7 KiB
Org Mode
Raw Normal View History

#+TITLE: Stuff To Do
* Project Task List
** TODO Documentation default format
:PROPERTIES:
:CUSTOM_ID: todo-docs-default
:END:
Decide on a default file format for documentation. The two main
contenders being Org Mode, the default for the GnuPG Project and
reStructuredText, the default for Python projects. A third option
of DITA XML was considered due to a number of beneficial features
it provides.
The decision was made to use Org Mode in order to fully integrate
with the rest of the GPGME and GnuPG documentation. It is possible
to produce reST versions via Pandoc and DITA XML can be reached
through converting to either Markdown or XHTML first.
** TODO GUI examples
:PROPERTIES:
:CUSTOM_ID: todo-gui-examples
:END:
Create some examples of using Python bindings in a GUI application
to either match or be similar to the old GTK2 examples available
with PyME.
* Project Task Details
** Working examples
:PROPERTIES:
:CUSTOM_ID: working-examples
:END:
The old GUI examples were unable to be retained since they depended
on GTK2 and Python 2's integration with GTK2.
Current GPGME examples so far only include command line tools or
basic Python code for use with either Python 2.7 or Python 3.4 and
above.
Future GUI examples ought to utilise available GUI modules and
libraries supported by Python 3. This may include Qt frameworks,
Tkinter, GTK3 or something else entirely.
** Documentation
:PROPERTIES:
:CUSTOM_ID: documentation
:END:
The legacy documentation which no longer applies to the Python
bindings has been removed.
Current and future documentation will adhere to the GnuPG standard
of using Org Mode and not use the reStructuredText (reST) format
more commonly associated with Python documentation. The reasons
for this are that this project is best served as shipping with the
rest of GPGME and the documentation ought to match that. There are
also aspects of Org Mode's publishing features which are superior
to the defaults of reST, including the capacity to generate fully
validating strict XHTML output.
If reST files are required at a later point for future inclusion
with other Python packages, then that format can be generated from
the .org files with Pandoc before being leveraged by either
Docutils, Sphinx or something else.
While there are some advanced typesetting features of reST which
are not directly available to Org Mode, more often than not those
features are best implemented with either HTML and CSS, with LaTeX
to produce a PDF or via a number of XML solutions. Both reST and
Org Mode have multiple paths by which to achieve all of these.