Changes between Initial Version and Version 1 of InterTrac


Ignore:
Timestamp:
Jul 11, 2018, 7:02:51 AM (6 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • InterTrac

    v1 v1  
     1= InterTrac Links
     2
     3Trac 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
     11Simply 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
     17The other resource is specified using a regular TracLinks, of any flavor.
     18
     19That target environment name is either the real name of the environment or an alias for it.
     20The aliases are defined in the `trac.ini` file, see below.
     21The prefix is case insensitive.
     22
     23If 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
     25For 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]`, `[trac 1508]`.
     26
     27== Examples
     28
     29It is necessary to set up a configuration for the InterTrac facility.
     30This configuration has to be done in the TracIni file, `[intertrac]` section, for example:
     31
     32{{{#!ini
     33[intertrac]
     34# -- Example of setting up an alias:
     35t = trac
     36
     37# -- Link to an external Trac:
     38trac.title = Edgewall's Trac for Trac
     39trac.url = http://trac.edgewall.org
     40}}}
     41
     42The `.url` is mandatory and is used for locating the other Trac.
     43This can be a relative URL in case that Trac environment is located on the same server.
     44
     45The `.title` information is used in a tooltip, ie when hovering the cursor over an InterTrac link.
     46
     47Finally, the `.compat` option can be used to enable or disable a ''compatibility'' mode:
     48 * If the targeted Trac is running a version below [trac:milestone:0.10 0.10] ([trac:r3526 r3526] to be precise), then it doesn't know how to dispatch an InterTrac link, and it is up to the local Trac to prepare the correct link. Not all links will work that way, but the most common ones do. This is called the compatibility mode, and is `false` by default.
     49 * If you know that the remote Trac knows how to dispatch InterTrac links, you can explicitly disable this compatibility mode and then ''any'' TracLinks can become an InterTrac link.
     50
     51Now, given the above configuration, one could create the following links:
     52 * to this InterTrac page:
     53   * `trac:wiki:InterTrac` trac:wiki:InterTrac
     54   * `t:wiki:InterTrac` t:wiki:InterTrac
     55   * Keys are case insensitive: `T:wiki:InterTrac` T:wiki:InterTrac
     56 * to the ticket #234:
     57   * `trac:ticket:234` trac:ticket:234
     58   * `trac:#234` trac:#234
     59   * `#T234` #T234
     60 * to the changeset [1912]:
     61   * `trac:changeset:1912` trac:changeset:1912
     62   * `[T1912]` [T1912]
     63 * to the log range [3300:3330]: '''Note''': the following ones need `trac.compat=false`:
     64   * `trac:log:@3300:3330` trac:log:@3300:3330 
     65   * `[trac 3300:3330]` [trac 3300:3330]
     66 * finally, to link to the start page of a remote Trac, simply use its prefix followed by a colon `:` and inside an explicit link. Example: `[th: Trac Hacks]`. Since Trac 0.11, note that the ''remote'' Trac has to run at least version 0.11 for this to work.
     67
     68The 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.
     69
     70----
     71See also: TracLinks, InterWiki