Ver código fonte

Merge branch 'maint'

Kyle Meyer 3 anos atrás
pai
commit
a02a3bd6ac
2 arquivos alterados com 26 adições e 20 exclusões
  1. 3 1
      contrib/lisp/org-eldoc.el
  2. 23 19
      lisp/org-table.el

+ 3 - 1
contrib/lisp/org-eldoc.el

@@ -144,7 +144,9 @@
      (cond ((or
              (string= lang "emacs-lisp")
              (string= lang "elisp"))
-	    (cond ((boundp 'eldoc-documentation-functions) ; Emacs>=28
+	    (cond ((and (boundp 'eldoc-documentation-functions) ; Emacs>=28
+			(fboundp 'elisp-eldoc-var-docstring)
+			(fboundp 'elisp-eldoc-funcall))
 		   (let ((eldoc-documentation-functions
 			  '(elisp-eldoc-var-docstring elisp-eldoc-funcall)))
 		     (eldoc-print-current-symbol-info)))

+ 23 - 19
lisp/org-table.el

@@ -472,25 +472,29 @@ This may be useful when columns have been shrunk."
 (defvar-local org-table-header-overlay nil)
 (defun org-table-header-set-header ()
   "Display the header of the table at point."
-  (when (overlayp org-table-header-overlay)
-    (delete-overlay org-table-header-overlay))
-  (let* ((ws (window-start))
-	 (beg (save-excursion
-		(goto-char (org-table-begin))
-		(while (or (org-at-table-hline-p)
-			   (looking-at-p ".*|\\s-+<[rcl]?\\([0-9]+\\)?>"))
-		  (move-beginning-of-line 2))
-		(point)))
-	 (end (save-excursion (goto-char beg) (point-at-eol))))
-    (if (pos-visible-in-window-p beg)
-	(when (overlayp org-table-header-overlay)
-	  (delete-overlay org-table-header-overlay))
-      (setq org-table-header-overlay
-	    (make-overlay ws (+ ws (- end beg))))
-      (org-overlay-display
-       org-table-header-overlay
-       (org-table-row-get-visible-string beg)
-       'org-table-header))))
+  (let ((gcol temporary-goal-column))
+    (unwind-protect
+        (progn
+          (when (overlayp org-table-header-overlay)
+            (delete-overlay org-table-header-overlay))
+          (let* ((ws (window-start))
+                 (beg (save-excursion
+                        (goto-char (org-table-begin))
+                        (while (or (org-at-table-hline-p)
+                                   (looking-at-p ".*|\\s-+<[rcl]?\\([0-9]+\\)?>"))
+                          (move-beginning-of-line 2))
+                        (point)))
+                 (end (save-excursion (goto-char beg) (point-at-eol))))
+            (if (pos-visible-in-window-p beg)
+                (when (overlayp org-table-header-overlay)
+                  (delete-overlay org-table-header-overlay))
+              (setq org-table-header-overlay
+                    (make-overlay ws (+ ws (- end beg))))
+              (org-overlay-display
+               org-table-header-overlay
+               (org-table-row-get-visible-string beg)
+               'org-table-header))))
+      (setq temporary-goal-column gcol))))
 
 ;;;###autoload
 (define-minor-mode org-table-header-line-mode