This site has been retired. For up to date information, see handbook.gnome.org or gitlab.gnome.org.


[Home] [TitleIndex] [WordIndex

Documentation Survey

The goal is to understand what our current documentation does and survey what other systems are doing. Additionally, we would like to come up with a set of features to implement and potential design.

Problem Statement

Desired Features

Existing Tools

gtk-doc

Required

Yes

Used by

Gtk, GObject, and major pieces of GNOME platform

Technologies

xslt, docbook, sgml, gtk-doc, markdown, source comments

Translatable

gettext

Intermix docs and API

Yes

Used for user help

No

Cross Referencing

internally, externally with fixrefs helper

Supports Custom HTML/CSS

CSS

Performance Characteristics

Slow, but not the worst

Supports Search

Via devhelp2 keyword index files only, no web search

Requires building project

Yes

Requires running project

Yes

Supports Gtk Features

child properties and style properties


Sphinx

Required

maybe

Used by

Builder, Flatpak, OSTree

Technologies

reStructuredText, Markdown

Translatable

gettext

Intermix docs and API

not natively (gir2rst can help)

Used for user help

yes, does not integrate with Yelp

Cross Referencing

internally, externally by specifying links in rst/markdown

Supports Custom HTML/CSS

HTML with themes, CSS via themes or overrides

Performance Characteristics

Very slow as number of files rise

Supports Search

Yes, including web-based without custom server software

Requires building project

Not necessarily, but if using .in files or source parsing or gir integration

Requires running project

No

Supports Gtk Features

No


Mallard

Required

Yes

Used by

Most GNOME applications (user help), Howto guides, admin manuals

Technologies

xslt, mallard

Translatable

gettext

Intermix docs and API

not natively (gir2rst can help)

Used for user help

yes, does not integrate with Yelp

Cross Referencing

internally

Supports Custom HTML/CSS

??

Performance Characteristics

Relatively fast

Supports Search

Yes, but only from Yelp (no online search)

Requires building project

No, but possibly for .in files or gettext and installation

Requires running project

No

Supports Gtk Features

-


PyGObject GI Docs

See https://lazka.github.io/pgi-docs/

Required

No

Used by

Python application developers for API reference

Technologies

rst, sphinx, python, pygobject

Translatable

No

Intermix docs and API

No

Used for user help

No

Cross Referencing

Within single hosted website. Externally through intersphinx

Supports Custom HTML/CSS

Yes

Performance Characteristics

Very slow

Supports Search

Yes, similar to sphinx above

Requires building project

Yes

Requires running project

Yes

Supports Gtk Features

child properties and style properties


Valadoc

See https://valadoc.org/

Required

No

Used by

Vala application developers for library API reference

Technologies

??

Translatable

No

Intermix docs and API

Only description overview

Used for user help

No

Cross Referencing

Within single hosted website

Supports Custom HTML/CSS

??

Performance Characteristics

?? (run a build to verify)

Supports Search

Yes (but slow)

Requires building project

Yes (usually)

Requires running project

??

Supports Gtk Features

No


Proposed Solution


2024-10-23 11:02