Open TiZ-HugLife opened 8 years ago
Hum, I don't know ruby but IIUC with your example it's the correct behavior, see Scintilla bugs #1006 and 1810, and this mailing list item.
If those aren't right, please report a bug to Scintilla with a link to official Ruby documentation supporting your request, as it would change a current behavior that was introduced on purpose (IIIUC your request).
Thanks for the information. After I head upstream, should I bring anything back here like a Scintilla bug ID?
That would be perfect :)
I've noticed a peculiarity in regards to how the Ruby lexer styles colons. A literal that starts with a colon is of course a symbol, but colons are used in other contexts as well, most notably for hash literals, like this snippet from the Ruby docs:
If you put this in Geany, it will style the colons as symbol literals and not as operators as it should.
This is more important for the Ruby-like static language Crystal, in which the Ruby lexer is almost totally sufficient--aside from the fact it only supports primary keywords and not secondary, class, or type keywords--where this notation is used for named tuples, as well as for type annotation for functions:
def square(n: Int32): Int32
TL;DR: A colon at the start of a word should indicate a symbol literal, but a colon by itself or at the end of a word should be styled as an operator or punctuation.