[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Syntax highlighting in Vim (Was: Lua impressions from a scheme/f# programmer
- From: Dirk Laurie <dpl@...>
- Date: Wed, 27 Jul 2011 10:31:36 +0200
On Tue, Jul 19, 2011 at 03:07:57AM +0200, Steve Litt wrote:
>
> 7) Use Python's space delimited blocks instead of end. I like the way
> Python does it. But seeing as nobody else does, I'll shut up. Vim has
> excellent syntax highlighting, making this a trivial point.
>
The most useful thing about Vim's Lua syntax highlighting is that `end`
is a different color (same as `function`) at the end of a function than
elsewhere. This makes it much easier to track where the many `end`s
come from. But an already excellent implementation could be even better
if `do` ... `end also differed from `if` ... `end`.
I'm using a hack: in ~/.vim/syntax/lua.vim (which, if present, is
preferred to the system-wide one), I've changed this line:
> HiLink luaCond Structure " was: Conditional
(The "Structure" class has a color of its own, used only to highlight
`{` and `}`.)
This makes the three kinds of `end` all different, but `then` and
`else` also get highlighted differently, whereas only `if` IMHO needs
to be: it's the `if` that gets paired with the `end`. But short of
learning how to write syntax files, as opposed to patching them from
a position of ignorance, I can't see how.
Dirk