diff options
author | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2015-02-18 02:05:57 +0100 |
---|---|---|
committer | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2015-02-18 02:05:57 +0100 |
commit | a5f1a3e4be058fcd7c1d558a2c9001ee877701a7 (patch) | |
tree | d27838964a94689ae28d3046dabd9dbebe016889 | |
parent | 2dd548a4e03dc3b9aee9774b4e7c9a04d079beab (diff) | |
download | org-mode-a5f1a3e4be058fcd7c1d558a2c9001ee877701a7.tar.gz |
org-src: Small refactoring
* lisp/org-src.el (org-src--remove-overlay): New function.
(org-src--edit-element, org-src-mode-configure-edit-buffer): Use new
function.
-rw-r--r-- | lisp/org-src.el | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/lisp/org-src.el b/lisp/org-src.el index d0f242d..0b599fb 100644 --- a/lisp/org-src.el +++ b/lisp/org-src.el @@ -305,6 +305,10 @@ END." (overlay-put overlay :read-only "Leave me alone") overlay)) +(defun org-src--remove-overlay () + "Remove overlay from current source buffer." + (when (overlayp org-src--overlay) (delete-overlay org-src--overlay))) + (defun org-src--on-element-p (element) "Non-nil when point is on ELEMENT." (and (>= (point) (org-element-property :begin element)) @@ -365,9 +369,7 @@ Leave point in edit buffer." (org-src-switch-to-buffer old-edit-buffer 'return) ;; Discard old edit buffer. (when old-edit-buffer - (with-current-buffer old-edit-buffer - (when (boundp 'org-src--overlay) - (delete-overlay org-src--overlay))) + (with-current-buffer old-edit-buffer (org-src--remove-overlay)) (kill-buffer old-edit-buffer)) (let* ((org-mode-p (derived-mode-p 'org-mode)) (type (org-element-type element)) @@ -542,12 +544,8 @@ There is a mode hook, and keybindings for `org-edit-src-exit' and (defun org-src-mode-configure-edit-buffer () (when (org-bound-and-true-p org-src--from-org-mode) - (org-add-hook 'kill-buffer-hook - (lambda () - (when (overlayp org-edit-src-overlay) - (delete-overlay org-edit-src-overlay))) - nil 'local) - (if (org-bound-and-true-p org-edit-src-allow-write-back-p) + (org-add-hook 'kill-buffer-hook #'org-src--remove-overlay nil 'local) + (if (org-bound-and-true-p org-src--allow-write-back-p) (progn (setq buffer-offer-save t) (setq buffer-file-name |