| 
					
				 | 
			
			
				@@ -451,8 +451,8 @@ prevents it from hanging Emacs." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ;;; Org table electric header minor mode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-(defvar org-table-temp-header-line nil) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-(defvar org-table-temp-header-remapping nil) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+(defvar-local org-table-temp-header-line nil) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+(defvar-local org-table-temp-header-remapping nil) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 (defun org-table-row-get-visible-string (&optional pos) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   "Get the visible string of a row. 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -475,38 +475,34 @@ Assume `org-table-temp-header-line' already stores the previously 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 existing value of `header-line-format' we might want to restore." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   (ignore-errors (require 'face-remap)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   (face-remap-remove-relative org-table-temp-header-remapping) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  (setq org-table-temp-header-remapping 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	(face-remap-add-relative 'header-line '(:inherit default))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  (setq-local org-table-temp-header-remapping 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	      (face-remap-add-relative 'header-line '(:inherit default))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   (if (not (org-at-table-p)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       (setq header-line-format org-table-temp-header-line) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    (run-with-timer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     0.01 nil 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     (lambda () 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-       (let* ((beg (org-table-begin)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	      ;; Are we using `display-line-numbers-mode'? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	      (lin (and (boundp 'display-line-numbers-mode) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			display-line-numbers-mode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			(line-number-display-width))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	      ;; Are we using `org-indent-mode'? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	      (pre (and (boundp 'org-indent-mode) org-indent-mode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			(length (get-text-property (point) 'line-prefix)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	      (tbeg (save-excursion 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		      (goto-char beg) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		      (while (or (org-at-table-hline-p) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				 (looking-at-p ".*|\\s-+<[rcl]?\\([0-9]+\\)?>")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			(move-beginning-of-line 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		      (point)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	 (if (< tbeg (save-excursion (move-to-window-line 0) (point))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	     (setq header-line-format 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		   (concat (propertize " " 'display 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				       '(space :width (+ left-fringe left-margin-width))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			   (when lin (propertize (make-string (+ lin 2) 32) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-						 'face 'line-number)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			   (when pre (make-string pre 32)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			   (propertize (org-table-row-get-visible-string tbeg) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				       'face 'org-table-header))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	   (setq header-line-format org-table-temp-header-line))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-       (force-window-update))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    (let* ((beg (org-table-begin)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   ;; Are we using `display-line-numbers-mode'? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   (lin (and (boundp 'display-line-numbers-mode) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		     display-line-numbers-mode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		     (line-number-display-width))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   ;; Are we using `org-indent-mode'? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   (pre (and (boundp 'org-indent-mode) org-indent-mode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		     (length (get-text-property (point) 'line-prefix)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   (tbeg (save-excursion 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		   (goto-char beg) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		   (while (or (org-at-table-hline-p) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			      (looking-at-p ".*|\\s-+<[rcl]?\\([0-9]+\\)?>")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		     (move-beginning-of-line 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		   (point)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      (if (< tbeg (save-excursion (move-to-window-line 0) (point))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	  (setq header-line-format 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		(concat (propertize " " 'display 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				    '(space :width (+ left-fringe left-margin-width))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			(when lin (propertize (make-string (+ lin 2) 32) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					      'face 'line-number)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			(when pre (make-string pre 32)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			(propertize (org-table-row-get-visible-string tbeg) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				    'face 'org-table-header))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	(setq header-line-format org-table-temp-header-line))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ;;;###autoload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 (defvar-local org-table-header-line-mode nil) 
			 |