• Translate plugin

    21
    0 Votes
    21 Posts
    11k Views
    R

    @HEPBHbIU_KAPJICOH said in Translate plugin:

    Is it possible to add Ukrainian language?

    Looks like it already does include Ukrainian: https://sourceforge.net/p/npptranslate/code/HEAD/tree/nppTranslateCS/MyMemoryTranslateEngine.cs#l102

    There’s also a slightly updated 64-bit version on GitHub with all the same languages: https://github.com/databird/npptranslate64/releases

  • [New plugin] Columns++

    69
    9 Votes
    69 Posts
    12k Views
    Pete RunP

    @Coises said in [New plugin] Columns++:

    @Pete-Run said in [New plugin] Columns++:

    So my request would be an option to “Elastically Ignore” lines with no tabs.

    Columns++ | Profile… | Do not allow text following the last tab on a line to span columns. should not be checked for the example given.

    AhHa, I am not sure that I understand “Do not allow text following the last tab on a line to span columns” but that works niceley, thanks.

    I still don’t quite understand your use case. What is it you are trying to do that would be easier if elastic tabstop positions were shown only for selected lines?

    I only occasionally use NPP for NPP shortcuts.xml, some Lua, AHK etc. I was brought up on IBM mainframe early Text editors and JCL etc, so I am at home with text editors so am happy to use it for text manipulation, especially when Ms Word macros are lacking.

    My main gripe with tabs in textual situations is that they can “mess up/misalign” when copied between applications, hence my desire to sometimes use monospace fonts with spaces rather than tabs and of course in tables a word processor, but many situations do not afford tables.

    So, thanks again for your Columns++ and Elastic Tabs which helps keep my text aligned in different scenarios.

  • [New plugin] PlantUML Viewer

    40
    7 Votes
    40 Posts
    15k Views
    Fruchtzwerg94F

    For all of you who are interested in: A new version 1.8.0.12 is released and available.

    PlantUML version updated to 1.2024.8 Removed dependency to PlantUml.Net library Removed dependency to Fizzler library Added generated file information to support built in %filename() and %dirpath() preprocessor functions Fixed diagram background not set e.g. if white

    You can download it at the 1.8.0.12 release or just wait to the next Notepad++ update to get it with the plugin manager.

  • HexPat...Is this fancy XML?

    2
    0 Votes
    2 Posts
    107 Views
    PeterJonesP

    @TedTester ,

    HexPat…Is this fancy XML?
    The last one has a file extension of “hexpat”.

    Never heard of a standard filetype that uses that extension.

    A quick internet search tells me that maybe it’s a file that goes with the ImHex application, and here is an example – it doesn’t look at all like XML to me, so if that’s the format, the answer to your title is “no, it is not fancy XML”. It looks a lot more like a C source-code file (and, from my research, appears to be a config-style file for the ImHex open-source hex-editor app, which it uses to help it interpret specific binary formats).

    But I cannot know if that filetype is the same as the .hexpat file you found, because you were rather nebulous (other than you thought it looked like fancy XML, which makes me doubt it, because to my mind, the example I found and what you described are two very different formats)

    If I were looking at that kind of .hexpat file, I would choose the C lexer: Settings > Style Configurator > Language: C, add hexpat to the User ext.: box, then every time you load a *.hexpat file, it would choose the C lexer for syntax highlighting.

    If it really looks more like <tagName attrib="value"><nested id="12345">text</nested><single setting="false" /></tagName>, then I would add that value in the User ext.: box for XML instead of C.

    Edit: https://hackage.haskell.org/package/hexpat-0.12

    That link is about a library for the Haskell programming language which is used to parse XML. It is not a description of a file format or of a unique programming language, so it might have nothing to do with the .hexpat file you found – or maybe that library uses a .hexpat as an intermediate filetype (but the page you linked doesn’t say it does, and nothing I see there leads me to believe that the library and the extension are in any way linked; given that the other code in this repo you found are python files, I’d be surprised if there was also a file related to a haskell library).

    Can you share a link to the .hexpat file itself?

    Didn’t know if it is on the list to be added or not.

    Notepad++ does not have a “list of languages to be added”. Notepad++ uses the library called “Lexilla” to handle that part of the codebase, so if the Lexilla project were updated to handle the .hexpat text-based file format specifically, then Notepad++ would have access to it … and once it was part of Lexilla, then someone could request that the Notepad++ developers add in the support for it. (Not that it’s relevant at this point in time, but a post in the Community of Notepad++ users is not the right place for feature requests, as our FAQ explains. But you are nowhere near the level of being ready to even officially make a feature request, so don’t worry about it for now.)

    Unless the .hexpat file extension were a lot more common than it appears to be (based on the lack of solid information about it, and possible collisions in the “hexpat” namespace across the internet), it is doubtful that it’s “important” enough to get added to Lexilla and thus would not propagate to Notepad++ either.

    For languages not found in Notepad++'s built-in language list, users are expected to:

    find a language that’s close enough: for example, parsing a header-looking file format like I linked with the C lexer, or an XML-based fileformat with the XML lexer, using the User ext box to associate that extension with a specific language, as I described above use the User Defined Language feature to add simple keyword-based syntax highlighting write (or commission someone to write) a lexer plugin
  • I would want to pin opened files

    2
    0 Votes
    2 Posts
    114 Views
  • [New Plugin] MultiReplace

    66
    3 Votes
    66 Posts
    10k Views
    Thomas KnoefelT

    @Thomas-Knoefel

    Version 4.0.0.19 has been released and will be included in the next Notepad++ update. Below are the key changes and improvements:

    Implemented updates:

    DPI Font Support: Includes automatic DPI scaling for adjusted UI elements. A custom scaling factor ranging from 0.5 to 2.0 can also be set via the ScaleFactor variable in file C:\Users\<Username>\AppData\Roaming\plugins\config\MultiReplace.ini. ‘Use Variables’ Feature: Now allows initial setting of variables before processing the complete list by adding a list entry with an empty Find string next to the initial Replace statement. Collapsible List Window: The list window can now be expanded or collapsed for better handling and space management. Find and Single Replace: Now support selection scope, including rectangular and multi-selection. File Handling: New ‘Save’ and ‘New File’ buttons for managing list files. List files can now be loaded via drag and drop functionality. Minor Fixes: Various UI adjustments and bug fixes.

    Here’s a visual take on the changes:
    dce29eab-a9cb-4fe3-ad3c-aa5d5c183c39-image.png

    Enjoy!

  • [New Plugin] NppOpenAI

    37
    8 Votes
    37 Posts
    18k Views
    M

    Re: [New Plugin] NppOpenAI
    Great effort!! … but It would be really nice if I could use remote access to Ollama server. Similar to this:
    “Continue” for VS Code.

    where I can provide a link to ollama server and model to use in settings file like this for example:
    “tabAutocompleteModel”: {
    “title”: “Codestral 22B”,
    “provider”: “ollama”,
    “model”: “codestral:22b-v0.1-q6_K”,
    “apiBase”: “http://<IP of the sever>:11434”
    }

    Best,
    Marek


    moderator moved it from a standalone topic back to a reply to here; there was no reason for a new topic

  • FTP Plugin is Worthless

    8
    0 Votes
    8 Posts
    178 Views
    PeterJonesP

    @Kristy-Atkins said in FTP Plugin is Worthless:

    I need to be able to download multiple fileS from multiple website folderS on the server to
    MATCHING folders in my local website folder.

    I had forgotten, because I’ve never used that feature, but NppFTP has “Cache Paths” ability, which allows you to map specific local paths for specific remote paths.

    Go to your Profile Settings in NppFTP, and pick the profile for your host. Go to the Cache tab. put in the Local Path and External Path for the first pair, Add New; then repeat for additional folders. So, it already has that particular feature you requested, and your ire was misplaced on that one.

    I also need the FTP manager to be able to sort

    Sorting would be nice, and was asked for some time back… but apparently, someone who has a full-time job outside of NppFTP development, who is 100% volunteer, just hasn’t found the right Round Tuit™ to implement sorting. Since you imply that you have enough skills to write a full plugin, maybe you could put your effort into making the existing plugin better, and develop a PR that would implement sorting of the remote files list.

    update:

    I need to be able to select specific fileS in my LOCAL website folderS using a client side ‘tree’ and upload them to the matching folders on the server

    Use the Folder as Workspace or similar feature in Notepad++, and open the file(s) that you care about. Then, as long as the Cache Paths have been set up correctly and NppFTP is running, whenever you save the file in Notepad++, it will upload to the appropriate server location. But NppFTP isn’t meant as a full-featured FTP tool – it’s focused on the files you are editing in Notepad++, so if you want to easily upload a file that’s not open in Notepad++, you can either open it in Notepad++ and save it to trigger, or you could use a standalone FTP client for any files that you don’t want to open in Notepad++ (including non-text files, like images). And I second @Jim-Dailey’s suggestion of WinSCP, as that’s a good tool, and includes features for keeping remote-and-local in sync, which it sounds like what you want to do.

  • How can I Enable Syntax Highlighting in NPP?

    3
    0 Votes
    3 Posts
    201 Views
    S

    @PeterJones Thank you for solving my query!

  • Columns++ calculations

    4
    1 Votes
    4 Posts
    249 Views
    Mark OlsonM

    Anything you can do with Columns++ can (in principle) be done with PythonScript, and Python allows arbitrarily large integers.

  • [markdown] syntax color support for code blocks

    2
    0 Votes
    2 Posts
    432 Views
    PeterJonesP

    The UDL can handle doing different colors for `single backticks` vs triple

    ``` long code ```

    For example, here is a screenshot using the “markdown (preinstalled)” UDL that comes with Notepad++:
    5bee2f23-5331-485e-a948-783587fdf052-image.png

    Then, if I remove the single ticks from Delimiter 2 and move it to Delimiter 8 (which was empty before) and give 8 a different color, it works just fine:

    8df18d51-af9a-4f45-986a-aca6e6284a4d-image.png

    The one thing to keep in mind with making Delimiters for “triple” vs “single”: you have to put the triple before the single, otherwise when it’s doing it’s parsing, it will match on the single rule first. (It searches through the delimiters in the 1-8 order)

    And if you wanted to allow specific keywords (say keyword8) inside the triple quotes (delimiter 2), then you can go into the styler for delimiter2 and allow keyword8 inside:
    49f17867-6e52-4cdd-8d39-75f0f46c731b-image.png
    fc5ebe90-be88-4a3b-a81b-53b5a5ee8432-image.png

    I am not sure what you were trying to indicate with the “BNF” in your question: if you just meant keywords, then I’ve shown it works. But something like the @udtf(...) would be more difficult – at least with the way “markdown (preinstalled)” is defined. And getting full python highlighting inside of the code-block markdown is not possible, the way that UDL and N++ is implemented.

    But, at some point, based on the complexity you are describing, it might go beyond what UDL is capable of: UDL was meant for “simple” syntaxes, and if you wanted something more complicated, then the idea was that a lexer plugin could be the next step to bridge the gap between UDL and what N++ provides natively.

  • How to extract last 23 digits from this string

    3
    0 Votes
    3 Posts
    248 Views
    breakfreerut rutB

    GREAT! Thanks. The search expression worked.

  • How instlla emmet plugin?

    3
    0 Votes
    3 Posts
    254 Views
    R

    @jafet-Figueroa

    There’s also jn-npp-emmet, a JavaScript extension for the jN plugin (a.k.a “jn-npp-plugin”), which has a fairly recent 64-bit version. First you install jN, then install the scripts, as per the instructions.

  • Little Dialog-wrapper for PythonScript

    74
    4 Votes
    74 Posts
    10k Views
    PeterJonesP

    @Bruno-Bonaspetti ,

    Have a little patience. You already asked that question yesterday here. This is not paid support that is guaranteed to get a reply in 5 minutes or your money back; this is a Community of fellow users of Notepad++, and as such, any who read here regularly and answer questions do so solely on their free time, and they might not always have time to answer a specific question – especially one that might take more knowledge of a specific sub-tool of Notepad++.

    Furthermore, this topic, “Little Dialog-wrapper for PythonScript” is focused on the Dialog Wrapper library for the PythonScript plugin; it briefly mentioned a script that was using that wrapper to help with the user interface, but the translation is not the focus of this discussion.

    Your original question was in the right place. This question was not. I will try to give a brief answer in the other topic.

  • SaveAs event - get new file Name

    3
    0 Votes
    3 Posts
    141 Views
    Mark OlsonM

    As an example, I want to trigger my action wehn saving a file with the extension .special. When I open a file log.txt and select saveAs and enter log.special, then I still get the Filename log.txt from NPPN_FILEBEFORESAVE, hence my action will not trigger

    As @Coises said, NPPN_FILESAVED should be used to listen for when a file is finished saving. As the name implies, NPPN_FILEBEFORESAVE fires before the file is saved, so you should not be too surprised that you get the old name of the buffer when you respond to this notification.

    To respond to a file being renamed, use NPPN_FILEBEFORERENAME, NPPN_FILERENAMED and NPPN_FILERENAMECANCEL.

    You need a global variable, the name of a file that is being renamed. Let’s call it fileToRename.

    When you receive an scNotification with code NPPN_FILEBEFORERENAME, set fileToRename, to the name of the buffer to be renamed (use NPPM_GETFULLPATHFROMBUFFERID with WPARAM = scNotification->Header.idFrom) When you receive an scNotification with code NPPN_FILERENAMECANCEL, set fileToRename to NULL, because the file rename operation was cancelled. When you receive an scNotification with code NPPN_FILERENAMED, you can set fileToRename to the name of the file after being renamed (use NPPM_GETFULLPATHFROMBUFFERID with WPARAM = scNotification->Header.idFrom)

    If you don’t care about what the name of the file was before after it was renamed, you can also only listen to NPPN_FILERENAMED.

  • My Notepad++ binhex plugin

    19
    1 Votes
    19 Posts
    14k Views
    donhoD

    FWIW, just FYI:
    The Mistpen malware is a modification of a legitimate plugin for the Notepad++ open-source text and source code editor.
    Ref: https://cybersecuritynews.com/hackers-targeting-job-seekers/

    Another link: https://therecord.media/north-korea-hackers-energy-aerospace

    It seems the malware in question reuses only the ability of binhex, but not uses Notepad++ as loader.

  • [New Plugin] CSV Lint

    80
    6 Votes
    80 Posts
    61k Views
    Florian HoellwarthF

    When using the background colour highlighting mode, would it be possible to have different (darker?) background colours in the line currently selected?

    Right now, CSV Lint seems to be overridden by the “Highlight Background” Current Line Indicator of Notepad++, see first line below:

    Unbenannt.PNG

    EDIT 1: This seems to be an issue in my configuration, the screenshot in https://community.notepad-plus-plus.org/post/81307 shows the highlights just fine:
    alt text

    EDIT 2: After setting the “Transparent Cursor” option to FALSE, restarting Notepad+, setting it back to TRUE again, everything looked the way it should:
    Unbenannt2.PNG
    After restarting, though, the whole line was only gray again.

    I’m not sure, but I think this has to do with issue 15035 in Notepad++ Github (I’m not allowed to post links yet).


    moderator added link

  • Support for KQL

    2
  • Change-Request: Add display of Unicode 'Tags' symbols

    2
    0 Votes
    2 Posts
    223 Views
    PeterJonesP

    @Dennis-McEnaney ,

    What do you mean by “Unicode ‘Tags’ symbols”? Do you mean like 👍 is U+1F44D ? So something like 65014dfd-0070-4c2e-858c-5d43694fc98f-image.png being shown like 46e0db8c-ab83-4cbf-9490-f835d7e5e511-image.png ?

    if so, that’s an interesting feature request (though I personally doubt it would be implemented, even if you made an official feature request, as described in this FAQ; without following those instructions, I can guarantee it won’t be implemented, because the developer wouldn’t know you wanted it). ‡

    As a workaround, I have a script WhatUniChar.py for the PythonScript plugin – if you download it, and follow the instructions in this PythonScript FAQ to install the PythonScript plugin and script, then you can run that script and the statusbar will temporarily change to show you the character information:
    e6aee356-8594-4eb5-aaf4-acef1126e308-image.png
    (I have that script associated with a keyboard shortcut, so I can just put the caret before the interesting Unicode character, and use that shortcut, and it will tell me what the character is.)

    ‡: As you might guess from my screenshot, it was actually feasibility for Notepad++ to do this: Notepad++ uses the SCI_SETREPRESENTATION command when making those boxes, so my screenshot was made by using the PythonScript plugin to send editor1.setRepresentation(u'\U0001F44D', 'U+1F44D') to set the representation for just the 👍 character. In theory, you could run a loop in PythonScript to go from U+0080 through U+10FFFF to make all those representations. I just don’t think that the developer would be interested in adding that to the Show All Characters choices (I think similar things have been asked before, and rejected or ignored.)

  • Find in Files: all fields highlighted

    13
    1 Votes
    13 Posts
    449 Views
    S

    OK, should have mentioned here I had created an issue on GITHUB. OK, one remains, that’s fine.