GNU bug report logs - #66555
29.1; ChangeLog font-lock wrong when it comes to sub-part / conditional components

Previous Next

Package: emacs;

Reported by: "Alfred M. Szmidt" <ams <at> gnu.org>

Date: Sun, 15 Oct 2023 10:21:02 UTC

Severity: normal

Found in version 29.1

To reply to this bug, email your comments to 66555 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#66555; Package emacs. (Sun, 15 Oct 2023 10:21:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Alfred M. Szmidt" <ams <at> gnu.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 15 Oct 2023 10:21:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "Alfred M. Szmidt" <ams <at> gnu.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.1;
 ChangeLog font-lock wrong when it comes to sub-part / conditional
 components
Date: Sun, 15 Oct 2023 06:19:58 -0400
ChangeLog mode does the wrong thing when it comes to font-lock when
you have sub-part components or conditionals:

	* file.text (zork) <bar>
	(bork) <bar>: Some change.

	* file.text (zork) [foo]
	(bork) [bar]: Some change.

<foo> nor [foo] is not font-locked properly, the ChangeLog format
specifies the following:

|    Break long lists of function names by closing continued lines with
| ')', rather than ',', and opening the continuation with '('.  This makes
| highlighting in Emacs work better.  Here is an example:
| 
|      * src/keyboard.c (menu_bar_items, tool_bar_items)
|      (Fexecute_extended_command): Deal with 'keymap' property.

Moving the sub-part / conditional to before the function name also
does the wrong thing,

	* file.text <bar> (zork)
	(bork) <bar>: Some change.

	* file.text [foo] (zork)
	(bork) [bar]: Some change.

Now the function name is not font-locked.


In GNU Emacs 29.1 (build 1, aarch64-apple-darwin21.6.0, NS
 appkit-2113.60 Version 12.6.6 (Build 21G646)) of 2023-08-17 built on
 armbob.lan
Windowing system distributor 'Apple', version 10.3.2487
System Description:  macOS 14.0

Configured using:
 'configure --with-ns '--enable-locallisppath=/Library/Application
 Support/Emacs/${version}/site-lisp:/Library/Application
 Support/Emacs/site-lisp' --with-modules 'CFLAGS=-DFD_SETSIZE=10000
 -DDARWIN_UNLIMITED_SELECT' --with-x-toolkit=no'

Configured features:
ACL GLIB GMP GNUTLS JPEG JSON LIBXML2 MODULES NOTIFY KQUEUE NS PDUMPER
PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER ZLIB

Important settings:
  locale-coding-system: utf-8-unix

Major mode: Change Log

Minor modes in effect:
  shell-dirtrack-mode: t
  rcirc-track-minor-mode: t
  global-company-mode: t
  company-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
~/loaddefs hides /Applications/Emacs.app/Contents/Resources/lisp/loaddefs
/Users/ams/.emacs.d/elpa/transient-0.4.1/transient hides /Applications/Emacs.app/Contents/Resources/lisp/transient

Features:
(shadow emacsbug bug-reference cal-china lunar solar cal-dst cal-bahai
cal-islam cal-hebrew holidays holiday-loaddefs ibuf-ext ibuffer
ibuffer-loaddefs tar-mode locate pcmpl-gnu image-mode exif macros rect
warnings python compat tabify imenu man nroff-mode shortdoc novice
jka-compr ispell cus-start cus-load quail gnus-topic texinfo
texinfo-loaddefs mailalias tramp-cache time-stamp tramp-sh tramp
tramp-loaddefs trampver tramp-integration tramp-compat format-spec
display-line-numbers reveal log-edit add-log todo-mode diary-lib
diary-loaddefs face-remap dabbrev markdown-mode pcmpl-unix sh-script
rx treesit executable smerge-mode vc-hg vc-git diff-mode vc-bzr vc-src
vc-sccs vc-cvs vc-rcs vc-dir ewoc conf-mode cc-mode cc-fonts cc-guess
cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs octave
smie vc-svn rng-xsd xsd-regexp rng-cmpct rng-nxml rng-valid rng-loc
rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn
nxml-ns nxml-mode nxml-outln nxml-rap sgml-mode facemenu nxml-util
nxml-enc xmltok rmailsum rmailout shr-color color rmailmm rmail
em-unix em-term term shell ehelp em-script em-prompt em-ls em-hist
em-pred em-glob em-extpipe em-cmpl em-dirs esh-var pcomplete em-basic
em-banner em-alias esh-mode eshell esh-cmd esh-ext esh-opt esh-proc
esh-io esh-arg esh-module esh-groups esh-util files-x flow-fill qp
mm-archive sort smiley gnus-cite mail-extr textsec uni-scripts
idna-mapping uni-confusable textsec-check gnus-async gnus-bcklg
gnus-ml cursor-sensor nndraft nnmh nnfolder vc-backup log-view
pcvs-util diff gnus-agent gnus-srvr gnus-score score-mode nnvirtual
gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig
nntp gnus-cache gnus-sum shr pixel-fill kinsoku url-file svg dom
gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap
nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range message
yank-media rfc822 mml mml-sec epa epg rfc6068 epg-config mm-decode
mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader
gnus-win gnus nnheader gnus-util range wid-edit disp-table
network-stream puny nsm rcirc parse-time iso8601 time-date mail-queue
sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils
wdired misearch multi-isearch dired-aux dired dired-loaddefs help-fns
cl-print debug backtrace find-func vc-fossil vc vc-dispatcher
slime-asdf grep slime-quicklisp slime-fancy slime-indentation
slime-cl-indent cl-indent slime-trace-dialog slime-fontifying-fu
slime-package-fu slime-references slime-compiler-notes-tree
slime-scratch slime-presentations advice bridge slime-macrostep
macrostep slime-mdot-fu slime-enclosing-context slime-fuzzy
slime-fancy-trace slime-fancy-inspector slime-c-p-c
slime-editing-commands slime-autodoc slime-repl elp slime-parse slime
derived cl-extra help-mode gud easy-mmode apropos compile
text-property-search arc-mode archive-mode noutline outline icons pp
comint ansi-osc ansi-color hyperspec thingatpt slime-autoloads
company-oddmuse company-keywords company-etags etags fileloop
generator xref project ring company-gtags company-dabbrev-code
company-dabbrev company-files company-capf company-cmake company-xcode
company-clang company-semantic company-eclim company-template
company-bbdb company edmacro kmacro pcase cal-menu calendar
cal-loaddefs autoload loaddefs-gen radix-tree lisp-mnt finder-inf
company-autoloads git-commit-autoloads magit-section-autoloads
dash-autoloads markdown-mode-autoloads transient-autoloads
with-editor-autoloads info compat-autoloads package browse-url url
url-proxy url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x
map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc
iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/ns-win ns-win
ucs-normalize mule-util term/common-win tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode
lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch
easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple
cl-generic indonesian philippine cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button
loaddefs theme-loaddefs faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget keymap hashtable-print-readable backquote threads kqueue
cocoa ns multi-tty make-network-process emacs)

Memory information:
((conses 16 1689816 1290001)
 (symbols 48 75704 20)
 (strings 32 212457 56530)
 (string-bytes 1 7143931)
 (vectors 16 77270)
 (vector-slots 8 1863751 427751)
 (floats 8 1119 789)
 (intervals 56 112004 220835)
 (buffers 984 129))




This bug report was last modified 202 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.