[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: better `up-list' for emacs-lisp, fundamental modes
From: |
Joe Corneli |
Subject: |
Re: better `up-list' for emacs-lisp, fundamental modes |
Date: |
Tue, 22 Feb 2005 11:10:32 -0600 |
> However, `up-list' does not let you move up out of a string:
That's because you have to know whether you're inside or outside in order to
know whether a " closes or opens a string. In contrast a ( or )
unambiguously identifies whether it closes or opens a paren.
Knowing whether you're inside a string can require scanning the whole buffer
from point-min, which can be problematic. The new function syntax-ppss can
be used to try and make this efficient, but any such change should be
postponed to after Emacs-22.1.
While I'd love the added functionality of being able to hop out of a
string in general, the main point of my report has to do with parens,
not strings, like this situation --
(concat "this-is-a-string" "--this-is-too")
^ ;=> up-list: Scan error: "Unbalanced parentheses", 656 771
Like I said, this currently *works as expected* in Text mode, i.e.
(concat "this-is-a-string" "--this-is-too")
^ ^
is observed, not an error. The real high-tech feature for Emacs-22.1
would be to add `up-string-or-list'. I think `up-list' could be fixed
in Emacs-Lisp mode without any major work, because it already *does*
work properly in Text mode.
Re: better `up-list' for emacs-lisp, fundamental modes, Richard Stallman, 2005/02/23