intertrac

InterTrac Links

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.

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 TracLinks, of any flavor.

That target environment name is either the real name of the environment or an alias for it. 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 `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`.

For convenience, there is also an alternative 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`, `1508`.

It is necessary to set up a configuration for the InterTrac facility. This configuration has to be done in the TracIni file, `intertrac` section, for example:

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

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

The `.url` is mandatory and is used for locating the other Trac. This can be a relative URL in case that 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
    • Keys are case insensitive: `T:wiki:InterTrac` T:wiki:InterTrac
  • to the ticket #234:
    • `trac:ticket:234` trac:ticket:234
    • `trac:#234` trac:#234
    • `#T234` #T234
  • to the changeset 1912:
    • `trac:changeset:1912` trac:changeset:1912
  • to the log range 3330:
    • `trac:log:@3300:3330` trac:log:@3300:3330
    • finally, to link to the start page of a remote trac, simply use its prefix followed by ':', inside an explicit link. Example: `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) and for the rest (`intertrac_prefix:something`), we rely on the TracSearch#quickjump facility of the remote Trac.


See also: TracLinks, InterWiki

  • intertrac.txt
  • Last modified: 2020/07/17 18:33
  • (external edit)