[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/valign f6d60d2 078/198: Merge two implementations for v
From: |
Stefan Monnier |
Subject: |
[elpa] externals/valign f6d60d2 078/198: Merge two implementations for valign--align-separator-row |
Date: |
Tue, 1 Dec 2020 18:19:20 -0500 (EST) |
branch: externals/valign
commit f6d60d2701b65bd56e5308d0e1919c764120fea8
Author: Yuan Fu <casouri@gmail.com>
Commit: Yuan Fu <casouri@gmail.com>
Merge two implementations for valign--align-separator-row
* valign.el (valign--align-separator-row): merge org and markdown.
---
valign.el | 45 ++++++++++++++++-----------------------------
1 file changed, 16 insertions(+), 29 deletions(-)
diff --git a/valign.el b/valign.el
index 5184a4b..e72089a 100644
--- a/valign.el
+++ b/valign.el
@@ -458,41 +458,28 @@ Assumes point is on the right bar or plus sign."
(overlay-put ov 'valign t)))
(cl-defmethod valign--align-separator-row
- ((type (eql org)) (style (eql multi-column)) pos-list)
+ (type (style (eql multi-column)) pos-list)
"Align the separator row in multi column style.
-TYPE must be 'org-mode, STYLE is 'multi-column.
+TYPE can be 'org-mode or 'markdown-mode, STYLE is 'multi-column.
POS-LIST is a list of positions for each column’s right bar."
(ignore type style)
(let ((p (point))
- (col-idx 0))
+ (col-idx 0)
+ (max-col (1- (length pos-list)))
+ (seperator-p (valign--separator-p)))
(while (and (< (point) (point-max))
- (search-forward "+" (line-end-position) t))
- (valign--separator-row-add-overlay
- p (1- (point))
- (or (nth col-idx pos-list) 0))
+ (<= col-idx max-col)
+ (re-search-forward "[+|]" (line-end-position) t))
+ ;; Separator rows that has empty cells (|----| |----|)
+ ;; is also possible.
+ (if seperator-p
+ (valign--separator-row-add-overlay
+ p (1- (point)) (nth col-idx pos-list))
+ (valign--put-text-property
+ p (1- (point)) (nth col-idx pos-list)))
(cl-incf col-idx)
- (setq p (point)))
- ;; Last column
- (when (search-forward "|" (line-end-position) t)
- (valign--separator-row-add-overlay
- p (1- (point))
- (or (nth col-idx pos-list) 0)))))
-
-(cl-defmethod valign--align-separator-row
- ((type (eql markdown)) (style (eql multi-column)) pos-list)
- "Align the separator row in multi column style.
-TYPE must be 'markdown-mode, STYLE is 'multi-column.
-POS-LIST is a list of positions for each column’s right bar."
- (ignore type style)
- (let ((p (point))
- (col-idx 0))
- (while (and (< (point) (point-max))
- (search-forward "|" (line-end-position) t))
- (valign--separator-row-add-overlay
- p (1- (point))
- (or (nth col-idx pos-list) 0))
- (cl-incf col-idx)
- (setq p (point)))))
+ (setq p (point))
+ (setq seperator-p (valign--separator-p)))))
(defun valign--guess-table-type ()
"Return either 'org or 'markdown."
- [elpa] externals/valign eea7454 173/198: * valign.el (cl-generic): Add require., (continued)
- [elpa] externals/valign eea7454 173/198: * valign.el (cl-generic): Add require., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 16e3313 174/198: * valign.el (Commentary): Update., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 4005231 165/198: Fix inconsistency after enabling org-indent, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 8c28c8c 151/198: * valign.el: Bump version to 2.3.0., Stefan Monnier, 2020/12/01
- [elpa] externals/valign e82e1f0 155/198: Re-align in jit-lock-functions, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 2d7918b 195/198: Minor fixes, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 831c2a7 176/198: * valign.el (valign--do-row): Fix infinite loop., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 7315f4b 148/198: Add support for org-indent, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 99300eb 167/198: Add support for table.el tables, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 7b581e0 072/198: Remove valign-werid-alignment error, Stefan Monnier, 2020/12/01
- [elpa] externals/valign f6d60d2 078/198: Merge two implementations for valign--align-separator-row,
Stefan Monnier <=
- [elpa] externals/valign e9975b7 083/198: Use new text size calculation, Stefan Monnier, 2020/12/01
- [elpa] externals/valign e32d191 079/198: Valign-table refactor, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 21a397a 092/198: Update README, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 4ecc990 093/198: * valign.el (valign--table-face): Fix markdown-mode., Stefan Monnier, 2020/12/01
- [elpa] externals/valign c4ddfb3 095/198: Fix org-flag-region advice, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 7529ddd 111/198: Revert "* valign.el (valign-table): Tuck in some long lines.", Stefan Monnier, 2020/12/01
- [elpa] externals/valign 97beef8 127/198: Remove valign-table-quiet, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 1412fef 133/198: * valign.el (valign-table): Suppress search errors., Stefan Monnier, 2020/12/01
- [elpa] externals/valign fc591d8 129/198: * valign.el (valign-table-1): Clear overlay before measuring table., Stefan Monnier, 2020/12/01
- [elpa] externals/valign c5eb220 108/198: Remove valign--face-attribute, Stefan Monnier, 2020/12/01