| 
					
				 | 
			
			
				@@ -1612,7 +1612,7 @@ CONTENTS is nil." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			      (org-table-align) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			      (buffer-string)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	    (when (org-element-property :tblfm table) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	      (format "#+TBLFM: " (org-element-property :tblfm table)))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	      (concat "#+TBLFM: " (org-element-property :tblfm table)))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ;;;; Table Row 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3330,6 +3330,7 @@ Nil values returned from FUN do not appear in the results." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	    'elements) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	   (t 'objects))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	 --acc 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 --walk-tree 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	 (--walk-tree 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	  (function 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	   (lambda (--data) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3716,68 +3717,70 @@ indentation to compute maximal common indentation. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 Return the normalized element that is element with global 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 indentation removed from its contents.  The function assumes that 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 indentation is not done with TAB characters." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  (let (ind-list 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        (collect-inds 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         (function 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ;; Return list of indentations within BLOB.  This is done by 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ;; walking recursively BLOB and updating IND-LIST along the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ;; way.  FIRST-FLAG is non-nil when the first string hasn't 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ;; been seen yet.  It is required as this string is the only 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ;; one whose indentation doesn't happen after a newline 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          ;; character. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          (lambda (blob first-flag) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            (mapc 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-             (lambda (object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	       (when (and first-flag (stringp object)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                 (setq first-flag nil) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                 (string-match "\\`\\( *\\)" object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		 (let ((len (length (match-string 1 object)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		   ;; An indentation of zero means no string will be 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		   ;; modified.  Quit the process. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		   (if (zerop len) (throw 'zero (setq ind-list nil)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		     (push len ind-list)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-               (cond 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ((stringp object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                 (let ((start 0)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		   ;; Avoid matching blank or empty lines. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                   (while (and (string-match "\n\\( *\\)\\(.\\)" object start) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			       (not (equal (match-string 2 object) " "))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                     (setq start (match-end 0)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                     (push (length (match-string 1 object)) ind-list)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ((memq (org-element-type object) org-element-recursive-objects) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                 (funcall collect-inds object first-flag)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-             (org-element-contents blob)))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  (let* (ind-list			; for byte-compiler 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 collect-inds			; for byte-compiler 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	 (collect-inds 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	  (function 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   ;; Return list of indentations within BLOB.  This is done by 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   ;; walking recursively BLOB and updating IND-LIST along the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   ;; way.  FIRST-FLAG is non-nil when the first string hasn't 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   ;; been seen yet.  It is required as this string is the only 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   ;; one whose indentation doesn't happen after a newline 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   ;; character. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	   (lambda (blob first-flag) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     (mapc 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	      (lambda (object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		(when (and first-flag (stringp object)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		  (setq first-flag nil) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		  (string-match "\\`\\( *\\)" object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		  (let ((len (length (match-string 1 object)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		    ;; An indentation of zero means no string will be 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		    ;; modified.  Quit the process. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		    (if (zerop len) (throw 'zero (setq ind-list nil)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		      (push len ind-list)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		(cond 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 ((stringp object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		  (let ((start 0)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		    ;; Avoid matching blank or empty lines. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		    (while (and (string-match "\n\\( *\\)\\(.\\)" object start) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				(not (equal (match-string 2 object) " "))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		      (setq start (match-end 0)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		      (push (length (match-string 1 object)) ind-list)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 ((memq (org-element-type object) org-element-recursive-objects) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		  (funcall collect-inds object first-flag)))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	      (org-element-contents blob)))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ;; Collect indentation list in ELEMENT.  Possibly remove first 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ;; value if IGNORE-FIRST is non-nil. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     (catch 'zero (funcall collect-inds element (not ignore-first))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     (if (not ind-list) element 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       ;; Build ELEMENT back, replacing each string with the same 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       ;; string minus common indentation. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      (let ((build 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	     (function 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	      (lambda (blob mci first-flag) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		;; Return BLOB with all its strings indentation 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		;; shortened from MCI white spaces.  FIRST-FLAG is 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		;; non-nil when the first string hasn't been seen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		;; yet. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		(nconc 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		 (list (org-element-type blob) (nth 1 blob)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		 (mapcar 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		  (lambda (object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		    (when (and first-flag (stringp object)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		      (setq first-flag nil) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		      (setq object 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			    (replace-regexp-in-string 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			     (format "\\` \\{%d\\}" mci) "" object))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		    (cond 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		     ((stringp object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		      (replace-regexp-in-string 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		       (format "\n \\{%d\\}" mci) "\n" object)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		     ((memq (org-element-type object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			    org-element-recursive-objects) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		      (funcall build object mci first-flag)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		     (t object))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		  (org-element-contents blob))))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      (let* (build			; for byte compiler 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	     (build 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	      (function 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	       (lambda (blob mci first-flag) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 ;; Return BLOB with all its strings indentation 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 ;; shortened from MCI white spaces.  FIRST-FLAG is 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 ;; non-nil when the first string hasn't been seen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 ;; yet. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		 (nconc 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		  (list (org-element-type blob) (nth 1 blob)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		  (mapcar 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		   (lambda (object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		     (when (and first-flag (stringp object)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		       (setq first-flag nil) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		       (setq object 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			     (replace-regexp-in-string 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			      (format "\\` \\{%d\\}" mci) "" object))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		     (cond 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		      ((stringp object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		       (replace-regexp-in-string 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			(format "\n \\{%d\\}" mci) "\n" object)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		      ((memq (org-element-type object) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			     org-element-recursive-objects) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		       (funcall build object mci first-flag)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		      (t object))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		   (org-element-contents blob))))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	(funcall build element (apply 'min ind-list) (not ignore-first)))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |