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