* Elisp Structure | Keyword | Single | Double | Single Optval | Double Optval | |---------+---------------+---------------+---------------+---------------| | CAPTION | objtree | objtree | objtree | objtree | | DATA | quoted(:name) | quoted(:name) | - | - | | HEADER | list(quoted) | list(quoted) | - | - | | NAME | quoted(:name) | quoted(:name) | - | - | | PLOT | quoted(:plot) | quoted(:plot) | - | - | | RESULTS | optional pair | optional pair | optional pair | optional pair | * types ** objtree Outer list: 1 per keyword next list: first entry = list of objects for value. remaining entries = optval ** list(quoted) List of quoted strings, 1 per keyword ** quoted(NAME) Quoted string under the NAME property (for example quoted(:name)) ** optional pair When optval is supplied this is an alist with the field value being the real value and the 3nd value being the optval. #+begin_src elisp ("*f*" . "*bar*") #+end_src When optval is not supplied this is a list containing a single string of the last occurrence of this keyword. #+begin_src elisp ("*c*") #+end_src * Default settings #+begin_src text org-element-dual-keywords ("CAPTION" "RESULTS") org-element-parsed-keywords ("CAPTION") org-element-multiple-keywords ("CAPTION" "HEADER") org-babel-results-keyword "RESULTS" #+end_src * Analysis We don't have an example of a parsed non-dual keyword Looks like multiple triggers list 1 per keyword dual triggers support for optval parsed triggers objects