You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdebase/khelpcenter
Timothy Pearson 687b1460b9
Fix rare incorrect section display on load request when khelpcenter instance already running
10 years ago
..
htmlsearch Fix remaining missing semicolons at end of Keywords strings 10 years ago
pics
plugins Fix accidental duplication of text-x- in new mime icon strings 10 years ago
searchhandlers Add cmake rule to find htsearch binary 11 years ago
CMakeLists.txt
COPYING
DESIGN
Help.desktop Fix ServiceTypes, ExcludeServiceTypes, and DocPath desktop file entries to match XDG specifications 10 years ago
Makefile.am
README.htdig
README.metadata
application.cpp Fix khelpcenter service group entry appearing when no child service items have documentation 10 years ago
application.h
configure.in.in
docentry.cpp Read from X-DocPath only 10 years ago
docentry.h
docentrytraverser.cpp
docentrytraverser.h
docmetainfo.cpp
docmetainfo.h
fontdialog.cpp
fontdialog.h
formatter.cpp Change message "Main template file name is empty." from warning to 10 years ago
formatter.h
glossary.cpp
glossary.h
glossary.html.in
glossary.xslt
history.cpp
history.h
htmlsearch.cpp
htmlsearch.h
htmlsearchconfig.cpp
htmlsearchconfig.h
index.html.in
infotree.cpp
infotree.h
intro.html.in
kcmhelpcenter.cpp
kcmhelpcenter.desktop Fix remaining missing semicolons at end of Keywords strings 10 years ago
kcmhelpcenter.h
khc_indexbuilder.cpp
khc_indexbuilder.h
khelpcenter.desktop Fix ServiceTypes, ExcludeServiceTypes, and DocPath desktop file entries to match XDG specifications 10 years ago
khelpcenter.kcfg
khelpcenterui.rc
mainwindow.cpp Fix rare incorrect section display on load request when khelpcenter instance already running 10 years ago
mainwindow.h
navigator.cpp Bring most mimetypes in line with XDG specifications. The following are not fully verified in source as of this commit due to ubiquity: html, empty, info, make, man, misc, source, unknown 10 years ago
navigator.h
navigatorappitem.cpp Read from X-DocPath only 10 years ago
navigatorappitem.h Sort non-root entries in KHelpCenter 10 years ago
navigatoritem.cpp Sort non-root entries in KHelpCenter 10 years ago
navigatoritem.h Sort non-root entries in KHelpCenter 10 years ago
plugintraverser.cpp
plugintraverser.h
prefs.kcfgc
scopeitem.h
scrollkeepertreebuilder.cpp Bring most mimetypes in line with XDG specifications. The following are not fully verified in source as of this commit due to ubiquity: html, empty, info, make, man, misc, source, unknown 10 years ago
scrollkeepertreebuilder.h
searchengine.cpp
searchengine.h
searchhandler.cpp
searchhandler.h
searchwidget.cpp
searchwidget.h
table-of-contents.xslt
testmetainfo.cpp
toc.cpp Bring most mimetypes in line with XDG specifications. The following are not fully verified in source as of this commit due to ubiquity: html, empty, info, make, man, misc, source, unknown 10 years ago
toc.h
treebuilder.cpp
treebuilder.h
version.h
view.cpp Rebranding: TDE Control Center --> Trinity Control Center 10 years ago
view.h

README.metadata

KHelpCenter documentation meta data structure
=============================================

KHelpCenter uses meta data files which describe the documentation available in
the system. Each document is represented by a meta data file and shown as an
entry in the KHelpCenter navigation tree view. The meta data contains
information about title and short description of the document, the location of
the document and some more information like how to search the document and
translations of title and description. Document hierarchy is represented as
hierarchy of the meta data files. Directories are also described by a meta data
file which contains the same information as a document meta data file.

Format of the meta data files
-----------------------------

The meta files adhere to the Desktop Entry Standard
(http://www.freedesktop.org/Standards/desktop-entry-spec). Documentation
specific extensions are covered by an own namespace using the prefix "X-DOC-".
The following table describes all keys which are currently used by
KHelpCenter:

Key                         Value     Description

Name                        string    Title of document
Name[xx]                    string    Translated title for language xx
Comment                     string    Short description of document
Comment[xx]                 string    Translated short description for
                                      Language xx
Icon                        string    Name of icon for document
DocPath                     URI       Location of document. In addition to the
                                      standard URI schemes like http: and file:
                                      all schemes which are supported through
                                      tdeioslaves can be used. In particular the
                                      following non-standard URI schemes are
                                      supported:
                                      help:  KDE manual identified by app name
                                      ghelp: GNOME manual identified by app name
                                      man:   man page
                                      info:  info page
                                      cgi:   output of CGI script
DocPath[xx]                 URI       Language specific location for
                                      language xx
Lang                        langcode  Language of document
X-DOC-Identifier            string    Unique identifier for document, if this
                                      entry is not present the base name of the
                                      file is used as identifier
X-DOC-Indexer               command   Command used for creating a search index
                                      for the document.
                                      The following symbols are replaced by the
                                      corresponding values:
                                      %f - Filename
X-DOC-IndexTestFile         filename  Name of file whose existence indicates
                                      the existence of a usable search index
X-DOC-Search                command   Command used for searching, the output
                                      of the command should be HTML which is
                                      shown in KHelpCenter.
                                      The following symbols in the command are
                                      replaced by the corresponding values:
                                      %k - Words to be searched for
                                      %n - Maximum number of results
                                      %m - Method for combining search words,
                                           can be 'and' or 'or'
                                      %l - Language of documents to be searched
                                      %s - Scope of search. This is a list of
                                           identifiers as given by the
                                           X-DOC-Identifier entry or the bas
                                           name of the desktop file if not
                                           present.
X-DOC-SearchMethod          string    If this entry is 'htdig' htdig is used to
                                      index and search the document. The
                                      Indexer, IndexTestFile and Search entries
                                      aren't required in this case.
X-DOC-SearchEnabledDefault  bool      If set to 'true' the document is searched
                                      by default, if set to 'false' it is not.
                                      This setting is overridden by user
                                      selected search scopes.
X-DOC-Weight                int       A number indicating the position of the
                                      document within the list of siblings. A
                                      greater weight indicates that the document
                                      is 'heavier', thus shown below 'lighter'
                                      documents. The default weight is 0.
X-TDE-KHelpcenter           string    If this entry is set to one of the
                                      following values a set of documents
                                      generated by other means than desktop file
                                      meta info is inserted at the place
                                      specified by the desktop file:
                                      'apps'         manuals of applications
                                                     from the start menu
                                      'scrollkeeper' scrollkeeper docs
                                      'applets'      panel applet docs
                                      'kcontrol'     kcontrol module docs
                                      'konqueror'    konqueror plugin docs
                                      'tdeioslave'     tdeioslave docs
                                      'info'         info pages
X-DOC-DocumentType          string    Type of document. The type is used to look
                                      up corresponding search handlers.
                                      
Meta File Location
------------------

A list of directories given by the config entry "MetaInfoDirs" in the "General"
group of the help center configuration file "khelpcenterrc" (at
$TDEDIRS/share/config) is scanned for desktop files. They are merged to a common
hierarchy. If the "MetaInfoDirs" entry is empty the directory at
$TDEDIRS/share/apps/khelpcenter/plugins is used.

Document Hierarchy
------------------

The hierarchy of the documents shown in the help center is reflected by the
hierarchy of the desktop files in the filesystem. Directories can have an
associated desktop file with the name ".directory". It can contain all the
keys described above.

Language handling
-----------------

In addition to translation of meta information like title and short description
of documents which is contained in the meta file, translations of whole
documents are handled. Each translation of a document has an own desktop file.
The language of the document is indicated by adding the language code as
additional suffix to the the filename of the desktop file. The language suffix
is added before the ".desktop" suffix (Example: 'apache.de.desktop' would be the
file name for the german translation of the apache documentation).

KHelpCenter shows only the documents whose language is contained in the list of
used languages configured for the desktop in the control center. A document
corresponding to a desktop file without language suffix is always shown.