Six Single Quotes

The TextFormattingRules include a simple rule for specifying a bold face font: enclose the characters to be enboldened within triple single quotes. This, combined with an implementation accident, the fact that the quoted string can be zero length, makes six single quote characters valid markup. Enboldening an empty string would seem to be pointless except that the invisible markup interferes with other rules and some authors have found this interference convenient. Had I thought of this case when I wrote the rules I would have disallowed it. Now I can only lump it with all the other unplanned things this community has discovered and chosen to exploit. -- WardCunningham


You can use six consecutive single quotes to BreakUp LongBumpyWords so that they do not become WikiNames. Just write the six quotes right after the first capital letter to do this. To link only to the singular form of a WikiName (as in WikiNames instead of WikiNames), you can add SixSingleQuotes right before the last s.

To summarize, six single quotes can be useful in the following situations:

  class HelloWorldAvoidLink? {...}// Cannot cut & paste this
  class HelloWorldAvoidLink {...} // Just looks better.
It might also be useful to disable URLs: e.g. http://www.example.com


Note that SixSingleQuotes also work when

FourSingleQuotes were also suggested once, but they only work in some of these cases: You can even DoThisTrick SeveralTimes PerLine, and even BoldFormatting or ItalicFormatting does not hurt.


Nuances of SixSingleQuotes Placement

Where you put SixSingleQuotes in a WikiName makes a difference. Placing them after the first letter prevents the entire WikiCase word from becoming a WikiName. Unfortunately, it creates a mis-spelled word for the spell checker to complain about. Placing SixSingleQuotes between capitalized words splits the WikiCase word in two, each of which can itself be a WikiName. Here are some examples:


Questions

Q. Isn't SixSingleQuotes an EditingNightmare, counting them and keeping track of them? The point of wiki syntax is to be simple and understandable even while editing. This clearly violates that. -- AnonymousDonor

A1. The point of Wiki syntax is to be as simple and understandable as possible even while editing. All other solutions suggested so far have been even more confusing (such as double-brackets around WikiNames), or have required too much overhead (such as aliasing similar WikiNames). -- BrentNewhall

Brent. Sorry, but if I had to choose between ))DontMakeThisCamelCaseALink(( and D"""ontMakeThisCamelCaseALink, I would choose the former. This idea of entering some sort of markup in the middle of a word in order to affect how the entire word is handled seems to go against any and all markup that I have ever seen. To me it's like saying, "In order to make your text bold or italicized or whatever, you enter <b>T</b>ext or <i>T<i>ext" ??? To me this six single quotes thing just doesn't meet the basic premise of putting the tags or markup around the entire word. Besides, typing six quotes takes longer than typing one or two or four.

A2. SixSingleQuotes is a compromise between syntax and function. Fortunately for those who want to run their own wiki -- particularly those with many code fragments -- most WikiEngines don't use SixSingleQuotes.

So why be different? Because you can? I would think that the wiki community should be working towards a common markup rather than splintering into umpteen variations.

A3. SixSingleQuotes' function is a side effect of Wiki's TextFormattingRules, not unlike SimulatingQuoteBlocks. This would also answer the next question.

Q. Why six single quotes, rather than five or four?

A. The parser reads one, two, or three single quotes at a time, and it reads greedily (as many as it can, up to three). Hence, SixSingleQuotes is not special - just zero characters enclosed in ThreeSingleQuotes. In fact, any even multiple of three (therefore, any multiple of six) will do the same thing; hence TwelveSingleQuotes, EighteenSingleQuotes, etc.

Q. Doesn't this explanation of how the wiki engine interprets quotes fail to address the fact that for the user, six single quotes goes against the grain of how they might expect something to work? The machine is for the user and therefore should adapt to it, rather than the user adapting to the machine. Otherwise we might as well just write everything in byte code.

A. Yes. The six quote practice specifically violates the Overt principle. See WikiDesignPrinciples.

Q. Is there any way to use a camel case email account id.? e.g. FastTechSupport?@example.com

A. Email accounts are not case sensitive, but if you want to create an email link, make it a URL, e.g., mailto:FastTechSupport@example.com If you just want it to display the email, use SixSingleQuotes: FastTechSupport@example.com


See WikiNamePluralProblem, EveryWordIsaLink, TwoSingleQuotes, ThreeSingleQuotes, FourSingleQuotes, FiveSingleQuotes

Contrast with the approach used by TwikiWikiEngine of putting <nop> before a word to prevent interpreting as WikiWord? -- AndyDent


Some people use SixSingleQuotes to "link to a category, without linking to it". See CitationProblem for details.


Could the _PrependedUnderscore be used as an alternative marker? It already disables link creation, so only needs to be stripped by the engine. It would certainly be easier on the eye during editing. -- DavidWright


How about everyone gets over it, learn to use wiki as it is, and quit trying to fix and improve everything. It's worked fine for many years and doesn't need fixing. Do you know how tiring it is watching every person come in here thinking they can fix it, or improve it, well guess what, you can't, if you could, this would be your wiki.

Geeks are forever tinkerers. Your "it would be" argument sounds a bit like QwertySyndrome at play. But I agree that no arrangement will make everybody happy, and that there are more important things to worry about than quotes, such as vandals and spam.


In response to the above paragraph, I must concur that we should stop all forms of innovation and advancement. They are utterly ridiculous and who are we to think we can make the world a better place? Sarcasm. It is this type of inventiveness that created WikiWiki in the first place. Who is WardCunningham to think he can make something easier to collaborate with than coding with plain HTML and uploading our changes to free-for-all FTP server. :-)


I use SixSingleQuotes in the markup I put in this wiki for the main reason that ItWorks, one can create WikiWords which other processes can handle, without the ? edit link. It allows the Reference by WikiWord for some pages which might become editable though they are not intended for or which are not allowed to be included in this wiki, due to restrictions imposed by its creator or the community-at-large.


Here is a solution which works without resorting to using SixSingleQuotes, and to retain a form of hyperWord which this wiki will not treat as a wanted page by inserting the ? suffix is to convert the hyperWordSuchThatItsFirstCharacterIsLowerCase.

 InWardsWiki?.IfYou?.UseNormalHyperWords?.AsDotSeparated?.HyperWords?.YouWillHaveToUse?.AnotherApproach? like this:
 inWardsWiki.ifYou.useSpecialHyperWords.asDotSeparated.hyperWords.youCanUse.anApproach.similarToThis


The SixSingleQuotes method also confuses page scanners as it creates an unwanted empty STRONG element in the output.


CategoryWiki, CategoryWikiEditing


EditText of this page (last edited August 6, 2010) or FindPage with title or text search