Scintilla Issues

Started by ForeverZer0, December 10, 2011, 12:08:49 am

Previous topic - Next topic

ForeverZer0

There are a few issues we need to address regarding SciLexer before release.  They are all just cosmetic issues with Ruby syntax highlighting in Ruby. The problem is with the actual library, and is not fixed. Unfortunately, this bug has been present for a while, and there is no future outlook on it being fixed, as can be seen here where one of the developers basically says he has no interest in fixing it.

Here is a little list of the syntax highlighting errors that occur:

  • Keywords after the keyword "def" do not colorize, specifically "def self.method_name".

  • The keywords "if", "unless", "until", and "while" do not colorize when used after the first word of a line.

  • In Ruby range operators ".." and "...", the first dot inherits the color of a number, not an operator.



Now we all know that these issues are fixable, as RMXP and most other programs that use SciLexer have the issue fixed, but unfortunately I cannot fix this on the Python side. The problem is with the optimized way Scintilla searches for what it need to colorize, not any type of rule that can be defined via its Python wrapper, at least as far as I know. As you may have noticed, Gemini suffered from the same problem. I tried replacing the build of SciLexer with the each one of RMXP ,RMVX, and Notepad++ SciLexers, all to no avail. Although some bugs like the "def self.whatever" were fixed, it caused a slew of other coloring bugs, so I didn't use it. 

Anyways, I'm just posting this up to make you all aware. Hopefully SOMEONE on the team who is good with C++ can check into what it would take to get this fixed. ;)
I am done scripting for RMXP. I will likely not offer support for even my own scripts anymore, but feel free to ask on the forum, there are plenty of other talented scripters that can help you.

Blizzard

I know that with SOMEONE you are referring to me. :P

I can take a look at that actually. Are the rules defined as grammar with regex or do I have to mess around with the Scintilla source and recompile the DLL? I don't know what other coloring bugs there are with Notepad++'s Scintilla, but I found it much easier to work with than RMXP. If we're going to use that one as base, it might not be a bad idea if you can find these problems.

After you have that information, make me a task, put up all relevant information (including the list of problems from this post) and assign it to me. I will take care of it.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

ForeverZer0

I have to look into wxPython's implementation actually. I think the scintilla library is part of the actual wx source, and not just a file distributed with it.  I will need to research this a bit more before giving you anything definitive.
I am done scripting for RMXP. I will likely not offer support for even my own scripts anymore, but feel free to ask on the forum, there are plenty of other talented scripters that can help you.

Blizzard

Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.