From 6e9fce5869b2d500dc8ec1a976aa66abe7fe948e Mon Sep 17 00:00:00 2001 From: Carsten Dominik Date: Fri, 23 Oct 2009 12:35:24 +0200 Subject: [PATCH] Add option to keep vertical lines in ASCII tables --- lisp/ChangeLog | 3 +++ lisp/org-ascii.el | 33 +++++++++++++++++++++------------ 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index aacf44338..3df842298 100755 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2009-10-23 Carsten Dominik + * org-ascii.el (org-export-ascii-table-keep-all-vertical-lines): + New option. + * org.el (org-tag-alist): Fix customization type. 2009-10-22 Carsten Dominik diff --git a/lisp/org-ascii.el b/lisp/org-ascii.el index c89c8e1bb..5f8900572 100644 --- a/lisp/org-ascii.el +++ b/lisp/org-ascii.el @@ -58,6 +58,13 @@ in this way, it will be wrapped." :group 'org-export-ascii :type 'boolean) +(defcustom org-export-ascii-table-keep-all-vertical-lines nil + "Non-nil means, keep all vertical lines in ASCII tables. +When nil, vertical lines will be removed except for those needed +for column grouping." + :group 'org-export-ascii + :type 'boolean) + ;;; Hooks (defvar org-export-ascii-final-hook nil @@ -585,18 +592,20 @@ publishing directory." ;; column and the special lines (setq lines (org-table-clean-before-export lines))) ;; Get rid of the vertical lines except for grouping - (let ((vl (org-colgroup-info-to-vline-list org-table-colgroup-info)) - rtn line vl1 start) - (while (setq line (pop lines)) - (if (string-match org-table-hline-regexp line) - (and (string-match "|\\(.*\\)|" line) - (setq line (replace-match " \\1" t nil line))) - (setq start 0 vl1 vl) - (while (string-match "|" line start) - (setq start (match-end 0)) - (or (pop vl1) (setq line (replace-match " " t t line))))) - (push line rtn)) - (nreverse rtn)))) + (if org-export-ascii-table-keep-all-vertical-lines + lines + (let ((vl (org-colgroup-info-to-vline-list org-table-colgroup-info)) + rtn line vl1 start) + (while (setq line (pop lines)) + (if (string-match org-table-hline-regexp line) + (and (string-match "|\\(.*\\)|" line) + (setq line (replace-match " \\1" t nil line))) + (setq start 0 vl1 vl) + (while (string-match "|" line start) + (setq start (match-end 0)) + (or (pop vl1) (setq line (replace-match " " t t line))))) + (push line rtn)) + (nreverse rtn))))) (defun org-colgroup-info-to-vline-list (info) (let (vl new last)