bug-gnu-emacs
[Top][All Lists]
Advanced

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

Perl mode font-lock-mode and $'


From: Matthieu Moy
Subject: Perl mode font-lock-mode and $'
Date: Tue, 25 Nov 2003 14:23:35 +0100
User-agent: Gnus/5.090007 (Oort Gnus v0.07) Emacs/21.2 (sparc-sun-solaris2.5.1)

This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English, because the Emacs maintainers do not have
translators to read other languages for them.

Your bug report will be posted to the bug-gnu-emacs@gnu.org mailing list,
and to the gnu.emacs.bug news group.

In GNU Emacs 21.2.2 (sparc-sun-solaris2.5.1, X toolkit)
 of 2002-08-05 on crx968
configured using `configure  --prefix=/var/tmp/bgm'
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: C
  locale-coding-system: nil
  default-enable-multibyte-characters: t

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:




Hi ! 

In the perl language, strings  can be delimited like 'string', but the
special sequence $' is not the beginning or end of a string. 

Unfortunately, Emacs will fontify 

$' == $val;

As the beginning of a string.  This makes the rest of the buffer badly
fontified. The workaround is to write

$' == $val; #'

But I can't do it on code which isn't mine. 


Note that this is fixed in xemacs. 

One  difference  between  emacs   and  xemacs  is  the  definition  of
perl-mode-syntax-table : In xemacs we have

  (modify-syntax-entry ?$ "\\" perl-mode-syntax-table)

Whereas emacs says

    (modify-syntax-entry ?$ "/" st)

But changing it to 

    (modify-syntax-entry ?$ "\\" st)

Doesn't seem to be sufficient. (maybe I did something wrong ?)



Recent input:
<up> M-f M-f M-f M-f <backspace> ' M-f M-b M-b M-f 
M-f <left> <left> <left> <left> <left> <left> <backspace> 
<backspace> w <return> M-x f o n t <tab> f o <tab> 
u <tab> <return> <C-tab> C-s f o n t - l o c k <right> 
C-s $ <backspace> \ <up> <up> <up> C-s ' C-s C-s C-s 
C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s 
C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s 
C-s C-s C-s <up> M-x r e p o <tab> r <tab> e <backspace> 
<tab> <return>

Recent messages:
Checking new news...done
No gnus is bad news
No mail
Auto-saving...
Quit [2 times]
iswitchb-read-buffer: Quit
call-interactively: Quit
nil
Mark saved where search started [3 times]
Making completion list...

-- 
Matthieu MOY                                    Ph. D Student
STMicroelectronics  -----  System and Architecture Technology
Verimag  --------  Synchronous Languages and Reactive Systems




reply via email to

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