sourceforge.net

Scintilla / Feature Requests / #1328 [PATCH] Raku (Perl 6) Lexer Development Created

  • ️Wed Jan 15 2020

Dear Scintilla,

I have been working on a Raku (Perl6) lexer implementation and have a version for 4.2.1 included. I have covered support for the following so far:

  • Comments, both line and embedded (multi-line)
  • POD, no inline highlighting as yet...
  • Heredoc block string, with variable highlighting (with qq)
  • Strings, with variable highlighting (with ")
  • Q Language, including adverbs (also basic q and qq)
  • Regex, including adverbs
  • Numbers
  • Bareword / identifiers
  • Types
  • Variables: my, positional, associative, callable
  • Operators (blanket cover, no sequence checking)
  • Folding:
    • Comments: line / multi-line
    • POD sections
    • Code blocks {}

Patch / Build Scintilla 4.2.1

$ hg clone http://hg.code.sf.net/p/scintilla/code -r rel-4-2-1 scintilla
$ cd scintilla
$ cp ../scintilla-4.2.1_raku_patch.diff .
$ hg import scintilla-4.2.1_raku_patch.diff
$ cd gtk/
$ make

Patch / Build SciTE 4.2.1

$ wget https://excellmedia.dl.sourceforge.net/project/scintilla/SciTE/4.2.1/scite421.tgz
$ tar xzf scite421.tgz
$ cd scite
$ cp ../scite-4.2.1_raku_patch.diff .
$ patch -s -p0 < scite_4.2.1_raku_patch.diff
$ cd gtk/
$ make
$ sudo make install

There is still work to do, but I though it would be worth throwing open to the community. I also have an implementation for the Geany editor.

Best regards,

Mark.