Mehmet Tekman <mtekma...@gmail.com> writes: > I'm having some problems getting: > > `:tangle <tangle/yes/no/<filename>> [import/export/both/skip]' > > to work nicely with the existing framework. The main issue lies in the > `:any` keyword in `org-babel-common-header-args-w-values' for the tangle > entry making it difficult to determine where one exclusionary group > begins and where the other ends. > > e.g. > > (defconst org-babel-common-header-args-w-values > ... > (tangle . ((tangle yes no :any) > (import export skip sync))) > ... > )
And the reason is that tangle function inside `org-babel-merge-params' does not know how to handle :any in exclusive groups. We should modify it. For example like the following: 1. We will assume that :any can only occur one time in the exclusive groups. (Otherwise, there is no single definite way to parse header arguments) 2. Merge function will treat :any specially - when parameter does not match any of the argument values from all the groups combined, it is considered as :any and replace the previous corresponding values in its exclusive group, if any; In other words, we will need a special match for :any - "anything not equal to other values in all the groups combined". -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>