PmWiki / InterMap
author (intermediate) The InterMap (also called InterWiki in some other wikis) is a system for defining links between WikiWikiWeb sites that was first developed by UseMod and Meatball (see UseMod:InterWiki and Meatball:InterWiki). The method is to use a word shortcut that stands for a defined path. InterMap links have the form The default intermap.txtThe default PmWiki: https://www.pmwiki.org/wiki/PmWiki/ Cookbook: https://www.pmwiki.org/wiki/Cookbook/ Skins: https://www.pmwiki.org/wiki/Skins/ Wiki: http://www.c2.com/cgi/wiki? UseMod: http://www.usemod.com/cgi-bin/wiki.pl? Meatball: http://www.usemod.com/cgi-bin/mb.pl? Wikipedia: https://en.wikipedia.org/wiki/ PITS: https://www.pmwiki.org/wiki/PITS/ PmL10n: https://www.pmwiki.org/wiki/Localization/ Path: The page Site.InterMap?You can map your own prefixes in your local page Site.InterMap?. Thus, "PmWiki:Variables" becomes "https://www.pmwiki.org/wiki/PmWiki/" + "Variables", a link to the PmWiki.Variables page on the official PmWiki web site, Wiki:FrontPage is a link to the front page of the first WikiWikiWeb, and Wikipedia:Stonehenge takes you to the Wikipedia article about the famous megaliths in England. Usage in a wiki pageLike other links, you can use the double-bracket syntax to get different link text:
If you want to link just to what the intermap says (e.g. https://en.wikipedia.com/wiki/ for Wikipedia), then do
The special Custom InterMap prefixesThe actual set of InterMap links at any site is defined by the site administrator via the Site.InterMap? page and the local/localmap.txt file. An intermap entry takes the following format: MapPrefix: https://example.com/partial/url/ The InterMap entry can be for any of the link schemes supported by PmWiki.
Do not edit the file Variables and InterMap linksIt's possible to use variables within your InterMap entries. The following
entries create ThisWiki: $ScriptUrl ThisPage: {$PageUrl} You can also define InterMap entries where the text of the entry is substituted into the middle of the URL. Just include '$1' in the URL where you want the substitution to take place. For example: Jargon: http://catb.org/~esr/jargon/html/$1.html
would cause Tips and tricksIt is possible to document your intermap prefixes directly in the page Site.InterMap?. The extra text will not cause a performance penalty, nor will it break the definition of prefixes. However, be aware that anything matching a line starting with a word and a colon (:) will be considered to define a prefix. The order in which various sources are checked for definitions of prefixes
is controlled by the variable
Are InterMap names case sensitive? Yes, thus How can I achieve a Use the following: Pics: /somepathto/pics/
How can I define an InterMap in PHP? Use the following: $LinkFunctions['PmWikiHome:'] = 'LinkIMap'; $IMap['PmWikiHome:'] = 'https://pmwiki.org/wiki/$1'; How can I define an InterMap link that lets me refer to files at the server "root"? From the page Create an InterMap link like so:
Root / Then your relative link can be:
Root:commoninfo/infoaboutu.php Or, you can use the predefined "Path:" prefix, as in This page may have a more recent version on pmwiki.org: PmWiki:InterMap, and a talk page: PmWiki:InterMap-Talk. |