Changes between Initial Version and Version 1 of InterWiki


Ignore:
Timestamp:
08/07/15 22:11:27 (9 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • InterWiki

    v1 v1  
     1= Support for InterWiki links =
     2
     3== Definition ==
     4
     5An InterWiki link can be used for referring to a Wiki page
     6located in another Wiki system, and by extension, to any object
     7located in any other Web application, provided a simple URL
     8mapping can be done.
     9
     10At the extreme, InterWiki prefixes can even be used to simply introduce
     11links to new protocols, such as `tsvn:` used by [trac:TortoiseSvn TortoiseSvn].
     12
     13== Link Syntax ==
     14
     15{{{
     16<target_wiki>(:<identifier>)+
     17}}}
     18
     19The link is composed by the targeted Wiki (or system) name,
     20followed by a colon (e.g. `MeatBall:`),
     21followed by a page specification in the target.
     22Note that, as for InterTrac prefixes, '''InterWiki prefixes are case insensitive'''.
     23
     24The target Wiki URL is looked up in the `[interwiki]` section of TracIni or in the InterMapTxt wiki page, modeled after MeatBall:InterMapTxt. If a prefix is defined in both the `[interwiki]` section and InterMapTxt, the `[interwiki]` section takes precedence.
     25
     26In addition to traditional InterWiki links, where the target
     27is simply ''appended'' to the URL,
     28Trac supports parametric InterWiki URLs:
     29identifiers `$1`, `$2`, ... in the URL
     30will be replaced by corresponding arguments.
     31The argument list is formed by splitting the page identifier
     32using the ":" separator.
     33
     34=== [interwiki] ===
     35Every option in the `[interwiki]` section in TracIni defines one InterWiki prefix. The option name defines the prefix. The option value defines the URL, optionally followed by a description separated from the URL by whitespace. Parametric URLs are supported as well.
     36
     37'''Example:'''
     38{{{
     39[interwiki]
     40MeatBall = http://www.usemod.com/cgi-bin/mb.pl?
     41PEP = http://www.python.org/peps/pep-$1.html Python Enhancement Proposal $1
     42tsvn = tsvn: Interact with TortoiseSvn
     43}}}
     44
     45== Examples ==
     46
     47If the following is an excerpt of the InterMapTxt page:
     48
     49{{{
     50= InterMapTxt =
     51== This is the place for defining InterWiki prefixes ==
     52
     53Currently active prefixes: [[InterWiki]]
     54
     55This page is modelled after the MeatBall:InterMapTxt page.
     56In addition, an optional comment is allowed after the mapping.
     57----
     58{{{
     59PEP      http://www.python.org/peps/pep-$1.html           # Python Enhancement Proposal $1
     60Trac-ML  http://thread.gmane.org/gmane.comp.version-control.subversion.trac.general/$1  # Message $1 in Trac Mailing List
     61
     62tsvn     tsvn:                                            # Interact with TortoiseSvn
     63...
     64MeatBall http://www.usemod.com/cgi-bin/mb.pl?
     65MetaWiki http://sunir.org/apps/meta.pl?
     66MetaWikiPedia http://meta.wikipedia.org/wiki/
     67MoinMoin http://moinmoin.wikiwikiweb.de/
     68...
     69}}}
     70}}}
     71
     72Then,
     73 * `MoinMoin:InterWikiMap` should be rendered as MoinMoin:InterWikiMap
     74   and the ''title'' for that link would be "!InterWikiMap in !MoinMoin"
     75 * `Trac-ML:4346` should be rendered as Trac-ML:4346
     76   and the ''title'' for that link would be "Message 4346 in Trac Mailing List"
     77
     78----
     79See also: InterTrac, InterMapTxt