News for hackers. Stuff that matters.
Re:Notepad++ is 21 years old by kevinsync on Friday November 01, 2024 @03:07PM (#42020435)
I continue to use Notepad++ despite having tried every other editor and IDE under the sun. This, of course, drives every person completely insane when I explain that my "IDE" is:

- Notepad++ for editing, pretty much stock, no plugins

- command line for git and grep (Console2 or Git Bash)

- File Explorer alongside Everything [0] for navigating files

- Beyond Compare [1] for visual diff/merge

- WinSCP/PuTTY for SFTP/SSH (usually to Linux)

- Synergy [2] for sharing keyboard and mouse between Windows and MacOS

I personally enjoy being in all 3 major OS's at the same time, and find it helpful to separate concerns to their respective applications/interfaces -- it helps me keep a mental geography of "where things are" and "what tool is used for which purpose", rather than being beholden to a IDE-dictated workflow or tool that's obscured behind specific UI patterns.

That said, I'll happily use Handbrake over command-line ffmpeg for a lot of things, so obscuring behind UI isn't always a bad thing.

Anyways, HUGE RESPECT to Notepad++!

[0] https://www.voidtools.com

[1] https://www.scootersoftware.com

[2] https://symless.com/synergy

Re:Notepad++ is 21 years old by 8n4vidtmkvmk on Friday November 01, 2024 @04:11PM (#42021044)
I think I'm one of the last people using WSL1. I think everyone jumped to WSL2 because 2 is bigger than 1, but they're really different things. WSL1 lets me keep my files on the Windows side, let's my IDE (PHP storm) remain performant with no Linux to Windows file system overhead, but I still get to use all the Linux CLI tools. I still pay some overhead for that, but it's better than doing it the other way around and paying for every keystroke in my IDE.

What I really want is a damn good Terminal/Emulator for Windows AND Linux that can run the same set of tools with zero overhead. Boggles my mind that everything is slow and janky to this day.

Re:Notepad++ is 21 years old by mrweasel on Friday November 01, 2024 @04:17PM (#42021110)
Wait what? I'm not a Windows user, so I haven't used any version of WSL, but WSL 2 doesn't store the files on the Windows side? It seems to me that the whole "easy access to your Windows files in a Linux environment" was the point of WSL.
Re:Notepad++ is 21 years old by roland35 on Friday November 01, 2024 @04:20PM (#42021154)
Wsl 2 can access files in windows, but it is very slow.
Re:Notepad++ is 21 years old by nuancebydefault on Friday November 01, 2024 @04:52PM (#42021445)
With the benefit of Linux and its filesystem being super (natively) fast in WSL2.

What I've very often done is use command line tools like compilers, search&replace etc inside WSL2, in a Windows terminal. You have the benefits of speed and all the CLI tools of the Linux world. And then have the GUIs, like vscode, running on Windows. Vscode has its server running on the WSL side, so still very good performance.

Best of both worlds, since the GUIs and the CLIs are tightly integrated.

Re:Notepad++ is 21 years old by 8n4vidtmkvmk on Sunday November 03, 2024 @12:02PM (#42034243)
That's the crux of the issue. Vscode works ok because you can run it as a server, but other IDEs (yes there are others) are slow.
Re:Notepad++ is 21 years old by peterfirefly on Friday November 01, 2024 @09:12PM (#42023246)
WSL1 is really just a new system call interface for Windows.

WSL2 uses "disks" emulated via image files that are stored as ordinary Windows files (but in a secret place). This makes most file I/O from inside WSL2 faster than from inside WSL1.

WSL2 can use the Windows file system (and vice versa) via file servers.

When a Linux app inside WSL2 wants to use a Windows file, the Linux kernel (there is only ever one for all running WSL2 images!) talks to a Windows app that does the file serving.

When a Windows app wants to use a Linux file from a WSL2 image, the image first has to run (might take a little while for it to boot) and then a daemon there serves the file to the Windows app.

I think one of the file servers use a version of the 9P protocol. Maybe they both do.

https://en.wikipedia.org/wiki/9P_(protocol)

Things that do lots of file I/O (such as compiling) are way faster under WSL2 using local file systems than under WSL1.

Re:Notepad++ is 21 years old by B1FF_PSUVM on Friday November 01, 2024 @04:17PM (#42021118)
> one of the last people using WSL1.

(waves). Yep, it does "the needed".

"2 is bigger than 1" can take a hike.

Re:Notepad++ is 21 years old by augustk on Friday November 01, 2024 @05:11PM (#42021597)
MSYS2 is quite decent. I use it everyday at work where I have to use MS Windows.

https://www.msys2.org/

Re:Notepad++ is 21 years old by dgfitz on Friday November 01, 2024 @05:23PM (#42021691)
Msys2 is really great, I also daily drive it when I’m on a windows box.
Re:Notepad++ is 21 years old by EasyMark on Friday November 01, 2024 @07:14PM (#42022484)
Yeah I switched from cygwin to msys2 a few years ago, it works quite well for most things, seems a little slow when scripting though, as windows process forking is slow af. It kind of pushed me to learn a lot more python and switch over from bash which was my primary scripting language for various tasks, msys python is roughly as fast as straight windows python install
Re:Notepad++ is 21 years old by TeMPOraL on Friday November 01, 2024 @05:24PM (#42021702)
I was like you until last year. I did all my development from Emacs on WSL1, writing mostly Windows-specific code (DCOM). I maintained a set of brittle hacks to allow me to drive Windows side CMake and MSBuild straight from Emacs, and then run LSP on compile commands from Clang tricked into thinking it's cross-compiling. It held up surprisingly well.

Eventually, I installed a WSL2 distro so I could run Docker, then I had to reimage the machine because corporate reasons, and then, with my work involving less Windows-specific code, I decided to not recreate my pile of hacks, but start with a fresh WSL2 setup. It works well enough, so that's what I use now.

FWIW, I always liked WSL1 more. WSL2 is basically just more streamlined VirtualBox setup; WSL1 is magic.

Re:Notepad++ is 21 years old by nyarlathotep_ on Friday November 01, 2024 @08:40PM (#42023068)
Genuinely impressed at this bespoke approach.
Re:Notepad++ is 21 years old by nine_k on Saturday November 02, 2024 @04:03AM (#42024808)
WSL1 reminds me of coLinux of old times.

https://en.m.wikipedia.org/wiki/Cooperative_Linux

Re:Notepad++ is 21 years old by chungy on Saturday November 02, 2024 @04:33AM (#42024932)
That's more comparable to WSL2 than WSL1.

WSL1 is a subsystem on the NT kernel, allowing Linux binaries to run natively on Windows itself (not a virtual machine). It's the spiritual successor to Interix, that showed up in NT 4.0 and was removed in Windows 8.

The flip side is Wine, allowing Windows binaries to run natively on Linux.

Re:Notepad++ is 21 years old by HeavyStorm on Saturday November 02, 2024 @09:54PM (#42030655)
Actually, it's a streamlined Hyper-V setup, rather literally.
Re:Notepad++ is 21 years old by 8n4vidtmkvmk on Sunday November 03, 2024 @12:06PM (#42034269)
You run emacs on the Linux side now though, right? So you're probably better off that way.
Re:Notepad++ is 21 years old by underdeserver on Friday November 01, 2024 @05:34PM (#42021776)
Remember Cygwin?
Re:Notepad++ is 21 years old by ale42 on Friday November 01, 2024 @05:44PM (#42021861)
I mainly remember (mostly) not wanting to install it because of the so many weird things it does, or rather it did when I last used it more than a decade ago (including strange NTFS ACLs to emulate POSIX permissions).
Re:Notepad++ is 21 years old by i80and on Friday November 01, 2024 @05:51PM (#42021911)
I remember Steve Yeggie selling me on it as a better Unix than Unix, then getting bogged down in cryptic inexplicable failure modes

Really cool technology really early, but I can't say I'm nostalgic!

Re:Notepad++ is 21 years old by SoftTalker on Friday November 01, 2024 @10:29PM (#42023625)
Yep, I used it a lot. Made Windows tolerable.
Re:Notepad++ is 21 years old by nocman on Saturday November 02, 2024 @12:52AM (#42024146)
What do you mean "remember"? It still makes using the command line in Windows tolerable. And yes, I am familiar with PowerShell, and NO I'm not interested in using it.
Re:Notepad++ is 21 years old by 725686 on Friday November 01, 2024 @06:28PM (#42022184)
Completely off topic, but I was a Linux user for years, then I had to use Windows with WSL2, and it was a constant struggle. I recently switched to a Mac M3, and oh boy, it is a pleasure to use. No more fighting the Windows/WSL divide, slowness and command line tools. Also M3 is a really fast beast.
Re:Notepad++ is 21 years old by kccqzy on Friday November 01, 2024 @07:03PM (#42022414)
It sounds like you would be happier with WSL1. It also has way less divide between Windows and WSL.
Re:Notepad++ is 21 years old by dataflow on Friday November 01, 2024 @07:26PM (#42022573)
> I think I'm one of the last people using WSL1.

I think you're the second-to-last one :-)

Re:Notepad++ is 21 years old by CoolCold on Friday November 01, 2024 @11:19PM (#42023814)
I still run one distro on WSL1 - the fact it shares network with "main" Windows helps me to do simpler TCP proxying when needed. So you are not alone ;) While WSL1 is nothing bad, the most of things I do involving WSL happens in WSL2.

Not to say you are doing something wrong - whatever suite your needs. For me, WSL2 provide Linux tooling, i.e. systemd, which WSL1 just cannot by design. The very same way managing system as I do on servers.

When it's possible/makes sense, I do run gitlab-runner in my WSL2 for easier builds debugging, when setting up new projects for programmers - comparing to 250-300+ ms latency working on remote hosts, it's often much more productive.

Basically stable Linux without fighting with Linux-on-desktop-year-to-come.

Re:Notepad++ is 21 years old by roeles on Saturday November 02, 2024 @11:48AM (#42027088)
Work only permits wsl1. I use vs code with the wsl1 plugin. The editor runs on windows, but it is as if you're on Linux. Terminal is Linux, Filesystem looks like native Linux...
Re:Notepad++ is 21 years old by drchap on Saturday November 02, 2024 @11:13PM (#42030928)
Have you tried WezTerm? It is a modern, performant, and full-featured cross-platform terminal written in Rust.

https://wezfurlong.org/wezterm/index.html

Re:Notepad++ is 21 years old by 8n4vidtmkvmk on Sunday November 03, 2024 @12:08PM (#42034290)
I have not. Native mouse and scrollback is one of the important things I want. I'll give it a go, thanks!
Re:Notepad++ is 21 years old by ryangs on Friday November 01, 2024 @04:00PM (#42020919)
What is your pattern for navigating to a function definition (as an example of a basic IDE operation that doesn't seem supported)? Grep?
Re:Notepad++ is 21 years old by angra_mainyu on Friday November 01, 2024 @04:17PM (#42021119)
Before I learned the holy ways of g->d, that was essentially what I did (grep -nr).
Re:Notepad++ is 21 years old by EasyMark on Friday November 01, 2024 @07:19PM (#42022520)
what is g->d?
Re:Notepad++ is 21 years old by embeng4096 on Friday November 01, 2024 @08:06PM (#42022874)
Vim keybind for jumping to the definition of the symbol under your cursor, I believe
Re:Notepad++ is 21 years old by angra_mainyu on Saturday November 02, 2024 @06:00AM (#42025275)
Exactly! Neovim really changed my workflow.
Re:Notepad++ is 21 years old by kevinsync on Friday November 01, 2024 @04:28PM (#42021217)
From NP++, you could just ctrl-shift-f to "find in files" and it'll be quick about it, but I personally would grep from the root of the project. I usually keep a handful of command line tabs open in Console2, one for git, one for grep, one for build commands, others that are running local services etc. Anyways, the reason for this is the mental map / spatial geography of a project .. enough repetition cd'ing through folders and seeing file paths while grepping helps me visualize actual locations of things, which helps me grasp the entire structure of a project.

Meanwhile, in VS Code etc you can just hover over something and click to go directly to it, which is cool, but it's kind of like teleporting instead of actually driving to the destination enough to learn the roads.

I do a similar thing with git PRs -- for example, if you build something that follows a bundled pattern (ex. a component that has frontend, backend and data-related files, plus naming conventions), having a clean + complete reference PR to revisit when you make new components helps ensure I don't miss anything and stay consistent. I usually view these in-browser since Github/Bitbucket/Gitlab all have nice interfaces to see what files you need, where they go, how they're named, etc.

Re:Notepad++ is 21 years old by freedomben on Friday November 01, 2024 @04:57PM (#42021486)
I do the same thing (though with Vim as my editor instead of NP++). Grep is seriously underrated. (well technically I use my own grep replacement[1] instead for a few reasons, but plain old grep can get the job done very well)

[1]: https://github.com/FreedomBen/findref

Re:Notepad++ is 21 years old by jbritton on Friday November 01, 2024 @04:42PM (#42021351)
ctags plugin
Re:Notepad++ is 21 years old by EasyMark on Friday November 01, 2024 @07:20PM (#42022524)
ctags + cscope can take you far
Re:Notepad++ is 21 years old by EasyMark on Friday November 01, 2024 @07:19PM (#42022515)
I can't live without ripgrep, it's so much faster than grep it's not even funny, especially if working with very large code bases with 100,000+ files
Re:Notepad++ is 21 years old by SoftTalker on Friday November 01, 2024 @10:30PM (#42023630)
Why is that? Does it build an index so later searches are fast?
Re:Notepad++ is 21 years old by petepete on Saturday November 02, 2024 @12:49AM (#42024140)
No, I just think every last part of ripgrep has had the shit optimised out of it.

Plus it's written in rust and as we know, it's blazingly fast.

Re:Notepad++ is 21 years old by burntsushi on Saturday November 02, 2024 @06:59AM (#42025563)
No. I've written about why: https://blog.burntsushi.net/ripgrep/

That blog is eight years old now, but still pretty accurate.

For more details at the level of the regex engine, see: https://github.com/BurntSushi/rebar

Re:Notepad++ is 21 years old by SoftTalker on Friday November 01, 2024 @03:22PM (#42020570)
I certainly respect that. Mine is emacs, pretty vanilla. I do use magit for git operations.

find/xargs/grep for exploring code, finding definitions, etc.

standard utilities (ls, cp, mv, etc.) in the shell for file management

Re:Notepad++ is 21 years old by B1FF_PSUVM on Friday November 01, 2024 @04:11PM (#42021042)
> That said, I'll happily use Handbrake over command-line ffmpeg for a lot of things, so obscuring behind UI isn't always a bad thing.

My cli bogeys are pdftk and imagemagick - both wonderful achievements, but I rarely need them, and they get "paged out". So there I am using web services that probably are just a GUI with pdftk and imagemagick underneath ...

Ah, also a Notepad++ user. Happy 21, time to buy it a (another, shh) beer.

Re:Notepad++ is 21 years old by dgfitz on Friday November 01, 2024 @05:22PM (#42021679)
Check out MobaXterm, it has a phenomenal X implementation just built in.
Re:Notepad++ is 21 years old by rootsu on Friday November 01, 2024 @10:01PM (#42023507)
NP++ and Mobaxterm are only two programs that I dearly miss after moving to mac.
Re:Notepad++ is 21 years old by tveyben on Saturday November 02, 2024 @07:18AM (#42025663)
Try TotalCommander, then that would have been on your ‘missed list’ also ;-)
Re:Notepad++ is 21 years old by nullhole on Friday November 01, 2024 @05:43PM (#42021849)
If you haven't already, you should try Total Commander for file navigation. It's similar to Notepad++ in that there's a long list of reasons why it's good at its task, but it's also just a very good example of what desktop Windows software can be like when it's done well.
Re:Notepad++ is 21 years old by grujicd on Friday November 01, 2024 @06:15PM (#42022095)
TotalCommander is the first thing I install on every Windows, and main reason I can't get used to MacOs. Yes, there are some replacements, but nothing that's the same as TC.
Re:Notepad++ is 21 years old by lowleveldesign on Saturday November 02, 2024 @03:03AM (#42024563)
Have you tried running it on wine? [1] I use it this way on Linux and, after adjusting my commands for running editors and start menu tools, everything runs smoothly.

[1] https://www.ghisler.ch/wiki/index.php/Total_Commander_under_...

Re:Notepad++ is 21 years old by nullhole on Friday November 08, 2024 @07:58PM (#42091731)
I'm using it as 1/4 of a 4k screen lately, it's working well like that.
Re:Notepad++ is 21 years old by jcul on Saturday November 02, 2024 @04:15AM (#42024855)
Back when I had to develop on windows I used Far file manager.

It was amazing. I've used midnight commander on Linux, but it isn't close to Far IMO.

Re:Notepad++ is 21 years old by tveyben on Saturday November 02, 2024 @07:09AM (#42025620)
TotalCommander with NP++ are such a performant combination, highly recommended!!!
Re:Notepad++ is 21 years old by archon810 on Saturday November 02, 2024 @01:06PM (#42027630)
Lifelong Total Commander user here as well. They're one of those few remaining legacy companies that haven't switched to subscriptions or jacked up prices, and continously release updates at their own pace without any drama.

In fact, I think it's just one guy - Christian Ghisler. Kudos to you, sir.

Re:Notepad++ is 21 years old by oefnak on Friday November 01, 2024 @09:30PM (#42023343)
Wow, I use all those programs too!
Re:Notepad++ is 21 years old by emeril on Saturday November 02, 2024 @01:27AM (#42024252)
omg dude - you must transition to directory opus instead of file explorer

the wildcard search alone is worth the entry price

been using it for like 10+ years

Re:Notepad++ is 21 years old by anthk on Saturday November 02, 2024 @03:39AM (#42024706)
Except for sbcl/stklos (Common Lisp/Scheme), my setup it's like that. Make, ccache + cc/c++, vi, and some graphical diff tool as it's better than plain diff(1). entr(1) to watch file changes on a directory and run make at every file saving.
Re:Notepad++ is 21 years old by rjcrystal on Saturday November 02, 2024 @12:28PM (#42027373)
I love how fast everything is, it's the best searching tool, very low overhead needs little resources.
Re:Notepad++ is 21 years old by rawbot on Saturday November 02, 2024 @03:13PM (#42028485)
Very similar to my setup, although I alternate between Notepad++ and Visual Studio Code. I do just stick with git-gui for easy chunk/line commit selection.

Synergy and PBP (Picture-by-Picture) with an ultrawide monitor is great! I can split half my screen as Mac and the other as Windows, and the mouse and keyboard just seamlessly jump between the "gap" in the middle of the screen. I switched from a double screen setup (side by side) to an ultrawide and I've been happier than ever.

Re:Notepad++ is 21 years old by Friedduck on Friday November 08, 2024 @08:26AM (#42086680)
Voidtools’s Everything is indispensable. Alas with no more admin rights on a corporate machine I’ve had to let it go.