Edgewall Software

Version 31 (modified by Christian Boos, 14 years ago) ( diff )

note about #1200

Trac Wiki Syntax enhancements

Note: all the syntax enhancements that went into 0.12 can be seen in version 25 of this page.

Topics

Tables

Definition lists

  • nesting definition lists (#7721)
  • terms should automatically get an anchor, much like headings (but nice anchors, see #Headings below)

Lists

There are several enhancements that come to mind:

  • 1) style numbered items and o style numbered items (see also #5498)
Wiki Markup Display
 o  this is a list
 o  that's another list

1) Point 1

2) Point 2

o this is a list o that's another list

1) Point 1

2) Point 2

  • support empty lines between items (#1936, #6482 and more specifically #8140)
Wiki Markup Display
1. start a list

1. continue in the same list
  1. start a list
  1. continue in the same list
  • when continuing an item on the next line, one should stay within the item if we don't dedent past the item starter symbol (nearly works, but see #4848)
  • support for WikiCreole-style lists (gains compatibility with e.g. MediaWiki)
Wiki Markup Display
* start a list
** subitem
*** sub-subitem
# ordered list
## numbered subitem
  • start a list

subitem * sub-subitem # ordered list ## numbered subitem

Notes:

  • issue #6482 is at work here, as the tables are not part of their corresponding item
  • slight difficulty for the VerticalHorizontalParsing, need to consider empty lines as potential "no-ops" in some situations.

Headings

The automatic ids generated for headings are not readable. We should replace spaces by hyphens, at the very least. Compatibility with the old compact style could be achieved by using the name attribute, whereas id would be used for the new, more readable style. This is especially important for languages when titles use sentence-style capitalization, not title-style capitalization (see e.g. Section_headings in Wikipedia). See #8645.

Enhanced processors

Allowing {{{ div ... would be easy, is it worth it? probably not, let's keep #!

For div and tables, add some more "standard" classes (we already have "important" for divs and "listing" for tables):

CamelCase

The MoinMoin style internal free link has been introduced to cope with wiki words with appended content, like when writing ["WikiProcessor"]s. First, the implementation is restricted: it doesn't allow for a lhref equivalent, ["WikiProcessor" the wiki processors] (#7695). What if we would instead re-use the lhref regexp, in the quoted case? It would be equivalent to making the wiki: prefix the default namespace. The advantage would be that any word could be wikified that way.

  • ["checking"]checking: works already
  • ["checking" the check]the check: doesn't work

Alternative forms of linking

Link to filenames

In some contexts (changeset comment), it would make sense to have automatic links to source files, leading to the specific changes for that file (#1200). The detection of file names could be inspired from Doxygen:

All words that contain a dot (.) that is not the last character in the word are considered to be file names. If the word is indeed the name of a documented input file, a link will automatically be created to the documentation of that file. Doxygen, Link to files

Compatibility with other Wiki Markups

While achieving universality is likely not possible, there are both many interesting ideas that could be grabbed from other Wiki markups and incompatibilities than could be eased out.

Here are several other markups that are very interesting for us as they also target similar kinds of users that we do:

Note: See TracWiki for help on using the wiki.