Ver Fonte

Use with-current-buffer instead of save-excursion set-buffer where possible

Patch by Stefan Monnier
Carsten Dominik há 15 anos atrás
pai
commit
7c0a16e256

+ 2 - 1
lisp/org-bibtex.el

@@ -188,7 +188,8 @@
 	(let ((b (current-buffer)) (p (point)))
 	  ;; Restore the window configuration because we just use the web link
 	  (set-window-configuration org-window-config-before-follow-link)
-	  (save-excursion (set-buffer b) (goto-char p)
+	  (with-current-buffer b
+	    (goto-char p)
 	    (bibtex-url)))
       (recenter 0))  ; Move entry start to beginning of window
   ;; return t to indicate that the search is done.

+ 2 - 4
lisp/org-clock.el

@@ -1103,8 +1103,7 @@ If there is no running clock, throw an error, unless FAIL-QUIETLY is set."
     (if (not (marker-buffer org-clock-marker))
 	(if fail-quietly (throw 'exit t) (error "No active clock")))
     (let (ts te s h m remove)
-      (save-excursion
-	(set-buffer (marker-buffer org-clock-marker))
+      (with-current-buffer (marker-buffer org-clock-marker)
 	(save-restriction
 	  (widen)
 	  (goto-char org-clock-marker)
@@ -1169,8 +1168,7 @@ If there is no running clock, throw an error, unless FAIL-QUIETLY is set."
   (interactive)
   (if (not (marker-buffer org-clock-marker))
       (error "No active clock"))
-  (save-excursion
-    (set-buffer (marker-buffer org-clock-marker))
+  (with-current-buffer (marker-buffer org-clock-marker)
     (goto-char org-clock-marker)
     (delete-region (1- (point-at-bol)) (point-at-eol))
     ;; Just in case, remove any empty LOGBOOK left over

+ 1 - 2
lisp/org-docbook.el

@@ -285,8 +285,7 @@ then use this command to convert it."
 			 beg end t 'string))
 	(setq reg (buffer-substring beg end)
 	      buf (get-buffer-create "*Org tmp*"))
-	(save-excursion
-	  (set-buffer buf)
+	(with-current-buffer buf
 	  (erase-buffer)
 	  (insert reg)
 	  (org-mode)

+ 1 - 2
lisp/org-latex.el

@@ -457,8 +457,7 @@ then use this command to convert it."
 		       beg end t 'string))
 	(setq reg (buffer-substring beg end)
 	      buf (get-buffer-create "*Org tmp*"))
-	(save-excursion
-	  (set-buffer buf)
+	(with-current-buffer buf
 	  (erase-buffer)
 	  (insert reg)
 	  (org-mode)

+ 1 - 2
lisp/org-mac-message.el

@@ -193,8 +193,7 @@ If heading exists, delete all message:// links within heading's first
 level.  If heading doesn't exist, create it at point-max.  Insert
 list of message:// links to flagged mail after heading."
   (interactive "bBuffer in which to insert links: \nsHeading after which to insert links: ")
-  (save-excursion
-    (set-buffer org-buffer)
+  (with-current-buffer org-buffer
     (goto-char (point-min))
     (let ((isearch-forward t)
 	  (message-re "\\[\\[\\(message:\\)\\([^]]+\\)\\]\\(\\[\\([^]]+\\)\\]\\)?\\]"))

+ 1 - 2
lisp/org-mobile.el

@@ -551,8 +551,7 @@ If nothing new has beed added, return nil."
 					   org-mobile-directory)))
 	(insertion-point (make-marker))
 	not-empty content)
-    (save-excursion
-      (set-buffer capture-buffer)
+    (with-current-buffer capture-buffer
       (setq content (buffer-string))
       (setq not-empty (string-match "\\S-" content))
       (when not-empty

+ 4 - 5
lisp/org-mouse.el

@@ -1042,11 +1042,10 @@ SCHEDULED: or DEADLINE: or ANYTHINGLIKETHIS:"
 	   (org-mouse-direct nil)
 	   (org-mouse-main-buffer (current-buffer)))
       (when (eq (with-current-buffer buffer major-mode) 'org-mode)
-	(let ((endmarker (save-excursion
-			  (set-buffer buffer)
-			  (outline-end-of-subtree)
-			  (forward-char 1)
-			  (copy-marker (point)))))
+	(let ((endmarker (with-current-buffer buffer
+			   (outline-end-of-subtree)
+			   (forward-char 1)
+			   (copy-marker (point)))))
 	  (org-with-remote-undo buffer
 	    (with-current-buffer buffer
 	      (widen)

+ 2 - 2
lisp/org-plot.el

@@ -279,8 +279,8 @@ line directly before or after the table."
   (save-window-excursion
     (delete-other-windows)
     (when (get-buffer "*gnuplot*") ;; reset *gnuplot* if it already running
-      (save-excursion
-	(set-buffer "*gnuplot*") (goto-char (point-max))
+      (with-current-buffer "*gnuplot*"
+	(goto-char (point-max))
 	(gnuplot-delchar-or-maybe-eof nil)))
     (org-plot/goto-nearest-table)
     ;; set default options

+ 1 - 2
lisp/org-publish.el

@@ -607,8 +607,7 @@ Default for INDEX-FILENAME is 'sitemap.org'."
   (let* ((visiting (find-buffer-visiting file))
 	 (buffer (or visiting (find-file-noselect file)))
 	 title)
-    (save-excursion
-      (set-buffer buffer)
+    (with-current-buffer buffer
       (let* ((opt-plist (org-combine-plists (org-default-export-plist)
 					    (org-infile-export-plist))))
 	(setq title

+ 7 - 11
lisp/org.el

@@ -110,8 +110,7 @@ With prefix arg HERE, insert it at point."
 	(let ((pwd (substring (pwd) 10)))
 	  (cd dir)
 	  (if (eql 0 (shell-command "git describe --abbrev=4 HEAD"))
-	      (save-excursion
-		(set-buffer "*Shell Command Output*")
+	      (with-current-buffer "*Shell Command Output*"
 		(goto-char (point-min))
 		(re-search-forward "[^\n]+")
 		(setq git-version (match-string 0))
@@ -8836,8 +8835,8 @@ on the system \"/user@host:\"."
 			       "\\}[ \t]")))
 	 (t (error "Bad refiling target description %s" desc)))
 	(while (setq f (pop files))
-	  (save-excursion
-	    (set-buffer (if (bufferp f) f (org-get-agenda-file-buffer f)))
+	  (with-current-buffer
+	      (if (bufferp f) f (org-get-agenda-file-buffer f))
 	    (if (bufferp f) (setq f (buffer-file-name (buffer-base-buffer f))))
 	    (setq f (expand-file-name f))
 	    (if (eq org-refile-use-outline-path 'file)
@@ -8996,9 +8995,8 @@ See also `org-refile-use-outline-path' and `org-completion-use-ido'"
 		(org-kill-new (buffer-substring region-start region-end))
 		(org-save-markers-in-region region-start region-end))
 	    (org-copy-subtree 1 nil t))
-	  (save-excursion
-	    (set-buffer (setq nbuf (or (find-buffer-visiting file)
-				       (find-file-noselect file))))
+	  (with-current-buffer (setq nbuf (or (find-buffer-visiting file)
+					      (find-file-noselect file)))
 	    (setq reversed (org-notes-order-reversed-p))
 	    (save-excursion
 	      (save-restriction
@@ -10610,8 +10608,7 @@ EXTRA is additional text that will be inserted into the notes buffer."
 	 org-log-note-marker))
       (setq lines nil))
     (when lines
-      (save-excursion
-	(set-buffer (marker-buffer org-log-note-marker))
+      (with-current-buffer (marker-buffer org-log-note-marker)
 	(save-excursion
 	  (goto-char org-log-note-marker)
 	  (move-marker org-log-note-marker nil)
@@ -13497,8 +13494,7 @@ This uses the icalendar.el library."
 	 (tmpfile (make-temp-name
 		   (expand-file-name "orgics" tmpdir)))
 	 buf rtn b e)
-    (save-excursion
-      (set-buffer frombuf)
+    (with-current-buffer frombuf
       (icalendar-export-region (point-min) (point-max) tmpfile)
       (setq buf (find-buffer-visiting tmpfile))
       (set-buffer buf)