[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.e
From: |
Juri Linkov |
Subject: |
bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el |
Date: |
Wed, 03 Mar 2021 21:59:39 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) |
> We currently don't visit the file buffer if it's not already visited,
> parsing the line in a temp buffer instead. That approach resulted in a nice
> perf improvement.
Reusing visited files is a nice feature, but still needs a fix.
Test case: visit emacs/src/xdisp.c and type
C-x p g expose_frame RET
See that not all lines from xdisp.c have font-lock highlighting.
After applying this patch, all xref output lines from xdisp.c
have font-lock faces:
diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el
index 18fdd963fb..6a5361f852 100644
--- a/lisp/progmodes/xref.el
+++ b/lisp/progmodes/xref.el
@@ -1691,7 +1701,10 @@ xref--collect-matches-1
(let* ((beg-column (- (match-beginning 0) line-beg))
(end-column (- (match-end 0) line-beg))
(loc (xref-make-file-location file line beg-column))
- (summary (buffer-substring line-beg line-end)))
+ (summary (progn
+ (unless syntax-needed
+ (font-lock-ensure line-beg line-end))
+ (buffer-substring line-beg line-end))))
(add-face-text-property beg-column end-column 'xref-match
t summary)
(push (xref-make-match summary loc (- end-column beg-column))
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, (continued)
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/03
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/03
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el,
Juri Linkov <=
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/03
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Juri Linkov, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Juri Linkov, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Theodor Thornhill, 2021/03/03