emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/vlf 1dcd122 086/310: Use overlays for number indicators


From: Stefan Monnier
Subject: [elpa] externals/vlf 1dcd122 086/310: Use overlays for number indicators.
Date: Sat, 28 Nov 2020 00:32:52 -0500 (EST)

branch: externals/vlf
commit 1dcd12288b5985f1bc38d053baa18c41b534fa37
Author: Andrey Kotlarski <m00naticus@gmail.com>
Commit: Andrey Kotlarski <m00naticus@gmail.com>

    Use overlays for number indicators.
---
 vlfi.el | 42 +++++++++++++++++++-----------------------
 1 file changed, 19 insertions(+), 23 deletions(-)

diff --git a/vlfi.el b/vlfi.el
index 08c1431..fbc19a8 100644
--- a/vlfi.el
+++ b/vlfi.el
@@ -560,7 +560,7 @@ The same for mouse EVENT."
     (switch-to-buffer (window-buffer (posn-window (event-end event))))
     (goto-char (posn-point (event-end event))))
   (let* ((pos (point))
-         (pos-relative (- pos (line-beginning-position)))
+         (pos-relative (- pos (line-beginning-position) 1))
          (file (get-char-property pos 'file)))
     (if file
         (let ((chunk-start (get-char-property pos 'chunk-start))
@@ -568,9 +568,7 @@ The same for mouse EVENT."
               (buffer (get-char-property pos 'buffer))
               (match-pos (or (get-char-property pos 'match-pos)
                              (+ (get-char-property pos 'line-pos)
-                                (if (< 8 pos-relative)
-                                    (- pos-relative 8)
-                                  0)))))
+                                pos-relative))))
           (unless (buffer-live-p buffer)
             (let ((occur-buffer (current-buffer)))
               (setq buffer (vlfi file))
@@ -630,26 +628,24 @@ The same for mouse EVENT."
                                        line-pos (line-end-position))))
                       (with-current-buffer occur-buffer
                         (unless (= line last-match-line)
-                          (insert (propertize
-                                   (format "%7d:" line)
-                                   'file file
-                                   'buffer vlfi-buffer
-                                   'chunk-start chunk-start
-                                   'chunk-end chunk-end
-                                   'face 'shadow
-                                   'mouse-face '(highlight)
-                                   'line-pos line-pos))
-                          (insert (propertize
-                                   (format "%s\n" line-text)
-                                   'file file
-                                   'buffer vlfi-buffer
-                                   'chunk-start chunk-start
-                                   'chunk-end chunk-end
-                                   'mouse-face '(highlight)
-                                   'line-pos line-pos)))
-                        (forward-line -1)
+                          (insert "\n:")
+                          (let* ((overlay-pos (1- (point)))
+                                 (overlay (make-overlay
+                                           overlay-pos
+                                           (1+ overlay-pos))))
+                            (overlay-put overlay 'before-string
+                                         (propertize
+                                          (number-to-string line)
+                                          'face 'shadow)))
+                          (insert (propertize line-text
+                                              'file file
+                                              'buffer vlfi-buffer
+                                              'chunk-start chunk-start
+                                              'chunk-end chunk-end
+                                              'mouse-face '(highlight)
+                                              'line-pos line-pos)))
                         (let ((line-start (+ (line-beginning-position)
-                                             8))
+                                             1))
                               (match-pos (match-beginning 10)))
                           (add-text-properties
                            (+ line-start match-pos (- last-line-pos))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]