[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#4030: forward-sexp parses character literal ?; as comment
From: |
Stefan Monnier |
Subject: |
bug#4030: forward-sexp parses character literal ?; as comment |
Date: |
Thu, 06 Aug 2009 14:51:20 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) |
>> While the workaround is good (and documented in the Ubuntu bug as well),
>> the ability of Customize depends on this code working correctly, and it
>> should handle any nominally well-formed .emacs file. Perhaps there are
>> other pieces of code which rely on forward-sexp et alii for Emacs Lisp
>> parsing as well.
> Using a backslash _is_ the canonical way for handling this problem. If
> some part of Emacs puts such a semicolon into an Elisp buffer without
> escaping it, then that part of Emacs is wrong and has to be fixed.
Indeed.
> If you manually insert such a construct, then you are on your own
> (just as when within a string you put a left paren in column zero).
Pretty much, yes.
> We could try to mark any `?;' or `?"' sequences appropriately when
> fontifying though.
We could/should/will improve the syntax parsing to handle those
things properly. But it's a non-trivial amount of work, especially
since every major mode has similar issues but needs different
extra functionality.
>> I'll also point out that an "Unbalanced parentheses" error from deep
>> inside Customize is not a very helpful error message (especially as it
>> does not indicate in which buffer the unbalanced parentheses were
>> found); but perhaps Customize should be adapted to cope if forward-sexp
>> cannot easily be fixed.
> Getting good diagnostics after a parsing error is hard.
Agreed, but that doesn't mean we shouldn't intend to do better: the
current behavior (signalling an internal error to the user) is a bug
that needs to be fixed.
>> It appears that src/syntax.c could perhaps be adapted to take into
>> account character literals as well as quoted strings, but I am not
>> familiar enough with Emacs internals to tell whether this is really a
>> feasible approach.
Yes, clearly it deserves improvement, but that's nontrivial.
Stefan
- bug#4030: forward-sexp parses character literal ?; as comment, era+emacsbugs, 2009/08/04
- bug#4030: forward-sexp parses character literal ?; as comment, martin rudalics, 2009/08/04
- bug#4030: forward-sexp parses character literal ?; as comment, era+emacsbugs, 2009/08/05
- bug#4030: forward-sexp parses character literal ?; as comment, martin rudalics, 2009/08/05
- bug#4030: forward-sexp parses character literal ?; as comment, era+emacsbugs, 2009/08/06
- bug#4030: forward-sexp parses character literal ?; as comment,
Stefan Monnier <=
- bug#4030: forward-sexp parses character literal ?; as comment, martin rudalics, 2009/08/07
- bug#4030: forward-sexp parses character literal ?; as comment, Stefan Monnier, 2009/08/10
- bug#4030: forward-sexp parses character literal ?; as comment, martin rudalics, 2009/08/11