Edgewall Software
Last modified 5 months ago Last modified on Sep 12, 2011 1:41:50 PM

Trac Wiki Engine

The Wiki engine corresponds to the Wiki syntax parser and formatter which is responsible for transforming the Wiki text source into some rendered content, according to the WikiFormatting rules.

Currently, the parsing and formatting are done in one go, and it's been a long time goal to separate them in distinct stages. The TracDev/Proposals/WikiParserFormatterSplit presents the requirements and the proposed implementation for the new engine. It also gives an overview of most of the opened tickets that should be solved by the new engine.

Note that the proposal itself is at an early stage. Once it stabilizes and after the proposal becomes "reality", this page will be used to document the engine itself (or will point to the appropriate place)

Other work-in-progress document are TracDev/Proposals/VerticalHorizontalParsing, with some more recent ideas about the parsing.

The new engine will make it possible to achieve the following goals:

  • improvements to the syntax (TracDev/Proposals/AdvancedWikiFormatting), with among other things getting a WikiCreole support as good as possible
  • build a wiki parse tree to enable all kinds of manipulation (extracting links, accessing data, getting the outline) and make formatting independent of the parsing (format to html, text, docutils intermediate representation) - see WikiEngine
  • improvements to the user interface, like better hierarchy navigation, section editing and advanced operations like branching, merging and improved rename (see TracDev/Proposals/AdvancedWikiOperations).

List of tickets already on the plate for upcoming milestones:

Milestone: 0.13 (3 matches)

Ticket Summary Priority Status
#1513 Multi-language support in the wiki normal new
#10120 Add a `format` parameter to the RecentChanges macro normal new
#10201 [Patch] WikiProcessors lacks detailed help normal new

Milestone: 0.14 (3 matches)

Ticket Summary Priority Status
#8961 [PATCH] Linkable lines on diff view normal new
#8223 Mozilla/Firefox displaying images through html processor low new
#9612 `WikiPage` doesn't need the `ipnr` attribute low new

Milestone: 0.14-wikiengine (24 matches)

Ticket Summary Priority Status
#4431 wiki_to_wikidom highest assigned
#1024 Each section should have a edit button high assigned
#4790 a blockquote after a list gets nested into two <blockquote> tags high new
#8140 nested lists with multiple paragraphs should work properly high new
#1240 Persistent [[Timestamp]] normal new
#1936 indented ordered and unordered lists have additional bullets and numbers normal new
#2064 Timeline WikiFormatting mis-parses WikiLinks with aliases. normal reopened
#3307 Wiki pragma directives normal new
#3794 Invalid table(with indentation) layout in wiki. normal new
#3895 Provide Trac API for returning all outbound links in a page normal new
#3970 Wiki parsing error when using exclamation at the end of phrase normal new
#4140 Merge OutlineFormatter into Formatter normal new
#4848 Unable to return to previous indentation within wiki normal new
#5059 PageOutline macro is hardcoded to truncate long names normal new
#6630 single || in a line mistaken for table formatting normal new
#7721 Allow cascaded definition lists normal new
#8137 TracQuery count as part of a heading normal new
#8686 Export wiki documents in HTML format normal new
#9251 Unable to escape number list normal new
#9688 Preformatted text in definition list rendered wrongly normal new
#10312 Multiple sub tables are not correctly processed by the WikiProcessor normal new
#10523 TitleIndex: add option 'show_title' to display first level heading normal new
#2717 Create window title on wiki pages from = The title = low new
#4439 PageOutline macro produces empty <li> elements low new

Milestone: next-major-0.1X (75 matches)

Ticket Summary Priority Status
#1386 Adding properties to Wiki Pages high reopened
#3021 wiki namespace support like the one in dokuwiki high reopened
#3275 Show line numbers when embedding source code in wiki pages high new
#3386 Embedding part of Wiki in other Wiki (e.g. Help: prefix for the TracGuide) high new
#7658 Option to disable automatic linking of CamelCase high new
#8640 Enable headline numbering high new
#8645 More readable header IDs high new
#9037 Incorporate footnotes into Trac (for use in documentation) high new
#9574 add filters to TicketQuery from query string arguments high new
#425 Wiki page name need to support digits and periods normal assigned
#611 Backlinks normal reopened
#695 Keywords for wiki pages normal new
#1242 [ER] Generalized automatic cross-references in Trac normal assigned
#1520 Highlight TracLinks in browser normal reopened
#2656 Make built-in documentation independent from wiki normal new
#3251 A documentation about components should be added normal reopened
#4022 Provide Etag and/or Last-Modified HTTP headers to ease cache control normal new
#4412 cross cutting wiki versions normal reopened
#4468 better support for relative name handling normal new
#4778 simplified wikification of svn log messages normal new
#7990 Can't view plain text wiki links normal new
#8526 SubWiki link & SubMapTxt page normal new
#8735 wiki import should maintain page hierarchy normal new
#8949 add sortable tables to wiki normal new
#9123 WikiFormatting in link text does not work normal new
#9214 expandable blockquotes normal new
#9222 "full delete" of wiki page could be a non-fatal operation normal new
#9248 Trac as reST editor normal new
#9401 Enhance TracIni macro to be able to reference specific options normal new
#9537 to implement cherry-picking for wiki pages normal new
#9554 plain text download of wiki pages reveals comments not meant for public consumption normal new
#9616 pre-configure the height of wiki edit text area normal new
#9947 Unexpected resolver result for TracLinks in wiki page within hierarchy normal new
#9984 Provide markup for HTML's <q></q> normal new
#10032 Wiki page mouse hover tooltip normal new
#10167 Column "Date" in Change History of a Wiki Page normal new
#10323 Enable sorting in TitleIndex macro normal new
#10350 e.g. [#1234] in svn commit 5678 comment generates wrong Trac link normal new
#10373 In wiki preview add_scripts is not taken into the account normal new
#10376 Opening a link in a new window? normal new
#10442 change editor buttons to new syntax normal new
#10454 Whitespaces are killed in `backtick ` quotes normal new
#108 OrphanedPages macro low assigned
#109 MissingLinks, an index over missing wiki pages low assigned
#1216 wiki pages caching low new
#1376 Alternate Template for wiki pages low new
#2293 Make rss-feeds of more parts of trac available low new
#2523 TODO's from Sourcecode as a ticket low new
#3335 Improve the rendering of the wiki syntax for citations low new
#3416 IFrame low reopened
#4279 add a plugin to comment on a page low new
#4695 Icons for InterTrac and InterWiki links low new
#5227 provide option to insert summary in a ticket link low new
#5498 Use #. as a wiki markup for ordered list low new
#5821 Wiki blame support low new
#6623 emitting invalid xml:space="preserve" attributes on wiki and ticket pages (causes failed W3C validation) low new
#6863 Included wiki page makes web research irrelevant low new
#8727 cannot create TracLinks to attachments with number sign in file name low new
#8770 site.html template is not applied to wiki formatted content low new
#9046 Cannot create a TracLink to heading in ticket description low new
#9048 Wiki history empty if end revision precedes start revision low new
#9601 Disallow robot navigation for edit pages low new
#9619 Side-by-side editing fails if Preview significantly longer than source; needs smart, vertical locking! low new
#976 Wiki Page redirects to other Wiki pages and possibly other Trac resources lowest new
#1245 Highlight changes of a wiki page since last visit lowest new
#1424 MediaWiki-style table syntax support lowest new
#1465 Trac could use a distributed VCS storage lowest new
#6573 Allow change comment edit after commit. lowest new
#6947 Change in colouring scheme for nested replies in the ticket lowest new
#7361 Error in Wiki Rendering if Colon ":" is used with a word and quote mark lowest new
#7730 Add more control to display the wki menuitem if the fine grained permission system used lowest new
#9055 Auto numbering in wiki tables lowest new
#9216 changeset hook for wiki pages lowest reopened
#9296 Wiki autocompletion for TracLinks lowest new
#9897 '>' cannot be properly escaped lowest reopened


See also: TracWiki, TracLinks, parser.py, formatter.py