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

      autoupdater and connection temp.sh

      Watching Ignoring Scheduled Pinned Locked Moved Security
      38
      0 Votes
      38 Posts
      20k Views
      Lycan ThropeL

      @donho ,
      Thanks for the verifcation, and sorry for the late reponse, I came down really sick that night for about a 5 day period after posting this, and am just getting back into the swing of things. Just wanted to make sure we didn’t need to be redundant about that process. Thanks again for the clarification.

    • Thorsten HeuerT

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

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      22
      1 Votes
      22 Posts
      1k Views
      CoisesC

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

      @Coises Thank you for the quick implementation! If enebaled, it applies to all documets, not just the current one, right?

      Yes, I made it a single toggle for all documents in both views.

      It would be possible, but considerably more complex, to track documents and enable/disable per document. (I do it with elastic tabstops in Columns++.)

    • donhoD

      Notepad++ v8.9.1 Release

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      18
      6 Votes
      18 Posts
      11k 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)
    • Mark BoonieM

      Show (or keep) subsets of a file

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      16
      0 Votes
      16 Posts
      372 Views
      guy038G

      Hello, @mark-boonie and All,

      I said in this post that we can translate the regex’s logic to :

      What_I_do_not_want(*SKIP)(*F)|What_I_want. See also the excellent article, on this topic, at https://www.rexegg.com/backtracking-control-verbs.php#skipfail !

      But, regarding your present example, @mark-boonie, I suppose that we should invert the logic and tell :

      What_I_want_to_keep(*SKIP)(*F)|What_I_want_to_delete

      This means that any multi-lines block, with delimiters Block start and Block end containing the string 80     00010000 is not considered ( text is skipped ) and that any single line contents, with its line-break, due to the (?-s) modifier, must be deleted

      Note that the use of the Backtracking Control Verbs (*SKIP) and (*F) is not mandatory at all ! we could have used this syntax, instead, for similar results :

      SEARCH (?s)^\*Block start\h*((?!\*Block start).)+?80 00010000.+?^\*Block end\h*\R?|(?-s)^.*\R?

      REPLACE (?1$0)

      We simply change the non-capturing group (?:(?!\*Block start).)+? into a capturing group ((?!\*Block start).)+?

      We tell that, in replacement, we must rewrite any block entirely ( $0 ), if the group 1 exists, thus the (?1$0) syntax

      And, as there is no colon char and text after (?1$0, nothing must be taken in account if the group 1 is absent, which is the case in the (?-s)^.*\R? part !

      Best regards,

      guy038

    • วีรภัทร ทวีทรัพย์ว

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

      Watching Ignoring Scheduled Pinned Locked Moved General Discussion
      9
      0 Votes
      9 Posts
      259 Views
      วีรภัทร ทวีทรัพย์ว

      @PeterJones Finally, I found a collection of NPP binary releases. I will share this collection when I have my free time.

    • donhoD

      Notepad++ v8.9.2 Release

      Watching Ignoring Scheduled Pinned Locked Moved Announcements
      8
      1 Votes
      8 Posts
      3k Views
      MarkusBodenseeM

      @PeterJones said in Notepad++ v8.9.2 Release:

      If you uncheck the Plugins Admin and Auto-Updater checkboxes, the gup.exe will not be installed, and Plugins Admin will not work. (I know there was a recent conversation and/or issue and/or PR about also having that remove the old gup.exe if it’s unchecked in the installer, but I cannot find it, and cannot remember whether the removal has been implemented yet or not.)

      It is fixed and implemented in Notepad++ v8.9, see fix for no 3 in the list Commit e89b0be.

    • Mister SmittM

      Why is the forum so scary?

      Watching Ignoring Scheduled Pinned Locked Moved Boycott Notepad++
      7
      -3 Votes
      7 Posts
      168 Views
      PeterJonesP

      @Mister-Smitt ,

      As you are just here to whine and complain and curse, I will move this “topic” to “Boycott Notepad++”, where such belongs.

      And then, since I have that Category set so that I never see new posts there, I can hopefully just ignore anything else you post.

      Good luck with your whining, ad hominem attacks, and anti-social behavior. <sarcasm> It will serve you well in life. </sarcasm>

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

    • Fred MorantF

      "In Find, Regex Search in Current File Limited to "Find Next" Downward Direction Only"

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      6
      0 Votes
      6 Posts
      256 Views
      Fred MorantF

      @PeterJones said in "In Find, Regex Search in Current File Limited to "Find Next" Downward Direction Only":

      Perfect, thank you for the explanation about how the config file is managed.

      One point: I was the one who hallucinated, trying to find a reason for this limitation in regex usage.

      Thanks for the clarification!

      Much appreciated!

    • mr10008M

      Installation takes looooong time

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      5
      0 Votes
      5 Posts
      184 Views
      mr10008M

      @mr10008 @Snabel42 @PeterJones
      Thanks for your comments.
      Looks like I got it fixed - I right-click on the installation file and run as administrator. Installation goes very quickly and the proper N++ context menu appears now.

    • 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
      173 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
      114 Views
      Bob SmithB

      @PeterJones Thank you.

    • Anderson NascimentoA

      Monokai and JS versão 8.9.1

      Watching Ignoring Scheduled Pinned Locked Moved Notepad++ & Plugin Development
      5
      1 Votes
      5 Posts
      343 Views
      Anderson NascimentoA

      @PeterJones I managed to do it, I uninstalled it again and when it asked about settings, I answered no, upon startup it was like a completely new installation.Screenshot_1.png nnn.png
      When I started up, I changed the theme and it worked, thank you very much for the tips.

    • Troglo37T

      Is There a Way to Prevent Pasted Text from Spreading Out with Rows of Spaces?

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      5
      0 Votes
      5 Posts
      289 Views
      PeterJonesP

      @PeterJones said in Is There a Way to Prevent Pasted Text from Spreading Out with Rows of Spaces?:

      implementing it in PythonScript today

      Thankfully, I found an old script which did something related, which was easy to update.

      # encoding=utf-8 """in response to https://community.notepad-plus-plus.org/topic/27385/ This will paste the CF_TEXT plaintext from the clipboard, but will convert any series of newline characters into a single space before doing the paste. Because this uses .insertText() instead of putting the modified text back into the clipboard and doing .paste(), it should avoid clobbering the clipboard. (based on @alan-kilborn's clipboard script here: <https://community.notepad-plus-plus.org/post/97132>) """ from Npp import * try: editor3h # third editor, hidden except NameError: editor3h = notepad.createScintilla() def get_clipboard_text_without_newlines(): retval = '' editor3h.clearAll() editor3h.paste() if editor3h.getLength() > 0: editor3h.rereplace(r'[\r\n]+', ' ') # replace all newline seqeuences with a single space retval = editor3h.getText() return retval editor.beginUndoAction() editor.insertText(editor.getCurrentPos(), get_clipboard_text_without_newlines()) editor.endUndoAction()

      This has been tested in the PythonScript 3 plugin. The PythonScript FAQ explains how to install PythonScript plugin, and how to run a script using PythonScript plugin, and even how to assign a keyboard shortcut to the script. Make sure you follow the instructions for PythonScript 3, not PythonScript 2 (as I have not tested under the older plugin syntax, though it will likely work there)

    • Russ JonesR

      Advance cursor past any sequence of non-blank characters and following blank, tab, or newlines

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      5
      0 Votes
      5 Posts
      259 Views
      guy038G

      Hi, , @russ-jones, @freemeow, @m-andre-z-eckenrode and All,

      Ah… many thanks, @m-andre-z-eckenrode for your valuable input ! Thus, @russ-jones, my macros can be improved as below, just adding a final Esc key stroke :

      <Macro name="End Previous NON-Blank chars" Ctrl="no" Alt="yes" Shift="no" Key="190"> <Action type="3" message="1700" wParam="0" lParam="0" sParam="" /> <Action type="3" message="1601" wParam="0" lParam="0" sParam="\S+\K(?=\s)" /> <Action type="3" message="1625" wParam="0" lParam="2" sParam="" /> <Action type="3" message="1602" wParam="0" lParam="0" sParam="" /> <Action type="3" message="1702" wParam="0" lParam="256" sParam="" /> <Action type="3" message="1701" wParam="0" lParam="1" sParam="" /> <Action type="0" message="2325" wParam="0" lParam="0" sParam="" /> </Macro> <Macro name="End Next NON-Blank chars" Ctrl="no" Alt="yes" Shift="no" Key="191"> <Action type="3" message="1700" wParam="0" lParam="0" sParam="" /> <Action type="3" message="1601" wParam="0" lParam="0" sParam="\S+\K(?=\s)" /> <Action type="3" message="1625" wParam="0" lParam="2" sParam="" /> <Action type="3" message="1602" wParam="0" lParam="0" sParam="" /> <Action type="3" message="1702" wParam="0" lParam="768" sParam="" /> <Action type="3" message="1701" wParam="0" lParam="1" sParam="" /> <Action type="0" message="2325" wParam="0" lParam="0" sParam="" /> </Macro>

      BR

      guy038

    • ?

      Notepad ++ double context menu showing after uninstalling

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      5
      0 Votes
      5 Posts
      283 Views
      mpheathM

      The Open With extension is not the Edit with Notepad++ extension. The later is NppShell.

      Open a cmd prompt and enter:

      reg delete "HKCU\Software\Classes\Applications\notepad++.exe"

      Press Return key and if no error, then it will prompt to delete the key and reply with yes.

      Open With creates this key and some others. Removing this key removes the orphaned Open With entry of Notepad++.

      Some installers add this key, the Notepad++ installer currently does not add this key so it does not remove it on uninstall.

      The duplicate entry is something else. Try:

      reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.ini" /s

      and will print information about the entries to discover more details about the entries. You may see something like Applications\other.exe and if another ophaned entry, can use a similar command to remove it:

      reg delete "HKCU\Software\Classes\Applications\other.exe"

      Always use care with the registry. Ensure the commands are correct before executing them.

    • Michael KönigM

      Option "In selection" not available to replace a text block

      Watching Ignoring Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
      4
      0 Votes
      4 Posts
      162 Views
      Michael KönigM

      Thx for your answers
      @Coises: I’ll give it a try

    • PeterJonesP

      FAQ: February Security Announcement

      Watching Ignoring Scheduled Pinned until 3/1/26, 9:17 PM Locked Moved Security
      4
      2 Votes
      4 Posts
      920 Views
      PeterJonesP

      Updates with new clarifications from this comment:

      Target Information

      Kaspersky only saw evidence of victims IP addresses in Vietnam, El Salvador, Australia and the Philippines, and noted, “We observed three different infection chains overall, designed to attack about a dozen machines…”.

      Thus, it wasn’t just “targeted” – out of all the update attempts that would have happened during the June to December timeframe, it appears there were only a dozen victims: everyone else got a normal, unaffected update, with no malicious payload.

      Obvious Side-effect: Notepad++ Not Actually Updated after “Update”

      When the attackers redirected victims, the victims got “updaters” which did nothing to notepad++.exe. If every time that automatic updates ran, you saw Notepad++ actually updated, you were not one of the victims.

      In case the user runs Notepad++ updater, if the version remains exactly the same after the attempted update, the user can check %LOCALAPPDATA%\Notepad++\log\securityError.log to see what happened & report it.

    • Cam KroutC

      Chinese compromise began as early as NP++ v8.6.9

      Watching Ignoring Scheduled Pinned Locked Moved Security
      4
      0 Votes
      4 Posts
      693 Views
      PeterJonesP

      Future readers: if you want more information for the context of this discussion, See the FAQ, which has the best summary I can make, as of 2026-Feb-04; if new information is available, the FAQ will be updated. ALL followups/discussions must go in Topic: autoupdater and connection to temp.sh. This tangent is LOCKED.

    • NppenjoyrN

      Advices to prevent further security vulnerabilities

      Watching Ignoring Scheduled Pinned Locked Moved Security
      4
      0 Votes
      4 Posts
      526 Views
      NppenjoyrN

      BTW:

      5.1-if your home internet speed is fast enough, setup your own web server to your pc under virtualbox(in case of web server software cve’s/rce’s). I or anyone can help with that. Dont forget to hardening server for security.

      IMO, this is BAD advice. To suggest to a non-security specialist who runs this as a hobby, that he should self-host, and try to keep up on all the security hardening, is asking him to get hacked even worse than the hack that already happened. He was literally paying a host to provide such services, and the professionals failed; he has now changed providers to a host who has better security procedures.

      Believe me it’s not that hard to setup a webserver or harden it, especially while backed by a strong community. The risks are different when hosting at home between hosting remotely. The hosting firm may be offered money to hijack, or an out-of-date hosting management software had rce was waiting to be abused.