Controls how page links without a "Group" name behave in included pages (such as a sidebar). When off (0), links in included pages behave as if they were written in the page you're viewing; when on (1, default), they behave as if they were written in the included page's own group. For example, if Site.SideBar has a link [[Page]], and you're in the Main group, the link will point to Site.Page. Setting $EnableRelativePageLinks = 0; will make the link point to Main.Page when viewed from the Main group, and to PmWiki.Page when viewed from the PmWiki group.
When enabled, a link written like [[Name|+]] will display the "Spaced Title". Default is to display the "Title" of the page. See the page PageVariables for {$Title} and {$Titlespaced}.
If set to 1, will enable email obfuscation that makes it less likely for spambots to collect addresses from the wiki. It is equivalent to setting: $LinkFunctions['mailto:'] = 'ObfuscateLinkIMap';
This array lists the order in which PmWiki looks for the page that you most likely are attempting to link to. The default is listed below. Look at Cookbook:PagePaths for some ideas.
The (HTML) string to output for links to non-existent wiki pages. The default is to add a '?' after the link text with a link to the page edit/create form. Defaults to
An array with shortcuts to page properties shown as link texts or tooltip titles. For example:
$LinkPageShortFmt['+'] = '{$Title}'; # this is the default, can now be changed
$LinkPageShortFmt['++'] = '{$Groupspaced} / {$Titlespaced}';
$LinkPageShortFmt['?'] = '{$Description}';
These can be used like [[Page1|+]] to set link text to the page title, or [[Page1"+"|click here]] to set the tooltip title.
The ObfuscateLinkIMap logic expects the snippet to have some recognisable properties -- classes, elements, otherwise it may not work. Start with the default snippet, make small modifications, and test if it works.
An array of additional custom link CSS classes, that are added to the link format $UrlLinkFmt, $IMapLinkFmt or $LinkPageExistsFmt. Currently can have 2 elements: $AddLinkCSS['othergroup'] = "crossgroup"; # add "crossgroup" class to wikilinks to other wikigroups $AddLinkCSS['samedomain'] = "currentsite"; # add "currentsite" class to URL or Path links to resources on the same domain.
$MakePageNamePatterns is an array of regular expression replacements that is used to map the page link in a free link such as [[free link]] into a page name. Currently the default sequence is:
"/'/" => '', # strip single-quotes
"/[^$PageNameChars]+/" => ' ', # convert to spaces characters not allowed in pagenames
'/((^|[^-\\w])\\w)/' => 'cb_toupper', # capitalize 1st letter of words
'/ /' => '' # remove spaces
Note that if you change $MakePageNamePatterns, the documentation links may break. This can be fixed by re-setting $MakePageNamePatterns to the default in local/PmWiki.php.
The maximum number of times to convert each WikiWord encountered on a page. Defaults to 1,000,000. Common settings for this variable are zero (disable WikiWord links) and one (convert only the first occurrence of each WikiWord).
An array that allows the number of WikiWord conversions to be set on a per-WikiWord basis. The default is to use $WikiWordCountMax unless a value is set in this array. By default PmWiki sets $WikiWordCount['PmWiki']=1 to limit the number of conversions of "PmWiki".
$WikiWordCount[=['PhD']=0; # Don't convert "PhD"=]
$WikiWordCount['WikiWord']=5; # Convert WikiWord 5 times
# the following lines keep a page from linking to itself
$title = [=FmtPageName=]('$Title_',$pagename);
$WikiWordCount[$title]=0;
An array of regular expression replacements applied when text from one page is included in another, used by the function Qualify(). The two default patterns rewrite links like [[Page]] into [[Group/Page]], and page (text) variables like {$Title} into {Group.Page$Title} so that they work the same way in the source page and in the including page.