Just to provide a diversity of opinion: I've heard basically nothing but positive feedback about Notepad++ over the years. However, I tried it out for about 10 seconds before closing it and never looked back. The, what I call "millions of tiny buttons" interface is ugly and distracting. I've never liked IDEs or other apps with this UI style. I use a JetBrains IDE now that has just as many features but the UI is not cluttered with millions of tiny buttons and tool ribbons.
Notepad++ (and this one here) are based on Scintilla [0]. It's worth pointing it out because it is a high-quality open source code editor component.
SciTE [1] is the "official" demo-editor for Scintilla and was last updated on March 9th 2024. The history reaches back to 1999.
I wrote a custom mod more than 15 years ago for SciTE that exposed its plugin API to Ruby and wrote some of my own plugins. It didn't support multiple cursors and I instantly switched to Sublime as soon as I discovered that feature, never looked back.
What are multiple cursors used for?
If you're using the same variable name across the file, but want to change only a couple of references to something else, it fills that "I need to do this more than once, but in a bit of an easier to reach, fancier way than with find and replace" niche.
Most editors these days should have "rename" functionality which is very aware of how that symbol is used across a codebase.
M-x lsp-rename in emacs, for example works great, if you're using lsp.
Yes but this is more general, allowing you to use it in more cases. For instance, I use it heavily when converting old JavaScript to modern ES/TS. Using "var" everywhere? Replace them all with let. Using anonymous functions instead of lambdas, easy to change those all over (provided there's no "this" dependencies)
Have two thousand strings which all need the same edits? No need to do a find/replace operation, you can do it directly in the editor.
How do you select those two thousand strings?
Using VS Code: select whatever you want to match, then Ctrl+Shift+L
So it has to be two thousand identical strings? Then I don’t understand the benefit over search & replace.
It goes further than just that -- for instance, lets say your data looks like this:
[
"foo bar/2322",
"foo baz/4223",
"foo blah/2232",
...
]
And you need to reformat that into: [
"bar 2322: foo",
"baz 4223: foo",
"blah 2232: foo",
...
]
You can absolutely use a regular expression find/replace to solve this. But using multicursors, you can just highlight the first "foo ", then hold Ctrl+D to select all instances, then hit right arrow key so that your cursors are at "foo |bar/2322" (and nothing is selected) et al, then use shift+right arrow key to select bar, baz, blah, and all other substrings, then use ctrl+X to cut that list to your clipboard. Hit delete key to get rid of the /s and add a space so you can keep the fields separated. Then, use ctrl+arrow to move your cursors to just before foo ("|foo /2322"), paste, hit space. Now you have "bar foo 2322". Repeat the same action to cut all the "foo" substrings, then move your cursor to the end, now type ": " and then paste.You get the idea. It sounds complex, but these are all just comprised of the same fundamental editing patterns-- all of the cursors act as if you had just that one cursor when you press the keys. You have to play with multicursors to really appreciate their power.
Most of the time, someone who is well versed with multicursors and their editor's cursor shortcuts (arrow keys, page up/down, shift/ctrl arrow keys, etc) will be able to complete these sort of textual manipulations much faster than using find/replace.
Okay, that particular use case I know as column or vertical select mode.
you can have rows between the columns is the key difference
It doesn't have to be identical. For the method they're describing you just have to get search results -- so you can use regex in that. You can also just command-click anywhere you want to leave a new selection-point. (Or use various other find commands that search for things and add them to your selection pool.)
The benefit of it is that you're left with a cursor in each location, and you can then do absolutely anything that you'd normally do with a single cursor in every place at once. This includes things like copy/paste, which will maintain a separate buffer in each selection. This also includes things that're actually tough to do with normal find/replace -- I could select the bit after a search result and switch it to title-case, for instance.
You can do most things you'd use it for with find/replace. But sometimes it's easier to watch it happen as you type, rather than construct a fairly complex regex with groups and suchlike.
Have two thousand strings which all need the same edits? No need to do a find/replace operation, you can do it directly in the editor.
I might be missing something here, but how is making 2000 individual selections better than `:%s/oldstring/newstring/g`?
I'm guessing that you have a rule for setting up those 2000 selection, or something?
I mean, even for like 5 identical edits, the regex is going to be faster, so you must have a short way of performing the multi-selection.
It helps when it is a bit more interactive, i.e when I only need to replace some of the occurrences versus everything.
Also when working with lists it is useful, you spawn cursors on , or < or whatever symbol you've got at a fixed location between lines, and then you can manipulate text in any number of otherwise different lines.
Any time you need to make the same edits in multiple places. I use it to mass edit array items for example by using the highlight / add cursor to identical text feature in VS Code (Ctrl+D). I even use it to copy data out of the browser and mass edit it into data structures-- often there will be some pattern to the pasted data even if it's garbage, so being able to quickly set up multicursors around the patterns in the text makes this sort of task much easier, if you are luckily on how the data pastes out.
Multicursors are the number one editor innovation of the last ten years that developers should get comfortable with-- once you start to use them you won't want to use an editor without them.
Personally while there are some task that's easier with multiple cursors, I have personally yet to find any use case where regexp replace in selections doesn't work as well.
I find Emacs Macros and rectangular editing as more useful in lore situations than multiple cursors.
As for regexps, the syntax in Emacs is hell, but I do know Emcacs has very powerful edit/replace tools.
"Emcacs"...I like it.
Yeah... typing fast and from the phone has this problem
Multi-cursor is more flexible than rectangular selection. You can skip or delete words of varying length etc. It is certainly less powerful than vim macro and regex, but it's easy to use because 1) there are less shortcuts to remember 2) no need to think too much like figuring out regex for simple tasks 3) it gives instant feedback
Video showing this https://youtu.be/lhFNWTAIzOI?t=28
You cannot edit in real-time with regex
With regex, you need to plan everything you need to do and then surgically do it.
With multiple cursors, you only need to know (roughly) where you need to change, the rest you figure it out on the fly.
In editors like vim/emacs it is possible and common.
There's a reason people use visual editors and not ed.
Wouldn’t remotely compare regex to ed.
I also haven’t found a use for multiple cursors.
Writing a regex is quick and easy.
I guess with rectangular selection and macros, VIM folks don't find much use for multiple cursors.
I use it to:
* transform a list of field names into different formats (class properties, sql select list, etc.)
* quick and dirty convert delimited text into insert statements or graphql queries or json objects
* really anything I need to change in column mode but with better tracking of words via mod+arrow keys
I use it daily in vscode to clean up small data sets where wrangling regex will take more time, and the data set isn’t something that I’m gonna see again so it’s not worth generalizing a solution.
been a while since I used it, but it was handy for templates where you need to enter a name once and have it typed in multiple places in the template (quicker than a find/replace). It was a also handy sometimes to just be able to put your cursor on the name of a variable or bigger text selection, smash cmd+d a handful of times to add another cursor at every other occurrences of it in the file, and then just start typing to modify each of those occurrences.
I use it all the time to mangle small amounts of data, like selecting all the newlines in a file with cntrl-d and making them into "," to make it into values for an array or something (obv. search+replace could do that, still it's quicker for a small number this way, or feels like it). It was pretty slick in the early TextMate / Sublime days to see people editing html and making a big bunch of tags all write themselves out simultaneously.
As much as I love npp, really all I need is sessions, tabs and spellcheck. Maybe a few other minor features.
I've been wanting/meaning to make a new text editor using SciTE as a base, just adding in that core functionality that I need, but I haven't got around to it.
If this NPN uses flatpacks I'm not really interested though. I want something super lightweight and fast that can be run as close to standalone as possible.
Might be time to move the text editor project to the top of my list, since it seems other people would probably also appreciate it.
And formatting! Don't forget language-aware formatting and maybe even syntax coloring.
Very true, very important!
I want something super lightweight and fast that can be run as close to standalone as possible.
Unfortunately, I don’t really see how you could make a standalone GUI app of meaningful scope on Linux, given the platform that “standalone” is usually defined with respect to doesn’t include a widget toolkit or even a font handling library (it does on Windows). I guess going it alone with an OpenGL viewport would work, but that’s also just setting yourself up for pain the minute accessibility, font shaping, or input methods come into the picture.
I won’t begrudge anyone writing their own toolkit or shaper, it’s just, that’s far too much work to do for the sake of being “standalone”. For the ideal of doing everything yourself, yes, I can definitely sympathize, but just getting rid of DT_NEEDED records isn’t much of an ideal.
Unfortunately, I don’t really see how you could make a standalone GUI app of meaningful scope on Linux, given the platform that “standalone” is usually defined with respect to doesn’t include a widget toolkit or even a font handling library (it does on Windows).
Fair point. I meant able to run without needing any special libraries above those that can be assumed to be installed on a standard linux desktop.
Yes, unfortunately it seems that the Scintilla codebase is far from async-ready which will make it a challenge to support new stuff like LSP. We might get tree-sitter parsing support, though.
What's LSP?
Language Server Protocol.
It's more or less a way for standaline plugins/programs to provide language-specific functionality like autocompletions, syntax-highlighting, and diagnostic errors (like type errors) independently of a specific editor.
The idea is that standalone programs are made called language servers which can provide these features. Editors tend to communicate with them using JSON-RPC over stdin. So one can only write a language-specific parser once and integrate it with any editor.
Usually (at least in VS Code), there's a third part which is an editor-specific plugin which contains custom code to connect the editor to the language server, but this part is meant to be a thin layer.
LSP (Language Server Protocol) a way for editors to talk to language tools to provide auto complete, warnings errors etc. this means the language tools can be written once and then any editor that has LSP support can use it https://en.m.wikipedia.org/wiki/Language_Server_Protocol
I fondly remember SciTE from when I first cut my teeth on desktop automation. I’m glad to see it alive and kicking.
Speaking as someone who uses SciTE daily and has dug into the code, there is nothing high-quality about it.
I really like geany, which is also based on scintilla
I used Scintilla as the editing component for a JavaScript IDE about 20 years ago, was good.
wxWidget's wxStyledTextCtrl is based on Scintilla, too: https://wiki.wxwidgets.org/WxStyledTextCtrl
I very much miss Notepad++ for making quick notes, and then being able to close the window without being asked whether I'd like to save the document. This, and auto-save (so not losing documents if you forget to save) is one of the main reasons I replaced Notepad with ++.
Rather quickly, I found that I had to completely remove Notepad so muscle memory would stop guiding me to it. Good times (and sad ones; I lost a lot of lecture notes) -- nevertheless, Notepad++ is an excellent piece of software.
I'm curious if the same "write and close the window" workflow is achievable with Kate, as I haven't been able to find the option; and, of course, the obvious question: what about this one?
Notepad will now restore open files, like Notepad++ does. TextEdit on macOS does the same.
It has been a suggested/encouraged default behavior on the Mac for many years at this point.
It’s just yet another thing Apple gets right: why would the default be to NOT keep what you just put into the computer?
It seems to be the modern way, and normal on mobile apps, and I can't stand it. Why would I want the computer to save what I wrote without asking? I like being asked. I dislike computers trying to be clever.
This happened to me yesterday:
I had to complete a resiliency test on our infrastructure and submit it to auditors for compliance reasons. I ran the tests, got the results, and I have to put it into a report. The report is like 30 pages long or more, but very little changes between each test (we do them quarterly). So I only usually change a few tables with the new report results, and freeflow some commentary in the discussion section that is unique for that run, so that the auditor feels special.
Anyway, I open up the previous quarter's report. I edit a bunch of data, write a bunch of useless commentary and go to "Save As" with the Q1-2024 suffix, and I realize the Word document had been autosaving my work the whole time on top of the Q4-2023 report. Urgh, very annoying. I didn't save intentionally because I knew I would save a copy later.
I was able to restore the old version through revision history, but still annoying nonetheless.
I'm inclined to agree with Microsoft Word's autosave, here. If you are making edits to a file, the implication (which could be wrong) is you're intending to overwrite at the end. And indeed, autosave came around because way too many people were losing document modifications to freak power outages and computer crashes.
If the intent is to not overwrite an existing file, I personally learned to make a copy first either via Save As in the program or by copying in whatever file manager I'm using. That way I make my intention clear to both myself and the computer.
I've actually burned myself numerous times because occasionally I would forget to copy first, instinctively hit CTRL+S frequently because I hail from before autosaving became widespread, and then realize I just overwrote something I wanted to keep as-is.
As I read it, the GP complains about Word auto-saving on top of the OG document. I think intermediate changes should go to an auto-save buffer until you tell the editor to save over the top. For that reason I'm inclined to agree with the GP. Word's behaviour is wrong and the process you describe sounds like a workaround.
That's really annoying, but not quite the same as what Notepad++ (and presumably others) do.
Notepad++ just saves a cached version of the file without touching the original until you explicitly hit "Save". If you close the file in Notepad++ (not exit Notepad++, but tell Notepad++ to close the file thus deleting the cache), it will ask whether you want to save your work.
why would the default be to NOT keep what you just put into the computer?
Because you didn't ask it to save and closed the app?
And if you misclick? Or there's a power outage? Or crash? Guardrails are nice and since I usually want to save what I've entered I appreciate it being the default behavior. Or in other words, I asked.
To address another commenter's point about word overwriting: auto saves should only go into a temp/separate file so as to never supersede manual saves.
Occasionally, someone will submit their new text editor to Hacker News and the first thing I do is check if it quietly saves sessions upon closure.
It's amazing how many people don't bother implementing this indispensable feature.
Kate can restore sessions, not sure it can auto save on close. Ctrl+L saves all but Kate will ask for still unnamed files.
I haven't been able to get it to act like Notepad++, wherein it doesn't ask you to save on quit. Perhaps there's a configuration option I've missed?
I'll look for it but I'm not sure I've ever seen it despite having seen the settings countless times. If it doesn't exist it could be an easy and useful contribution :-)
I'm very glad others have come to expect this feature, too; I assumed it was another of my weird, niche workflows :-)
> It's amazing how many people don't bother implementing this indispensable feature.
BBEdit is almost bizarrely bulletproof in this regard. I never, in a decade, lost a single note. To me, this is probably the most overlooked and important feature in a text editor.
I switched to Plasma/Linux a few years ago and have since learned that Kate is not as robust.
Must try Notepad Next.
Vim had this feature for years. But it took until I tested lazyvim (neovim distribution of plugins) that makes session restore so easily accessible, that I now rely on it.
It's always amazing how someone's "indispensible feature" is something that someone else couldn't care less about.
I don't even really use the concept of open files. I mostly switch files using a fuzzy finder that lists files in the git repo. So what files are "open" in my session is irrelevant to my workflow. (Unless they have unsaved changes of course, but I basically always just use "Save All" so even that state is minimal.)
You probably already know this. VSCode has both autosave and hot exit features.
If you quit the application when hot exit is enabled, it will restore all windows the next time you start it.
I don't see any way to close individual windows without prompting but you can do command+w and then command+d to "Don't Save".
Oh yeah, VSCode's autosave has saved me hours in otherwise-lost code. I do make frequent use of its hot-exit functionality, too.
While that's great, I wish the same thing existed for a lightweight Notepad-esque app, too: I used ++ a lot for quickly jotting down information while it was being read to me (so, on the phone); having to start a full-blown IDE for this seems wasteful, and not the right tool for the job.
Perhaps the solution is just to leave VSCode open all the time, but that wouldn't work either: whenever I switch workspaces, I'm asked whether I'd like to save the unsaved files (so, just like Kate), and it can be quite resource intensive. Grr.
Not just the auto save, but that it is using GIT on the backend for the timeline. Such a helpful feature!
Try CudaText.
Its a pain to install due to dependencies on libqt5pas1 (which doesn't work with the version provided on Ubuntu 22.04). I was able to install via snap but it takes way too long to start up (even vscode starts faster).
Oh, I've heard that snaps are terrible. I'm using flatpak on Fedora and Cuda is starting much faster than VSCode.
Is anyone aware of an editor in Linux that has this behaviour?
Modern gedit on gnome has it
it's achievable with default notepad.exe in Win11.
Fwiw, I do this in Obsidian (it just saves every keystroke), really enjoying it.
I don't think the core/default Kate editor does the same "write and close the window" like Notepad++. Kate does have pretty cool options for session handling - which helps keep files open that you had been working on, etc...which i understand is not the same thing. But, now that you asked, i wonder if there is a plugin or extenson for Kate that might provide such a feature? I myself am a fan of Notepad++, and install it on any corporate-issued Windows machine that i am given by dayjobs...but at home, its all linux all the time, so Kate comes closest for me. I did see someone else mentioned that there is something named NotepadQQ or something which is like Notepad++ but works cross-platform...so that sounds interesting if true. And, i wonder if NotepaddQQ has that auto "write and close the window" workflow?
I've been using Sublime Text to do this. I use VS Code/Neovim for my programming, but Sublime Text is still way too convenient as a notepad to keep around, one of the main reasons being this feature.
Have you tried neovim? It just works and is blazing fast (respectively plain vim, if you don't need plugins)
I never noticed this. I just hit Ctrl-S obsessively in every application. I heard that once upon a time, vanilla Notepad ignored Ctrl-S. Horror!
being able to close the window without being asked whether I'd like to save the document
Notepad on Windows now has this behavior. Finally.
After having used it for more than three decades, it now has the one feature that prevented me from using it to take scratch notes. It will autosave without prompting on close.
And it has a dark mode, so now I use it daily.
Awesome. When I moved to linux a few years ago notepad++ was one of the harder apps to find a replacement for. I ended up sticking with Kate
Edit: Kate is great, give it a shot!
There is https://www.geany.org
Exactly this. It's already cross platform (windows and Linux, at least), extendable, looks very similar and has many of the same features. I'm not sure what killer feature is missing that would make someone reimplement the whole thing. The readme weirdly doesn't mention it.
Like @fngjdflmdflg noted, years ago when i moved to linux (for personal use), I also had trouble finding a decent/similar replacement to Notepad++. I started down the Geany route, and liked it alot. It is cross-platform, not slow, has lots of themes, customization options, etc. But eventually I stopped using it, and landed on Kate. For the life of me can't recall why i moved away from Geany? I have been a user of KDE Plasma for many years, but that's not the reason why i moved to Kate, because i actually was still a user of Geany for quite a while during my use of KDE Plasma. In any case, Geany is a really solid option. Not sure that Geany is a feature-for-feature, perfect alternative for Notepad++ (but neither is my favorite Kate editor either!)...nevertheless, the rare times when people ask me for recommendation of text editors on linux (or cross-platform with the intent of using the same editor on all their OSes), I often stick to suggesting Geany or Kate. And, then of course, if they're exclusively Windows users i then suggest either Notepad++ or Geany Kate - not necessarily in any order.
(For the Windows machines that my dayjobs issue me, I still use Notepad++ since funny enough that is easier to allow then requesting to install Kate! Corporate world be getting all strict on software installations nowadays - yikes!)
Yeah, but Notepad++ is a Windows app, that is a GTK app.
As someone coming from Windows, it's crazy how bad GTK apps look for desktop. Crazy. Like I can't comprehend how did it get to this point.
Just compare the screenshots
https://www.geany.org/media/uploads/screenshots/geany_light_...
https://notepad.plus/wp-content/uploads/2023/03/screen.gif
Notepad has 16 toolbar buttons in the same amount of width that GTK can only fit 10 toolbar buttons. The height of the tabs and status bars are also MUCH shorter. It's completely ridiculous and makes every GTK app look bad to me. Not just Geany, but Xed, Pluma, Gedit, the image viewers, the file managers, the system settings dialogs, etc. I have a mouse. I can point at things. I'm not using my thumbs or toes to operate a desktop app.
Qt's licensing sounded a bit weird. At first I thought your app HAD to be open source to use it. But once it was clear to me that you can sell apps made with Qt so long as you dynamically link without having to pay royalties or anything, the choice was clear. If I have to program an app for Linux, I'm using Qt.
And so far the only problem I found in Qt is that it uses the system's "native" GUI by default (i.e. it uses Gtk on Linux). This means that the Ok-Cancel buttons are Cancel-Ok instead of the correct order. Who puts Ok buttons at the right side? Now if I want to quickly close something, I'm clicking at the corner of the window which is the easiest point to click at, and on the top right I have close (which cancels) and at the bottom right I don't have cancel but Ok which COMMITS which is the opposite of what a thoughtless rash speedy click is supposed to do. Ok should be at the left so you can't commit things by accident. The only reason to put it on the right is if you're designing for tablets so the ok button is closer for right-handed users. This isn't how a decision for a desktop-oriented design.
Have you ever heard of https://cudatext.github.io/. It's certainly faster than Kate.
it's much uglier though
Faster than Kate is a feat. Speed is one aspect, I have been using Kate for more than 10 years. What, in your opinion, should make me check out this editor?
I have run Notepad++ with Wine on Linux before and it works well.
Kate is awesome. It’s cross platform as well.
I use Notepad++ every day, that WINE runs it is implicit, it's like running any other app. I love KDE but I'm not a fan of the Kate editor. Notepad++ even automatically checks for updates like it did on Windows, downloads it, installs it, etc. Works exactly the same. It's great.
there is https://notepadqq.com
Sadly this project is not actively maintained anymore
Link for the lazy
Looks like an IDE more than a notepad, with the side bar browser, but then I suppose it's a small step up from NP++ (with syntax highlighting and ftp^W git support already built in) to a fully fledged programming environment. Spotted the all-important keyword "vi bindings" also. I should give this a try!
Bit sad it won't work on remote systems (without inefficient X forwarding at least), but I've been looking to try out a new editor and e.g. not having to deal with things like O timeout (apparently that looks indistinguishable from the start of an escape sequence and so the command line has to wait to see if the rest of the sequence follows) has advantages as well
Looks like an IDE more than a notepad.
AIUI
There's the editor embed-able component, kedit.
A basic editor based on it, kwrite.
Then the more fancy editor program, kate.
And the IDE, kdevelop.
I used Sublime as my npp replacement on Linux. It's a little more coding focused so it lacks some of the nice editing features but was good enough. Luckily npp is pre installed on my work PC so I don't use anything else now.
I never needed a replacement but I tried Kate for quick edits and honestly it's a very lovely implementation
There is vs code if you like browsers.
Ahh. thanks. Was looking for comparisons for a quick note program on this thread.
Why would I choose notepad++ over something like vim or emacs? Is there a compelling differentiator?
Does emacs work as well as notepad++ on windows?
emacs works great on windows. I'm not sure if there are things notepad++ does that emacs can't but I've never had any windows-specific issues with emacs.
From what I've seen it's mostly baby duck syndrome and that's totally ok. I am also fully "baby ducked" into vscode, so I get it
baby duck syndrome
Today I learned something new.
Notepad++ is literally a better version of notepad.exe. I would not consider using it for anything serious though.
It depends what your "serious" work is. I have used it to edit well over 300 million words of text, reformatting scripts to add tagging etc, large scripts of complex regex to data clean (although nothing I know of beats TextCrawler for that task), even writing code in several languages - though of course a proper ide is more useful for many coding tasks. VS Code for example absolutely chokes on large files. Sublime does an ok job - but not one I can rely on for larger batch jobs. NPP excels, and I can quickly do thousands of changes on thousands of large files quickly. NPP also has many plugins (like Sublime etc), and its utility depends on them as much as the other text editors do.
Is there a point in comparing CLI-based, primarily-*nix-userbase editors with a GUI-based primarily-windows-userbase editor?
Of course, to signal your leetness.
I use vim and geany and code::blocks and np++ for different things at different times.
geany, codeblocks, and np++ are all scintilla, so what I am really saying is I use both "something like vim or emacs" AND scintilla, and there is no dichotomy.
And what is "something like vim or emacs"? The two are nothing like each other.
Anyone who used either vim or emacs already knows why they do so, and already knows that none of the reasons anyone will say they like any normal editor will apply. Everything anyone says will either be something vim or emacs already has their own answer for, or will be things they actively don't want.
Question seems somewhere between disingenuous to inexplicable. I would say rather than an actual request for information, it was just to say "I like vim or emacs", except "I like vim or emacs" makes no sense because they are not substitutions for each other.
Unless you're looking for a compelling reason to switch. For example, I use VS Code sometimes because of its markdown preview pane. That's not available in emacs or vim (to my knowledge).
The compelling differentiator is that all the features are easily discoverable, you don't need to read a manual before you know how to save/quit/search/replace/use tabs/undo/redo/macros/etc.
Standard Windows hotkeys, fast, buttons.
Not really, if you already know vim or emacs well enough.
You don't need to worry about modes or plugins for language syntax highlighting for most file types as it's built in.
Here's why I like it:
For a considerable time in my professional life I was forced to use Windows. I would still have access to Linux VMs, in which I spent most of my time, using vim as the editor but whenever I wanted to take quick notes, sanitize text, stash away some info I need in work etc., I'd just use the notepad on Windows.
Then I found Notepad++. The UX is just so great (though I never figured out how to delete all the line ending spaces and it's sometimes nagging me).
So I love both Vim and Notepad++, different use cases. Different reasons.
Cool! Notepad++ was one of the apps that I missed the most when I switched to Linux. Besides games, it was the number one reason that I kept rebooting into another OS. After a while, I learned emacs, then vim, and the rest is history. Today, I would probably have switched to Codium. As long as we agree not to use Sublime Text anymore.
Notepad++ works well for me in wine.
I couldn't get it to work perfectly, it had text and UI rendering bugs that made it unusable. Geany works well as an alternative for me on GNU/Linux.
I've used it on Ubuntu and derivatives. My only observation is there are many different packages for wine, and selecting the best one for the distribution seems to make a difference. Installing directly never worked for me.
I transitioned recently to Mac on new job and I was surprised to find the most painful thing was not havig Notepad++ and was super amazed I did not find comparable software on Mac.
Sublime is a massive improvement in my opinion, and cross platform. It's not free** but you can use a personal license at work and on multiple machines. It's one of the few text editors with a plug-in system that can reliably open 100mb+ files and auto reload on file updates (without crashing constantly).
** it's sort of free, the trial period is unlimited. It just gives "activate me" popups every dozen file saves or something.
TextAdept is a cross platform, minimal, fast, and extensible text editor that might be a good candidate.
Geany is almost twenty years old.
then vim, and the rest is history.
Heh, I'm glad you found the light in the end =)
I remember that I first tried out Vim during an internship with a boss that was less than receptive to me trying out things I heard about online, like the way he pronounced "wtf is dug..dug..go?" when I did a search query, or the weird look gvim got... I guess I was a bit more prepared for the Linux life by having seen Vim before, but still it was surprising nobody built NP++ for Linux and that there was nothing better than Geany available in terms of NP++-likenesses. It seemed so simple, how can it not exist? Apparently the simplicity is deceptive
Npp (Notepad++) is my go to text editor for windows. It has been actively maintained for 20 years. It’s lightweight with a super responsive UI. I love the text search/replace interface. I keep a copy of the portable version on my keychain thumb drive because I never know when a friend or family member will have me muck around with their pc. Npp Version 7 runs splendidly on wine. I prefer it over the linux desktop text editors like Kate (which is a great editor in its own right).
I don’t think NotepadNext appimage or flatpak will be able to match Npp in regards to memory footprint and ui responsiveness.
But, I am excited to use it and it may find it’s way onto my thumbdrive because it runs natively on Linux so it doesn’t depend on wine.
I also love Notepad2. Both are awesome.
I thought the project was dead
I believe it's been replaced by notepad3.
Notepadqq on linux is basically 1:1 with notepad++
I'm not a specialist, but having used both I can say Nqq presents a lot of bugs Npp doesn't.
I was not expecting much, but AppImage startup time and responsiveness looks promising. Memory usage in GNOME System Monitor looks decent (AppRun.wrapped - 13.9MB, NotepadNext - 876.5 kB). Typing feels much faster than Linux version of VSCode, maybe even reaching levels of SublimeText? Need to test with much bigger documents with complicated syntax highlighting to make sure. Overall, the major Notepad++ selling point - autosave on exit - is not implemented here, so until then I'll be going back to Geany, but will keep my eye on this. And forgot to mention that it decently integrates into GNOME desktop as well, no issues with decorations and missing app in Alt+Tab list.
Did a bit more testing. Autosave feature exists, but it is turned off by default. Another good thing is that NotepadNext is rendering Japanese characters correctly, as compared to Geany, which renders Chinese instead. One strange thing, is that Linux version is using Qt5 instead of more recent Qt6.
The startup speed for this app is really good. From my quick testing it seems like it is as fast or slightly faster than npp. I am surprised that QT can be that fast. I recall this line from the Sumatra PDF developer on why he chose win32 only:
The only way for one person to even attempt cross-platform app is to use a UI abstraction layer like Qt, WxWidgets or Gtk.
The problem is that Gtk is ugly, Qt is extremely bloated and WxWidgets barely works.[0]
To be fair, a PDF reader and a notepad editor are two different things, and startup speed is only one metric which is the only one I tested. But I always assumed npp was also using win32 APIs only for similar reasons. (I don't actualy know what GUI toolkit npp uses.) And "bloated" could perhaps mean a lot of things. Perhaps QT takes more memory or something. But I always assumed npp's unbeatable speed was due to native APIs.
[0] https://blog.kowalczyk.info/article/2f72237a4230410a888acbfc...
Performance is not an issue with Qt. He probably means the framework is too large and complicated from a developer perspective. The compiled code is fast.
Came here to say the same thing. Qt is a C++ library and is widely used (for example in KDE) and is also used in embedded environments a lot. And its pretty mature.
I think Krzysztof's objection was mainly about size (memory/disk). He set pretty high standards for SumatraPDF in that regard. The full statically linked executable is only 8MB, while the Qt Core and UI libraries by themselves are larger than that, and that is before you start talking about dependencies like the 20MB ICU data.
GTK+ 3 and 4 are quite visually ugly, but you can get Windows classic-styled themes for both (from Chicago95 and B00merang project respectively) that will make them far more usable.
Do those themes mimic the Windows look or do they ask Win32 to draw butons, windows, menus, etc...?
Sumatra is such an awesome piece of software, small, fast, almost entirely bug-free, incredible load speeds for large pdfs... my Linux alternative is Evince, which does about the same
Missed opportunity to write it in a Memory-Safe, White House approved language and call it Rustpad or something...I joke of course.
After reading the title I was 99% sure it would've been an Electron app, nice to see it's actually native. Good work.
an electron implementation would sorta kill the point of npp :)
Absolutely, the startup speed of npp is addictive. If only VS Code could be half as fast.
that's the main reason I stuck with sublimetext for soooo long. It's so fast and it can handle insanely huge files plus it can do column operations on text on insanely huge files. VS Code does seem to have been optimized since the first few years though and its not hardware related.
The GUI is made with Qt, for which the preferred programming language is C++. So that could be one reason already. There are a lot of bindings listed for Rust in the Qt docs [1] though, but they will always be a subpar experience compared to the first-class support for C++ in Qt.
Yeah and the main editing component is Scintilla, also C++.
I was thinking the same thing. Why didn't they do it in Rust? But probably because the GUI story with Rust is still evolving. Only recently have I started to see UI frameworks popping up for Rust.
HOLY CRAP!!! This is wonderful news. This is probably my most missed app on Linux/Macos. Installing immediately!
edit: flatpak support is just chefs kiss.
Why do you prefer it to sublime text in particular?
I also like Micro a lot - it uses the command line as a GUI
Npp is great for editing text, no matter what kind of text file it is. It has a bunch of crazy plugins that are just mean for editing and converting text in files. For example, you can edit a column of text (rather than just a row). It's great for working on log files or anything computer generated that needs reformatting. Works ok as a code editor too but it's not an IDE (although it does come in handy when an IDE is not available). It's just another tool to have in your quiver.
I've never properly learned VIM, so I do enjoy the micro command line editor for this sort of stuff.
Sublime text for me takes too long to load. It's also too heavy for what my use case is. I just want a simple text editor, not an entire development app.
I've always known Sublime text to load and run instantaneously unless working with enormous files that do not have newline characters.
Sublime is not FOSS, for one.
I use Geany on Linux, it is the closest replacement I have found. Until now.
honest question - why was there a need to start a new repo? Would you be ok to merge yours with notepad++'s official repo[0] (both are in c++). Did this cross your mind before and what happened?
Not saying that they would allow but it'd help the community as a whole with less duplication of work and deliver more features.
I can't answer for the author, but keep in mind that Notepad++ is good because it uses the win32 API directly. I don't see any future where they'd just accept to replace everything with Qt.
There's no need to. It installs, updates and runs exactly as it did on Windows, I use it every day.
It's a complete re-implementation from scratch, they don't share code, using the same programming language is not particularly relevant.
Was wondering the same. Of course a lot of code is going to need to be new, moving away from Windows-specific APIs, but that's only a lower layer (or so it seems to me). Everything from the versatile search and replace (e.g. regex engine), the macros system, the syntax highlighting, the session management... all that code needn't have been rewritten, people clearly like it working the way it is
Shameless plug: I'm working on a multi-platform code editor similar to NP++ and some new editors like Zed called ecode, that tries to be a fresh take on code editors using some modern tools and technologies like LSPs. I started working on it after using Geany for many years but finding Geany lacking some essential features for my needs. ecode is developed with speed in mind and has a very fast startup time.
Nice work. Does it have auto-save, like npp?
Thanks! Currently it does not but it's not something particularly complex to implement so I can add it if there's interest! I haven't used NP++ in some time so I don't remember exactly how it behaves but I'll take a look.
Autosave is table stakes for good editors
yeah I'll definitely try out ecode when auto save is implemented!
Notepad++ has the best feature ever: Autosave without a filename. Just close and open and everything is the way you've left it.
VSCode and Sublime Text do that too. And recently Microsoft even added it to Notepad.
Ah didn't know!
And it has caused me so much pain. Open a file big enough to crash np++? Good luck getting out of it.
Eventually I figured out it only reloaded the file if you can few enough tabs open so I could just open a bunch of other files, let it crash, open some more and then eventually it wouldn't load the huge file, so I could close the tab. But still, such a pain.
It was many years ago and I was young and stupid, so there's probably a much better way. But I've moved on to Linux and to Emacs now
I always use vim for big files. Have edited giga-byte SQL dumps with vim with no problems.
I hope this is better than other offerings on Linux. I've tried a few and none of them come close. Fingers crossed.
I hope this will be compatible with np++ plugins which makes np++ even better.
:*(
Plugin compatibility between NN and N++ is not possible.
https://github.com/dail8859/NotepadNext/issues/422
Shame, since N++'s plugin ecosystem holds quite the treasure trove of functionality.
https://github.com/notepad-plus-plus/nppPluginList/blob/mast...
That is a shame. I use a small set daily.
Certainly the windows release fails on my laptop.
Notepad++, as the name suggests for me, was actually the next editor I learned how to use after Windows Notepad. I saw all this pretty syntax highlighting, and the ability to use tabs, and I decided to use it.
I got pretty good with it, even making custom macros and the like, and as I was learning C and C++ on Windows it was still the text editor I used.
The reason I stopped using it really did just come down to the fact that it didn't work on Linux. I had already been dual-booting Windows by 2011, and when Windows 8 got announced I utterly hated it so much that I decided to just do Linux full-time. While I was aware that Notepad++ worked on Wine, I didn't really want to muck with anything emulator or emulator-adjacent, so I just picked up Emacs and Vim (went back and forth for multiple years until finally settling on Vim).
I will need to look at NotepadNext. NeoVim is great, but sometimes I want a simple, non-IDE, GUI text editor as a place to just dump notes down.
I do all my simple note-taking with vim. Curious why it does not the fit the criteria for you?
For reasons I don't really understand, I've never liked any of the GUI versions of Vim.
I use Vim for coding and even writing Markdown docs, the thing I like using GUI text editors for a place to dump copy/paste stuff, writing down phone numbers real quick, quick stuff I can click and copy-paste from. The console version of Vim is fine, but getting stuff to and from the system copy buffer is a bit cumbersome.
I really loved TextMate for quick, simple and ultra-fast note taking / quick pasting stuff on macOS. Is there anything like that for Windows (except Notepad++)?
NotepadNext
Will try, thanks!
Damn this app is so fast. It handles 24x War and Peace without sweating a bit. Much faster than Sublime as well. The only thing with equivalent performance (on macOS) is BBEdit. Does anyone know how they are able to load such large files so fast? I guess they lazy load from disk as well?
I'm writing a block editor in Qt C++ (Npp is also written in Qt) and QML[1], so I'm very curious. I load the entire text and then render it using a virtualized list (ListView). My app is currently the fastest block editor that I've tested. But I always want to take it up a notch and even compete in performance with Sublime and BBEdit, and now NotepadNext.
[1] https://www.get-plume.com/
EDIT: It's REALLY fast and very efficient (consumes low amount of memory). Seems to be faster than BBEdit (unscientific). If anyone has a clue about the architecture or can share a link, it will be appreciated.
Thanks for the comparison to Sublime.
That's been my preferred editor for a decade, but massive files have always been a pain point.
mmap?
Do they mention why they are re-writing it? It seems neither bad nor very popular.
notepad++ is windows-only.
Ah ok.
Is there a homebrew package for macOS ?
a brew search for notepad only returns "notedup" so I don't think so currently
It looks like they are supplying a DMG so you would just drag the executable to Applications
Finally! Every you are so I go online and look up if someone did it, and finally I won't have use vscode
Geany is mature.
Not really willing to explore after this.
By default, MacOS enables font smoothing which causes text to appear quite differently from the Windows version. This can be disabled system-wide using the following command:
Does any sane person on a Mac want to have a Windows look, especially when it comes to fonts? Looks crazy to me.
Does any sane person on a Mac want to have a Windows look, especially when it comes to fonts?
Probably? There are a lot of Mac users.
Is there a way to disable the save prompt?
Settings -> Preferences.
[x] Restore previous sessions [x] Unsaved changes [x] Temporary files
A colleague of mine, who certainly was an extremely experienced and knowledgeable programmer, used Notepad++ for everything. Certainly was interesting to see how good you can be even with relatively simple tools.
I did the same 10 years ago, but now VS Code is a much more productive tool for me; for example, extensions, Git integration and markdown preview.
I think I missed what was wrong with npp that needed superseding. Is it just that it’s not portable? Perhaps a portability layer could be contributed?
Based off looks and speed, I've always assumed Npp was pure win32. So the only portability layer is Wine.
That said, from memory, it actually works well in Wine, but plugins can be iffy.
happy days. at last
I loved Notepad++ in the past, but I don't see myself using it again. Notion for notes & VSCode are just a lot better in my opinion.
I always wanted this. Notepad++ is an excellent editor but was always Windows only
I worked with a guy who used Ubuntu and his main editor was Notepad++ running in Wine.
Anyone knows who is the author?
Notepad++ for Linux & MacOS?? Very awesome!! :)
No, many features are not implemented yet. I cannot use it now.
Nice I'll try it. About the only app I miss on Linux is Notepad++.
I love that this is a made with C++/Qt and isn't an electron app.
Geany already exists and could use some help.
While I love the plethora of text editors, I'm sticking to Sublime Text for pure text editing work, and Vim / Vim-mode with Jetbrains' IDE for code-related work.
Power and love be to all the alternative text editors out there though.
Notepad++ has a place in my heart. When I was learning HTML back in the late 90s early 00s I was using MS Frontpage or Adobe Dreamweaver GUI.
I read that those would spit out sub-optimal HTML and you should use a text editor. So I downloaded Notepad++ and I learned real HTML using it.
never really been a fan of Npp, i used to use geany, and now vscode as most people do these days.
I am primarily a nevim users. Occasionally I use vs code and dislike it for its slowness. Recently discovered `Zed`[1] on Mac. it is quite fast and really good GUI editor (vs code replacement in some ways).
I think NotePadNext will still remain primarily a choice for windows users.
[1] https://zed.dev/
I like this a LOT. Any plugins eg diff type things or vim mode etc on the roadmap?
If someone is looking for a Notepad++ equivalent on macOS, I can wholeheartedly recommend CotEditor. Native, too.
Does this reimplementation allow for defining projects consisting of files from all over the file system? Rather than just all the files in a directory? That is a killer feature of Notepad++ for me.
I used to use Metapad at times, apart from (mainly) gVim, on Windows.
https://liquidninja.com/metapad/
Development on it has stopped, IIRC, but it is still available for download.
I had used many other text editors earlier, such as TextPad, NPP, SciTE, PFE,etc., over the years .
I used to love notepad++’s macros but that is pretty much been replaced with vscode multi caret and copilot.
I’d still use it for more complicated things but very rarely..
Related:
NotepadNext: A cross-platform reimplementation of Notepad++ - https://news.ycombinator.com/item?id=30959025 - April 2022 (273 comments)
For the macOS version, the docs suggest turning off font smoothing. This might not be something users want to do.
sometimes I am still sad that I switched to VS Code 6 years ago. The multi-language-spell check feature (plugin) is still better implemented than in any other editor or smartphone I have seen. Same for multi-line editing (native to npp).
Man, what a throwback. I absolutely LOVED Notepad++. Then I transitioned to macOS and Brackets, then Atom, then Sublime Text.
Thanks for the trip down Memory Lane.
The new Jetbrains ui is hard to like. It’s form over function. The old ui (thankfully still available). Having to hover over a hamburger button just to cause it to draw the menu bar options then slide the mouse across to what you want is annoying.
The new commit window alt+0 is better, the old modal always felt tacked on when everything else is a docked panel.
I tried it. The first week I shared your opinion. But then something flipped. I configured and learned hotkeys to hide the file/services/... pane and ended up with something I can only describe as 'calm'. Only 1 or 2 panes of code visible, and all functions hidden but available.
The main detractor is indeed the hamburger menu. Vscode had ctrl-p, emacs has alt-x, and both provide a way to search for some function to execude. I hope Jetbrains is hiding something similar in its innnards, but haven't found it yet. Ctrl ctrl isn't it, at least for me.
I went all-in on Jetbrains Ultimate last year without regrets. The thing is great and powerfull, but it is hard to find what you need in there, and hard to find out what is the purpose of some functionality. I've actually lost usefull functionality: Something usefull but I don't remember the name and can't find it in the menus. I should spend some time spellunking in there. Even so, I hope they find something better than the hamburger or the zillion hotkeys.
Jetbrains has Double Shift and Ctrl+Shift+A.
Thanks, all of you.
I like the new UI as well. There's always a learning curve, but after using it for months I haven't found any reason to switch back.
ctrl+ctrl is "run anything" (I tend to use ctrl+alt+r for the different but similar run menu instead).
I think what you want is "Actions" - which is default to "shift shift" and then click on a tab, or (ctrl/cmd)+shift+a to jump directly to that tab.
Interestingly in the JetBrains emacs keybindings set, alt-x does exactly what you want. So, it's bindable, and you can use it in ANY keybinding, emacs or not.
Ctrl-Shift-A, or something. There is a dialog with universal search for actions, files, classes....
I'd like my JetBrains IDEs better with a 10x speedup. The new redesign isn't bad if you memorize keyboard shortcuts :-)
You can use the keyboard shortcut with old UI.
I still like at the old UI.
When you do overlapping windows, those non standard chrome are great distraction.
That's the joke :-)
Contradictio in terminis
With time, you start using the menu very rarely, because keyboard shortcuts are so much faster. No menu bar means more screen space when working on a laptop.
I usually switch off the menu bar in Emacs, and I don't even know if it can be turned on in Vim.
Ahh I’d disagree with that, I’ve been solely IntelliJ since around 2011/2012[1] and all the alt+N tool windows, the ctrl+shift+a (besides being the original feature, it’s faster than shift+shift and I never have confusion about whether I’m looking for an action or a file or … that shift+shift view just never made sense to me). Basically all the core shortcuts are memory muscle at this point but the menu is useful for browsing lesser used features. Ctrl+shift+a is slow enough at redrawing that you don’t want to be using it to search / try to remember the name of a feature.
[1] well except for a brief 2 year VSCode spell but i came back a year or so ago and have restored my all products subscription
FYI, it's possible to make the menu bar always visible in settings.
Aha, I’ve just turned this on, I’m going to give new ui a whirl again.
FYI you can configure old UI to not show modal dialog for commit. Took me too long to learn this and this is how I use it now. I despise the new UI. Every tool don't have to become another popular tool (vscode). I find the new UI harder to use.
I like all the buttons and menus etc visible right there without needing extra clicks. When working with colleagues I can see them struggling to find features that I have been using with old UI for my advantage because it's all out there in front of you and they don't even it's possible.
The old ui was much more compact (even compared to compact mode on new ui) and maximised real estate for code over ui elements, which is what you want from a coding editor. It's definitely form over function here and yet another regressive move in the steps Jetbrains seems to be taking of late.
I greatly miss those tool bars. I think it's ironic that modern UI strives to be less cluttered than ever before while computer monitors are larger than ever before.
* They encourage curiosity about previously undiscovered functionality. It improves feature discoverability.
* It's way easier to find the correct tool bar icon than trying to hunt for a feature inside the menus.
* If some toolbars are highlighted or disabled can tell you information about the state of the document you are editing.
What? I am just completely confused by this—menu items are labeled in clear textual language, sorted roughly by functionality. icons greatly depend on cultural context. Looking at a screenshot of notepad++ I could would understand maybe a third of the icons and could guess at another third at best.
That said, it's not that big of a deal—I'd probably just disable the toolbar rather than figure it out. I don't really use the mouse outside of selecting regions of text anyway.
Once you learn a toolbar, it just becomes visual and muscle memory. Not unlike using hotkeys to access something hidden under a couple layers of menus.
Sure, but that's very different from "feature discovery". I totally get this with the floppy-disk icon (which is, ironically enough, now a terrible visual metaphor for persisting to local storage outside of cultural context), but I have no clue what "up arrow on top of down arrow" means, nor what the ¶ icon would do—start a new paragraph? Select the current paragraph? Open some kind of paragraph outline?
Granted, I don't use windows so it's entirely possible I'm just showing my ass here.
The toolbar buttons all have hover text to ease the learning, ¶ is "Show All Characters" where "characters" mean stuff like Carriage Return and whitespace. Microsoft Word users are probably familiar with this meaning.
I have no idea what "up arrow on top of down arrow" is though, because I don't have that button.
I find it depends on how many things are in the toolbar, and if the icons are actually icons or monochromatic glyphs.
A toolbar that’s populated only with the most frequently used functions and employs full color, uniquely shaped icons can be visually grokked in an instant, whereas a densely packed toolbar full of glyphs is inscrutable at a glance.
There is no "One size fits all" UI, sadly.
Absolute beginners should be shown a basic interface front and center, with a clear way to access more advanced features. More advanced users may benefit from a plethora of rich controls, all shown together. Experts may want to remove the visual clutter because they access features from keyboard without looking.
Good software offers a way to achieve all of these, and often more customization.
Just give me a view->toolbars-> checklist and I'll sort it out.
FreeCAD does this well.
Visual Studio (not Code) lets you move it all around, remove pieces, and add things. It's one of the reasons I love Visual Studio. I otherwise use JetBrains for other languages, or when on other OS' it was a shame VS for Mac went away, but I assume adoption was not very high.
Microsoft Office from 97 - 2003 handled toolbar UI almost perfectly in my opinion. As a young kid I discovered many advanced and obscure features of Word and Excel through the customize feature.
I really disliked the relatively dumbed down ribbon UI when it first came out.
“less cluttered than ever before while computer monitors are larger than ever before.”
Less cluttered but with more white space, especially in the vertical direction which is particularly cramped since the change in monitor aspect ratios so the toolbars have less functionality but take up more of the usable screen space.
Progress is great…
Yeah but vertical toolbars are a thing. I love the vertical tabs option in Edge.
True,me too. But now that copilot keeps popping up on the other side, that’s starting to feel cramped too.
I used to put the task bar vertically down the side of the monitor as well for the same reason but Microsoft won’t let me do that anymore.
The problem with tool bars is that usually you cannot guess what 80% of the icons mean.
If you hover over the icon, a tooltip pops up to help remind/train you on what the icons represent.
I think an argument can be made for toolbars if they’re customizable with no holes barred on customizability (looking at you, Firefox, with your non-optional hamburger menu) and can be hidden entirely, should the user choose to do so. For me, toolbars as they were commonly implemented in Cocoa apps for the first half of OS X’s history are the model example here, which offer all the above.
It’s when they’re not fully customizable and aren’t optional when they grate on me.
notepad++ was really great for simple syntax highlighting on windows, when good clients were either slow or costed money.
It supported a lot of languages.
Also, the original Notepad++ is unabashedly native to Windows, with none of the limitations or expense of cross-platform toolkits like Qt. So it's lightweight and responsive even on lowest-specced boxes.
I use Notepad++ on Linux, ran the installer, works, it auto updates just like it did on Windows, WINE enables it to run just fine. I use it every day for small files like my TODO, Notes and Scrap files.
But that is a recent developement? Some years ago the experience under WINE with npp was not great.
(might be also 10 years, since I tried it the last time)
Could be, I can't remember when it didn't run well but WINE has improved greatly the past 5 years especially.
Takes one second to disable all that. I've used notepad++ forever and not once have I used those buttons, indeed they are useless. Your opinion is valid but I never understand using a tool with options and acting like the defaults are the only option.
That is true, but it takes more than 1 second to find out about it.
I think the users a software like NP++ is aimed for are willing to spend more than 1 second to find out about this option. It appears that you're not one of those users ¯\_(ツ)_/¯
Yeah, and it also appears that the things how they appear to you, might be wrong. I know about that option as I use npp since well over a decade. But I can still say the general interface is bad and I only use npp via key shortcuts. And if there are other options that provide a clearer initial experience, I can see why newcomers choose those instead.
Tiny buttons toolbars were the norm for decades in, say, Windows Explorer and Microsoft Word, before Microsoft transitioned to the "Ribbon" style in 2007. Personally I think that people who enjoy those buttons do so for nostalgia reasons, but they are not the worst to use once you remember where each tool is and what each tool's icon looks like.
The Ribbon still feels to me like that "new thing" Microsoft did since some version of Office... and you're telling me it was 2007?!! Oh my...
A bit before that time I already moved to Open/LibreOffice, and never really used any Windows past 7, so I've missed a whole UI paradigm transition that now makes Windows feel like a complete stranger to me.
There's now a whole generation of 20 year old programmers who have never used the toolbars of the 1990s and early 2000s.
Pull-down menus are so obtrusive! You SHOULD prefer to hunt and hunt and hunt for the button you want. The future is now and it sucks.
I hate cluttered flat surfaces as much as the next guy, but I don't put my toaster away when I'm not using it. It's stays right on the counter because it's convenient for it to be there.
I actually do lol
Aren't you just generating crumbs at two locations now? The kitchen bench and cupboard? Possibly the floor too due to moving the toaster?
All depends on how much space you got (and large space needs cleaning). I have a food dehydrator. It is a nice tool but too large so it is in the attic, gathering dust. I also have two airfryers. These are used daily. However the toaster is rarely used. Only thing is, would you put such away when still hot? Needs to cool down first.
My advice is to just turn the toolbar off (Settings -> Preferences -> General -> Toolbar -> Hide). I find it easier to skim through menus. You can turn off almost all of the extra UI elements if you want, which makes the interface very clean.
Funny that something as simple as hiding a toolbar requires diving through 5 steps. Doesn't it just offer that option upon right-click? It sounds natural and expected to me for a toolbar to do so.
I just tried it and was surprised that it doesn't offer Right-Click option to customize/turn off the toolbar. There was a period in Windows software when that level of customizability was expected.
It's really two or three steps -- select menu item, dialogue box page is already selected by default, click on checkbox. I was giving the full navigation.
Personally, I find that making every part of the UI an active control makes it easy to do things by mistake, especially hiding elements, which often doesn't have an obvious way to reverse the process. For one-time UI setup, I don't mind going through a dialogue box.
To me it is a tool for select jobs. Mainly use it for parsing log files. Handles gigabyte files ease unlike Windows notepad. It also is great with regex searching to filter useful log content with cascading results. Temporary scratch pad, for constructing SQL statements, that retains unsaved files upon OS or user closing. Not my go-to for coding and project maintenance. Still a great tool.
Notepad++ is what I have for any random file format I need to right click and open quickly!
There's Emedit as a commercial notepad like tool. It's even better than notepad++ for large files because it'll stream in the data as you scroll rather than trying to load all of it at once.
Notepad++ originated at a time when there weren't many code editors for most of the new, growing languages (perl, python, js), or for editing xml and json, especially on windows. Many of the "good" code editors were expensive and enterprisey, or they were limited to linux, or they had an extremely steep learning curve (vim, emacs). Notepad++ worked on everything, was free, installed quickly, and it was fast. I've used it to replace hardcoded values in binary files before. I think most of the people who are praising it are remembering how valuable it was 20 years ago. I don't know anyone that still uses Notepad++.
It's been the "standard" editor at my place of employment, but no one objects to other editors or IDEs being used instead. Our workstations are all Windows, so it's a decent default to install for everyone.
I have it on a few thousand servers in my department, mostly as a Notepad that can do more, like comment color or editing small config files of all sorts. It is far from the days I used to write entire small apps in Notepad ++, but we still use it and there is no plan to replace it unless they do something that puts us in danger (ex: stop fixing bugs/security issues).
Npp is a code editor, and you're comparing it to an IDE. Apples and oranges.
Both are fruits. The comparison applies here I think :-)
I have used Notepad++ for more than 10 years and I don't think I have ever tried replacing my IDE with it. I don't think it should be use as an IDE replacement but a file editor.
It is the other way around: 10 yeas ago I was using Notepad++ for writing small apps and I replaced it with IDE (VS Code). It makes no sense to replace a decent IDE with Notepad++.
Maybe you can customize it. I am not a user but you will avoid good programs because of this instant reaction. IMO, I would check if the toolbar and key shortcuts can be customized.
As a longtime Notepad++ user, I hate those buttons as well. Fortunately, the settings contain the option to hide the menu, the icons, the buttons on the tabs, the status bar, etc. resulting in a very minimalistic experience, which is how I use it.
I recommend giving it another look.
What you find ugly and distracting I find essential to functioning in the app. I can't stand it when I'm trying to find some feature that was hidden so the UI would look cleaner.
It depends on what you use it for, I guess. I'm not a programmer so I use it as a replacement for windows notepad. I don't know what most of the buttons do and I just ignore them.
Re-training propaganda: [only the JetBrains products should be used, repeat after me...].
I agree. I used to use N++ when that sort of interface was common everywhere. It didn't look as out of place.
These days I find it too jarring and either use Sublime Text 3 or just regular Windows Notepad for scratch notes (now that it doesn't prompt to save on close anymore). No buttons.
That's a feature. It's a GUI harkening back to Windows Explorer Classic, aka the interface style used from Windows 95 through Windows XP.