DisablingWikiWords

Question

How can I disable the WikiWords? on my site ?

Answer

WikiWord links are now disabled by default from pmwiki 2.1 beta2 onwards.

To enable Wikiword links you need to set in config.php or a local customisation file:
                $LinkWikiWords = 1;
See also WikiWord.

Hint given by PM: you can totally disable WikiWords by setting:

                DisableMarkup('wikilink');

This will also prevent WikiWords from being embedded by a <span class='wikiword'></span>. Skrol29

Much of the page is now obsolete.

Add the following in local/config.php file

  $LinkWikiWords = 0;

If your site is already existing, in order to help detection of existing WikiWords you can add temporarily the following in your local/config.php file

 
Markup('wikilink','>urllink',
  "/\\b($GroupPattern([\\/.]))?($WikiWordPattern)/e",
  "Keep('%red%+$0+%%', 'L')"); 
That will display +WikiWords+, but links will not be established.

WikiWords being used in the PmWiki documentation group, you need to enable the WikiWords for this group by writing in the page PmWiki.GroupHeader (if not already done) and the same page in your localized group, e.g. PmWikiFr.GroupHeader :

(:linkwikiwords:)

Actually, any WikiWords? in the PmWiki documentation that are also supposed to be links should be changed to [[...]] links on pmwiki.org. The idea is that PmWiki's documentation should not depend on WikiWords? being enabled. --Pm

Philosophy

More than a technical question, disabling WikiWords is a 'philosophical' question. Here is an exerpt of the mailing list :

Wade Hudson wrote:

I am considering disabling WikiWords but I am concerned that doing so might deter experienced wiki users from contributing.
On the other hand, experienced wiki users would know how to use a pipe to display a WikiWord.

One concern of mine is that we will be including the names of many websites that use the CamelBack format in the name of their organization. Presently, in those instances, I must use [= ? =] to prevent forming an undesired link.

Another concern is that in general, I prefer that the site display regular words. They are easier to read and less puzzling to novices who suspect that the author made a typo.

Patrick Michaud answer :

After playing with this for a few years now, I don't see anything wrong with disabling WikiWords and restricting links to the [[...]] markup. In versions of PmWiki prior to 2.0 this wasn't that easy to do (because the link markup was more convoluted), but it's very workable in 2.0. In fact, in many ways 2.0 prefers using the explicit link markup, but continues to support WikiWords by tradition and expectation.

I think there are good arguments for and against WikiWords depending on a site's purpose and audience. In your case I think you'd be better off disabling WikiWords.

One other point that is often overlooked -- one can always configure PmWiki so that links are only formed if the target page exists...

    $LinkPageCreateFmt = '$LinkText';

With this setting, "PmWiki" and "PmWiki.DocumentationIndex" will still become links to the corresponding pages, but "PhD" and "McDonald" will generally not become links (unless those pages are created by some other mechanism). Unfortunately the above also has the side-effect of getting rid of the edit page link for [[...]] style links. It seems to me that the easy answer to this is to provide an $EnableWikiWordEditLinks option that says whether WikiWords to non-existent pages should generate edit links or be left alone.
This would give many sites the best of both worlds.

Note that you can also use the (`) character to suppress WikiWords --
i.e.: `CamelBack is basically the same as [=CamelBack=].

Discussion

Problems

  • If, for example, you disable the WikiWord PhD by using
    $WikiWordCount['PhD'] = 0;
    and also have WikiWord spacing turned on, the word 'PhD' will still appear as 'Ph D', although not linked. Francis

See also

In order to ease typing, you can also activate AtLinks? which allow to build links like @Links , like @"Link, text" or @"text -> link".

Contributors