Notepad++ v8



  • @Jean-Michel-Decoret

    document commutator : headers of columns haven’t switched in dark mode

    Yes, we are aware of this. Some parts are not yet in dark mode. We will work on them in the future version.

    I use NppFTP extension (always opened), which do not switch to dark mode

    Plugins should use the API NPPM_GETEDITORDEFAULTBACKGROUNDCOLOR for getting the background color from Notepad++ then change its panel background color by using the value it’s got. I’ll try to do a demo in NppPluginDemo plugin.



  • @donho said in Notepad++ v8:

    Plugins should use the API NPPM_GETEDITORDEFAULTBACKGROUNDCOLOR for getting the background color from Notepad++ then change its panel background color by using the value it’s got.

    That’s not sufficient. A user can also set a dark theme (e.g. Zenburn or Obsidian) but still running light mode. The main difference of dark and light mode is, from the view of a plugin developer, the style of the icons. Simply querying the editor background color says nothing about current icon style. That’s the reason why I filed issue #9809.

    IMO we need a message/API that plugins can query to figure out whether dark mode is currently active or not. Additionally it would be useful to have a notification message that is fired when dark mode is activated or deactivated.

    I know, the preferences dialog says that Notepad++ has to be restarted after (de-)activating dark mode but indeed it looks like this is not really neccessary - dark mode goes (in-)active instantly. Having a “dark mode switched” message would also allow plugins to instantly change their UI.

    These additional messages I’m talking about in the above text would streamline Npp’s UI and would help to give it a professional look, something a fantastic software like Notepad++ highly deserves.



  • @All, thank you for enabling Dark Mode in Notepad++. It looks great. Also, the new icons are pretty slick. I have created a short video review of the Notepad++ Version 8 features, mainly with dark mode, VS2017_dark theme, fluent UI icons, distraction-free mode, and reverse line order features.

    Notepad++ V8 Review - Dark Mode, Fluent UI Icons & More

    I hope it is helpful to someone who is considering to update their Notepad++ to version 8.

    Thank you.
    Amit.



  • I’ve been a Notepad++ user for a few years now and I greatly appreciate its speed and flexibility; however, I’ve just discovered some really strange behaviour that is difficult to identify and isolate and appears to be unique; any help will be gratefully received!

    First, an explanation: I’m using Notepad++ as part of a multi-stage process to convert a regularly-published InDesign document into html, by creating a large number of macro steps which turn the text into consistently-formatted html which can be added to a website.

    However, when trying to convert the most recent document, Notepad++ ended up crashing. After conducting some troubleshooting, I realised that the issue (whatever it is) was introduced in version 8. If I run my saved macros in v7.9.5 they work seamlessly; running them in version 8 or above (I’ve installed and tested them all) they crash the app.

    While I could just reinstall v7.9.5 and be done with, this doesn’t address the issue going forward, and it’ll mean I’ll miss out on bug fixes and security updates - so I’ve tried to delve further into my macros to identify at what point they cause the app to crash.

    I should point out that my macros are in-depth and complex; all rely heavily on regex to ensure the outputted html is correct. The macro that I’m testing has 52 separate find and replace actions, with some of them being pretty complex. However, despite this, it has not presented a problem so far - Notepad++ will breeze through these steps in seconds, and is one of the reasons why it works so well!

    When troubleshooting, I changed these 52 stages into individual macros which I then ran separately, in order to find out the point at which the searches failed. All seemed to work up to search 28, which is as follows:

    <div\sid="_idContainer\d+?"(\sclass="[^<>]+?")>\s*?<h2 class="Section"(\sid="[^<>]+?"|)>(\W|)(\w)(\w*)([^<>]?)(\s?)(\W|)(\w?)(\w*)([^<>]?)(\s?)(\W|)(\w?)(\w*)([^<>]?)(\s?)(\W|)(\w?)(\w*)([^<>]?)(\s?)(\W|)(\w?)(\w*)([^<>]?)</h2>\s*?<h2(\sid="[^<>]+?"|)>(\W|)(\w)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)(\w?)(\w*)([^<>]?)(\s?)([^<>]*)</h2>
    

    And it replaces it with this:

    <div id="ISSUE-\U$4\E\L$5\E\U$9\E\L$10\E\U$14\E\L$15\E\U$19\E\L$20\E\U$24\E\L$25\E-\U$29\E\L$30\E\U$33\E\L$34\E\U$37\E\L$38\E\U$41\E\L$42\E\U$45\E\L$46\E\U$49\E\L$50\E\U$53\E\L$54\E\U$57\E\L$58\E\U$61\E\L$62\E\U$65\E\L$66\E\U$69\E\L$70\E\U$73\E\L$74\E\U$77\E\L$78\E"$1>\n<h2 class="Section"$2>$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18$19$20$21$22$23$24$25$26</h2>\n<h2$27>$28$29$30$31$32$33$34$35$36$37$38$39$40$41$42$43$44$45$46$47$48$49$50$51$52$53$54$55$56$57$58$59$60$61$62$63$64$65$66$67$68$69$70$71$72$73$74$75$76$77$78$79$80$81</h2>
    

    This changes an already-existing div’s id to one that is based on the contents of the following two h2s, and this is where the trouble seems to start. This is what the code looks like before running this macro:
    code1.png
    After running it, it then looks like this:
    code2.png
    You can see that the CR/LF endings aren’t displaying correctly, and that some characters seem to be missing (the ‘l’ from volume on line 6, and the ‘d’ from id on line 10, for example)
    If you then close the app and then reopen it, it then looks like it should:
    code3.png
    This leads me to believe that something has changed on v8 and above that is causing macro processing to break. Why are the CR/LF endings not displaying correctly after searching?

    I’m not sure that this is the cause of the macros failing, but I’m assuming that it’s contributing to it. Incidentally, if I add the regex into the find/replace box and run it manually, one at a time, there are no issues; but if I use the ‘replace all’ button, it displays the same as above.

    Lastly, I’ve replicated this issue on two computers, with the same behaviour on both.

    Does anyone have any idea what would cause this behaviour? Any help gratefully received!



  • @spiffey ,

    I tried typing up lines 10-12 of your example input, because you implied that you ran macro 28’s regex on that first image’s text – and since the FIND regex that you showed started with <div\sid="_idContainer\d+?"(\sclass="[^<>]+?")>, then that’s the first place in your image that it could possibly match. Unfortunately, with those three lines, when I copy/pasted your search regex into Notepad++, it wouldn’t find anything, whether it was v7.9.5 or v8.1.2. So the text you’ve shown isn’t enough to replicate the problem or even experiment with it.

    Until you give us data and a regex that we can copy/paste – and preferably also grab macro28 from your shrotcuts.xml and paste it here – it’s going to be really hard to help you debug. For the “before” data, give us the minimum amount of text to be able to match your regex and show your problem.

    I have never seen Notepad++ get confused like you implied, showing some CRLF as the black-boxed characters and others as standard newline sequences. I am wondering whether some other plugin that you have installed is getting in the way of proper execution of your macro, or otherwise affecting Notepad++'s behavior unexpectedly (ie, maybe it’s the plugin that isn’t compatible with NPP => v8 instead of the macro itself). Sharing the ? > Debug Info on both the working v7.9.5 and the non-working v8 will be helpful.



  • Thanks @PeterJones; I’ll post the various items you need below:

    Here’s the debug from v7.9.5:

    Notepad++ v7.9.5 (64-bit)
    Build time : Mar 21 2021 - 02:13:17
    Path : C:\Program Files\Notepad++\notepad++.exe
    Admin mode : OFF
    Local Conf mode : OFF
    OS Name : Windows 10 Pro (64-bit)
    OS Version : 2009
    OS Build : 19043.1110
    Current ANSI codepage : 1252
    Plugins : ComparePlugin.dll mimeTools.dll NppConverter.dll NppExport.dll NppSnippets.dll XMLTools.dll

    And from v8:

    Notepad++ v8 (64-bit)
    Build time : Jun 6 2021 - 18:38:25
    Path : C:\Program Files\Notepad++\notepad++.exe
    Command Line :
    Admin mode : OFF
    Local Conf mode : OFF
    Cloud Config : OFF
    OS Name : Windows 10 Pro (64-bit)
    OS Version : 2009
    OS Build : 19043.1110
    Current ANSI codepage : 1252
    Plugins : ComparePlugin.dll mimeTools.dll NppConverter.dll NppExport.dll NppSnippets.dll XMLTools.dll

    (Interestingly, the OS version above is listed as 2009, but according to Windows, it’s 21H1.)

    I’m not sure how to send over the xml files - there doesn’t seem to be any way to upload them (they’re around 140kb in size) but with around 900 lines they’re a bit much to copy and paste into this window …



  • You can download the two xml files from this WeTransfer link (https://we.tl/t-EFNdp95kbx - expires in 7 days). This comprises my full shortcuts file, and the text that is processed by the shortcuts (note that some sections have been removed as they contain personal information). The Macro to run is ‘Process Magazines’.



  • @spiffey said in Notepad++ v8:

    You can download the two xml files from this WeTransfer link …

    Sorry, my IT department blocks such sites.

    but with around 900 lines they’re a bit much to copy and paste into this window …

    As I said in the previous post, “give us the minimum amount of text to be able to match your regex and show your problem”. That doesn’t mean give us a 900-line file. That means that you give us a short enough file that you can paste it into the forum (using the forum’s </> button on the toolbar to mark it as plain text), but enough data that it matches the single regex you share (or that’s embedded in the macro#28 source that you should share as well), making sure it’s also enough that it shows the different behavior between v7.9.5 and v8.x

    This comprises my full shortcuts file,

    We don’t need or want your full shortcuts file. Just copy/paste the <macro> ... </macro> section for the one “macro#28” where you narrowed the problem down to. We are not going to debug your full 52 stage macro; you said the problem was in stage 28, so that’s all that you need to share. And the data that you give us needs to be properly matched by whatever is in stage 28, and also show the difference in behavior.



  • @PeterJones My apologies for any misunderstanding and thanks for your help.

    It seems as though there is something wrong with using multiple macros as once as, if I separate out the minimum code and macro, etc., the macro operates as expected. Logically, then, the software either doesn’t like chaining together macros or there’s something about the file that I’m trying to process that it doesn’t like. I’ve just tried processing the full text, and it’s failed after running step 28 as it previously did, with the following warning:

    An exception occurred. Notepad++ cannot recover and must be shut down.
    The exception details are as follows:
    Code: 0xC0000005
    Type: Access violation
    Exception address: 0x00007FF6D3D9DFB1
    

    I’ll just have to try rebuilding the macros step by step and see if I can identify the problem and, if not, it looks like I’m stuck on v7.9.5 …



  • @spiffey said in Notepad++ v8:

    You can download the two xml files from this WeTransfer link (https://we.tl/t-EFNdp95kbx - expires in 7 days). This comprises my full shortcuts file, and the text that is processed by the shortcuts (note that some sections have been removed as they contain personal information). The Macro to run is ‘Process Magazines’.

    I was brave enough to download. But turns out it expired😀
    746a51ee-4b3d-4fc5-825a-fac1bb218be6-image.png



  • @mere-human Thanks for being prepared to give it a try but, as it was made clear above that making the entire file and shortcuts available was massively overstepping the bounds and etiquette of the forum, I immediately took down the link.

    I’m sorry to say this was down to my naivety (as this is my first time posting to the forum), for which I apologise.


Log in to reply