Changes between Initial Version and Version 1 of InterTrac


Ignore:
Timestamp:
Feb 21, 2007 2:58:23 PM (18 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, since version 0.10.
     4
     5== Definitions ==
     6
     7An InterTrac link can be seen as a scoped TracLinks.
     8It is used for referring to a Trac resource
     9(Wiki page, changeset, ticket, ...) located in another
     10Trac environment.
     11
     12== List of Active InterTrac Prefixes ==
     13
     14[[InterTrac]]
     15
     16== Link Syntax ==
     17
     18Simply use the name of the other Trac environment as a prefix,
     19followed by a colon, ending with the resource located in the other environment.
     20
     21{{{
     22<target_environment>:<TracLinks>
     23}}}
     24
     25The other resource is specified using a regular TracLinks, of any flavor.
     26
     27That target environment name is either the real name of the
     28environment, or an alias for it.
     29The aliases are defined in `trac.ini` (see below).
     30The prefix is case insensitive.
     31
     32For convenience, there's also some alternative short-hand form,
     33where one can use an alias as an immediate prefix
     34for the identifier of a ticket, changeset or report:
     35(e.g. `#T234`, `[T1508]`, `[trac 1508]`, ...)
     36
     37== Examples ==
     38
     39{{{
     40#!comment
     41 Besides the other environments run by the same server process
     42 (called ''sibling'' environments), which are automatically detected,
     43Support for sibling environments has been disabled.
     44See http://thread.gmane.org/gmane.comp.version-control.subversion.trac.devel/157
     45}}}
     46
     47It is necessary to setup a configuration for the InterTrac facility.
     48This configuration has to be done in the TracIni file, `[intertrac]` section.
     49
     50Example configuration:
     51{{{
     52...
     53[intertrac]
     54# -- Example of setting up an alias:
     55t = trac
     56
     57# -- Link to an external Trac:
     58trac.title = Edgewall's Trac for Trac
     59trac.url = http://projects.edgewall.com/trac
     60trac.compat = false
     61}}}
     62
     63The `.url` is mandatory and is used for locating the other Trac.
     64This can be a relative URL in case that Trac environment is located
     65on the same server.
     66
     67The `.title` information will be used for providing an useful tooltip
     68when moving the cursor over an InterTrac links.
     69
     70Finally, the `.compat` option can be used to activate or disable
     71a ''compatbility'' mode:
     72 * If the targeted Trac is running a version below milestone:0.10
     73   (r3526 to be precise), then it doesn't know how to dispatch an InterTrac
     74   link, and it's up to the local Trac to prepare the correct link.
     75   Not all links will work that way, but the most common do.
     76   This is called the compatibility mode, and is `true` by default.
     77 * If you know that the remote Trac knows how to dispatch InterTrac links,
     78   you can explicitely disable this compatibility mode and then ''any''
     79   TracLinks can become an InterTrac link.
     80
     81Now, given the above configuration, one could create the following links:
     82 * to this InterTrac page:
     83   * `trac:wiki:InterTrac` trac:wiki:InterTrac
     84   * `t:wiki:InterTrac` t:wiki:InterTrac
     85   * Keys are case insensitive: `T:wiki:InterTrac` T:wiki:InterTrac
     86 * to the ticket #234:
     87   * `trac:ticket:234` trac:ticket:234
     88   * `trac:#234` trac:#234
     89   * `#T234` #T234
     90 * to the changeset [1912]:
     91   * `trac:changeset:1912` trac:changeset:1912
     92   * `[T1912]` [T1912]
     93 * to the log range [3300:3330]: '''(Note: the following ones need `trac.compat=false`)'''
     94   * `trac:log:@3300:3330` trac:log:@3300:3330 
     95   * `[trac 3300:3330]` [trac 3300:3330]
     96
     97The generic form `intertrac_prefix:module:id` is translated
     98to the corresponding URL `<remote>/module/id`, shorthand links
     99are specific to some modules (e.g. !#T234 is processed by the
     100ticket module) and for the rest (`intertrac_prefix:something`),
     101we rely on the TracSearch#quickjump facility of the remote Trac.
     102
     103----
     104=== Discussion ===
     105
     106I think that the `trac` prefix could even be set as a default in the `[intertrac]` TracIni section. --CB
     107
     108----
     109See also: TracLinks, InterWiki