* lisp/org-compat.el (org-condition-case-unless-debug): Do not use
defalias for special forms, the Emacs 22 byte-compiler does not
recognize them correctly when compiling macros. Use a macro instead
and rely on macro expansion. That however makes the decision at
compile time, which should be acceptable in this case since it only
affects debugging.
* org.el (org-table-map-tables): Fix allowed blocks.
(org-edit-special): Fix regression: allow editing HTML and
LaTeX source blocks again.
* org-src.el (org-edit-src-code): Ditto.
Thanks to Nicolas Richard and Bernt Hansen for reporting bugs
in this area.
* org-table.el (org-table-fedit-lisp-indent)
(orgtbl-self-insert-command): Use `org-delete-backward-char'
instead of `backward-delete-char'.
* org.el (org-delete-backward-char, org-delete-char): Save
match data.
* org.el (org-delete-backward-char, org-delete-char): Save
match data (`delete-backward-char' and `delete-char' don't.)
(org-enable-table-editor, org-insert-heading)
(org-remove-timestamp-with-keyword, org-self-insert-command):
Use `delete-backward-char' instead of `backward-delete-char'.
* org-table.el (org-table-fedit-lisp-indent)
(orgtbl-self-insert-command): Ditto.
* org-latex.el (org-export-latex-subcontent): Ditto.
* org-clock.el (org-clocktable-write-default): Ditto.
* org-ascii.el (org-export-ascii-preprocess): Ditto.
Thanks to Vegard Vesterheim for raising this issue and proposing a patch,
and to Carsten for pointing at the root of the problem.
* org.el (org-in-fixed-width-region-p): Save match data.
(org-in-src-block-p): Use case-folding for searching the block
boundaries.
(org-activate-plain-links, org-activate-angle-links)
(org-activate-bracket-links): Prevent link activation in
source code blocks.
Thanks to Sébastien Vauban for reporting a related issue.
* org-odt.el (org-odt-cleanup-xml-buffers): Fix Emacs
Bug#13197 by setting the correct buffer before marking it
unmodified to silently kill him.
Thanks to Drew Adams for reporting this and to Jambunathan for
offering to fix it.
* ob.el (org-babel-temp-file): Fix setting of
`temporary-file-directory' on remote hosts.
* ob-eval.el (org-babel-shell-command-on-region): Use
`process-file' instead of `call-process-region'. The latter one
does not work on remote hosts.
* org.el (org-set-font-lock-defaults): Don't activate links in
source code blocks and fixed-width regions.
Thanks to Sébastien Vauban for reporting an error related to this.
* lisp/org-compat.el (org-no-popups): New wrapper macro which
let-binds the correct variables to suppress popup windows depending
on the Emacs version in use. This is a compile-time decision when
byte-compiling.
* lisp/org.el (org-get-location, org-switch-to-buffer-other-window):
Use the wrapper `org-no-popups´ to let-bind the correct variables
for suppression of popup windows.
* org.el (org-open-at-point): Throw the correct error on
non-links. Use `user-error' instead of `error'.
This fixes a bug introduced in ad35e2.
Thanks to Samuel Loury for spotting this and for submitting a patch.
* lisp/org.el (org-find-invisible-foreground): Do not use the value of
variables `default-frame-alist´, `initial-frame-alist´ and
`window-system-default-frame-alist´ when their symbol is not bound.
This avoids an error with Emacs 22, which does not define
`window-system-default-frame-alist´, that prevents the test suite from
even starting, the other variables are treated the same as a defensive
measure.
* lisp/org-element.el (org-element--parse-elements,
org-element-at-point): Fix parsing of a list in a block in a list.
* testing/lisp/test-org-element.el: Add test.
* lisp/test-org-src.el (test-org-src/blank-line-block): Use
`org-test-with-temp-text-in-file' because `org-in-src-block-p'
checks against an Org mode text property. Don't check for the
word at point.
Thanks to Nick Dokos for reporting this failed test.
* org-test.el (org-test-with-temp-text): No need to kill a
temporary buffer. Don't use (prog1 ,@body ...), only expand
,@body.
Thanks to Nick Dokos for pointing this.