Changes between Version 2 and Version 3 of InterWiki
- Timestamp:
- Jun 27, 2020, 7:44:32 AM (4 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
InterWiki
v2 v3 1 = Support for InterWiki links = 1 = Support for InterWiki links 2 [[PageOutline(2-5,Contents,pullout)]] 2 3 3 ''(since [trac:milestone:0.10 0.10])'' 4 == Definition 4 5 5 == Definition == 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. 6 7 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. 8 InterWiki prefixes can even be used to introduce links to new protocols, such as `tsvn:` used by [trac:TortoiseSvn TortoiseSvn]. 11 9 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 == 10 == Link Syntax 16 11 17 12 {{{ … … 19 14 }}} 20 15 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. 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. 24 17 Note that, as for InterTrac prefixes, '''InterWiki prefixes are case insensitive'''. 25 18 26 The target Wiki URL is looked up in the `[interwiki]` section of TracIni orin 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.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. 27 20 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. 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. 35 24 36 === [interwiki] === 25 == [TracIni#interwiki-section "[interwiki]"] 26 37 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. 38 28 39 29 '''Example:''' 40 {{{ 30 {{{#!ini 41 31 [interwiki] 42 32 MeatBall = http://www.usemod.com/cgi-bin/mb.pl? … … 45 35 }}} 46 36 47 == Examples ==37 == Examples 48 38 49 If the following is anexcerpt of the InterMapTxt page:39 For the following excerpt of the InterMapTxt page: 50 40 51 41 {{{ … … 73 63 74 64 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" 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]] 79 71 80 72 ----