* lisp/org.el (org-set-tags-to): Do not throw an error on empty
headlines.
* testing/lisp/test-org.el (test-org/set-tags): Move test.
(test-org/set-tags-to): New test.
Reported-by: Adrian Bradd <a.bradd@columbia.edu>
<http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00210.html>
* lisp/org.el (org-heading-delete-metadata): Move to...
* lisp/org-list.el (org-list--delete-metadata): ... here. Refactor
code.
(org-toggle-item): Use new function.
* testing/lisp/test-org-list.el (test-org-list/toggle-item): Add test.
At the moment, this function is only used internally in "org-list.el",
so it belongs there.
Also refrain from removing log or clock drawers, because they may not
contain all clocks or notes anyway. Besides, the information they
contain may still make sense in a plain list.
* lisp/ob-sql.el (org-babel-sql-dbstring-oracle): Permit to omit host
and port to allow use of alias defined in Oracle's TNSNAMES files.
This now allow two way calling it :
<user>/<password>@<host>:<port>/<database ID>
or
<user>/<password>@<database alias>
* lisp/ob-sql.el (org-babel-sql-dbstring-oracle): Don't use empty
args. This allows use of alias defined in Oracle's TNSNAMES files.
(org-babel-execute:sql): Don't feed lines with trailing spaces. This
also improve speed for retrieving data.
* org-table.el (org-table-sort-lines): Fix case sensitive sorting,
improve docstring.
* test-org-table.el (test-org-table/sort-lines): Enforce C locale when
testing alphabetic sorting.
‘sort-subr’ ignores ‘sort-fold-case’ when a predicate is provided. To
correctly handle case-sensitivity, we now bake it into the predicate.
Since we are now sorting according to the user’s locale, WITH-CASE
will not make a difference in most instances, since most locales
always sort case-insensitively (cf. how GNU sort ignores the ‘-f’
switch). We now mention this in the function docstring.
In order to meaningfully test case-sensitive sorting, we now enforce
the C locale in the respective unit test.
* test-org-table.el (test-org-table/sort-lines): Fix and improve
testcase.
Sorting and reversing «a C b» should result in «C b a», not in «b a
C». This test did not fail previously only because
org-table-sort-lines had an issue whereby sorts were always
case-sensitive.
* lisp/org-list.el (org-toggle-item): Delete headings'
metadata before turning them into list items.
* lisp/org.el (org-log-drawer-start-re): New variable.
(org-log-drawer-end-re, org-log-drawer-re): New constants.
(org-heading-delete-metadata): New function.
(org-setting-tags): Fix comment.
* lisp/org-clock.el (org-clock--mode-line-heading): Strip
links from the heading.
This restores the previous behavior before commit 66554298.
Thanks to Matt Lundin for reporting this.
* lisp/org-gnus.el (org-gnus-store-link): Fix storing link from an
article when point in the summary buffer does not match the article.
Reported-by: Kevin Brubeck Unhammer <unhammer@fsfe.org>
<http://lists.gnu.org/r/emacs-orgmode/2018-03/msg00037.html>