Edgewall Software

Inter Trac 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 Trac Links. 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.

List of Active Inter Trac Prefixes

PrefixTrac Site
tAlias for trac
trachttp://trac.edgewall.org

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 Trac Links, 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 trac.ini (see below). The prefix is case insensitive.

If the Inter Trac link is enclosed in square brackets (like [th:WikiExtrasPlugin]), the Inter Trac 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'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].

Examples

It is necessary to setup a configuration for the Inter Trac facility. This configuration has to be done in the Trac Ini file, [intertrac] section.

Example configuration:

[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 will be used for providing an useful tooltip when moving the cursor over an Inter Trac links.

Finally, the .compat option can be used to activate or disable a compatibility mode:

  • If the targeted Trac is running a version below 0.10 (r3526 to be precise), then it doesn't know how to dispatch an Inter Trac link, and it's up to the local Trac to prepare the correct link. Not all links will work that way, but the most common do. This is called the compatibility mode, and is false by default.
  • If you know that the remote Trac knows how to dispatch Inter Trac links, you can explicitly disable this compatibility mode and then any Trac Links can become an Inter Trac link.

Now, given the above configuration, one could create the following links:

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 Trac Search#quickjump facility of the remote Trac.


See also: Trac Links, Inter Wiki

Last modified 8 months ago Last modified on Dec 10, 2015 6:49:23 AM