]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/todo/Short_wikilinks.mdwn
fix date to not be 80 years ago
[git.ikiwiki.info.git] / doc / todo / Short_wikilinks.mdwn
index 077cded23e5d2de12a4c9f67bed69506ed293a7b..b9aec91123652a7cad007f49908b5cfaa76e7f56 100644 (file)
@@ -58,8 +58,47 @@ Other alternatives would be
 > I agree that a plugin would probably be more cumbersome, but it is very
 > doable. It might look something like this:
 
 > I agree that a plugin would probably be more cumbersome, but it is very
 > doable. It might look something like this:
 
-       \[[link bar]]
+       \[[!link bar]]
 
 
-       \[[link bar=VeryLongPageName]]
+       \[[!link bar=VeryLongPageName]]
 
 >> This is, however, still missing specifying the link text, and adding that option would seem to me to complicate the plugin syntax a lot, unless support is added for the |-syntax for specifying a particular parameter to every plugin.
 
 >> This is, however, still missing specifying the link text, and adding that option would seem to me to complicate the plugin syntax a lot, unless support is added for the |-syntax for specifying a particular parameter to every plugin.
+
+>>> Well, the link text in my example above is "bar". It's true that if
+>>> you want to use the same link text for multiple distinct links, or
+>>> different link texts for the same link, this is missing a useful layer of
+>>> indirection; it's optimised for the (probably) more common case. It
+>>> could be done as a degenerate form of the syntax I propose below, BTW.
+>>> --[[Joey]]
+
+>> ... Returning to this, the syntax infact wouldn't be so bad with the |-syntax, given a short name for the plugin:
+
+       [[whatever|ref 1]]
+       \[[!ref 1=page_with_long_name]]
+
+>>> A way to do this that doesn't need hacking at the preprocessor syntax
+>>> follows: --[[Joey]]
+
+       \[[!link bar=1]]
+       \[[!dest 1=page_with_long_name]]
+
+>>>> But this doesn't work so well for links that aren't valid keys. Such
+>>>> as stuff with spaces in it. I'd like to be able to write any kind of
+>>>> links conveniently, not just something that looks like a wikilink.
+
+>>>>> You're right, and to fix that it could be turned around: --[[Joey]]
+
+       \[[!link 1=bar]]
+       \[[!dest 1=page_with_long_name]]
+
+>> It also shouldn't be difficult to support non-wiki links in this same
+>> way, so that you could still link everywhere in an uniform manner, as
+>> the (still preferred by me) HTML processing approach would provide.
+>> Perhaps a plugin call wouldn't even be necessary for the links
+>> themselves: what about aliases for the normal link mechanism? Although
+>> the 'ref' call may infact be cleaner, and adding that |-syntax for
+>> plugins could offer other possibilities for other plugins.
+
+>>> I agree, it should be easy to make it support non-wiki links too.
+>>> We seem to have converged at something we can both live with that's
+>>> reasonable to implement.. --[[Joey]]