[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/valign 316452b 163/198: Change fancy bar to use overlay
From: |
Stefan Monnier |
Subject: |
[elpa] externals/valign 316452b 163/198: Change fancy bar to use overlay |
Date: |
Tue, 1 Dec 2020 18:19:40 -0500 (EST) |
branch: externals/valign
commit 316452b01f136254f06087f1b2bf5a22ce970e2f
Author: Yuan Fu <casouri@gmail.com>
Commit: Yuan Fu <casouri@gmail.com>
Change fancy bar to use overlay
* valign.el (valign--fancy-bar-cursor-fn, valign--render-bar): Use
overlay.
---
valign.el | 24 ++++++++++++++----------
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/valign.el b/valign.el
index fc0916d..15c0109 100644
--- a/valign.el
+++ b/valign.el
@@ -389,23 +389,27 @@ WINDOW is just window, PREV-POS is the previous point of
cursor
before event, ACTION is either 'entered or 'left."
(ignore window)
(with-silent-modifications
- (pcase action
- ('entered (put-text-property
- (point) (1+ (point))
- 'display (if (eq cursor-type 'bar)
- '(space :width (3)) " ")))
- ('left (put-text-property prev-pos (1+ prev-pos)
- 'display '(space :width (1)))))))
+ (let ((ov-list (overlays-at (pcase action
+ ('entered (point))
+ ('left prev-pos)))))
+ (dolist (ov ov-list)
+ (when (overlay-get ov 'valign-bar)
+ (overlay-put
+ ov 'display (pcase action
+ ('entered (if (eq cursor-type 'bar)
+ '(space :width (3)) " "))
+ ('left '(space :width (1))))))))))
(defun valign--render-bar (point)
"Make the character at POINT a full-height bar."
(with-silent-modifications
(put-text-property point (1+ point)
- 'display '(space :width (1)))
- (put-text-property point (1+ point)
'cursor-sensor-functions
'(valign--fancy-bar-cursor-fn))
- (valign--put-overlay point (1+ point) 'face '(:inverse-video t))))
+ (valign--put-overlay point (1+ point)
+ 'face '(:inverse-video t)
+ 'display '(space :width (1))
+ 'valign-bar t)))
(defun valign--clean-text-property (beg end)
"Clean up the display text property between BEG and END."
- [elpa] externals/valign 762b115 144/198: * valign.el (valign--separator-row-add-overlay): Change 'valign--glyph-width-at-point' to 'valign--pixel-width-from-to'., (continued)
- [elpa] externals/valign 762b115 144/198: * valign.el (valign--separator-row-add-overlay): Change 'valign--glyph-width-at-point' to 'valign--pixel-width-from-to'., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 1858260 146/198: * valign.el: Bump version to 2.2.0, Stefan Monnier, 2020/12/01
- [elpa] externals/valign ac5bdad 154/198: Fix cell-width calculation, Stefan Monnier, 2020/12/01
- [elpa] externals/valign e94782a 180/198: Remove org-agenda-finalize-hook, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 5e70d9b 196/198: Fix beginning- and end-of-table functions, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 44f065d 131/198: * valign.el: Bump version to 2.1.0, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 693f086 135/198: * valign.el (valign-mode): Change tab-advice to :after., Stefan Monnier, 2020/12/01
- [elpa] externals/valign eaa5cb1 104/198: Enable autoload mechanism, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 4c514ce 169/198: Use text properties for table.el tables, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 8e598bf 170/198: ; * test.org: Add a test table., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 316452b 163/198: Change fancy bar to use overlay,
Stefan Monnier <=
- [elpa] externals/valign 06d9e1a 192/198: Prepare for ELPA, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 5729733 178/198: * valign.el: Move user land code down below (re-layout)., Stefan Monnier, 2020/12/01
- [elpa] externals/valign b189102 194/198: ; * test.org: New test., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 44c747b 136/198: * valign.el (valign-table): Clean up table if error occurs., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 80cf682 121/198: Remove some internal variables, Stefan Monnier, 2020/12/01
- [elpa] externals/valign 9daeab8 071/198: * valign.el (valign-table-quite): Really ignore errors., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 09e89aa 105/198: * valign.el (valign--at-table-p): Don’t align org blocks., Stefan Monnier, 2020/12/01
- [elpa] externals/valign e91abf2 112/198: Extract out boilerplate from valign-table, Stefan Monnier, 2020/12/01
- [elpa] externals/valign d799e31 181/198: ; * valign.el (valign--cell-content-config): Fix typo., Stefan Monnier, 2020/12/01
- [elpa] externals/valign 9fc0c11 149/198: Use new function to calculate space and bar width, Stefan Monnier, 2020/12/01