Support for InterWiki links

Definition

An InterWiki link can be used for referring to a Wiki page located in another Wiki system, and by extension, to any object located in any other Web application, provided a simple URL mapping can be done.

InterWiki prefixes can even be used to introduce links to new protocols, such as tsvn: used by TortoiseSvn.

Link Syntax

<target_wiki>(:<identifier>)+

The link is composed by the targeted Wiki (or system) name, followed by a colon, eg MeatBall:, followed by a page specification in the target. Note that, as for InterTrac prefixes, InterWiki prefixes are case insensitive.

The target Wiki URL is looked up in the [interwiki] section of TracIni and in the InterMapTxt wiki page, modeled after MeatBall:InterMapTxt. If a prefix is defined in both the [interwiki] section and InterMapTxt, the [interwiki] section takes precedence.

In addition to traditional InterWiki links, where the target is simply appended to the URL, Trac supports parametric InterWiki URLs: identifiers $1, $2, ... in the URL will be replaced by corresponding arguments. The argument list is formed by splitting the page identifier using the ":" separator.

[interwiki]

Every option in the [interwiki] section in TracIni defines one InterWiki prefix. The option name defines the prefix. The option value defines the URL, optionally followed by a description separated from the URL by whitespace. Parametric URLs are supported as well.

Example:

[interwiki]
MeatBall = http://www.usemod.com/cgi-bin/mb.pl?
PEP = http://www.python.org/peps/pep-$1.html Python Enhancement Proposal $1
tsvn = tsvn: Interact with TortoiseSvn

Examples

For the following excerpt of the InterMapTxt page:

= InterMapTxt =
== This is the place for defining InterWiki prefixes ==

Currently active prefixes: [[InterWiki]]

This page is modelled after the MeatBall:InterMapTxt page.
In addition, an optional comment is allowed after the mapping.
----
{{{
PEP      http://www.python.org/peps/pep-$1.html           # Python Enhancement Proposal $1 
Trac-ML  http://thread.gmane.org/gmane.comp.version-control.subversion.trac.general/$1  # Message $1 in Trac Mailing List

tsvn     tsvn:                                            # Interact with TortoiseSvn
...
MeatBall http://www.usemod.com/cgi-bin/mb.pl?
MetaWiki http://sunir.org/apps/meta.pl?
MetaWikiPedia http://meta.wikipedia.org/wiki/
MoinMoin http://moinmoin.wikiwikiweb.de/
...
}}}

Then,

  • MoinMoin:InterWikiMap will be rendered as MoinMoin:InterWikiMap and the title for that link will be "InterWikiMap in MoinMoin".
  • Trac-ML:4346 will be rendered as Trac-ML:4346 and the title for that link will be "Message 4346 in Trac Mailing List".

List of Active Prefixes

PrefixSite
Acronymhttp://www.acronymfinder.com/af-query.asp?String=exact&Acronym=
AgileTracPlugin adding Iterations to Trac
apidoc$1 in the API documentation for Trac
apiref$1 in the Epydoc API reference for Trac
bittenBitten's Trac
C2findhttp://c2.com/cgi/wiki?FindPage&value=
c2Wikihttp://c2.com/cgi/wiki?
Cachehttp://www.google.com/search?q=cache:
CheeseShop$1 package in the Python Package Index
chromium-issuehttp://code.google.com/p/chromium/issues/detail?id=
CPANhttp://search.cpan.org/perldoc?
Creole1Wikihttp://wikicreole.org/wiki/
Creole2Wikihttp://wiki.wikicreole.org/
CreoleWikihttp://wikicreole.org/wiki/
DebianBughttp://bugs.debian.org/
DebianPackagehttp://packages.debian.org/
DebianPTShttp://packages.qa.debian.org/
Dictionaryhttp://www.dict.org/bin/Dict?Database=*&Form=Dict1&Strategy=*&Query=
DjangoDjango's Trac
gdiscussionDiscussion $2 in $1 Google
gforumForum $1 in Google Groups
gmessageMessage $2 in $1 Google Group
Googlehttp://www.google.com/search?q=
GoogleGroupsMessage $2 in $1 Google Group
hgChangeset $1 $2 in Mercurial repository
hg-issueIssue $1 in Mercurial BTS
ISOISO Standard $1 in Wikipedia
JargonFilehttp://downlode.org/perl/jargon-redirect.cgi?term=
kbArticle $1 in Microsoft's Knowledge Base
kwqueryCustom query for tickets matching keyword $1
lmgtfyWell, just search for "$1", follow the link to see how to do it...
MeatBallhttp://www.usemod.com/cgi-bin/mb.pl?
MediaWikihttp://www.mediawiki.org/wiki/
Mercurialthe wiki for the Mercurial distributed SCM
MetaWikihttp://sunir.org/apps/meta.pl?
MetaWikiPediahttp://meta.wikipedia.org/wiki/
mod-python-issueIssue $1 in mod_python's JIRA instance
mod-wsgimod_wsgi Wiki on Google Code
mod-wsgi-issuemod_wsgi Issue Tracker on Google Code
MODPYTHONIssue $1 in mod_python's JIRA instance
MoinMoinhttp://moinmo.in/
mysql-bugsBug #$1 in MySQL's bug database
mysql-issueBug #$1 in MySQL's bug database
OSMhttp://www.openstreetmap.org/wiki/
peak$1 in Python Enterprise Application Kit's Wiki
PEPPython Enhancement Proposal
pypa-setuptools-issueissue #$1 in BitBucket Setuptools tracker
pypi$1 package in the Python Package Index
Python-issuePython Issue #$1
PythonBugPython Issue #$1
PythonWikiPython Wiki
RFCIETF's RFC $1
setuptools-issueissue$1 in legacy Setuptools tracker
SOQuestion $1 in StackOverflow
SQLite$1 page in the CvsTrac for SQLite
SQLiteTktTicket $1 in the CvsTrac for SQLite
svn-issueSubversion issue #$1
svncsetSubversion [$1]
svnissueSubversion issue #$1
SvnWikiSubversion Wiki
trac-devMessage $1 in Trac Development Mailing List
Trac-MLMessage $1 in Trac Mailing List
TracHackshttp://trac-hacks.org/wiki/
Transifexhttps://www.transifex.com/projects/p/trac/
WhoIshttp://www.whois.sc/
Whyhttp://clublet.com/c/c/why?
WikiPediahttp://en.wikipedia.org/wiki/


See also: InterTrac, InterMapTxt

Last modified 4 years ago Last modified on 12/24/20 10:50:37
Note: See TracWiki for help on using the wiki.