Changes between Initial Version and Version 1 of InterWiki


Ignore:
Timestamp:
Dec 31, 2014 11:08:25 AM (10 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • InterWiki

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