On Sat, 15 Sep 2018 at 09:33, John Yeung <gallium.arsenide(a)gmail.com> wrote:
On Fri, Sep 14, 2018 at 7:06 PM Lex Trotman <elextr(a)gmail.com> wrote:
Auto close is not to save typing.
I absolutely agree with the above. However,
The point of auto close parens and other brackety
things is so the
code remains likely to be reasonably valid whilst typing, so symbol
parsers will still work.
I think this varies a lot depending on the editor. Some editors seem
to be affected much worse than others, and even in the same editor,
some languages could be affected much worse than others.
Of course, some syntaxes are easier to parse even with errors, some
are not. Any parser can parse correct code, being tolerant of errors
is "more difficult". IIUC Microsoft has spent "rather a lot" on the
parsers used in full VS.
One thing I noticed about Atom and Visual Studio Code, for example, is
that when brackets are not closed, *some* of the highlighting still
works but some doesn't. Also, neither one can actively detect that an
open bracket is unmatched.
However, SciTE (which uses Scintilla, the same core as Geany and
Notepad++) DOES detect unmatched open brackets.
Scite only does syntactic highlighting, it doesn't parse declarations
in the code. And Geany does detect unmatched brackets, although the
default theme doesn't make them terribly visible (just bold). You can
of course change the theme. And if you are editing inside say C code,
a new open { will always match, its the one before it that does not
appear to match to the Scintilla naive algorithm :)
Geany uses the ctags parsers to parse declarations to populate the
symbols tab and to feed Scintilla the type lists to be highlighted,
which Scite does not do. Parsing is more dependent on legal syntax,
its noticeable that following symbols will often disappear from the
symbols tab when unmatched brackets occur.
Even if you buy into the idea that closed brackets are to help the
editor work better, the increased inconvenience in typing is a fairly
high price to pay. Editors are supposed to work for *us*, not the
other way around.
And thats why the feature can be turned off at the users discretion.
Cheers
Lex
John Y.
_______________________________________________
Users mailing list
Users(a)lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/users