Example: I have a tiddler titled "The First Tiddler" and would like to link to it as "the [[First Tiddler]]"
--
You received this message because you are subscribed to the Google Groups "TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tiddlywiki+...@googlegroups.com.
To post to this group, send email to tiddl...@googlegroups.com.
Visit this group at http://groups.google.com/group/tiddlywiki.
For more options, visit https://groups.google.com/d/optout.
For the moment you should stick to one of the options you mentioned. To my knowledge there isn't any plugin like the one you suggest yet.
I don't know how hard it would be to make one, but you may be able to put together a macro using the regexp search that will do what you want. That may not be helpful in your situation as it would require you to redo all of your links anyway.
Maybe you could use http://tw5magick.tiddlyspot.com
Look for the tiddler called Aliases.
The regexp doesn't check for a trailing pipe sign, so `<<a: tab>>` will match `|table`.
But it's potentially problematic that the system doesn't keep track of links within macro parameters. If TiddlerOne passes a sentence of ordinary text to a simple macro that just returns its parameter in bold with a red background, and if that sentence contains a link to TiddlerTwo, then it would be nice if TiddlerTwo recognised TiddlerOne on its info References tab. I suppose the difficulty is that the system can't easily detect whether the macro returns its parameter intact.
While it's possible to use double square brackets to delimit a macro parameter, these are merely an alternative for quotes. They have no link semantics.
For example, given `\define emphasis(_) //$_$//`, the call `<<emphasis [[Target Tiddler]]>>` returns `//Target Tiddler//` rather than any kind of link to Target Tiddler.
I believe a macro parameter is always a mere string of characters, no matter how it's passed.
Even if you use the $macrocall widget,
<$macrocall $name=emphasis _="[[Target Tiddler]]"/>
the parameter remains a string, in this case `[[Target Tiddler]]`.
The issue is that macros are dynamic, so they're not really suitable candidates for the rapid indexing relied on by things like [backlinks[]] and [all[orphans]].
I wonder if the message "No tiddlers link to this one" on the References tab
ought to say "No tiddlers contain static links to this one"?
Let me suggest a less abstract example, then. Your tb5 site offers a macro for colouring text. One can easily imagine passing a whole sentence, e.g. a warning message, to this macro, and that sentence could contain a link. That link would not be detected by the link-tracking system that drives the References and Orphans tabs.
> There could well be a recommendation to always use single or double quotes or triple double quotes for strings and reserve double square brackets for tiddler titles only.
But that still wouldn't solve the general case in which a quote-delimited parameter can contain a double-square-bracketed link as part of its content.
> Perhaps "tiddler-links", or TiddlyLinks but not "static links".
I agree that "static" isn't the right word, but the alternatives you suggest could apply equally well to links generated on the fly by macros and widgets and whatnot. Perhaps we could speak of a "literal" link – a link that is literally present in the text field of a tiddler.
|first|first tiddler|the first tiddler|Never mind, I figured it out!
I apologize if this has been addressed elsewhere in this thread, but does this allow the use of multiple-word aliases? For example:|first|first tiddler|the first tiddler|If so, is there a certain way I should be formatting the code to accomplish that?
Hi Tobias, thanks for the macro — I’m finding that when the alias in the piped field is CamelCase, <<a: CamelCase>> fails, but <<a: camelcase>> works.
I'm on version 5.1.9
Cheers, JL
I see, thanks for that. I did read that it was case-insensitive, but I interpreted that as meaning it would pick up CamelCase, camelcase or cAMelCASe. Anyway, cheers, all working now JL
I interpreted that as meaning it would pick up
CamelCase,camelcaseorcAMelCASe
Anyway, cheers, all working now JL