• FORUM: Posting Queue

    Pinned
    9
    12 Votes
    9 Posts
    634 Views
    PeterJonesP

    @donho ,

    Makes sense.

    Since deleting posts was tedious for me, I had recently been looking into whether I could use the API that the forum offers to write a script to automate some of the cleanup (like with purging the deleted posts/topics), but that will take some time to develop.

    update: As of Nov 9, the purge automation is working, and it will run once a week. (Along with purging deleted posts/topics, it will also delete user accounts that are more than a year old where the user never posted and never logged in after the first day – nearly half of the 30000 accounts were in this category)

  • Please Read This Before Posting

    Pinned Locked
    1
    5 Votes
    1 Posts
    3k Views
    No one has replied
  • Insert sequential numbers at start of lines

    31
    0 Votes
    31 Posts
    7k Views
    Alan KilbornA

    @deleelee

    the script I quoted which was TextFxInsertLineNumbers2.py

    Hmm, you’re right, I guess I ignored the script you quoted, and just looked in this thread for the first script presented. Sorry.

    Anyway, that script has a similar line:

    editor.replaceLine(line_nbr, '{n:08} {c}'.format(n=running_line_nbr, c=line_content))

    and I’d think it wouldn’t be that hard to adapt that line from what I gave before, into:

    editor.replaceLine(line_nbr, '{n}) {c}'.format(n=chr(96+running_line_nbr), c=line_content))

  • 1 Votes
    8 Posts
    130 Views
    I

    “default style” is working fine for my purposes.

    I will propagate these configuration changes to any other old installations I may have.

    Thanks to all for the very effective help!

    -Phil

  • 1 Votes
    3 Posts
    50 Views
    Alan KilbornA

    It sort of makes sense… shortcuts.xml is really just a bunch of overrides… so it isn’t really necessary to be there.

    For keycombos, all of the defaults are still there, even without a shortcuts.xml file.

    so I think this is expected/designed behavior

    Or probably, “just never considered” behavior. :-)

  • Vertical Tabs (Proposed Change): Default as Stacked, Not Sideways?

    3
    0 Votes
    3 Posts
    89 Views
    Jim DaileyJ

    @Molly-Harris-0 Have you tried the Window Manager plug-in?
    With the tab bar disabled and using the Window Manager, I think you will have something akin to what you are looking for.

  • About the new "Sort in Locale Order" feature...

    5
    0 Votes
    5 Posts
    98 Views
    guy038G

    Hello, All,

    Just a point of clarification : if you download the 3 parts of this list and want to test some other sorts , remember to add a space char in front of any code-point coded with 4 hexadecimal digits !

    Indeed, for a correct empty rectangular selection, the characters must be aligned, like below :

    2CE1 ⳡ 2CE2 Ⳣ 2CE3 ⳣ 102E1 𐋡 102E2 𐋢 102E3 𐋣

    and NOT like below :

    2CE1 ⳡ 2CE2 Ⳣ 2CE3 ⳣ 102E1 𐋡 102E2 𐋢 102E3 𐋣

    If you forget to do so, you may see the message : Sorting multiple selections is not supported !

    Best Regards,

    guy038

  • Npp website spelling error

    1
    3 Votes
    1 Posts
    124 Views
    No one has replied
  • Linux desktop version of notepad-plus-plus native. (crossplatform)

    4
    0 Votes
    4 Posts
    147 Views
    Lycan ThropeL

    @PeterJones said in Linux desktop version of notepad-plus-plus native. (crossplatform):

    Besides, with Wine on Linux, I have heard that, except for edge cases, some people can have a reasonably-good Notepad++ experience on Linux.

    This is very true, as one of the users of dBASE who specifically requested and encouraged me to work on the UDL for dBASE in Notepad++ is because at the time, his eyes were really bad, and the native IDE editor was not very customizable. He has adapted the dBASE Plus UDL I made so it works with dBASE 5.0 DOS/Windows via a WINE emulator on his servers…where he runs virtual machines for all dBASE versions. Because I was able to make that UDL, he was able to be productive again while getting help with his eyes and is doing much better now, but the point is…Notepad++ works just fine on Linux and Wine. I believe he uses Ubuntu for it, and as @PeterJones has said, only edge cases cause a problem for him, so it shouldn’t be a problem for you running it that way.

  • Monitor (tail -f) prompts to reload file

    15
    2 Votes
    15 Posts
    16k Views
    PeterJonesP

    @ryangray01,

    Again, your only contribution in this topic was to reiterate phrases that had already been used in other posts. Please try to include your own unique perspective in posts. You now have two “could be AI nonsense” strikes against you. You are on very thin ice at this point.

    This was tested on Notepad++ v7.8 (32-bit) on Windows 10 (64-bit)

    Why would anybody still be using v7.8 (32-bit) on Windows 10 (64-bit) – in 2019, when the original discussion was started, that was reasonable. But 6 years later, when Notepad++ is to v8.8.1, and Windows 10 is at the cusp of end-of-support from Microsoft, I cannot believe you are actually still using that setup, or that there is any benefit today to trying to replicate that 6-year-old setup.

  • Notepad++ and NUL characters

    13
    0 Votes
    13 Posts
    594 Views
    PeterJonesP

    @ryangray01 ,

    note from moderator: please reply to the original topic, rather than creating a new topic, otherwise readers lose all context. I have fixed this post (and one other), but it’s really better if you just keep the reply in the same topic to begin with.

    update: two of your three posts so far seemed like AI nonsense; two of your three posts so far have replied into a separate topic from the post being replied to; it is really looking like you are just here to disrupt communication, rather than participate in community. If your next post is as meaningless as two of yours, or if it requires extra moderator effort to re-connect it to context, I am going to conclude that you are an AI, and thus react according to our forum’s policy on AI nonsense.

  • Large file - hangs when entering text

    6
    1 Votes
    6 Posts
    317 Views
    xomxX

    @DougK-AZ said in Large file - hangs when entering text:

    couldn’t find a way to upload the sample file.

    Each line is similar to the following: …

    Can you reproduce the problem also with this testfile_356529lines_LF.zip?

    Can you reproduce with disabled (unchecked) N++ Preferences > Auto-Completion > Enable auto-completion on each input ?

  • Feature request - Make font size in tabs adjustable

    Locked
    2
    1 Votes
    2 Posts
    54 Views
    Mark OlsonM

    There’s another topic on this subject; it would probably be best if further discussion happened there.

  • printing from file to printer with colored characters

    3
    0 Votes
    3 Posts
    59 Views
    PeterJonesP

    Additional info:

    First, once I was on my computer this morning, I was able to confirm that ino is already in the default list of extensions for C++, so you don’t need to add it to user ext. Sorry for my poor memory.

    Notepad++, by default, doesn’t know the Arduino-specific keywords/constants. But the Style Configurator has 8 “USER KEYWORDS #” styles for C++, and you can add your own keywords into User-defined keywords box for each, and define your own colors.

    Before:
    e1e7f4e3-e45c-4e1c-853d-82658355ecfd-image.png

    After:

    Change USER KEYWORDS 1 to green, with setup loop Change USER KEYWORDS 2 to orange, with pinMode digitalWrite delay begin Change USER KEYWORDS 3 to bold+orange, with Serial Change USER KEYWORDS 4 to aqua, with HIGH LOW OUTPUT

    d2149d3c-47bd-4c08-a4e6-46bfc6b44aec-image.png

    You would have to go through and figure out any other keywords (I don’t currently have a list of arduino keywords, though you could probably search the forum for “Arduino” and maybe find something).

    Ah, there, I knew it must exist: this post had a link to a zipfile with an old UDL for Arduino. From it, I was able to extract some lists of keywords, paste them into Arduino IDE 1.8.18 to see how it categorizes them, then re-allocate them:

    USER KEYWORDS 1:loop setup USER KEYWORDS 2:ANALOG_PORT BSSID Client END_SYSEX File Firmata MAX_DATA_BYTES REPORT_VERSION RSSI SSID START_SYSEX TOTAL_PORTS WiFiClient WiFiServer Wire abs accept acos analogRead analogReference analogWrite asin atan atan2 attach attachInterrupt attached autoscroll available begin beginPacket beginTransmission bit bitClear bitRead bitSet bitWrite blink blinkVersion callbackFunction ceil clear click close connect connected constrain cos createChar cursor degrees delay delayMicroseconds detach detachInterrupt digitalRead digitalWrite direction disconnect display encryptionType end endPacket endTransmission exists exp find findUntil floor flush gatewayIP getResult getSocket highByte home interrupts isListening isPressed leftToRight listen localIP log lowByte macAddress map max micros millis min mkdir move noAutoscroll noBlink noCursor noDisplay noInterrupts noTone onReceive onRequest open overflow parseFloat parseInt parsePacket peek pinMode position press print printFirmwareVersion printVersion println processInput pulseIn radians random randomSeed read readBytes readBytesUntil readMicroseconds release releaseAll remoteIP remotePort remove requestFrom rightToLeft rmdir round scrollDisplayLeft scrollDisplayRight seek send sendAnalog sendDigital sendDigitalPort sendString sendSysex setBitOrder setClockDivider setCursor setDataMode setFirmwareNameAndVersion setFirmwareVersion setSpeed setTimeout shiftIn shiftOut sin size speed sq sqrt status step stop stringCallbackFunction subnetMask sysexCallbackFunction tan tone transfer version write writeMicroseconds USER KEYWORDS 3:Serial Serial1 Serial2 Serial3 USER KEYWORDS 4:ANALOG_MESSAGE BIN CHANGE DEC DEFAULT DIGITAL_MESSAGE EXTERNAL FALLING FILE_READ FILE_WRITE HALF_PI HEX HIGH INPUT INPUT_PULLUP INTERNAL INTERNAL1V1 INTERNAL2V56 LOW LSBFIRST MSBFIRST OCT OUTPUT PI PROGMEM REPORT_ANALOG REPORT_DIGITAL RISING SET_PIN_MODE SPI_CLOCK_DIV128 SPI_CLOCK_DIV16 SPI_CLOCK_DIV2 SPI_CLOCK_DIV32 SPI_CLOCK_DIV4 SPI_CLOCK_DIV64 SPI_CLOCK_DIV8 SPI_MODE0 SPI_MODE1 SPI_MODE2 SPI_MODE3 SYSTEM_RESET TOTAL_ANALOG_PINS TOTAL_DIGITAL_PINS TWO_PI

    I don’t guarantee that’s all, or even most, of the Arduino keywords. But it’s a reasonable selection to get you started.

  • Notepad++ strange behavior if I change the style

    3
    1 Votes
    3 Posts
    207 Views
    Mauricio CagnassoM

    @xomx Thanks!!!

    This WORKS!!! 👌

    a269e947-c335-4c76-a071-455ded5c8931-image.png

  • Column Editor incrementetion is not working

    4
    1 Votes
    4 Posts
    149 Views
    Peter 1966P

    Thank you

  • New User Questions?

    2
    0 Votes
    2 Posts
    107 Views
    mkupperM

    @grievousangel-wtj Have you seen the gcode add-on for Notepad++ https://ncnetic.com/notepad-gcode-plugin/

    It’s for G-code while you mentioned G/M-code. I don’t know if that makes a difference.

    As I don’t have a CNC I don’t know if the plugin offers the coding help features you are looking for.

  • Two buffer-activated notifications instead of just one

    7
    3 Votes
    7 Posts
    287 Views
    Alan KilbornA

    I noticed a workaround; consider the following script:

    # -*- coding: utf-8 -*- from __future__ import print_function # Python2 vestige! # see https://community.notepad-plus-plus.org/topic/26799 "Two buffer-activated notifications instead of just one" from Npp import notepad, NOTIFICATION last_known_doc_index_by_view = [ notepad.getCurrentDocIndex(0), notepad.getCurrentDocIndex(1) ] def find_docindex_from_buffer_id_via_enumeration(test_buffer_id, must_be_in_this_view): for (pathname, buffer_id, index, view) in notepad.getFiles(): if view != must_be_in_this_view: continue # needed to find the right doc in case of cloned doc if buffer_id == test_buffer_id: return index return -1 # never happens def bufferactivated_callback(args): cfn = notepad.getCurrentFilename().rsplit('\\', 1)[-1] # only the filename, no directory print('BUFFERACTIVATED:', cfn, 'args=', args) current_view = notepad.getCurrentView() current_doc_index = notepad.getCurrentDocIndex(current_view) curr_doc_index_via_enumerating = find_docindex_from_buffer_id_via_enumeration(args['bufferID'], current_view) if current_doc_index != curr_doc_index_via_enumerating: print(' NOT A NEEDED ACTIVATION NOTIFICATION!!!!!!') return print(' HANDLING A REAL ACTIVATION NOTIFICATION!') if last_known_doc_index_by_view[current_view] == current_doc_index: print(' note: THIS DOC WAS ALREADY ACTIVE IN THE ITS VIEW -- so was an activation notify really necessary?') else: last_known_doc_index_by_view[current_view] = current_doc_index notepad.callback(bufferactivated_callback, [NOTIFICATION.BUFFERACTIVATED])

    This workaround works because the “index” reported with the bogus notification is also bogus, and the correct index can be found by looking through the entire tab list for the right buffer id.

    A subtle point of the script is that it can also detect when the active tab in the inactive view is activated by the user.

  • How do I add a macro to toolbar

    8
    0 Votes
    8 Posts
    185 Views
    Leszek HelakL

    @PeterJones
    Thanks, I understand

  • 0 Votes
    2 Posts
    106 Views
    PeterJonesP

    @Code-with-Pritam ,

    Notepad++ is a text editor. You type your C++ code in there, and the syntax highlighting in Notepad++ will make it easier to visually parse the code you are typing. Then you use an external compiler to compile your source code, then you run the executable. In a bog-standard approach, all Notepad++ is used for is typing.

    If you have a plugin like the NppExec plugin, you can help automate some of the steps. For example, I have written a script for NppExec plugin that I call gcc-CompileAndRun, which saves the active file, runs gcc on that file to create an executable with the same name, then runs the executable in the NppExec console window:

    NPP_SAVE cd "$(CURRENT_DIRECTORY)" gcc -o "$(NAME_PART)" "$(FILE_NAME)" $(NAME_PART)

    (This script only works on a self-contained, single-file c program. if you used g++ instead of gcc, it would work on a self-contained, single-file c++ program. You could have a similar script which runs your own copy of make – or similar, as appropriate to what C++ compiler and build system you have: the Notepad++ source code, when you are building it with mingw-based g++, uses mingw32-make; strawberryperl comes with a mingw-based gcc/g++ compiler setup, uses gmake (which might be just a rebranded mingw32-make, but I’m not sure); and I know I’ve heard that some c++ setups on Windows can use CMake – but, anyway, if you have a makefile with your project, you could easily do a similar NppExec script that would run the right flavor of make with an appropriate target, rather than directly compiling one c/c++ file and running its executable.

    (Personally, I stick with NppExec for the single-file programs, but for anything more complex, I’m more likely to just do the code editing in Notepad++ and then go to a Windows command-line-prompt to run makefiles and the like. And for C++ apps built with the VisualStudio ecosystem, I have given in and started to use that full IDE environment, because debugging is more convenient that way.)

    This forum actually has a FAQ entry on how to Compile using an external compiler from Notepad++, which reiterates some of what I told you above, and also has a bit more on the specifics of the NppExec plugin.

    This forum is not really the best resource for learning C++, because C++ is just one of the 90+ languages that Notepad++ knows how to syntax highlight, and this forum is focused on the Notepad++ aspects, not on the specific coding language you want to use or programming tasks you want to accomplish. There are tons of websites out there dedicated to helping you learn C++; and there are other forums (like stackexchange) that are better suited to getting answers to coding questions, so you’ll get better answers to coding questions someplace like that than you will here.

    So, if you have specific questions about the use of Notepad++ and its plugins that the FAQ and my brief introduction to using NppExec for compiling C++ code didn’t cover, feel free to ask, because questions specific to Notpead++ is the reason this Forum exists and most of the regulars come to answer questions.