= InterTrac Links

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.

== Link Syntax

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:

{{{
<target_environment>:<TracLinks>
}}}

The other resource is specified using a regular !TracLink, of any flavor.

That target environment name is either the real name of the environment or an alias.
The aliases are defined in the `trac.ini` file, see below.
The prefix is case insensitive.

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`.

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]`.

== Examples

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:

{{{#!ini
[intertrac]
# -- Example of setting up an alias:
t = trac

# -- Link to an external Trac:
genshi.title = Edgewall's Trac for Genshi
genshi.url = http://genshi.edgewall.org
}}}

The `.url` is mandatory and is used for locating the other Trac.
It can be a relative URL when the Trac environment is located on the same server.

The `.title` information is used in a tooltip, ie when hovering the cursor over an InterTrac link.

Now, given the above configuration, one could create the following links:
 * to this InterTrac page:
   * `trac:wiki:InterTrac` trac:wiki:InterTrac
   * `t:wiki:InterTrac` t:wiki:InterTrac
   * `genshi:InterTrac` genshi:InterTrac
   * Keys are case insensitive: `T:wiki:InterTrac` T:wiki:InterTrac
 * to the ticket #234:
   * `trac:ticket:234` trac:ticket:234
   * `trac:#234` trac:#234
   * `genshi:#234` genshi:#234
   * `#T234` #T234
 * to the changeset [1912]:
   * `trac:changeset:1912` trac:changeset:1912
   * `[T1912]` [T1912]
 * to the log range [3300:3330]:
   * `trac:log:@3300:3330` trac:log:@3300:3330
   * `[trac 3300:3330]` [trac 3300:3330]
   * 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'')

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.

== List of Active InterTrac Prefixes

The following InterTrac prefixes are available on this site:

[[InterTrac]]

----
See also: TracLinks, InterWiki