| 1 | = InterTrac Links |
| 2 | |
| 3 | Trac supports a convenient way to refer to resources of other Trac servers using Wiki markup. An !InterTrac link can be seen as a scoped [TracLinks TracLink]. It is used for referring to a Trac resource located in another Trac environment. |
| 4 | |
| 5 | == Link Syntax |
| 6 | |
| 7 | 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: |
| 8 | |
| 9 | {{{ |
| 10 | <target_environment>:<TracLinks> |
| 11 | }}} |
| 12 | |
| 13 | The other resource is specified using a regular !TracLink, of any flavor. |
| 14 | |
| 15 | That target environment name is either the real name of the environment or an alias. |
| 16 | The aliases are defined in the `trac.ini` file, see below. |
| 17 | The prefix is case insensitive. |
| 18 | |
| 19 | 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. For example, the above would be displayed as `WikiExtrasPlugin`. |
| 20 | |
| 21 | For convenience, there is also an alternate short-hand form, where an alias can be used as an immediate prefix for the identifier of a ticket, changeset or report, eg `#T234`, `[T1508]`, `[trac 1508]`. |
| 22 | |
| 23 | == Examples |
| 24 | |
| 25 | The only prefix defined by default is `trac`, which points to trac.edgewall.org. Additional prefixes can be specified in the [TracIni#intertrac-section intertrac] section of TracIni. For example: |
| 26 | |
| 27 | {{{#!ini |
| 28 | [intertrac] |
| 29 | # -- Example of setting up an alias: |
| 30 | t = trac |
| 31 | |
| 32 | # -- Link to an external Trac: |
| 33 | genshi.title = Edgewall's Trac for Genshi |
| 34 | genshi.url = http://genshi.edgewall.org |
| 35 | }}} |
| 36 | |
| 37 | The `.url` is mandatory and is used for locating the other Trac. |
| 38 | It can be a relative URL when the Trac environment is located on the same server. |
| 39 | |
| 40 | The `.title` information is used in a tooltip, ie when hovering the cursor over an InterTrac link. |
| 41 | |
| 42 | Now, given the above configuration, one could create the following links: |
| 43 | * to this InterTrac page: |
| 44 | * `trac:wiki:InterTrac` trac:wiki:InterTrac |
| 45 | * `t:wiki:InterTrac` t:wiki:InterTrac |
| 46 | * `genshi:InterTrac` genshi:InterTrac |
| 47 | * Keys are case insensitive: `T:wiki:InterTrac` T:wiki:InterTrac |
| 48 | * to the ticket #234: |
| 49 | * `trac:ticket:234` trac:ticket:234 |
| 50 | * `trac:#234` trac:#234 |
| 51 | * `genshi:#234` genshi:#234 |
| 52 | * `#T234` #T234 |
| 53 | * to the changeset [1912]: |
| 54 | * `trac:changeset:1912` trac:changeset:1912 |
| 55 | * `[T1912]` [T1912] |
| 56 | * to the log range [3300:3330]: |
| 57 | * `trac:log:@3300:3330` trac:log:@3300:3330 |
| 58 | * `[trac 3300:3330]` [trac 3300:3330] |
| 59 | * 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]` (note that the ''remote'' Trac has to run Trac >= 0.11 for this to work'') |
| 60 | |
| 61 | 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). For the rest (`intertrac_prefix:something`), we rely on the [TracSearch#quickjump quick jump] facility of the remote Trac. |
| 62 | |
| 63 | == List of Active InterTrac Prefixes |
| 64 | |
| 65 | The following InterTrac prefixes are available on this site: |
| 66 | |
| 67 | [[InterTrac]] |
| 68 | |
| 69 | ---- |
| 70 | See also: TracLinks, InterWiki |