Before this patch the completion mechanism was this: TAB let's you
complete through link prefixes (gnus: file: bbdb: ...) then RET allows
completion if a completion mechanism is available for the chosen prefix.
Navigating through the history of stored links was a separate process,
available through the up/down M-n/M-p keys.
Now TAB not only completes through link prefixes but also through stored
links. This behavior matches other Emacs completion mechanisms a bit
more closely.
Adding support for column/row names (as currently being implemented
for R) on a language by language basis is definitely the right way to
handle this hline/header issue. I am going to try to do the same for
gnuplot.
I don't believe this solves it, but chomp is more the right thing to
do than trim. I'd like to retain all the whitespace so that alignment
of columns is correct in stdout.
Unlike the other languages, it's central to R to be able to index
columns of a data frame d, either by d[,"columnname"] of d$columnname.
With this change, if colnames are present in the *input* from
org-babel, the corresponding R variable is *always* constructed with
the colnames.
In addition, with the :colnames header arg, the *output* to elisp/org
buffer contains the colnames separated from the rest of the table by
'hline. This behaviour is not default because other languages may
expect a simple table without the 'hline.
If you have a TODO keyword like "DELEGATED" and an entry like
"* Delegated this stuff to X", then you want this entry to be
in the list of possible targets. For that we need to distinguish
between DELEGATED as a keyword and "Delegated" as a simple word,
so (case-fold-search nil) seems relevant.
This default to t, so the default behavior of org-mode doesn't
change. But the user might want to keep at least one blank line
at the end of the remembered subtree, this option lets her do it.