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++ release 8.9

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      26
      4 Votes
      26 Posts
      6k Views
      A

      @donho I updated from 8.8.8 and after the first launch of Notepad++ the error “Load lang.xml failed!” occured once (exe-installer on latest Windows 11).

    • CoisesC

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

      Watching Ignoring Scheduled Pinned Locked Moved Notepad++ & Plugin Development
      16
      5 Votes
      16 Posts
      965 Views
      CoisesC

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

      Note that the \p{Hex_Digit} regex is erroneous ! The right one is \p{xdigit}, at least, within Columns++

      What’s going on there is that I followed the structure of Boost::regex character classes:

      Character Classes that are Always Supported

      Character classes that are supported by Unicode Regular Expressions

      which are mainly the POSIX character classes plus Unicode General Categories interpreted as character classes. Also, note that in Boost::regex, character classes and character properties are the same thing. I didn’t make any attempt to change that. I believe this is different both from Unicode regular expressions and from PCRE.

      (I did add a couple new character classes unique to Columns++: [:defined:] and [:invalid:], and aliases \i, \o and \y for [:invalid:], [:ASCII:] and [:defined:]. Also, Columns++ does not support [:Cs:]/[:Surrogate:] since Unicode in Scintilla can only be UTF-8, which cannot contain surrogates — though it can contain invalid byte sequences which appear to encode surrogates, as in WTF-8; Scintilla treats these as invalid UTF-8 bytes, and so does Columns++.)

      Hex_Digit isn’t one of the Boost::regex character classes, and I never defined it. Defining it to be equivalent to xdigit would be trivial; re-defining xdigit to include non-ASCII characters is a bit more complicated:

      I’ve found out a small anomaly concerning hexadecimal characters :

      If I use the native Notepad++ search to match any hexadecimal character, with the regex [[:xdigit:]], against my Total_Chars.txt file, it returns 44 matches

      If I use the Columns++ search to match any hexadecimal character, with the regex [[:xdigit:]], against my Total_Chars.txt file, it returns 22 matches

      I suppose that the N++ answer is the right one. Indeed, in the https://www.unicode.org/reports/tr18/#Compatibility_Properties article , ( Annexe C about UNICODE REGULAR EXPRESSIONS ), it is said :

      Hex_Digit contains 0-9 A-F fullwidth and halfwidth, upper and lowercase

      Yes, it would seem the standard is to include those non-ASCII characters as hex digits. Further, the comments at your link under lower and upper are troublesome, as Columns++ treats them as aliases for Ll and Lu. Word and word boundaries are probably faulty as well.

      I followed the Boost::regex principle that to extend the traditional POSIX mappings, the only Unicode property that is used to determine membership in a character class is the General Category.

      I hard-coded (that is, they are written explicitly rather than being derived from Unicode tables) the POSIX mappings for ASCII characters, since that’s the only place they are really well-defined; plus there is a hard-coded exception for the non-ASCII character U+0085, the Next Line control character, because it should be part of \v, which is implemented in Boost::regex as [[:v:]]. I don’t see any reason [[:xdigit:]] can’t be extended with similar hard-coded logic; I just didn’t know until now that I should do it.

      The other parts, though: whatever they are saying is supposed to be included in [:lower:] and [:upper:] besides letters, and whatever they are talking about in regard to word characters and boundaries… that might be problematic. I have a condensed set of tables built from a few Unicode files, instead of trying to import the ghastly large and complex ICU. Those tables include the General Category, but if that is not enough to determine membership in a character class… reorganizing them to include whatever additional information I need (it’s not yet clear to me what that will be) is not likely to be simple.

      Thank you for your observation. Indeed, there are flaws. It is not yet clear to me if and how it will be practical to address them, though I can probably fix the [:xdigit:] behavior without much difficulty.

    • László BotkaL

      Enter key duplicated in macros

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      14
      3 Votes
      14 Posts
      660 Views
      datatraveller1D

      So with installation of a new notepad 8.9 version, these settings in shortcuts.xml should be updated (maybe automatically with installation):

      from:
      1c3beaba-3b9c-46be-8fff-2f9dace10a63-image.png

      to:
      f08a7ae4-6d8d-486a-89b2-57b79dee1091-image.png

      I’m only a user so I don’t know the details, but maybe simply CR could be changed to 
 and CRLF to 
 (and if existent LF to 
)?

    • Min LiuM

      Freezing when pasting large amount of text between quotes or heredoc (language PHP)

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      12
      2 Votes
      12 Posts
      305 Views
      mpheathM

      @Min-Liu I would like some time to review the php lexer code as the powershell and python lexer shows better performance with the same text pasted under similar test conditions. Perhaps there is some bad code logic preventing good progression of the styling in the php lexer. This needs some proving in some way to recognize the lexer as bugged and will test in SciTE with similar settings to reproduce the bug.

      LuaScript as suggested can help you for now though if the php lexer needs a fix then it should get priority with posting an issue and where it should be posted. This may take some time as the lexer code is complex.

      @PeterJones I just tested in SciTE SC1 version 5.5.8 Scintilla:5.5.8 Lexilla:5.4.6 with idle.styling=3 in SciTEGlobal.properties. It pastes the 50,000 lines without freezing into a .php file. Can you possibly confirm this test as this implies the php lexer is OK in SciTE, yet is not OK in Notepad++. If confirmed, then the lexer seems OK and goes back to being a Notepad++ issue. The idle styling was not the only setting in Notepad++ that was changed. The versions of Scintilla/Lexilla match with Notepad++ 8.9.

      https://scintilla.org/SciTEDoc.html#property-idle.styling

    • W

      The problem with notepad.runMenuCommand

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      10
      1 Votes
      10 Posts
      384 Views
      W

      @PeterJones said in The problem with notepad.runMenuCommand:

      Simple and light is often the opposite of universal.

      This is often the case, but not always.

      @PeterJones said in The problem with notepad.runMenuCommand:

      If you solution is “universal enough” for you, fine;

      Of course, when there is no ideal option, you have to choose the one that is most suitable for the situation.

      @Alan-Kilborn said in The problem with notepad.runMenuCommand:

      Good luck achieving all of those all of the time.
      Or do you have a “pick any 2” or “pick any 3” type rule? ;-)

      Thanks. It happens to everyone at some point ;)
      But it must be universal and fast, even if it means making the code complex.

    • J

      Perl keywords "class" and "method" not recognised by Function List

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      12
      0 Votes
      12 Posts
      563 Views
      J

      @PeterJones I am happy :)

    • S

      Is it possible to scroll up/down with middle-click ? And/or move other view separator left/right ?

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      7
      0 Votes
      7 Posts
      162 Views
      PeterJonesP

      @shodanx2 ,

      Placing the cursor anywhere on the window and middle-click-dragging left and right

      Interesting. Apparently I am not creative enough to think of clicking on anything but the window/subwindow/panel frame to try to resize a window/subwindow/panel. Since there’s apparently utilities to enable that in other things, I guess you’re not the only one, but it’s just not something I’d ever thought of. (And sorry, in case it wasn’t obvious, unlike @Alan-Kilborn , I didn’t originally understand that you weren’t just trying a different button on the center bar between.)

      Which allows me to middle click drag anywhere on a page and very quickly scroll it up and down.

      That sounds very much like browser-style autoscroll features (though in those, they just click-and-release on the middle button, and that switches to autoscroll mode). And autoscroll as a feature has been rejected time after time after time(*) after time after time after time(*) (where the two *-d times were official word from the developer saying that autoscroll won’t be implemented). So while people obviously like it, the developer has made it clear it won’t be native to Notepad++.

      So a script (as @Alan-Kilborn has given you hints on) or writing a plugin are the only options for your autoscroll-like behavior.

      Regarding the script – if you search the forum for PythonScript and the mouse-based messages, I am guessing you’ll find an ancient script by one of the regulars here who gives an example of intercepting the mouse actions to add features to a script.

    • Dean MacinskasD

      Where is the Plugins Admin?

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      7
      0 Votes
      7 Posts
      304 Views
      Karlo-FK

      I’m guessing that GUP.exe and/or nppPluginList.dll somehow wasn’t updated before.

    • 4614

      I want to make columns and rows like Microsoft Excel and I want strikethrough

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      6
      0 Votes
      6 Posts
      155 Views
      4614

      @PeterJones Ok, Thank you. I see now Microsoft Excel is the way to go!

    • Laura HarrisonL

      Notepad++ help for fast formatting date of births

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      5
      0 Votes
      5 Posts
      174 Views
      PeterJonesP

      @Laura-Harrison ,

      Don’t post essentially the same thing twice. The posting form reminds you that until you have enough upvotes, you have to wait for the posting queue for the post to show up.

      If all of your badly-quoted dates have the quotes in exactly the same places (3 digits, quote, digit, hyphen, quote, digit, quote, digit, hyphen, quote, two digits), then you can use a similar idea to above, but put each into capture groups using the (...) notation: FIND = (\d{3})"(\d)-"(\d)"(\d)-"(\d{2}) . Each capture group gets numbered 1-5 for each set of parens, and is $1 - $5 in the REPLACE WITH field. So REPLACE WITH = "$1$2-$3$4-$5"
      This will take

      199"0-"0"8-"28 199"2-"1"1-"12

      and make it

      "1990-08-28" "1992-11-12"

      But I have a feeling you are going to tell me in the next post that what you really have is quotes in different places each time, like

      1"99"0-"0"8-"28 199"2-"1"1-"12 "2"0"2"6"0"1"0"6"

      In which case, I’d say, look for “possible quote, digit, possible quote, digit, possible quote, …etc”, where “possible quote” is in regex as "? (which means "0 or 1 quote mark)
      FIND = "?(\d)"?(\d)"?(\d)"?(\d)"?-"?(\d)"?(\d)"?-"?(\d)"?(\d)"?
      REPLACE = "$1$2$3$4-$5$6-$7$8"
      REPLACE ALL
      would give

      "1990-08-28" "1992-11-12" "2026-01-06"

      (Note that if you had more digits than that, like if you also had hh:mm:ss, so it would be up to 14, the replacements for 10-14 would be ${10} - ${14})

    • Thomas CarterT

      Fluent close/x on tab bar

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      5
      0 Votes
      5 Posts
      287 Views
      MarkusBodenseeM

      Chill, Peter :-) Breath in, breath out. Everything is fine. (This is meant in a very positive way. I feel that you are very busy right now.)

      Of course, yes, this is definitly no big deal. But it is nothing wrong in talking about it. Or just bringing up a question about it. Or an idea.

      IMO, Thomas is not wrong with his observation/question/request. The red x icon is the only colorized icon while using light mode and fluent UI. So a more consistant behaviour would be, to have the x icon appearance coupled on the icon choice rather than the light/dark mode choice. (Means red x icon coupled to standard icons, a fluent x icon to the fluent UI.)

      Yes sure, this issue is nothing important compared to the more urgent topics in the issue tracker.

    • S

      Open container folder in cmd but as a toolbar button ?

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      4
      0 Votes
      4 Posts
      219 Views
      S

      Hello

      Thank you for the responses !

      @Ekopalypse

      I have tried this method

      After installing PythonScript, it was unclear where I could add the script

      open_containing_folder_in_cmd.py

      I tried
      C:\Users\user\AppData\Roaming\Notepad++ (no)
      C:\Users\user\AppData\Roaming\Notepad++\plugins (no)
      C:\Program Files\Notepad++\plugins\PythonScript\scripts (maybe)

      It still wouldn’t appear, until restart (this should, auto refresh I believe, when you open configuration at least ?)

      It appeared in the menu

      0ac210cc-ad88-4800-87c7-58a74d503428-image.png

      But not in the configuration page

      322dddaa-81f2-486f-a484-d2097340a938-image.png

      Click on Plugins->Python Script-> Scripts -> open_containing_folder_in_cmd.py
      Did open cmd.exe in the right location

      Ah ok, from clicking the “new” script button

      The path is
      C:\Users\user\AppData\Roaming\Notepad++\plugins\config\PythonScript\scripts
      The folder was not created during installation apparently !

      Now it does appear !

      cd365908-f84e-46cf-8ff8-9ae887336bc6-image.png

      And yes this works !

      493bdea5-d298-4f7b-869c-b2918b47ebf8-image.png

      Thanks !

      @PeterJones

      Thanks for this suggestion

      I gave this a try as well

      ab026774-25a1-450d-8212-b4bc999595d7-image.png

      Then I edited

      C:\Users\user\AppData\Roaming\Notepad++\plugins\config\CustomizeToolbar.btn

      I pasted your suggested command
      changed the file to a screenshot of the cmd.exe icon I took
      I also added you suggested extra space fix

      File,Open Containing Folder,cmd,,fRgHGCzWpi.png,fRgHGCzWpi.png,fRgHGCzWpi.png View,Show Symbol,Show All Characters,,Icons\allChars.bmp,Icons\allChars_off.ico,Icons\allChars_off_dark.ico

      This did not work yet

      I used webservice
      https://www.icoconverter.com/
      To create a .ico file
      with these settings
      c7397a0a-1735-44fc-a70e-b4b6e891d909-image.png

      and I downloaded the 3 files from the github issues

      https://github.com/notepad-plus-plus/notepad-plus-plus/blob/master/PowerEditor/src/icons/standard/toolbar/allChars.bmp
      https://github.com/notepad-plus-plus/notepad-plus-plus/blob/master/PowerEditor/src/icons/light/toolbar/regular/allChars_off.ico
      https://github.com/notepad-plus-plus/notepad-plus-plus/blob/master/PowerEditor/src/icons/dark/toolbar/regular/allChars_off.ico

      And I placed them in folder

      C:\Users\user\AppData\Roaming\Notepad++\plugins\config\Icons

      Restarted notepad++

      The icon appears and works but the icon is wrong

      f9a8a675-ab97-4ff9-931f-bb7bc7497520-image.png

      I tried these settings

      a95b67a9-69de-4527-9a06-aa6cbbbac32f-image.png

      Also does not work

      0c0e31a7-ed98-4597-a728-94df39b63ab7-image.png

      also no

      d5274fe9-e9c7-422b-b35b-93844462b236-image.png

      also no ???

      Oh wait

      File,Open Containing Folder,cmd,,cmd.ico,cmd.ico,cmd.ico

      should have been

      File,Open Containing Folder,cmd,,Icons\cmd.ico,Icons\cmd.ico,Icons\cmd.ico

      Icon has disappeared !

      54d68466-f8bd-4877-803e-82916cc556ec-image.png

      ok, instead move the file to C:\Users\user\AppData\Roaming\Notepad++\plugins\config
      51f48583-924a-4e0b-be1d-9df87f8909a3-image.png

      change it back to

      File,Open Containing Folder,cmd,,cmd.ico,cmd.ico,cmd.ico

      restart npp

      icon is back, but still question mark

      580fc2d1-b691-4081-916b-935a9805cdce-image.png

      Maybe the file is not 16x16 256 colours ?

      b7aa94fa-7748-42b8-8e51-49e507acb631-image.png

      Looks like it is as specified

      Maybe something is wrong with the file …

      e0b2e4e5-7210-4687-881d-69eebba78699-image.png

      I’m not good enough to mentally decode this, looks normal

      Hmm

      https://en.wikipedia.org/wiki/ICO_(file_format)

      0x02 idType is 1 , which is ICO good
      0x04 idCount is 1, just 1 image
      0x06 ICONDIRENTRY struct

      bWidth is 10 , which is width 16
      bHeight is 10, which is width 16
      bColorCount 0. does not use a pallette
      wPlanes is 1, has color plane , whatever that is, 0 is black and white ?
      wBitCount, it is 8 bit per pixel
      dwBytesInRes, 1384 bytes ?? idk

      …
      onion.bmp,onion.ico,onion.ico

      ah wait you have BMP in there ??

      2f4a2017-f18f-4b16-af27-0fa951d8d002-image.png

      File,Open Containing Folder,cmd,,cmd.bmp,cmd.ico,cmd.ico

      restart

      72f5b447-bfe2-46c1-a8b4-fc22137f42ad-image.png

      woohoo !

      Wow, I was about ready to give up there !

      Thanks both of you, I will go with the CustomizeToolbar plugin as it give me that distinctive icon !

    • PeterJonesP

      Config Files Need Updating, Too

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion pythonscript config-files stylers.xml langs.xml syntax highlight
      50
      9 Votes
      50 Posts
      19k Views
      Lycan ThropeL

      @PeterJones said in Config Files Need Updating, Too:

      But, unfortunately, there were a few growing pains in transferring from the plugin to the builtin that I was really hoping wouldn’t happen, because I had ironed out so many problems in the plugin version already.

      That IS why it’s called ‘developing’. and maintainers are ‘developers’. :-)

      If I ever saw a first version of anything that worked unscathed on the first try, I’d be digging through the code looking for the bomb that went undetected. :-)

    • H

      Search Dialog Adding `\r\n` to pasted search queries.

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      3
      0 Votes
      3 Posts
      64 Views
      H

      @PeterJones Thanks so much for the quick reply. Installing the release candidate fixed the issue for me. Much appreciated!

    • submitificS

      HOW Do You Add Keyboard Shortcuts

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      11
      0 Votes
      11 Posts
      3k Views
      CoisesC

      @PeterJones said in HOW Do You Add Keyboard Shortcuts:

      Actually, anything in the Scintilla Commands tab of the Shortcut Mapper can have 0 or more shortcuts assigned. It’s not limited to only 2. And it’s not limited to only Copy/Cut/Paste. This is described in the user manual’s Preferences > Shorcut Mapper, specifically in the paragraph that starts with “In the Scintilla commands tab, you can actually assign more than one shortcut to a given Scintilla command”

      This might be confusing to @Michael-Neumann, because Cut, Copy and Paste are no longer Scintilla shortcuts; they moved to the Main menu tab, Edit category, as part of the changes that enhanced multiple selections and implemented VS Code-style line cut/copy/paste.

      Since the two sets of shortcuts, with X/C/V and with Insert/Delete, are so familiar and either would have been missed, special allowance was made to let those menu items have two distinct shortcuts. No other commands work that way.

    • Thorsten HeuerT

      Feature Request / Question: Soft Wrap at Vertical Edge (Column 80) regardless of window size

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      3
      0 Votes
      3 Posts
      145 Views
      fml2F

      @h-jangra said in Feature Request / Question: Soft Wrap at Vertical Edge (Column 80) regardless of window size:

      I have added this in NppVim plugin [. . .]I am not sure how to set text width in notepad++

      That’s interesting! I’d think that a NP++ plugin can only do things that are also possible in NP++ itself since the underlying engine is the same.

    • Chuck MooreC

      How do I change font?

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      16
      0 Votes
      16 Posts
      178k Views
      PeterJonesP

      @Cam-K said in How do I change font?:

      Noticed on newer versions of N++ that the “Enable global font” option is gone

      It’s not gone, just at the bottom of the list, because it’s not what most people should be using. See the global override dialog and the user manual for more on why you shouldn’t use it.

    • guy038G

      Macro problem

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      3
      0 Votes
      3 Posts
      239 Views
      mpheathM

      @guy038

      https://www.scintilla.org/ScintillaDoc.html#SCI_COPY

      copying data to the clipboard

      Is document to the clipboard.

      https://www.scintilla.org/ScintillaDoc.html#SCI_PASTE

      pasting from the clipboard into the document

      Is clipboard to the document.

      Both functions relate to the document in the editor. The copy function will be good for the task though paste will not work with the search window.

      Instead of SCI_PASTE, could use the Run command to run an executable to insert the clipboard text into the search window.

      AutoIt3 script automate_columns++_search.au3 :

      ; Wait up to 3 seconds for the window. $hSearch = WinWait('Search in indicated region', '', 3) If $hSearch Then $sClip = ClipGet() ; get clipboard text ControlSetText($hSearch, '', 'Edit1', $sClip) ; set combo edit ControlClick($hSearch, '', 'Button7') ; click regex button ControlClick($hSearch, '', 'Button9') ; click count button $sCount = ControlGetText($hSearch, '', 'Static3') ; read label ClipPut($sCount) ; set clipboard text EndIf

      Adjust the title if the window text is localized.

      Compile to executable and then add to Run as a command. Get the command id with NppUISpy and insert into the shortcuts.xml file.

    • Robert Or Janet DiebelR

      Compare plugin, output a list of line numbers that do not match

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      3
      0 Votes
      3 Posts
      196 Views
      Robert Or Janet DiebelR

      @PeterJones Thanx, much appreciated.

    • William EdwardsW

      Print colors?

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      3
      1 Votes
      3 Posts
      102 Views
      William EdwardsW

      @Coises Perfect! Thank you for your assistance…