Community
    • Login

    [New Plugin] Scintillua++

    Scheduled Pinned Locked Moved Notepad++ & Plugin Development
    11 Posts 5 Posters 8.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • dailD
      dail
      last edited by dail

      This is a first release of Scintillua++ which adds nearly 70 new languages to Notepad++. For a full list of lexers see this list.

      This is still in early development. This is not meant to replace or replicate current Notepad++ behavior. This does not function as a normal “external lexer” as most other do, such as being configurable through the Style Configurator.

      Installation:

      1. Download and extract the zip file (link below)
      2. Copy Scintillua++.dll to Notepad++'s plugin directory
      3. Copy the contents of the config directory into Notepad++'s plugin config directory - most likely located under %APPDATA%

      Download: https://github.com/dail8859/ScintilluaPlusPlus/releases
      Readme/code/github project: https://github.com/dail8859/ScintilluaPlusPlus

      1 Reply Last reply Reply Quote 7
      • cmeriauxC
        cmeriaux
        last edited by

        Oh my god ! It’s a terrific job you’ve done.
        Congratulations

        1 Reply Last reply Reply Quote 0
        • Ethan PiliavinE
          Ethan Piliavin
          last edited by

          FINALLY! Much more sane way to manage and share lexers. THANK YOU ! Thank you! thank you!

          1 Reply Last reply Reply Quote 0
          • Nick BrownN
            Nick Brown
            last edited by

            This is just excellent, thank you so much for this, just one thing I have noticed so far is that if I have a tab open that is using Scintillua++ lexer and switch to another that is using the npp (Scintilla native) lexer then back to the tab using the Scitillua++ lexer I lose the folder margin, I can use the View->Hide Folder Margin twice to hide it and then show it and it returns.

            1 Reply Last reply Reply Quote 0
            • Nick BrownN
              Nick Brown
              last edited by

              Actually, the issue is not in general with the Scintillua++ lexer but with one in particular, the sass lexer for a .scss file, which from looking at the sass.lua file seems to inherit in some way from the css lexer css.lua and maybe that is the issue.

              dailD 2 Replies Last reply Reply Quote 0
              • dailD
                dail @Nick Brown
                last edited by

                @Nick-Brown

                Thanks for the info. I will definitely look into it.

                1 Reply Last reply Reply Quote 0
                • dailD
                  dail @Nick Brown
                  last edited by

                  @Nick-Brown

                  I believe the problem should be fixed now with the missing fold margin. The new release can be downloaded here:

                  https://github.com/dail8859/ScintilluaPlusPlus/releases/tag/v1.0.1

                  1 Reply Last reply Reply Quote 0
                  • Nick BrownN
                    Nick Brown
                    last edited by

                    dail,

                    Thanks for the update, works a treat now.

                    Now for some suggestions, and observations.

                    1. Set a lexer on file save, i.e. create a new file (default language as per npp settings) and then save the file with an extension of say .scss for the sass lexer, then the sass lexer should be applied as in effect the language has been updated by changing the file extension. ( I have already implemented this, I can let you have the updated code if required, but you already handle the FILESAVE notification and reload the config file if that has been edited, just need to apply the lexer if it is not the config file saved).

                    2. Have a menu option to apply a lexer to a file, so for example create a new file and then be able to set the lexer without having to save it. The same could be achieved by implementing 1. and saving the file with the desired extension, but say I just wish to create a temporary file but apply a lexer, it would be nice to be able to select one as per the language menu in npp. It should be assumed regardless of the config switch override that you wish to override the npp/scintilla built in lexer in this case.

                    I appreciate that this is still early in the development, just hoping my thoughts could help improve and already excellent implementation, as the ability to be able to in effect update the lexers by amending the relevant .lua file is so much more convenient than having to rebuild source code, and the fact that any changes made to the .lua file are then applied straight away as soon as it is saved to any open files is fantastic.

                    I will just have to disable the build step that copies the output files and overrides the .lua file changes I have made and have lost every time I have built the source. That’s my issue and not yours.

                    1 Reply Last reply Reply Quote 0
                    • dailD
                      dail
                      last edited by

                      Set a lexer on file save

                      Yeah there are a few cases like this when the language needs rechecked.

                      I have already implemented this, I can let you have the updated code if required

                      Pull requests are always welcome.

                      Have a menu option to apply a lexer to a file

                      Definitely a good idea. This isn’t as straight forward as I would like it to be since new languages can be added/removed dynamically and some information may need pulled out of the internal Lua interpreter.

                      and have lost every time I have built the source

                      Ah yes if you are editing one of the lexers already built in then it will get copied over.

                      1 Reply Last reply Reply Quote 0
                      • dailD
                        dail
                        last edited by

                        v1.1 has been released:

                        • 64bit support (thanks to @chcg)
                        • Fix config file not being properly reloaded
                        • Detect when files get renamed
                        • Better error reporting

                        Download (32 and 64bit): https://github.com/dail8859/ScintilluaPlusPlus/releases/tag/v1.1

                        1 Reply Last reply Reply Quote 0
                        • Roy ActionR
                          Roy Action
                          last edited by

                          I just wanted to say thank you for that awesome plugin … finally some proper SASS highlighting (with some minor modifications of the “sass.lua”). This plugin deserves more attention!!!

                          Best regards

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post
                          The Community of users of the Notepad++ text editor.
                          Powered by NodeBB | Contributors