summaryrefslogtreecommitdiff
path: root/lisp/org/org-compat.el
diff options
context:
space:
mode:
authorBastien Guerry <bzg@gnu.org>2014-04-22 16:07:45 +0200
committerBastien Guerry <bzg@gnu.org>2014-04-22 16:07:45 +0200
commit30cb51f1bc9ce5976f492b5df5d30c6298f5a2aa (patch)
tree782f2f5767065ad571bf5b82a162da96064cf22a /lisp/org/org-compat.el
parentd5ff4ded7a225306017006fc96b0a30180ae6f6b (diff)
downloademacs-30cb51f1bc9ce5976f492b5df5d30c6298f5a2aa.tar.gz
emacs-30cb51f1bc9ce5976f492b5df5d30c6298f5a2aa.tar.bz2
emacs-30cb51f1bc9ce5976f492b5df5d30c6298f5a2aa.zip
Merge Org 8.2.6-1.
The last merge was from 8.2.5c, but many important bugs got fixed between 8.2.5c and 8.2.6-1.
Diffstat (limited to 'lisp/org/org-compat.el')
-rw-r--r--lisp/org/org-compat.el27
1 files changed, 24 insertions, 3 deletions
diff --git a/lisp/org/org-compat.el b/lisp/org/org-compat.el
index fee0bd08cad..70c41d53cd9 100644
--- a/lisp/org/org-compat.el
+++ b/lisp/org/org-compat.el
@@ -260,6 +260,12 @@ ignored in this case."
next (+ from (* n inc)))))
(nreverse seq)))))
+;; `set-transient-map' is only in Emacs >= 24.4
+(defalias 'org-set-transient-map
+ (if (fboundp 'set-transient-map)
+ 'set-transient-map
+ 'set-temporary-overlay-map))
+
;; Region compatibility
(defvar org-ignore-region nil
@@ -337,10 +343,25 @@ Works on both Emacs and XEmacs."
(org-xemacs-without-invisibility (indent-line-to column))
(indent-line-to column)))
-(defun org-move-to-column (column &optional force buffer ignore-invisible)
- (let ((buffer-invisibility-spec ignore-invisible))
+(defun org-move-to-column (column &optional force buffer)
+ "Move to column COLUMN.
+Pass COLUMN and FORCE to `move-to-column'.
+Pass BUFFER to the XEmacs version of `move-to-column'."
+ (let* ((with-bracket-link
+ (save-excursion
+ (forward-line 0)
+ (looking-at (concat "^.*" org-bracket-link-regexp))))
+ (buffer-invisibility-spec
+ (cond
+ ((or (not (derived-mode-p 'org-mode))
+ (and with-bracket-link (org-invisible-p2)))
+ (remove '(org-link) buffer-invisibility-spec))
+ (with-bracket-link
+ (remove t buffer-invisibility-spec))
+ (t buffer-invisibility-spec))))
(if (featurep 'xemacs)
- (org-xemacs-without-invisibility (move-to-column column force buffer))
+ (org-xemacs-without-invisibility
+ (move-to-column column force buffer))
(move-to-column column force))))
(defun org-get-x-clipboard-compat (value)