emacs-diffs
[Top][All Lists]
Advanced

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

master 1939f75: whitespace: Turn long lines regexp into a function (bug#


From: Noam Postavsky
Subject: master 1939f75: whitespace: Turn long lines regexp into a function (bug#36837)
Date: Sun, 1 Mar 2020 22:56:30 -0500 (EST)

branch: master
commit 1939f7580bd283286dce8be7c99ab5dec1bb0814
Author: Štěpán Němec <address@hidden>
Commit: Noam Postavsky <address@hidden>

    whitespace: Turn long lines regexp into a function (bug#36837)
    
    * lisp/whitespace.el (whitespace-color-on): Turn long lines regexp
    into a function to ensure it uses current 'whitespace-line-column'
    and 'fill-column' values.  (Bug#36837)
    (whitespace-lines-regexp): New function.
---
 lisp/whitespace.el | 24 ++++++++++++++----------
 1 file changed, 14 insertions(+), 10 deletions(-)

diff --git a/lisp/whitespace.el b/lisp/whitespace.el
index 0137ddc..47434bf 100644
--- a/lisp/whitespace.el
+++ b/lisp/whitespace.el
@@ -2067,16 +2067,7 @@ resultant list will be returned."
        ,@(when (or (memq 'lines      whitespace-active-style)
                    (memq 'lines-tail whitespace-active-style))
            ;; Show "long" lines.
-           `((,(let ((line-column (or whitespace-line-column fill-column)))
-                 (format
-                  
"^\\([^\t\n]\\{%s\\}\\|[^\t\n]\\{0,%s\\}\t\\)\\{%d\\}%s\\(.+\\)$"
-                  tab-width
-                  (1- tab-width)
-                  (/ line-column tab-width)
-                  (let ((rem (% line-column tab-width)))
-                    (if (zerop rem)
-                        ""
-                      (format ".\\{%d\\}" rem)))))
+           `((,#'whitespace-lines-regexp
               ,(if (memq 'lines whitespace-active-style)
                    0                    ; whole line
                  2)                     ; line tail
@@ -2177,6 +2168,19 @@ resultant list will be returned."
             (setq status nil)))                  ;; end of buffer
     status))
 
+(defun whitespace-lines-regexp (limit)
+  (re-search-forward
+   (let ((line-column (or whitespace-line-column fill-column)))
+     (format
+      "^\\([^\t\n]\\{%s\\}\\|[^\t\n]\\{0,%s\\}\t\\)\\{%d\\}%s\\(.+\\)$"
+      tab-width
+      (1- tab-width)
+      (/ line-column tab-width)
+      (let ((rem (% line-column tab-width)))
+        (if (zerop rem)
+            ""
+          (format ".\\{%d\\}" rem)))))
+   limit t))
 
 (defun whitespace-empty-at-bob-regexp (limit)
   "Match spaces at beginning of buffer which do not contain the point at \



reply via email to

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