GNU bug report logs -
#12054
24.1; regression? font-lock no-break-space with nil nobreak-char-display
Previous Next
Reported by: "Drew Adams" <drew.adams <at> oracle.com>
Date: Thu, 26 Jul 2012 05:51:02 UTC
Severity: normal
Found in version 24.1
Done: Chong Yidong <cyd <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #11 received at 12054 <at> debbugs.gnu.org (full text, mbox):
"Drew Adams" <drew.adams <at> oracle.com> writes:
> (defface foo '((t (:background "Yellow"))) "" :group 'faces)
> (setq nobreak-char-display nil)
> (font-lock-add-keywords nil '(("[\240]+" (0 'foo t))) 'APPEND)
>
> Insert a no-break space:
> C-x 8 RET no-break-space (or C-q 240 RET)
>
> Turn font-lock-mode off, then back on.
>
> With point before the no-break-space, C-u C-x =. That shows that the
> character is indeed a no-break-space, and there is no face on it.
"[\240]+" doesn't do what you want. Octal 240 is a unibyte character,
so that string constant specifies a unibyte string. When this unibyte
string is converted to multibyte, the raw byte becomes codepoint
#x3ffa0.
You should use either of these instead:
(font-lock-add-keywords nil '(("[\u00a0]+" (0 'foo t))) 'APPEND)
(font-lock-add-keywords nil '(("[ ]+" (0 'foo t))) 'APPEND)
This bug report was last modified 12 years and 202 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.