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