Community
    • Login
    1. Home
    2. Popular
    Log in to post
    • All Time
    • Day
    • Week
    • Month
    • All Topics
    • New Topics
    • Watched Topics
    • Unreplied Topics
    • All categories
    • donhoD

      Notepad++ v8.9.1 Release

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      18
      6 Votes
      18 Posts
      10k Views
      PeterJonesP

      @Drift91 said in Notepad++ v8.9.1 Release:

      the user had outdated themes, which didn’t have the KEY style for either Langage:INI or Language:Properties.

      Were the preinstalled themes out-of-date,

      Yes. Only stylers.model.xml and themes\DarkModeDefault.xml were guaranteed to have all updates; all other themes were up to the original theme author and/or other volunteers to keep up to date, and volunteer ever took real ownership of them. That’s why I implemented the new feature, to make sure that themes would never get hopelessly out of date again.

      I didn’t see a changelog entry about it.

      The changes involved in this new feature were announced as:

      v8.8.9 Announcement, Item 8 v8.9 Announcement, Item 7 v8.9.1 Announcement, Item 10 (above)
    • วีรภัทร ทวีทรัพย์ว

      The official repository, download.notepad-plus-plus.org, is down!

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      5
      0 Votes
      5 Posts
      72 Views
      CoisesC

      @ว-รภ-ทร-ทว-ทร-พย said in The official repository, download.notepad-plus-plus.org, is down!:

      @PeterJones This means historical releases of NPP will also be lost forever? Is there any plan to put them back online somewhere?

      GitHub releases for Notepad++ goes back as far as version 6.7.9, released on Jun 11, 2015. If you’re prepared to build from source, the tags on GitHub go back as far as v4.2.1, committed on August 13th, 2007.

      I tried to find older versions from the SourceForge days on web.archive.org, but it looks like they didn’t archive the actual binaries, just the index page.

    • Jerry DJ

      V8.9.1 Cannot get all of UDL to load

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      5
      0 Votes
      5 Posts
      130 Views
      Jerry DJ

      @PeterJones Thank you so much. It is looking MUCH better now.

    • Bob SmithB

      notepad++ treat sc files as c files

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      5
      0 Votes
      5 Posts
      88 Views
      Bob SmithB

      @PeterJones Thank you.

    • CoisesC

      Columns++ version 1.3: All Unicode, all the time

      Watching Ignoring Scheduled Pinned Locked Moved Notepad++ & Plugin Development
      20
      5 Votes
      20 Posts
      2k Views
      CoisesC

      @guy038 said in Columns++ version 1.3: All Unicode, all the time:

      So, I don’t see exactly which rule should be applied, regarding the word definition !?

      and in Columns++ version 1.3: All Unicode, all the time:

      Again, I don’t understand clearly these differences between the two last columns !

      This is not going to be a complete response yet, but some further explanation.

      Even when using ICU, Boost::regex does not implement the same regex language as described in Unicode Technical Standard #18: Unicode Regular Expressions. Some of the differences are more-or-less dictated by the architecture of Boost::regex; others appear to be choices.

      This is a list of category definitions used by Boost::regex when using ICU; the table comes from matching up char_pointer_range in get_default_class_id and char_class_type in lookup_classname:

      alnum U_GC_L_MASK | U_GC_ND_MASK alpha U_GC_L_MASK blank mask_blank cntrl U_GC_CC_MASK | U_GC_CF_MASK | U_GC_ZL_MASK | U_GC_ZP_MASK d U_GC_ND_MASK digit U_GC_ND_MASK graph (0x3FFFFFFFu) & ~(U_GC_CC_MASK | U_GC_CF_MASK | U_GC_CS_MASK | U_GC_CN_MASK | U_GC_Z_MASK) h mask_horizontal l U_GC_LL_MASK lower U_GC_LL_MASK print ~(U_GC_C_MASK) punct U_GC_P_MASK s U_GC_Z_MASK | mask_space space U_GC_Z_MASK | mask_space u U_GC_LU_MASK unicode mask_unicode upper U_GC_LU_MASK v mask_vertical w U_GC_L_MASK | U_GC_ND_MASK | U_GC_MN_MASK | mask_underscore word U_GC_L_MASK | U_GC_ND_MASK | U_GC_MN_MASK | mask_underscore xdigit U_GC_ND_MASK | mask_xdigit

      Comparison with the table you referenced shows that Boost::regex does not use the same definitions. In particular, lower and upper are defined to be identical to General Categories Ll and Lu, alpha is defined to be identical to General Category L, and word does not contain all the characters mentioned in the Unicode specification.

      For the most part, Columns++ follows the Boost::regex definitions, though I did not include Mn in word. Also the Boost::regex code for isctype implements some of the classifications directly; I think I am close, but not necessarily identical, for those. It looks as if Boost::regex does define xdigit according to the Unicode spec.

      I think that Boost::regex defines word boundaries in terms of word characters (i.e. \b is equivalent to (?<!\w)(?=\w)|(?<=\w)(?!\w)) and that I wouldn’t be able to change that without forking and modifying Boost::regex code.

      I think the questions are whether Boost::regex is more accurately considered wrong, or just different in its implementation of character classes; and if the latter, which is preferable.

      At present, my estimation is that it would be time-consuming, but not impossible or fragile, to implement the Unicode definitions (aside from word boundaries) as listed in Annex C: Compatibility Properties in Columns++.

      Whether that’s what should be done might still be an open question.

    • donhoD

      Notepad++ v8.9.2 Release

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      3
      1 Votes
      3 Posts
      832 Views
      PeterJonesP

      @donho ,

      Regression with UDL. See #17520 for details.

      Steps to Reproduce

      Launch fresh portable v8.9.2 In Language > User Defined Language > Define your language…, set KEYWORDS1 = ABILITYCATEGORY Paste the following:ABILITYCATEGORY:Haunted VISIBLE:QUALIFY ABILITYCATEGORY:Background / Quirk VISIBLE:INVISIBLE ABILITYCATEGORY:Arcane VISIBLE:QUALIFY Set Language > User-Defined Crash

      Issue report has NppDump.dmp file.

      Same steps work just fine in fresh portable 8.9.1, so it’s a regression in this version.

      (This occurred while I was trying to create my reply here – it would crash when I was trying to create the new UDL in v8.9.2, but if I went to v8.9.1 portable, it worked just fine.)

    • temp trashT

      precompiled plugins DLL c/w v8.9.1

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      3
      0 Votes
      3 Posts
      130 Views
      temp trashT

      @PeterJones

      Ah VERY HELPFUL.

      I did not realize that what I had quoted was actually a listing of tab headers.

      The shading was too subtle for me to recognize that this was not an errmsg, but were actually clickable tabs.

      When v8.9.1 started, the tab which was active when opening PluginAdmin was (for whatever reason) the ‘Incompatible’ tab which was entirely blank – leading me to make my error.

      Old people are such fun!

      Thank you so much, all is well. Well, at least it is with NPP, which is the most one can hope for at the moment - the wider world seems to be slipping beyond repair.

    • C

      np++ and USB moving to another PC

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      3
      0 Votes
      3 Posts
      115 Views
      PeterJonesP

      @cashfields ,

      Your post would have been much easier to read if you actually typed your text in the post, rather than typing your text in the image.

      It looks like what you would like is the ability to have the file history be set to “relative” instead of “absolute”. Unfortunately, the developer already rejected a feature request which requested that you be able to store a session (File > Save/Load Session… commands) automatically as relative. And if sessions were too complicated to do that for, in his mind, then doing it for the file history is definitely right out.

      However, if you save a session, and then edit it to be relative, I believe it works … so you could then load the relative session anytime your USB changes drive letter, and it would hopefully work for you.

      (I know it’s not exactly what you’re asking for, but given his rejection of that feature request, it’s the best you’re going to get.)

      Or, for a poor-man’s session: make a batch file that opens each file relatively in the batch file.

    • Charles BuegeC

      Adding a shortcut to a language....

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      8
      1 Votes
      8 Posts
      4k Views
      Paweł AdamP

      @PeterJones Hi, and thank you for your answer. Yes, the problem was partly due to the language, but I managed to address it before you replied. However, the other issue was actually a conflict with a shortcut from another application.

      Cheers!

    • David Smith 2D

      Highlight color not correct

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      3
      0 Votes
      3 Posts
      100 Views
      David Smith 2D

      @Alan-Kilborn
      Current line background colour is now white, also tried minty green
      Selected text is now the minty green
      Multi-selected text color is also minty green

      minty green for all 3 then Current line background colour white.

      green-white.jpg

    • Mister SmittM

      Why is the forum so scary?

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      3
      -3 Votes
      3 Posts
      119 Views
      PeterJonesP

      @Mister-Smitt said in Why is the forum so scary?:

      I chose the dark style. I create a new theme and some simply incredibly disgusting additional black and white window appears in the form of some kind of cutout from the main one, which does not even move.
      Who is your stylist?

      The forum’s themes and skins come from the authors of NodeBB. If you don’t like the free themes that they make available to this Notepad++ community for free, that’s really your problem. You don’t need to be a jerk about it.

    • Mister SmittM

      Where does this nasty line highlighting come from??

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      3
      -1 Votes
      3 Posts
      83 Views
      PeterJonesP

      @Mister-Smitt said in Where does this nasty line highlighting come from??:

      2026_02_12_22_0838.png

      How to fix this?

      Read this FAQ

      And I would like you to spit in the face of the person who did this when you are next to him.

      Okay, I just spit in my own face. Does that make you feel better?

      (New features sometimes have bugs. The new feature of updating your horribly-outdated theme to give you access to all the modern styles that have been hidden from you for years was a great idea, but the original implementation, under certain circumstances, had unintended side effects. And the relatively few people who updated to v8.8.9 or 8.9.0 have to go through a bit of extra effort; those who skipped those two versions will not have the side effects. But if spitting in my face helps you, go ahead.)

    • W TXW

      How to show 2 document list windows in vertical?

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      3
      0 Votes
      3 Posts
      124 Views
      W TXW

      @FreeMeow Thank you!

    • mr10008M

      Installation takes looooong time

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      2
      0 Votes
      2 Posts
      74 Views
      PeterJonesP

      @mr10008 ,

      That’s weird. I know that last year, while Notepad++ and it’s associated installer and DLLs were self-signed, some AntiVirus software would pause/halt the installation. But that should have been fixed last year when Notepad++ moved to the new GlobalSign signature.

      My only thought is that for whatever reason, NppShell.dll is being write-protected while the rest of the installled executable and DLL and config files are not… which makes no sense to me, but maybe. If so, then I wonder if your taskbar shows the UAC icon (2cdfa78e-bc0a-422e-b8f3-6fa8e28f46fc-image.png) – if so, if you click on it, then Windows can ask you permission to let Notepad++ finish installing.

      I am doubtful it’s the UAC, however, so I had been hoping that @xomx would chime in by now, in case he had other ideas for a solution, or questions that he can ask for clarification (as he’s really good at issues with the installer).

    • J

      Unsaved?

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · · unsaved
      2
      0 Votes
      2 Posts
      27 Views
      PeterJonesP

      @jpatterson-ATL said in Unsaved?:

      But, as a general rule, are you saying that if I didn’t manually save the file, that the cached changes just disappeared when I made the save choice, whatever that was?

      See our periodic backup FAQ. Essentially: Notepad++ believed you when you gave it the answer. The “session snapshot and periodic backup” feature was never meant as a long-term backup (there’s the backup-on-save option for that), but as a “try to protect me, if you can, if something goes wrong on the computer between my reasonable-duration saves” feature.

      The notes.txt file is stored in OneDrive but the file version history shows the newest date to be over a year ago.

      It boggles my mind that you would have a named file that you cared about, and not noticed that it hadn’t saved to the OneDrive in more than a year. And not noticed that the icon on the tabbar had been saying “unsaved changes” for all that time. And that you can go that long without ever thinking about hitting Ctrl+S or clicking the Save menu or toolbar button.

      Given your habit, I would highly suggest installing and configuring the AutoSave plugin, so that you don’t lose data again in the future. How to set up that plugin is described in detail in the FAQ.

    • LaMar ML

      Modleine Parser No Longer Works

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      2
      0 Votes
      2 Posts
      51 Views
      PeterJonesP

      @LaMar-M said in Modleine Parser No Longer Works:

      I’ve been using “ModelineParser_0.2” for several years to automatically select the language. This parser is still available here.

      Yes. But it hasn’t been updated in 13 years. Notepad++, on the other hand, releases a new version about once a month.

      Recently my NP++ version got auto updated (by IT) to version Notepad++ v8.7.4.

      Your IT department chose a version from 14 months ago? It will still be missing security updates found in more recent Notepad++ versions.

      But yes, in the intervening 13 years, Notepad++ has made multiple changes to the documented interface for communication between a plugin and Notepad++. There have been some changes that were known to break older/unsupported plugins. But Notepad++ cannot stop all progress just because there are legacy plugins still published out there.

      When I open a program that used to default to a specific language, no language is set. I have to manually set it.

      Fortunately, the NppFileSettings plugin has modeline support, including recognizing filetype, ft, syntax, and syn for setting which syntax highlighting lexer to use. And its Releases page has 32bit and 64bit downloads, so it will work in your 32-bit edition of Notepad++.

      (And also, if you have a consistent filenaming convention with extensions that match the filetype, you can just set the User ext: box in the appropriate language(s) in the Style Configurator to make Notepad++ recognize the file type by extension, rather than by modeline. But if you need modeline support, hopefully NppFileSettings will work for you.)

      Notepad++ v8.7.4 (32-bit)

      In the modern world, where Windows OS is only maintained in 64-bit, there is virtually no reason to use 32-bit applications. For Notepad++, the only good reason for 32-bit instead of 64-bit is because you have a legacy plugin that only comes in 32-bit, that has no 64-bit version or alternative plugin with the same features.

      Looking at your other non-default plugins:

      CSVLint (0.4.6.7) PythonScript (0.9.2)

      Both of those come in 64-bit versions now.

      And PythonScript’s latest official release is up to v2.1.0, which uses Python 2.7.18, with significant bugfixes and feature improvements in both the plugin itself, and in the underlying Python interpreter (interpreter 2.7.1 from plugin 0.9.2, vs interpreter 2.7.18 from plugin 2.1.0). (Given your IT department’s apparent reticence to upgrade, I am not going to suggest moving to the “alpha” version of PythonScript 3.0.24, which uses Python interpreter 3.12.10, even though unless you use a lot of non-unicode files, I personally recommend using the version of the plugin that uses a modern Python interpreter rather than an interpreter that’s past its end of life.)

      And assuming that NppFileSettings plugin works as a replacement for the unsupported and incompatible modelineparser plugin for you, then all three of the non-preinstalled plugins that you have shown an interest in will work with 64-bit Notepad++ as well.

      As such, if you can confirm that PythonScript v2.1.0 and NppFileSettings will work for you, then I highly recommend that you talk with your IT:

      Ask if they can switch to 64-bit Notepad++. Ask if they will support a newer Notepad++. I desparately want to recommend the newest version, because of all the recent security fixes, but if you use UDL, then v8.9.2 probably won’t work for you, so you might have to stick with v8.9.1 until the regression fix for UDL is released in v8.9.3 (hopefully soon)
    • H

      Harmandeep Singh Kandhari - Enhancing Plugin Security and Preventing Malicious Code Execution

      Watching Ignoring Scheduled Pinned Locked Moved Security
      2
      0 Votes
      2 Posts
      57 Views
      CoisesC

      @harmansinghdeepkandhari:

      When you install through Plugins Admin, Notepad++ verifies that the hash of the downloaded zip file containing the plugin matches the hash that was supplied when the plugin was added to or updated in the plugins list.

      That is all that is done. Aside from the three plugins included with Notepad++ (MIME Tools, Converter and NppExport), the author/maintainer of Notepad++ does not vet plugins.

      Realistically, he could not do that comprehensively. And — in my opinion, wisely — he does not make a halfway, superficial attempt (like running them through a “virus checker”) which would only give a false sense of security and open up the project to claims that it didn’t do “enough.”

      Further, it should be understood that plugins in Notepad++ are fully capable of doing anything Notepad++ itself can do. They are C++ programs (or the equivalent) running in the same security context as Notepad++. The architecture is very flexible, but it presumes one only installs plugins worthy of trust.

      The user (or system administrator, in a managed system) is completely responsible for establishing the suitability of Notepad++ plugins (just as the same responsibility applies regarding Notepad++ itself). Nearly all are open source; you can examine the code, the issues, and so on. You cannot assume that inclusion in the plugins list means any plugin is “safe”; your own due diligence is required.

    • donhoD

      Notepad++ v8.9.2 Release Candidate

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      2
      3 Votes
      2 Posts
      441 Views
      donhoD

      FYI, v8.9.2 RC has been updated to RC2:
      https://github.com/donho/notepad-plus-plus/releases/tag/RC2
      See original announcement for more information.

    • pasha-19P

      styler.xml/WordsStyle/keywordClass association with langs.xml/Language/Keyword/Name

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      2
      0 Votes
      2 Posts
      90 Views
      PeterJonesP

      @pasha-19 said in styler.xml/WordsStyle/keywordClass association with langs.xml/Language/Keyword/Name:

      I was looking to add a WordsStyle with a keyword list to an existing language.

      That’s not the way it works. Existing languages are hardcoded (compiled) internally with a list of available styleIDs, and only particular styleIDs have keyword lists associated with them. You cannot just add a WordsStyle with its own styleID and a list of keywords, and hope that the lexer will magically see them. It will not.

      My question concerns the styler.xml/WordsStyle/keywordClass that appears to match langs.xml/Language/Keyword/Name. There are some seemingly standard keywordClass values instre1, instre2 and type1 to type7 and maybe type8. Do these seemingly standard values have any additional meaning besides providing a link from the keywordClass in styler.xml to the Language/Keyword/Name in langs.xml?

      They have an integer value (0-8). Those correspond to the 9 available keyword lists inside the lexer, which any given lexer may reference zero or more of.

      If you use the wrong keywordClass, Notepad++ will not be able to pass the list of words to the lexer. And if you make up a keywordClass or use one that’s not already defined for a given language, the lexer won’t see it, and those keywords won’t get highlighted.

      [can] any keywordClass/Name that matches could be used?

      Nope, sorry. Each lexer has a predefined list that Notepad++ will pass on to the lexer and that the lexer will recognize.

      To sum up: the official list of available keywordClass/name values for any given lexer are listed in the copy of langs.model.xml that ships with a given version of Notepad++: that will always list all the ones that Notepad++ knows about, and if you try to define others than those for any given language, Notepad++ cannot pass it on to the lexer.

      However, it may be that your langs.xml or stylers.xml are out of date. If you haven’t updated to v8.9.1 yet, run that update, and the first time you run, Notepad++ will update langs.xml and stylers.xml (or any other active theme) to include any missing styles. You might find that the language you want to customize has more keyword lists available in the Style Configurator now.

      If a given language doesn’t have enough different styles to give you differently-colored sets of keywords, you cannot just trick Notepad++ into creating more for you. However, using the EnhanceAnyLexer plugin (you can install it using Plugins Admin from the Plugins menu), you could define a regular expression to match the keywords you wanted. For example, for a given lexer language, if you wanted to add three keywords with red foreground and four with a blue foreground, you could use the following in the EnhanceAnyLexer configuration file (whcih you can easily access using Plugins > EnhanceAnyLexer > Enhance current language.

      [LexerName] 0x0000FF = \b(red1|red2|red3)\b 0xFF0000 = \b(blueA|blueB|blueC|BlueD)\b

      This will give:
      ad688e24-5716-46a9-beae-934a6017df82-image.png

      The EnhanceAnyLexerConfig.ini has documentation in its comments, explaining that it’s 0xBBGGRR for the hex colors, and how to get those colors to only apply within certain parent styles, etc. And https://github.com/Ekopalypse/EnhanceAnyLexer/ is the homepage for the plugin.

    • donhoD

      Notepad++ community on nodebb.org

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      33
      6 Votes
      33 Posts
      11k Views
      donhoD

      @PeterJones
      Fixed.
      Thank you for reminding me!