Page 1 of 3 123 LastLast
Results 1 to 10 of 21

Thread: NotePad++ native DataFlex support

  1. #1

    Default NotePad++ native DataFlex support

    Hi,

    As you may know The Hammer uses the scintilla control for its editor.
    Over the past week I have worked with the developer from that control to get my DataFlex lexer merged into the latest scintilla control.
    That merge was done last night. So next version of the scintilla control WILL have native DataFlex support.

    That by itself is great as it makes it easier for me to keep the editor control in The Hammer in sync with new updates to the scintilla control.
    But.. it is great for more reasons as just "The Hammer".

    As you might know the scintilla control is used by more source code editors.
    One fairly popular editor is "NotePad++"...

    So today I played a bit with NotePad++ and yes indeed it is possible to add native DataFlex language support there too.
    You can find the code for that here:
    https://github.com/wilva/notepad-plus-plus

    However it will take a bit more time to get my code for that upstream as the NotePad++ developer will first have to sync with the latest scintilla control. I have no idea when that will happen.

    NotePad++ does not just allow you to swap out the scintilla control DLL (sciLexer.dll) as it has to be signed with their developers certificate.

    So in order to be able for you to play with it and give me feedback I prepared a few precompiled binaries (with the certificate check removed):

    https://projects.vdf-guidance.com/at...7-DataFlex.zip (32 bits)
    https://projects.vdf-guidance.com/at...taFlex-x64.zip (64 bits)

    Note that I did not sign those binaries (sorry too much hassle for the moment) and as they are just zipped, you will have to "unblock" them in Windows Explorer properties.

    There's also 2 .xml files that have been adapted.

    So you should get the official .zip notepad++ 7.7 version, then replace the notepad++.exe and the scilexer.dll
    Put the 2 .xml's in the same folder.
    Remove/rename existing langs.xml and stylers.xml so that it will generate a new copy from the 2 *.model.xml files.
    Then it should work.

    None of those extra steps are needed once I get this upstream, but for the moment it is what it is.

    Enjoy!
    --
    Wil
    Last edited by wila; 6-Jul-2019 at 05:34 PM. Reason: added 64 bits variant, thanks Dave!

  2. #2
    Join Date
    Mar 2016
    Location
    Central FL
    Posts
    28

    Default Re: NotePad++ native DataFlex support

    Nice. Sounds like some good exposure for DataFlex coming soon because of the many users of those editors...
    Steve Rockefeller,
    DF hobbyist, Leesburg P.D., FL

  3. #3

    Default Re: NotePad++ native DataFlex support

    Steve,

    Seems you have identified my main motivation

    I forgot to mention a few things.

    1. The license of the scintilla control (and thus my donated lexer) is free for commercial use.
    2. The scintilla control compiles in 32 bits as well as 64 bits and supports unicode.
    3. The SciTE editor, which is the editor that scintilla was developed for, already has support for DataFlex merged along with the scintilla merges. The developer of that editor however disabled DataFlex support by default. You have to make a small change to a configuration file to enable it. The reason he disabled support was because there's some file extension clashes with other languages.

    There's a lot of projects using the scintilla control (see https://www.scintilla.org/ScintillaRelated.html ) so can look at other areas later on.
    One step at a time.

    I encourage active notepad++ users to try the above binaries and tell me what they miss or like to see changed.
    --
    Wil

  4. #4
    Join Date
    Nov 2008
    Location
    Round Rock, TX
    Posts
    8,849

    Default Re: NotePad++ native DataFlex support

    Nice work Wil!

  5. #5

    Default Re: NotePad++ native DataFlex support

    Nice!

  6. #6
    Join Date
    Feb 2009
    Location
    Cayman Islands
    Posts
    3,969

    Default Re: NotePad++ native DataFlex support

    Quote Originally Posted by wila View Post
    Steve,

    Seems you have identified my main motivation

    I forgot to mention a few things.

    1. The license of the scintilla control (and thus my donated lexer) is free for commercial use.
    2. The scintilla control compiles in 32 bits as well as 64 bits and supports unicode.
    3. The SciTE editor, which is the editor that scintilla was developed for, already has support for DataFlex merged along with the scintilla merges. The developer of that editor however disabled DataFlex support by default. You have to make a small change to a configuration file to enable it. The reason he disabled support was because there's some file extension clashes with other languages.

    There's a lot of projects using the scintilla control (see https://www.scintilla.org/ScintillaRelated.html ) so can look at other areas later on.
    One step at a time.

    I encourage active notepad++ users to try the above binaries and tell me what they miss or like to see changed.
    --
    Wil
    trying it now. It doesn't much like some of the plugins I use, including the plugin manager itself, and most importantly NPPExec which I have to use to compile charmode stuff.
    I should be on a beach ...

  7. #7

    Default Re: NotePad++ native DataFlex support

    Hi Dave,

    Quote Originally Posted by DaveR View Post
    trying it now. It doesn't much like some of the plugins I use, including the plugin manager itself, and most importantly NPPExec which I have to use to compile charmode stuff.
    Interesting. I'm not sure why it breaks for you though.
    My changes with the master branch are just these:
    https://github.com/wilva/notepad-plus-plus/compare

    Of course I also have a new lexer in the scintilla control itself, but I fail to see how that would explain what you are bumping into.
    The scintilla editor control is not likely to provide the plugin parts, I only remember seeing differences at lexer level.

    The NotePad++ dev's made some changes on May 30 here:
    https://github.com/notepad-plus-plus...commits/master

    Which I think are the only differences between version 7.7 and where trunk is now.
    Is the version of NotePad++ that you used before my binaries also version 7.7?
    If so, do you have more details so that I can try and reproduce your issue?

    You can contact me by email otherwise, so we can try to figure out what is happening here.
    --
    Wil

  8. #8

    Default Re: NotePad++ native DataFlex support

    Ahh.. I forgot the screenshot.

    Here you go:
    Click image for larger version. 

Name:	npp-DataFlex.png 
Views:	154 
Size:	180.8 KB 
ID:	12877

    --
    Wil

  9. #9
    Join Date
    Feb 2009
    Location
    Cayman Islands
    Posts
    3,969

    Default Re: NotePad++ native DataFlex support

    Quote Originally Posted by wila View Post
    Hi Dave,


    Interesting. I'm not sure why it breaks for you though.
    My changes with the master branch are just these:
    https://github.com/wilva/notepad-plus-plus/compare

    Of course I also have a new lexer in the scintilla control itself, but I fail to see how that would explain what you are bumping into.
    The scintilla editor control is not likely to provide the plugin parts, I only remember seeing differences at lexer level.

    The NotePad++ dev's made some changes on May 30 here:
    https://github.com/notepad-plus-plus...commits/master

    Which I think are the only differences between version 7.7 and where trunk is now.
    Is the version of NotePad++ that you used before my binaries also version 7.7?
    If so, do you have more details so that I can try and reproduce your issue?

    You can contact me by email otherwise, so we can try to figure out what is happening here.
    --
    Wil
    didn't really investigate very far, once I broke it I stopped; but most of my plugins failed with this or a similar message: I haven't checked to see if all these plugins got updated for 7.7 (which I applied just before seeing your post and hadn't tested) may have more time tomorrow.

    Click image for larger version. 

Name:	wilA.png 
Views:	101 
Size:	6.5 KB 
ID:	12878
    I should be on a beach ...

  10. #10

    Default Re: NotePad++ native DataFlex support

    Ah right.
    That actually makes perfect sense as I had only compiled a 32 bits version of notepad++, my bad.

    Here's a 64 bits version:
    https://projects.vdf-guidance.com/at...taFlex-x64.zip

    I will edit the top post and add the link there as well.
    --
    Wil

Page 1 of 3 123 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •