Feature Proposal: More NOAUTOLINK options for use with underscore wikiwords
This proposal has been parked.
Motivation
There has been a lot of resistance against the introduction of
underscore wikiword syntax, with the argument that a lot of existing TWiki pages (on various installations) use words with underscores: code samples, file names, etc. These would get defaced with sudden links to non-existing pages.
With the setting of
AUTOLINKTYPE these problems should not exist now: simply don't set the variable. But I can imagine one would like to have the functionality of underscore wikiwords without having them autolinked, for instance the (forced) syntax of Wikipedia with square brackets.
I propose to add finer granularity to the
NOAUTOLINK variable, so one can have the option to prevent autolinking of wiki_word, while still being able to create links with [[wiki_word]].
Description
NOAUTOLINK therefore should have these options:
-
all : all automatic linking is disabled
-
wikiword : only words with WikiWord syntax are not autolinked
-
underscore : only words with wiki_word syntax are not autolinked
-
on : (current setting) same as all
- empty (not set) : both WikiWord as wiki_word words are autolinked
--
ArthurClemens - 13 Apr 2005
Discussion:
With the variable
NOAUTOLINK you can set whether WikiWords become links or not (if
NOAUTOLINK = on, you can only create links with [[WikiWord]] notation.
I am proposing to extend this variable to cope with subsets of link words.
This is intended for users that would like to have underscore wikiwords, but do not want to have my_img.gif autolinked to a new topic
my_img. And this means you can keep your old notation as well.
--
ArthurClemens - 13 Apr 2005
This is a really tough question, for some fairly non-obvious reasons.
There is strong resistance to this proposal
from me because it
changes the definition of TWiki meta-language (
TML).
Personally I think there has to be a clear, unambiguous core definition of
TML, that is
totally independent of preference variable settings. Without this, it becomes virtually impossible to create tools like
WYSIWYG editors that recognise and handle
TML syntax - because that syntax is not well defined. I have been looking for ways to
deprecate the existing optional syntax (global NOAUTOLINK), so I obviously can't support the addition of more!
If you want to extend
TML, you should do it via a plugin, and
not by hacking the core.
There is a perfectly reasonable argument that says the core doesn't offer the kind of support you need for extending the definition of "what is a wikiword". However that is an issue for the design of the link handling in the core, and not an excuse to hack the definition of a wikiword.
--
CrawfordCurrie - 14 Apr 2005
Crawford, I assume your comment is about
UnderscoreWikiWords? Because this topic is about disabling automatic linking.
--
ArthurClemens - 14 Apr 2005
I know what it's about. I am against the introduction of NOAUTOLINK types. This is because these settings change the definition of
TML dynamically, and make it impossible to write parsers to support the language without the whole TWiki infrastructure being required.
This is a really serious flaw with the proposal, and as such I am dropping it from
DakarRelease.
--
CrawfordCurrie - 06 Jun 2005
So TWiki should support underscore syntax natively. See also the
UnderscoreWikiWords patch.
--
ArthurClemens - 06 Jun 2005
Topic "ping". Arthur has a good point. To address Crawford's point, linking can be delegated to the core, e.g. plugins do not necessarily need to know the link rules.
--
PeterThoeny - 31 Mar 2007
Crawford wrote his statement in mid 2005. As I write this it is 01 Apr 2007. And since then we have released Dakar and Edinburgh. We have a Wysiwyg Editor which is very buggy and close to impossible to use because it breaks advanced syntax.
The arguments Crawford had was because of Wysiwyg editors which the Javascript code needs to cope with the
TML to be able to show what you type as what you eventually get. I think time has shown that with the current
TML it is very very difficult to write a proper Wysiwyg for TWiki.
Introducing more configurable
TML features is not going to make it easier. Crawford was right then. And time has shown that he was
very right.
Getting a proper Wysiwyg is the most important feature TWiki is missing so I do not understand why people are so keen on getting all sorts of other complexity added to TWiki.
Seen from a user perspective this is also making things more difficult. Depending on which TWiki you use you can experience different behavior if you introduce configurable
TML. And we are talking the most basic
TML here - not some new exotic TWiki Variable.
People already have problems understanding the WikiWord and now you guys want to add more geeky syntax that makes it more difficult to write plain text without getting unwanted links and then introduce yet another configuration to enable people to turn it off again. Just don't introduce the unnecessary underscore wikiword feature. Use [[]] syntax if you want a topic with underscores.
--
KennethLavrsen - 01 Apr 2007
See
UnderscoreWikiWordsWithoutSyntaxChange that follows the bracket link idea.
--
ArthurClemens - 01 Apr 2007
What about
WikiCreole
? Won't that be the basis for the next generation wiki markup language solving all problems?
--
FranzJosefSilli - 01 Apr 2007
I have implemented support for underscore topic links in
SpacedWikiWordPlugin. I am dropping this request.
--
ArthurClemens - 05 May 2007