• 0 Votes
    3 Posts
    61 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.

  • 5 Votes
    20 Posts
    1k 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.

  • np++ and USB moving to another PC

    General Discussion
    3
    0 Votes
    3 Posts
    60 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.

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

  • Redact Selection feature

    General Discussion
    1
    0 Votes
    1 Posts
    50 Views
    No one has replied
  • Notepad++ v8.9.2 Release Candidate

    Pinned Announcements
    2
    3 Votes
    2 Posts
    289 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.

  • 0 Votes
    2 Posts
    70 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.

  • Notepad++ community on nodebb.org

    Announcements
    33
    6 Votes
    33 Posts
    10k Views
    donhoD

    @PeterJones
    Fixed.
    Thank you for reminding me!

  • Highlight color not correct

    General Discussion
    3
    0 Votes
    3 Posts
    72 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

  • Why is the forum so scary?

    General Discussion
    3
    -2 Votes
    3 Posts
    74 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.

  • -1 Votes
    3 Posts
    53 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.)

  • 0 Votes
    36 Posts
    1m Views
    PeterJonesP

    Moderator note: with the recent post in this Topic, my attention was drawn here. And I saw that at least one of the most recent links was a malicious download site, so I removed that link. But that has made me revisit all the links in this Topic. Any that are direct links to an actual alternative editor’s official site, or a github page, are left. Ones that are ad-ridden “blogs” with dubious reviews of editors are being removed, because they are all years out-of-date and/or possibly malicious downloads: honestly, if you can type the words “alternative for Notepad++ on Mac”, you can do your own modern websearch and find dozens of those “alternative to” websites which claim to review applictions, and we don’t need this forum to be a link to outdated ad/“review” sites; such links are not helpful to anyone here.

  • Bug Report

    Boycott Notepad++
    9
    0 Votes
    9 Posts
    2k Views
    C CC

    I have been using Notepad++ for years. I frequently get this message, usually after a Windows 11 restart.
    84e247a1-494a-4e82-8eec-d4fd39f06a65-image.png

    I’ve updated Notepad++ whenever prompted, I’ve reinstalled to try to fix the problem. The problem seems to come with the program. I don’t know why I would get this message or what they want ME to do about it. I don’t even know where to find the extra DLL.

    Help?

  • notepad++ loading takes a long time

    Boycott Notepad++
    1
    0 Votes
    1 Posts
    40 Views
    No one has replied
  • How to show 2 document list windows in vertical?

    General Discussion
    3
    0 Votes
    3 Posts
    99 Views
    W TXW

    @FreeMeow Thank you!

  • 0 Votes
    6 Posts
    204 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!

  • 0 Votes
    3 Posts
    100 Views
    Fred MorantF

    @PeterJones , Perfect, many thanks,

  • Notepad++ v8.9.1 Release

    Pinned Announcements
    12
    6 Votes
    12 Posts
    10k Views
    rdipardoR

    @Pete-Davis, if you’re using WebEdit, a fixed version is already available.

  • Do I need to update?

    Help wanted · · · – – – · · ·
    3
    0 Votes
    3 Posts
    215 Views
    kia kamK

    @PeterJones
    Thanks for the clear explanation, That really cleared up my confusion. I appreciate you taking the time to break it down and explain what actually happened and why updating is safe now.

  • 0 Votes
    3 Posts
    90 Views
    CoisesC

    @Michael-König said in Option "In selection" not available to replace a text block:

    for this I mark the text block using the keys [Alt]+[UpperCase] and the mouse
    then I open the dialog box “Replace” using [Strg]+[H] and enter the text to be changed in the find field and the new text in the replace field
    I find the option “In selection” but this option is not selectable
    what have I to do in order to succeed?

    The find and replace functions built in to Notepad++ do not work with rectangular (column) selections or multiple selections.

    The Columns++ plugin (which I wrote) can do that.

    Take a look at the help for the search function and see if you think it would work for you. You can install the current version of Columns++ from Plugins | Plugins Admin… by checking the box beside Columns++ and clicking the Install button at the top right. Be sure to save your work first since Notepad++ closes and restarts to install plugins.