> So, it is an implicit nil, or empty string for the purposes of the link > (we should have no notion of nil in there)
Empty string sounds good. After some thoughts I find logical to assume that the user meant the empty string if no data was provided. "Ihor Radchenko" <[email protected]> writes: > Julien Dallot <[email protected]> writes: > >>> #+begin_src emacs-lisp :noweb is test >>> #+end_src >>> >>> interpreted as (:noweb "is test"), simply splicing the value by :keyword >>> (unless :keyword is inside "..."). >> That looks good to me. Especially if it is already in use. >> >> There are some edge cases that should be taken care of. >> Like, what if the second word starts with a ":"? Then we should treat it as >> a normal keyword (since it may be used by some third-party package). But >> then, we cannot simply parse a link like >> [[::(:id wrong :syntax :regexp foo)]] >> as a plist, as this would result in >> (:id "wrong" :syntax :regexp "foo") >> which is an invalid plist since all properties must have a value (this >> problem also applies if we want to give a property the empty string without >> "...") >> >> Then not sure what to do. We could fill the gap with an empty string: >> (:id "wrong" :syntax "" :regexp "foo") >> or remove the :syntax part altogether: >> (:id "wrong" :regexp "foo") > > If we continue the analogy with src blocks, > > #+begin_src emacs-lisp :noweb is :comments :eval yes > #+end_src > > will yield (via org-babel-get-src-block-info) > > ((:noweb . "is") (:comments) (:eval . "yes")) > > So, it is an implicit nil, or empty string for the purposes of the link > (we should have no notion of nil in there)
