diff MoinMoin/config/multiconfig.py @ 3766:6a618481be28

add help texts to configuration items The display macro needs to format them as wiki still, right now the help text is shown 'raw'.
author Johannes Berg <johannes AT sipsolutions DOT net>
date Sun, 22 Jun 2008 12:23:59 +0200
parents 0284379adbc8
children 0b7f7b9226df
line wrap: on
line diff
--- a/MoinMoin/config/multiconfig.py	Sun Jun 22 10:59:17 2008 +0200
+++ b/MoinMoin/config/multiconfig.py	Sun Jun 22 12:23:59 2008 +0200
@@ -636,7 +636,7 @@
         self.value = eval(exprstr)
 options_no_group_name = {
-  'session': ('Session settings', None, (
+  'session': ('Session settings', "Session-related settings, see HelpOnSessions.", (
     ('session_handler', DefaultExpression('session.DefaultSessionHandler()'),
      "See HelpOnSessions."),
     ('session_id_handler', DefaultExpression('session.MoinCookieSessionIDHandler()'),
@@ -651,44 +651,50 @@
   'various': ('Various', None, (
-     'True gives all local users special powers - ONLY use for MMDE style usage!'),
+     "if True, give all local users special powers - ''only use this for a local desktop wiki!''"),
-     None),
+     "Class object hook for implementing security restrictions"),
      ['xmlrpc',  # we do not want wiki admins unknowingly offering xmlrpc service
       'MyPages',  # only works when used with a non-default SecurityPolicy (e.g. autoadmin)
       'CopyPage',  # has questionable behaviour regarding subpages a user can't read, but can copy
-     None),
+     "Exclude unwanted actions (list of strings)"),
-    ('allow_xslt', False, None),
-    ('antispam_master_url', "http://master.moinmo.in/?action=xmlrpc2", None),
-    ('auth', DefaultExpression('[MoinAuth()]'), None),
-    ('auth_methods_trusted', ['http', 'xmlrpc_applytoken'], None),
+    ('allow_xslt', False,
+     "if True, enables XSLT processing via 4Suite (note that this enables anyone with enough know-how to insert '''arbitrary HTML''' into your wiki, which is why it defaults to `False`)"),
+    ('antispam_master_url', "http://master.moinmo.in/?action=xmlrpc2",
+     "where antispam security policy fetches spam pattern updates (if it is enabled)"),
+    ('auth', DefaultExpression('[MoinAuth()]'),
+     "list of auth objects, to be called in this order (see HelpOnAuthentication)"),
+    ('auth_methods_trusted', ['http', 'xmlrpc_applytoken'],
+     'authentication methods for which users should be included in the special "Trusted" ACL group.'),
-    ('bang_meta', True, None),
-    ('caching_formats', ['text_html'], None),
-    ('changed_time_fmt', '%H:%M', None),
+    ('bang_meta', True, 'if True, enable {{{!NoWikiName}}} markup'),
+    ('caching_formats', ['text_html'], "output formats that are cached; set to [] to turn off caching (useful for development)"),
+    ('changed_time_fmt', '%H:%M', "Time format used on Recent``Changes for page edits within the last 24 hours"),
-    ('chart_options', None, None),
+    ('chart_options', None, "If you have gdchart, use something like chart_options = {'width': 720, 'height': 540}"),
     ('config_check_enabled', False, None),
-    ('data_dir', './data/', None),
-    ('data_underlay_dir', './underlay/', None),
-    ('date_fmt', '%Y-%m-%d', None),
-    ('datetime_fmt', '%Y-%m-%d %H:%M:%S', None),
+    ('data_dir', './data/', "Path to the data directory containing your (locally made) wiki pages."),
+    ('data_underlay_dir', './underlay/', "Path to the underlay directory containing distribution system and help pages."),
-    ('default_markup', 'wiki', None),
-    ('docbook_html_dir', r"/usr/share/xml/docbook/stylesheet/nwalsh/html/", None),
+    ('date_fmt', '%Y-%m-%d', "System date format, used mostly in Recent``Changes"),
+    ('datetime_fmt', '%Y-%m-%d %H:%M:%S', 'Default format for dates and times (when the user has no preferences or chose the "default" date format)'),
-    ('edit_bar', ['Edit', 'Comments', 'Discussion', 'Info', 'Subscribe', 'Quicklink', 'Attachments', 'ActionsMenu'], None),
-    ('editor_default', 'text', None),
-    ('editor_force', False, None),
-    ('editor_ui', 'freechoice', None),
+    ('default_markup', 'wiki', 'Default page parser / format (name of module in `MoinMoin.parser`)'),
+    ('docbook_html_dir', r"/usr/share/xml/docbook/stylesheet/nwalsh/html/",
+     'Path to the directory with the Docbook to HTML XSLT files (optional, used by the docbook parser). The default value is correct for Debian Etch.'),
+    ('edit_bar', ['Edit', 'Comments', 'Discussion', 'Info', 'Subscribe', 'Quicklink', 'Attachments', 'ActionsMenu'],
+     'list of edit bar entries'),
+    ('editor_default', 'text', "Editor to use by default, 'text' or 'gui'"),
+    ('editor_force', False, "if True, force using the default editor"),
+    ('editor_ui', 'freechoice', "Editor choice shown on the user interface, 'freechoice' or 'theonepreferred'"),
     ('editor_quickhelp', {
         # editor markup hints quickhelp
         # MUST be in wiki markup, even if the help is not for the wiki parser!
@@ -730,32 +736,35 @@
 (!) For more help, see HelpOnEditing or HelpOnCreoleSyntax.
-    }, None),
-    ('edit_locking', 'warn 10', None),
+    },
+    "Quickhelp provided at the bottom of edit pages.  To customize, specify a dictionary with key matching default_markup (e.g. 'wiki') and give a string value containing wiki markup."),
+    ('edit_locking', 'warn 10', "Editor locking policy: `None`, `'warn <timeout in minutes>'`, or `'lock <timeout in minutes>'`"),
     ('edit_ticketing', True, None),
-    ('edit_rows', 20, None),
+    ('edit_rows', 20, "Default height of the edit box"),
-    ('history_count', (100, 200), None),
+    ('history_count', (100, 200), "number of revisions shown for info/history action (default_count_shown, max_count_shown)"),
-    ('hosts_deny', [], None),
+    ('hosts_deny', [], "List of denied IPs; if an IP ends with a dot, it denies a whole subnet (class A, B or C)"),
-    ('html_head', '', None),
+    ('html_head', '', "Additional <HEAD> tags, see HelpOnThemes."),
     ('html_head_queries', '''<meta name="robots" content="noindex,nofollow">\n''', None),
     ('html_head_posts', '''<meta name="robots" content="noindex,nofollow">\n''', None),
     ('html_head_index', '''<meta name="robots" content="index,follow">\n''', None),
     ('html_head_normal', '''<meta name="robots" content="index,nofollow">\n''', None),
-    ('html_pagetitle', None, None),
-    ('interwikiname', None, None),
-    ('interwiki_preferred', [], None),
+    ('html_pagetitle', None, "Allows you to set a specific HTML page title (if None, it defaults to the value of `sitename`)"),
-    ('language_default', 'en', None),
-    ('language_ignore_browser', False, None),
+    ('interwikiname', None, "InterWiki name (prefix, moniker) of the site, or None"),
+    ('interwiki_preferred', [], "In dialogues, show those wikis at the top of the list."),
-    ('logo_string', None, None),
+    ('language_default', 'en', "Default language for user interface and page content, see HelpOnLanguages."),
+    ('language_ignore_browser', False, "if True, ignore user's browser language settings, see HelpOnLanguages."),
-    ('log_reverse_dns_lookups', True, None),
-    ('log_timing', False, None),
+    ('logo_string', None, "The wiki logo top of page, HTML is allowed (`<img>` is possible as well) [Unicode]"),
+    ('log_reverse_dns_lookups', True,
+     "if True, do a reverse DNS lookup on page SAVE. If your DNS is broken, set this to False to speed up SAVE."),
+    ('log_timing', False,
+     "if True, add timing infos to the log output to analyse load conditions"),
     # some dangerous mimetypes (we don't use "content-disposition: inline" for them when a user
     # downloads such attachments, because the browser might execute e.g. Javascript contained
@@ -765,7 +774,8 @@
-     ], None),
+     ],
+     '"content-disposition: inline" isn\'t used for them when a user downloads such attachments'),
@@ -787,10 +797,12 @@
-     ], None),
+     ],
+     'mimetypes that can be embedded by the [[HelpOnMacros/EmbedObject|EmbedObject macro]]'),
-    ('navi_bar', [u'RecentChanges', u'FindPage', u'HelpContents', ], None),
+    ('navi_bar', [u'RecentChanges', u'FindPage', u'HelpContents', ],
+     'Most important page names. Users can add more names in their quick links in user preferences. To link to URL, use `u"[url link title]"`, to use a shortened name for long page name, use `u"[LongLongPageName title]"`. To use page names with spaces, use `u"[page_name_with_spaces any title]"` [list of Unicode strings]'),
     ('notification_bot_uri', None, None),
@@ -800,32 +812,40 @@
        '<a href="http://moinmo.in/Python" title="MoinMoin is written in Python.">Python Powered</a>',
        '<a href="http://moinmo.in/GPL" title="MoinMoin is GPL licensed.">GPL licensed</a>',
        '<a href="http://validator.w3.org/check?uri=referer" title="Click here to validate this page.">Valid HTML 4.01</a>',
-     ], None),
+     ],
+     'list with html fragments with logos or strings for crediting.'),
     ('page_footer1', '', None),
     ('page_footer2', '', None),
     ('page_header1', '', None),
     ('page_header2', '', None),
-    ('page_front_page', u'HelpOnLanguages', None),
-    ('page_local_spelling_words', u'LocalSpellingWords', None),
+    ('page_front_page', u'HelpOnLanguages',
+     "Name of the front page. We don't expect you to keep the default. Just read HelpOnLanguages in case you're wondering... [Unicode]"),
+    ('page_local_spelling_words', u'LocalSpellingWords',
+     'Name of the page containing user-provided spellchecker words [Unicode]'),
     # the following regexes should match the complete name when used in free text
     # the group 'all' shall match all, while the group 'key' shall match the key only
     # e.g. CategoryFoo -> group 'all' ==  CategoryFoo, group 'key' == Foo
     # moin's code will add ^ / $ at beginning / end when needed
-    ('page_category_regex', ur'(?P<all>Category(?P<key>\S+))', None),
-    ('page_dict_regex', ur'(?P<all>(?P<key>\S+)Dict)', None),
-    ('page_group_regex', ur'(?P<all>(?P<key>\S+)Group)', None),
-    ('page_template_regex', ur'(?P<all>(?P<key>\S+)Template)', None),
+    ('page_category_regex', ur'(?P<all>Category(?P<key>\S+))',
+     'Pagenames exactly matching this regex are regarded as Wiki categories [Unicode]'),
+    ('page_dict_regex', ur'(?P<all>(?P<key>\S+)Dict)',
+     'Pagenames exactly matching this regex are regarded as pages containing variable dictionary definitions [Unicode]'),
+    ('page_group_regex', ur'(?P<all>(?P<key>\S+)Group)',
+     'Pagenames exactly matching this regex are regarded as pages containing group definitions [Unicode]'),
+    ('page_template_regex', ur'(?P<all>(?P<key>\S+)Template)',
+     'Pagenames exactly matching this regex are regarded as pages containing templates for new pages [Unicode]'),
-    ('page_license_enabled', False, None),
-    ('page_license_page', u'WikiLicense', None),
+    ('page_license_enabled', False, 'if True, show a license hint in page editor.'),
+    ('page_license_page', u'WikiLicense', 'Page linked from the license hint. [Unicode]'),
     # These icons will show in this order in the iconbar, unless they
     # are not relevant, e.g email icon when the wiki is not configured
     # for email.
-    ('page_iconbar', ["up", "edit", "view", "diff", "info", "subscribe", "raw", "print", ], None),
+    ('page_iconbar', ["up", "edit", "view", "diff", "info", "subscribe", "raw", "print", ],
+     'list of icons to show in iconbar, valid values are only those in page_icons_table. Available only in classic theme.'),
     # Standard buttons in the iconbar
@@ -841,36 +861,48 @@
         'print':       ('page', {'action': 'print'}, _("Print"), "print"),
         'view':        ('page', {}, _("View"), "view"),
         'up':          ('page_parent_page', {}, _("Up"), "up"),
-     }, None),
+     },
+     "dict of {'iconname': (url, title, icon-img-key), ...}. Available only in classic theme."),
-    ('password_checker', DefaultExpression('_default_password_checker'), None),
-    ('quicklinks_default', [], None),
-    ('refresh', None, None),
-    ('rss_cache', 60, None),
-    ('search_results_per_page', 25, None),
+    ('password_checker', DefaultExpression('_default_password_checker'),
+     'checks whether a password is acceptable (default check is length >= 6, at least 4 different chars, no keyboard sequence, not username used somehow (you can switch this off by using `None`)'),
-    ('shared_intermap', None, None),
+    ('quicklinks_default', [],
+     'List of preset quicklinks for a newly created user accounts. Existing accounts are not affected by this option whereas changes in navi_bar do always affect existing accounts. Preset quicklinks can be removed by the user in the user preferences menu, navi_bar settings not.'),
-    ('show_hosts', True, None),
-    ('show_interwiki', False, None),
-    ('show_names', True, None),
-    ('show_section_numbers', 0, None),
-    ('show_timings', False, None),
-    ('show_version', False, None),
+    ('refresh', None,
+     "refresh = (minimum_delay_s, targets_allowed) enables use of `#refresh 5 PageName` processing instruction, targets_allowed must be either `'internal'` or `'external'`"),
+    ('rss_cache', 60, "suggested caching time for Recent''''''Changes RSS, in second"),
-    ('sistersites', [], None),
+    ('search_results_per_page', 25, "Number of hits shown per page in the search results"),
+    ('shared_intermap', None,
+     "Path to a file containing global InterWiki definitions (or a list of such filenames)"),
+    ('show_hosts', True,
+     "if True, show host names and IPs. Set to False to hide them."),
+    ('show_interwiki', False,
+     "if True, let the theme display your interwiki name"),
+    ('show_names', True,
+     "if True, show user names in the revision history and on Recent``Changes. Set to False to hide them."),
+    ('show_section_numbers', False,
+     'show section numbers in headings by default'),
+    ('show_timings', False, "show some timing values at bottom of a page"),
+    ('show_version', False, "show moin's version at the bottom of a page"),
+    ('sistersites', [], "list of tuples `('WikiName', 'sisterpagelist_fetch_url')`"),
     ('siteid', 'default', None),
-    ('sitename', u'Untitled Wiki', None),
+    ('sitename', u'Untitled Wiki',
+     "Short description of your wiki site, displayed below the logo on each page, and used in RSS documents as the channel title [Unicode]"),
-    ('stylesheets', [], None),
+    ('stylesheets', [],
+     "List of tuples (media, csshref) to insert after theme css, before user css, see HelpOnThemes."),
-    ('subscribed_pages_default', [], None),
+    ('subscribed_pages_default', [],
+     "List of pagenames used for presetting page subscriptions for newly created user accounts."),
@@ -882,11 +914,15 @@
      ], None),
     ('jabber_subscribed_events_default', [], None),
-    ('superuser', [], None),
+    ('superuser', [],
+     "List of trusted user names with wiki system administration super powers (not to be confused with ACL admin rights!). Used for e.g. making full backups, software installation, language installation via SystemPagesSetup and more. See also HelpOnSuperUser."),
-    ('supplementation_page', False, None),
-    ('supplementation_page_name', u'Discussion', None),
-    ('supplementation_page_template', u'DiscussionTemplate', None),
+    ('supplementation_page', False,
+     "if True, show a link to the supplementation page in the theme"),
+    ('supplementation_page_name', u'Discussion',
+     "default name of the supplementation (sub)page [unicode]"),
+    ('supplementation_page_template', u'DiscussionTemplate',
+     "default template used for creation of the supplementation page [unicode]"),
      {# allow max. <count> <action> requests per <dt> secs
@@ -901,20 +937,28 @@
         'edit': (30, 300), # can be lowered after making preview different from edit
         'rss_rc': (1, 60),
         'default': (30, 60),
-     }, None),
+     },
+     "Surge protection tries to deny clients causing too much load/traffic, see /SurgeProtection."),
     ('surge_lockout_time', 3600, None),
-    ('textchas', None, None),
+    ('textchas', None,
+     "Spam protection setup using site-specific questions/answers, see HelpOnTextChas."),
     ('textchas_disabled_group', None, None),
-    ('theme_default', 'modern', None),
-    ('theme_force', False, None),
+    ('theme_default', 'modern',
+     "the name of the theme that is used by default (see HelpOnThemes)"),
+    ('theme_force', False,
+     "if True, do not allow to change the theme"),
-    ('traceback_show', True, None),
-    ('traceback_log_dir', None, None),
+    ('traceback_show', True,
+     "if True, show debug tracebacks to users when moin crashes"),
+    ('traceback_log_dir', None,
+     "Directory to store tracebacks or None."),
-    ('trail_size', 5, None),
-    ('tz_offset', 0.0, None),
+    ('trail_size', 5,
+     "Number of pages in the trail of visited pages"),
+    ('tz_offset', 0.0,
+     "default time zone offset in hours from UTC"),
     # a regex of HTTP_USER_AGENTS that should be excluded from logging
     # and receive a FORBIDDEN for anything except viewing a page
@@ -924,26 +968,33 @@
       'microsoft.url.control|mirror| mj12bot|msnbot|msrbot|neomo|nutbot|omniexplorer|puf|robot|scooter|seekbot|'
-     None),
+     "A regex of HTTP_USER_AGENTs that should be excluded from logging and are not allowed to use actions."),
-    ('unzip_single_file_size', 2.0 * 1000 ** 2, None),
-    ('unzip_attachments_space', 200.0 * 1000 ** 2, None),
-    ('unzip_attachments_count', 101, None),
+    ('unzip_single_file_size', 2.0 * 1000 ** 2,
+     "max. number of files which are extracted from the zip file"),
+    ('unzip_attachments_space', 200.0 * 1000 ** 2,
+     "max. total amount of bytes can be used to unzip files [bytes]"),
+    ('unzip_attachments_count', 101,
+     "max. size of a single file in the archive which will be extracted [bytes]"),
-    ('url_mappings', {}, None),
+    ('url_mappings', {},
+     "lookup table to remap URL prefixes (dict of {{{'prefix': 'replacement'}}}); especially useful in intranets, when whole trees of externally hosted documents move around"),
     # includes the moin version number, so we can have a unlimited cache lifetime
     # for the static stuff. if stuff changes on version upgrade, url will change
     # immediately and we have no problem with stale caches.
-    ('url_prefix_static', config.url_prefix_static, None),
+    ('url_prefix_static', config.url_prefix_static,
+     "used as the base URL for icons, css, etc. - includes the moin version number and changes on every release. This replaces the deprecated and sometimes confusing `url_prefix = '/wiki'` setting."),
     ('url_prefix_local', None, None),
     # we could prefix actions to be able to exclude them by robots.txt:
     #url_prefix_action', 'action' # no leading or trailing '/'
-    ('url_prefix_action', None, None),
+    ('url_prefix_action', None,
+     "Use 'action' to enable action URL generation to be compatible with robots.txt. It will generate .../action/info/PageName?action=info then. Recommended for internet wikis."),
     # allow disabling certain userpreferences plugins
-    ('userprefs_disabled', [], None),
+    ('userprefs_disabled', [],
+     "Disable the listed user preferences plugins."),
@@ -956,7 +1007,7 @@
       ('rights_valid', ['read', 'write', 'delete', 'revert', 'admin'], None),
-    'xapian': ('Xapian search', None, (
+    'xapian': ('Xapian search', "Configuration of the Xapian based indexed search, see HelpOnXapian.", (
       ('search', False, None),
       ('index_dir', None, None),
       ('stemming', False, None),
@@ -964,11 +1015,15 @@
     'user': ('Users / User settings', None, (
-      ('autocreate', False, None),
-      ('email_unique', True, None),
-      ('jid_unique', True, None),
+      ('autocreate', False,
+       "if True, user accounts are created automatically (see HelpOnAuthentication)."),
+      ('email_unique', True,
+       "if True, check email addresses for uniqueness and don't accept duplicates."),
+      ('jid_unique', True,
+       "if True, check Jabber IDs for uniqueness and don't accept duplicates."),
-      ('homewiki', 'Self', None),
+      ('homewiki', 'Self',
+       "interwiki name of the wiki where the user home pages are located (useful if you have ''many'' users). You could even link to nonwiki \"user pages\" if the wiki username is in the target URL."),
@@ -989,7 +1044,7 @@
         # id -> username for page info and recent changes, but it
         # is not usable for the user any more:
-       None),
+       "Describes user preferences, see /UserPreferences."),
@@ -1005,11 +1060,13 @@
         'wikiname_add_spaces': 0,
         'remember_me':         1,
-       None),
+       "Defaults for user preferences, see /UserPreferences."),
-      ('checkbox_disable', [], None),
+      ('checkbox_disable', [],
+       "Disable user preferences, see /UserPreferences."),
-      ('checkbox_remove', [], None),
+      ('checkbox_remove', [],
+       "Remove user preferences, see /UserPreferences."),