|  | 1 | = InterTrac Links | 
          
            |  | 2 |  | 
          
            |  | 3 | Trac supports a convenient way to refer to resources of other Trac servers, from within the Wiki markup. An !InterTrac link can be seen as a scoped TracLinks. It is used for referring to a Trac resource located in another Trac environment. A resource can be a wiki page, changeset, ticket or milestone. | 
          
            |  | 4 |  | 
          
            |  | 5 | == List of Active InterTrac Prefixes | 
          
            |  | 6 |  | 
          
            |  | 7 | [[InterTrac]] | 
          
            |  | 8 |  | 
          
            |  | 9 | == Link Syntax | 
          
            |  | 10 |  | 
          
            |  | 11 | Simply use the name of the other Trac environment as a prefix, followed by a colon, ending with the resource located in the other environment. | 
          
            |  | 12 |  | 
          
            |  | 13 | {{{ | 
          
            |  | 14 | <target_environment>:<TracLinks> | 
          
            |  | 15 | }}} | 
          
            |  | 16 |  | 
          
            |  | 17 | The other resource is specified using a regular TracLinks, of any flavor. | 
          
            |  | 18 |  | 
          
            |  | 19 | That target environment name is either the real name of the environment or an alias for it. | 
          
            |  | 20 | The aliases are defined in `trac.ini` (see below). | 
          
            |  | 21 | The prefix is case insensitive. | 
          
            |  | 22 |  | 
          
            |  | 23 | If the InterTrac link is enclosed in square brackets (like `[th:WikiExtrasPlugin]`), the InterTrac prefix is removed in the displayed link like a normal link resolver would be, ie the above would be displayed as `WikiExtrasPlugin`. | 
          
            |  | 24 |  | 
          
            |  | 25 | For convenience, there's also some alternative short-hand form, where one can use an alias as an immediate prefix for the identifier of a ticket, changeset or report, eg `#T234`, `[T1508]`, `[trac 1508]`. | 
          
            |  | 26 |  | 
          
            |  | 27 | == Examples | 
          
            |  | 28 |  | 
          
            |  | 29 | It is necessary to setup a configuration for the InterTrac facility. | 
          
            |  | 30 | This configuration has to be done in the TracIni file, `[intertrac]` section. | 
          
            |  | 31 |  | 
          
            |  | 32 | Example configuration: | 
          
            |  | 33 | {{{#!ini | 
          
            |  | 34 | [intertrac] | 
          
            |  | 35 | # -- Example of setting up an alias: | 
          
            |  | 36 | t = trac | 
          
            |  | 37 |  | 
          
            |  | 38 | # -- Link to an external Trac: | 
          
            |  | 39 | trac.title = Edgewall's Trac for Trac | 
          
            |  | 40 | trac.url = http://trac.edgewall.org | 
          
            |  | 41 | }}} | 
          
            |  | 42 |  | 
          
            |  | 43 | The `.url` is mandatory and is used for locating the other Trac. | 
          
            |  | 44 | This can be a relative URL in case that Trac environment is located on the same server. | 
          
            |  | 45 |  | 
          
            |  | 46 | The `.title` information will be used for providing an useful tooltip when moving the cursor over an InterTrac links. | 
          
            |  | 47 |  | 
          
            |  | 48 | Finally, the `.compat` option can be used to activate or disable | 
          
            |  | 49 | a ''compatibility'' mode: | 
          
            |  | 50 | * If the targeted Trac is running a version below [trac:milestone:0.10 0.10] | 
          
            |  | 51 | ([trac:r3526 r3526] to be precise), then it doesn't know how to dispatch an InterTrac | 
          
            |  | 52 | link, and it's up to the local Trac to prepare the correct link. | 
          
            |  | 53 | Not all links will work that way, but the most common do. | 
          
            |  | 54 | This is called the compatibility mode, and is `false` by default. | 
          
            |  | 55 | * If you know that the remote Trac knows how to dispatch InterTrac links, | 
          
            |  | 56 | you can explicitly disable this compatibility mode and then ''any'' | 
          
            |  | 57 | TracLinks can become an InterTrac link. | 
          
            |  | 58 |  | 
          
            |  | 59 | Now, given the above configuration, one could create the following links: | 
          
            |  | 60 | * to this InterTrac page: | 
          
            |  | 61 | * `trac:wiki:InterTrac` trac:wiki:InterTrac | 
          
            |  | 62 | * `t:wiki:InterTrac` t:wiki:InterTrac | 
          
            |  | 63 | * Keys are case insensitive: `T:wiki:InterTrac` T:wiki:InterTrac | 
          
            |  | 64 | * to the ticket #234: | 
          
            |  | 65 | * `trac:ticket:234` trac:ticket:234 | 
          
            |  | 66 | * `trac:#234` trac:#234 | 
          
            |  | 67 | * `#T234` #T234 | 
          
            |  | 68 | * to the changeset [1912]: | 
          
            |  | 69 | * `trac:changeset:1912` trac:changeset:1912 | 
          
            |  | 70 | * `[T1912]` [T1912] | 
          
            |  | 71 | * to the log range [3300:3330]: '''(Note: the following ones need `trac.compat=false`)''' | 
          
            |  | 72 | * `trac:log:@3300:3330` trac:log:@3300:3330 | 
          
            |  | 73 | * `[trac 3300:3330]` [trac 3300:3330] | 
          
            |  | 74 | * finally, to link to the start page of a remote trac, simply use its prefix followed by ':', inside an explicit link. Example: `[th: Trac Hacks]` (''since 0.11; note that the ''remote'' Trac has to run 0.11 for this to work'') | 
          
            |  | 75 |  | 
          
            |  | 76 | The generic form `intertrac_prefix:module:id` is translated to the corresponding URL `<remote>/module/id`, shorthand links are specific to some modules (e.g. !#T234 is processed by the ticket module) and for the rest (`intertrac_prefix:something`), we rely on the TracSearch#quickjump facility of the remote Trac. | 
          
            |  | 77 |  | 
          
            |  | 78 | ---- | 
          
            |  | 79 | See also: TracLinks, InterWiki |