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
    • CoisesC

      Search++: A work in progress

      Watching Ignoring Scheduled Pinned Locked Moved Notepad++ & Plugin Development
      186
      7 Votes
      186 Posts
      58k Views
      CoisesC
      @guy038 said: For, the tests below, I needed, of course, to un-check the Always unmark all text before Mark command. (Otherwise add to existing marked text.) option in Settings I don’t know if it’s clear, but that only affects Mark search commands. It doesn’t affect any commands on the Tools menu. There are two times when a successful Mark search command unmarks existing text first. (A command that doesn’t find a match never unmarks.) One is when that option is checked: in that case, all Mark search commands clear existing marks before marking matching text. The other case is Mark in Marked text. When that command is chosen or defaulted, existing marks are cleared before marking the first match regardless of whether Always unmark… is checked, because otherwise the command could not accomplish anything: it would only be marking text that is already marked. The Configure bookmarks option Mark commands that unmark before searching also clear bookmarks. is related to this. If either of the above cases applies and that box is checked and Bookmark lines when marking text is checked, bookmarks are cleared as well as marks. Hopefully that does what most people would want and expect without them having to think through all those details. Regarding the present Synchronize marks and bookmarks sub-mneu, below : Add a bookmark to each line with marked text Add a bookmark to the first line of each span of marked text Bookmark only lines with marked text Bookmark only the first line of each span of marked text Bookmark visible lines Add marks to all text in bookmarked lines Mark only text in bookmarked lines Add marks to all text in bookmarked lines, excluding line endings Mark only text in bookmarked lines,excluding line endings Two observations : 1 I don’t think that the options which mark only the first line of each span of marked text are really useful. Actually, the goal is more to mark all the lines that meet a certain criterion, in order to navigate between these lines, copy / cut theses lines for pasting in a other location or file or deleting these ones ! Yes, I have wondered if any of that, in the Synchronize sub-menu or in the Configure bookmarks dialog, is useful. It was how I expected bookmarks would work with search and that’s how I first implemented it; then I saw that Notepad++ doesn’t just bookmark the lines where each match began, it marks every line containing any part of a match. I suspect it’s a lot less common to search for matches that span multiple lines than for matches contained in a single line, so maybe few people even notice the difference. I think I would either leave it in both the Configure bookmarks dialog and the Synchronize menu or take it out of both. I left it out of the Invert sub-menu because I couldn’t figure out a way to make it make much sense when doing inversion with bookmarks. 2 With native N++, whatever you use the ^.* or ^.*\R regex to mark AND boomark lines, then using the Copy Bookmarked lines of N++ and pasting in an other document, even with an other kind of EOL, just paste the bookmarked lines according to the EOL of the pasting document So, most of the time, taking the line-breaks in account is not necessary ! However, adding the line-breaks characters is useful as it also includes the true empty lines ! Thus, this would simplify the Synchronize marks and bookmarks sub-menu to the following one : Bookmark only lines containing marked text Clear all bookmarks, then bookmark only lines containing marked text Bookmark visible lines Mark all text and EOLs of the bookmarked lines Clear all marks, then mark all text and EOLs of the bookmarked lines I have to think about this some more. I can agree that having line endings / no line endings variants in those menus makes them more complex to read and use. Inverting marked text can yield some strange results. For example, say you matched a full line, but not its line ending, so it alone is marked and bookmarked. Now you Invert marked text and sync bookmarks. The line ending on that line wasn’t marked, so when you invert marks it is marked; since there is a mark on the line (though you can’t see it if you don’t show line endings), the line is also bookmarked. Every line in the document is now bookmarked, including the originally marked and bookmarked line that now has no visible marks (they’re hidden along with the line endings). Though I don’t think I should ignore line endings on the programming side — as per my example above — it could be that I can “hide” the unexpected behavior from users so they don’t have to think about it. The tricky bit is being confident that I really have covered all the cases that would be confusing to a user if I don’t force them to think about line endings.
    • donhoD

      Notepad++ release 8.9.8.1

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      18
      3 Votes
      18 Posts
      2k Views
      rdipardoR
      @PeterJones said: Hopefully, it’s just that it used to point to local config but is now AppData, or similar. As a scoop user myself, I can confirm that it will configure Notepad++ for portable usage by default.¹ Removing the magic doLocalConf.xml file at %USERPROFILE%\scoop\apps\notepadplusplus\current is probably all that’s needed. ¹ This is one setting that’s not preserved during an upgrade (the other being the autoCompletion folder), while the contents of ${NPP_INSTALLATION_ROOT}\{backup,cloud,plugins,themes,userDefineLangs} are kept in sync by means of junctions between the canonical current folder and the versioned one. Someone should open an issue in the scoop repository, I just haven’t found the free time yet.
    • donhoD

      Notepad++ release 8.9.8

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      26
      6 Votes
      26 Posts
      8k Views
      R
      @PeterJones Oh!! Understood!! thank you!!!
    • Vitalii DovganV

      Improving Find in Files performance

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      14
      1 Votes
      14 Posts
      839 Views
      Thomas KnoefelT
      Thanks a lot @guy038 for running the whole thing again, this time it didn’t finish in seconds ;-) Nice to see the results panel still usable with almost 10 million hits, even the jump to line 690 in that DLL at the very end. Interesting that walking the whole drive for those 130 PDFs takes almost the entire run, 5m45 of 5m48 for MultiReplace, and it’s the same picture with the other tools. The 4 “not decodable” are most likely UTF-16 files with an odd number of bytes. N++ simply drops the last byte there, the next MultiReplace build will do the same in Find in Files (Replace leaves them alone, writing them back would lose that byte). Speed is next on my list.
    • donhoD

      Notepad++ Release Candidate v8.9.8.1

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      14
      2 Votes
      14 Posts
      2k Views
      S
      @donho Typo: “7 Fix Netork Path Warning dialog usability problem.” --> Network
    • B

      Why headings are not displayed in the function list menu ?

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      11
      1
      0 Votes
      11 Posts
      624 Views
      B
      @PeterJones Thank YOU so much I copy Your overrideMap & udl_markdown in my folder and problem is solved. I wish program by default have this option. Thank you again dear Peter
    • Keith CollyerK

      wireloom in markdown viewers

      Watching Ignoring Scheduled Pinned Locked Moved Notepad++ & Plugin Development
      8
      0 Votes
      8 Posts
      622 Views
      rdipardoR
      I said: In case anyone else is interested, you can try previewing plain-text wireloom files with this development build of Preview HTML. This feature has now been merged, with additional support for offline Markdown previews that will render wireloom code blocks: [image: 1790348955006-wireloomx898.gif] All rendering is done by client-side JavaScript modules, so MS Edge is still required. @Keith-Collyer said: What would be really good would be if the developers of these re-merged their plugins! Don’t look now, but no fewer than three new Markdown plugins have appeared in the past two weeks — and they all depend on the WebView2 runtime (i.e. Edge).
    • A

      Problem with inactive/unavailable Plugins Admin on v8.9.8

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      10
      0 Votes
      10 Posts
      710 Views
      A
      @peterjones Installed Notepad++ v8.9.8.1, and this problem went away [image: 1790343129511-%D0%B1%D0%B5%D0%B7%D1%8B%D0%BC%D1%8F%D0%BD%D0%BD%D1%8B%D0%B9.png] p.s. And I don’t need to unblock files received from the Internet, because after a clean install of any Windows, I will block this option through the registry.
    • Carlos SánchezC

      [New plugin] Smart Math

      Watching Ignoring Scheduled Pinned Locked Moved Notepad++ & Plugin Development
      9
      1 Votes
      9 Posts
      1k Views
      PeterJonesP
      @Vitalii-Dovgan , I don’t think the Plugins Admin will be able to do all of that on its own. The DLL needs to be at the top level of the zipfile. What you could do is to have your plugin intialization look for the autoCompletion and userDefineLangs files in the appropriate locations (use NPPM_GETNPPSETTINGSDIRPATH to make sure you put the UDL in the right per-user place, regardless of doLocalConf, -settingsDir, CloudDirectory, or normal AppData; autoCompletion always goes relative to NPPM_GETNPPDIRECTORY – and for any that are missing, copy from ...\plugins\SmartMath\ subfolder(s) into the right destinations. A possible zipfile structure could be: SmartMath.dll doc\ SmartMath.md autoCompletion\ SmartMath.xml userDefineLangs\ SmartMath.udl.xml SmartMath_Dark.udl.xml That would all get placed in ...\plugins\SmartMath\ Because autoCompletion definitions are in the program directory hierarchy, there may be a permission issue, so you’d have to request elevated permission to do that copy; examples of how I did that can be found in my ConfigUpdater plugin. (The plugin itself is not so useful, since I moved that feature to N++ itself, but some of the code is still useful reference.)
    • L

      ASCII Sort Order

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      7
      0 Votes
      7 Posts
      526 Views
      L
      @PeterJones, Thank you for your considered (and considerate) engagement. I actually hesitated to respond with my comment about the 70s and 80s, pretty sure I would get what you gave, but I couldn’t resist—I’m old (83 next month). Anyway, thanks again for putting up with me. …lee
    • M

      is there a way to save a file as .srt?

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · · saving files srt
      6
      0 Votes
      6 Posts
      405 Views
      CoisesC
      @Midnitecata said: @PeterJones thank you for your help, ill probably steer clear of it just out of caution, but i might look into it further should the tedious formatting inconvenience me enough to learn how to spot malicious code! thanks again!! :) Just a side note to this discussion: While you certainly can manipulate *.srt files in Notepad++ (and I do on occasion), for most purposes the free and open source program Subtitle Edit (found here on GitHub) is much easier to use. It has many functions for doing things like shifting times, identifying likely errors, and so on. Before working too hard to find a way to do something with a subtitle file in Notepad++, I recommend checking first to see if Subtitle Edit already knows how to do it.
    • T

      Confirmation or disable the Find All in All Opened Documents

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      5
      0 Votes
      5 Posts
      399 Views
      T
      Feature request created: https://github.com/notepad-plus-plus/notepad-plus-plus/issues/18429 Put the several possibilities given my lack of knowing how the backend works and the feedback I’d gotten on this thread of possible feasibilities. I do stuff on both a Work computer using IT’s selected version of Notepad++ as well as home use, so even if I could get AutoIt working on my personal computer, I probably can’t get it running on my Work computer (permissions) I’ll try to train myself to alt+d
    • P

      Search and Replace for CNC Help Needed

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      4
      1 Votes
      4 Posts
      95 Views
      PeterJonesP
      @Paul-Adamczyk said: Still much to learn. Useful References: Notepad++ Online User Manual: Searching/Regex FAQ: Where to find other regular expressions (regex) documentation
    • Roberts RozisR

      Feature Request: Find in Files > In all Subfolders > [nn] levels deep only

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      6
      0 Votes
      6 Posts
      1k Views
      guy038G
      Hello, @Roberts-Rozis, @Peterjones, @dennis-bulgrien, @coises and All, @Coises, I did some tests with my D USB key and with your Search++ plugin and the following generic regexes solve the problem nicely : So, @Roberts-Rozis and @dennis-bulgrien : Select The Plugins > Search++ > Search in Files... option Select your média (C, D, … ) on the left and don’t forget to check the Subfolders option and, possibly, the Hidden files option Select the Reg. exp. option for the Filter : type In the filter box : • For a search of any file, even WITHOUT extension, between level N minimum and M maximum, enter : ^(?:[^\\]+\\){N,M}[^\\]+ • For a search of any file, WITH an extension, between level N minimum and M maximum, enter : ^(?:[^\\]+\\){N,M}[^\\]+\..+ • For a search of any file with the EXACT extension 'txt' or 'log' or 'ini', between level N minimum and M maximum, enter : ^(?:[^\\]+\\){N,M}[^\\]+\.(?:txt|log|ini)$ You may also add a size and/or a date condition Of course, check your desired search options Finally, click on the Find in Files button IMPORTANT : Replace the letters N and M by true digits, with the condition N <= M. The M value may be missing ! The syntax of these regexes are specific to the Search++ These regexes allow any search in an arborescence, from level N minimum to level M maximum. However : You may search from level 0, if necessary You can go through all the structure with the 0, or the N, syntaxes Note that you can simulate the Search++ filtering mode by using one of the regexes below, directly in Notepad++ ^(?:[^\\\r\n]+\\){2,4}[^\\\r\n]+$ ^(?:[^\\\r\n]+\\){2,4}[^\\\r\n]+\..+ ^(?:[^\\\r\n]+\\){2,4}[^\\\r\n]+\.(?:txt|log|ini)$ Against the text below, that you’ll paste in a new tab : 987.txt abc\123.txt abc\def\456.txt abc\def\ghi\789.txt abc\def\ghi\jkl\012.txt abc\def\ghi\jkl\mno\pqr\stu\vwx\yz\999.txt 987.txt abc\123.txt abc\def\456.txt abc\def\ghi\789.ini abc\def\ghi\jkl\012.log abc\def\ghi\jkl\mno\pqr\stu\vwx\yz\999.txt LICENSE abc\LICENSE abc\def\LICENSE abc\def\ghi\LICENSE abc\def\ghi\jkl\LICENSE abc\def\ghi\jkl\mno\pqr\stu\vwx\yz\LICENSE You may also try, for example, the cases {0,3} or {0,} or even {4,}. Enjoy ! Best Regards, guy038
    • B

      Code is not working

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      4
      0 Votes
      4 Posts
      434 Views
      guy038G
      Hello, @blake-g.-barrington, @peterjones, @coises and All, Here is my version to get duplicate lines, separated by any number of lines ( whatever they are : true empty lines, blank lines or lines with text ), even zero line : MARK (?-si)^(.+)(?=(.*\R)+\1$) As said by @Peterjones, and after some tests, this kind of regex get into trouble when the bunch of lines, between two duplicate lines, exceeds 15,000 empty lines about ! Now, Let’s suppose you create this text file : first 0002 0003 0004 0005 .... .... .... 9997 9998 9999 10000 first Then the (?-si)^(.+)(?=(.*\R)+\1$) regex returns : Correct result until the number of the in-between lines does not exceed 1,600, with the message 1 match in entire file Correct result until the number of the in-between lines does not exceed 12,000, although the error message Find Invalid Regular Expression ( So F.I.R.E. !! ) occurs ! NO result at all if the number of lines is over 12,000 lines, with, of course, the error message Find Invalid Regular Expression Best Regards, guy038 P.S. : I should add that my Windows11 laptop has 32 Gb of memory !
    • deleeleeD

      Strange behaviour with find all in current document results

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      3
      1
      0 Votes
      3 Posts
      97 Views
      CoisesC
      @deleelee said: Can anyone tell me why the search result for line 9 displays only a single space after the asterisk instead a full tab space like all the other lines? I’m certain there is a tab after the asterisk in line 9 in the search results window. You can verify that by highlighting the asterisk through and including the following “A”, copying, then pasting that into your document (or a new tab). The visual results are a combination of the way tabs work in Notepad++ — so-called “typewriter tabs” — and using a proportional font. Tab stops are at fixed positions, spaced by the distance equal to the width of a chosen number of spaces in the font you’re using. (In document tabs, that number is chosen in Settings | Preferences… | Indentation | Indent size. However, regardless of that setting, in the search results window the number is always 4.) A tab character renders as a space of whatever width is needed to put the next character at the next tab stop. Notice that the colons after single digit and double digit line numbers don’t quite line up. That is because you are using a proportional font. Notepad++ adds a space to make up for the missing digit, and with a fixed width font, that would line them up. You are using a proportionally spaced font, and a space is not as wide as a digit; so the colons don’t line up. After the colon comes a space, then an asterisk, then a tab. The difference in placement of the colons happens to be just enough that the tab for lines with single-digit numbers finds the next tab stop at a different position than the tab in lines with two-digit numbers.
    • Michel ChasseyM

      email address not recognized

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      3
      1 Votes
      3 Posts
      102 Views
      Michel ChasseyM
      @PeterJones Thank you now as for my other questions …
    • guy038G

      Some options of the advanced NodeBB search no longer work correctly !

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      3
      1
      2 Votes
      3 Posts
      288 Views
      PeterJonesP
      @guy038 , I have also noticed that, recently, the username filter in the advanced search page doesn’t populate usernames. I had thought it might have just been me. I know that @barisusakli from NodeBB occasionally logs in, and they recently updated the forum software for us… maybe that version had a bug, because the admin panel says there’s another version available since they last updated us. Until then, once you make your search, you can edit the URL to set &by=PeterJones to search for my posts (right now, the URL probably has &by= with no value). It’s not as convenient as the drop-down, but it is a workaround.
    • Charles BillowC

      Set or change the default font in NP++

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      3
      0 Votes
      3 Posts
      320 Views
      PeterJonesP
      @Charles-Billow said: I see how to change fonts etc. for the document I am working on, but how do I change the default font/size/ and zoom level as the default for all new documents? The way you phrased that makes me think you might not understand what a text editor is. Text files are stored as the raw text: no individual text file / text-based-document has any concept of its own font or font-size. It is just text, and it is up to the text editor to decide what font or size to use. If you set Notepad++ to use a specific font or font-size, using the dialog that @markusbodensee shared with you, that will affect how Notepad++ displays it, but MS notepad.exe or VS Code or gvim will all use their own font and size, because it’s up to the app, not the file, what font and size to display text in. If you’ve changed the font and size that’s used “in the current document” in Notepad++, you’ve changed the font and size for all documents, new or old, in Notepad++. As far as Zoom level goes: Notepad++ remembers your previous zoom when you exit. But if you’ve set a reasonable font size as your default, then zoom should normally be at 100% (which is the default if you haven’t zoomed in or out yet). If you’re to the point that you start thinking you want to have the default zoom bigger or smaller than 100%, then think to yourself: do you really mean that you should change the font size bigger or smaller, instead? (Then again, some people are still killing trees from their text editor, so if you’re printing to paper, maybe you have one of the few use cases where it makes sense to use a smaller font but larger zoom, or vice versa.)
    • FranciscoF

      rename files

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      3
      0 Votes
      3 Posts
      287 Views
      guy038G
      Hello, @francisco, @gerdb42 and All, There are plenty of solutions ! The following one will ensure that the . matches newline option will not be used even it’s checked and that the Match case option is enabled even it’s not checked ! FIND (?-si)_.+(?=\.txt) REPLACE Leave EMPTY Best Regards, guy038