Micro - not quite as fancy as Helix but it’s a static binary, bells and whistles included, and ready to go without config. If you’re still using nano/pico, micro is a nice step up in functionality without the complexity of vim et al.
Multiple cursors, splits and tabs, mouse support, syntax highlighting, keyboard shortcuts that are more noob-friendly / familiar, it’s great.
I don’t know why Micro hasn’t completely replaced Nano in the Linux world.
Wait, yes I do.
Despite believing it to be better in every way, my dumb fingers keep automatically reaching for the Nano keyboard shortcuts.You know what the key combo is to copy a selection of text in Micro?
Ctrl C, why would it ever be anything else?
You know what the key combo is to copy a selection of text in Nano?
Fucking shift, alt, 6.
6!!And then Ctrl U to paste. I hate that I’m used to that.
Never heard of that key combo in nano before, I’ve always used ctrl-K (which actually cuts, then I have to paste it back again if I want to leave that text in place).
[Edit] Looks like you only need to hit alt-6, not shift-alt-6, to copy a full line or whatever text has been highlighted.
Huh, I wonder where I got the shift from. Still kinda bonkers though.
It’s because of what ctrl+c does in most terminals
Vim users:
y
Hell yeah, Micro master race. It gives me VSCode feels on the CLI. It’s great ❤️
Only thing missing is code block folding and unfolding functionality
Helix. A perfect programmer’s editor you can use with almost no config.
Interesting. Have you spent any time with neovim? If so, I’m curious how they compare. I was just starting to investigate the nvim ecosystem, but it’s quite daunting. Still, I like the idea of everything being open source, and using plugins to augment my workflow.
Helix was inspired by neovim. Though mostly the inbuilt LSP/tree sitter support. Its keybindings are a mix between what neovim has and kakoune, though closer to kakoune I think. The major advantage IMO that helix has over neovim is built in support for most things you need plugins for in neovim as well as sane defaults out the box. You don’t need 10s of plugins and 100s of lines of config to get helix to work like a modern editor - it just does out the box. All you need to do is install the LSP server for the languages you are interested in and launch helix.
The major downside ATM is it has no plugin support at all. Which is not as bad as it sounds as it includes so much out the box that you would typically require plugins for in neovim. They are working on plugin support though so it is only a matter of time for this to be fixed. Currently I don’t feel the need for any plugins when using it so IMO it is not a deal breaker for me or my workflow. But the need to manage large configs and sets of plugins had already become too cumbersome in neovim for my liking.
I thought lack of plugins was going to be a deal breaker and now I’m kind of on the “do we really need plugins at all” side.
Helix out of the box is really nice.
There are already good answers to this, so I just add that yes, I’ve used vim/neovim for about 20 years before starting to use helix. I’m very familiar with the editor.
I used vi and then neovim for about 20 years (like the other @pimeys). I switched to kakoune first because nvim’s plugins were a mess and the LSP integration was unreliable. With all the plugins needed to get a decent dev editor, startup was starting to get slow. Kakoune had multi-select. But mainly, I switched because one necessary plugin (I think it was the LSP one) insisted on starting a nodejs server. Plugins were written in whatever, and running nvim meant spawning Ruby, Python, NodeJS, and whatever else processes; I switched because the nvim ecosystem was getting as bloated as EMACS.
I bounced from Kakoune to Helix after a couple of years, because Kakoune relies heavily on chording, and modality (pressing a key to get into a mode to do something or some things) is superficial; Helix makes much greater use of modes, often nested, and feels much more faithful to the vi philosophy to me. Also, Tree-Sitter is a disruptive technology.
Why is Tree-Sitter a disruptive technology?
Because, while many people are unaware of it or have beard of it but don’t know what it does, it’s a novel, well-executed, reusable solution that is incredible at what it does. Ot’s disruptive in the sense that I believe it’s changing how programs that need to parse code are written, and they’ll become faster to write, faster to execute, and better for it.
Not big-D disruptive, as in changing the face of computer science, but little-D, as in having a quiet but disproportionate impact on a lot of software.
Oh, I thought disruptive is a negative adjective. Translator translates it to my language as a negative adjective.
Your translator is right! The word does have negative connotations, in that the status quo is being disrupted. In the context of technology, it loses that connotation. It can mean something good, but not necessarily. Google was disruptive; was it for better, or worse? Tesla was too, but in the end, probably for the better. I’d argue that e-bikes are disruptive in the US, as they’re getting huge numbers of Americans who otherwise wouldn’t out of their cars for small trips.
So it’s basically something with big impact?
I agree. I think the fact that it’s built around multi cursor edition and a selection -> action paradigm as opposed to vim’s action -> selection is going to become the norm slowly and surely.
Dammit, you beat me to it.
It’s such a great editor.
ay, I was going to say that. Use it on all my boxes as a vi replacement.
I’ve never heard of it, but I like the sound of the name :)
I’d describe it as “NeoVim for people who don’t want to spend time configuring it”. It has syntax highlighting (for pretty much any language you can think of) and LSP support out of the box. And the config file is just a TOML file. Here’s my current config for example:
theme = "monokai_pro_spectrum" [editor] line-number = "relative" middle-click-paste = false [editor.statusline] mode.normal = "NORMAL" mode.insert = "INSERT" mode.select = "SELECT"
That’s it. No need to deal with Lua or VimScript
Also using commands after typing the
:
is easier than in NeoVim since Helix will show you a list of available commands and a description of the closest match (or the one you choose from the list with the tab key). It looks like this:I use Helix for quickly editing files and coding
Same, I switched to helix about a year ago, and do all my coding (except for android because of they don’t make it easy to not use android studio).
I was on vim for decades, but helix is finally the one that’s powerful enough to make me switch.
You can also use Intellij Ultimate, the only big missing features are project config if you have mismatched versions of Gradle/AGP/Kotlin as well as the profiler.
This does sound cool and catches my interest.
Another vote for
hx
!Getting a productive setup for Python work is a matter of a few extra lines of TOML. The pre-release version on master also allows for multiple LSPs per language, which means I can combine pyright with ruff.
The modal key chords are verb-object instead of object-verb. It’s not a main selling point to me. However, you get multi-cursors out of the box, which I’ve always found simpler than e.g. macros. In general, keybindings are discoverable. I learn something new every week.
All in all, despite a few rough edges, it’s a nice alternative to needing to get a PhD in neovim configuration to get anywhere remotely near the cool setups other people are rocking.
I really like Helix! When the plugin system comes it will be great, because it’s definitely missing some key features
Kate. Its such a brilliant foundation.
I currently have no idea of how to do it but in theory you can add any languages autocomplete, as well as huge libraries of auto-text (like in VSCode, templates for code stuff).
And its fast, unlike stupid electron VSCodium
Yes! It is beautiful and easy to work with, very much my tool of choice for coding.
I’m a new Kate convert. I had some issue on my system where GTK apps would break under Nvidia, something to do with font rendering. I tried Kate and was like “cool it works” and then I discovered how amazing and lightweight it is. Great editor.
It really is amazingly fast but also so extensible!
Kate is my togo. With a terminal panel and latex->Unicode plugin is perfect for julia. I don’t need it, but you can also set up its LSP client.
I also like Kate. I use it for Python, Html/css and some other stuff. I really like it since it’s light and fast but full of features. Also integrates well with my desktop.
Haha ever used it on Windows? Damn thats weird
I use Pulsar for working on my many JavaScript projects. It’s a FOSS, community-maintained replacement for the canceled Atom text editor.
Oh this is awesome! I really missed Atom and VSC just isn’t the same.
Thank you for sharing!
Glad you found us at least :) Those were the exact reasons we wanted to keep it alive, I tried but I just can’t get used to VSC having used Atom for so long.
Yay, always nice to see people mention it (outside of myself just shouting it into the void :P) - we are active on Lemmy now at [email protected] too.
Subscribed. Keep up the good work :).
I’ve been using Lapce for a bit and it’s pretty cool, like VSCode but written in Rust. It’s actually so much faster, like you press a key and there’s instantly autocomplete suggestions and error warnings, so it feels a lot more responsive than VSCode. It also opens faster. There’s still a couple weird things and missing functionality though because it’s early in development so I’ll probably go back to VSCode for now.
The original “ed” text editor, from 1969 Unix. Everyone should spend a few days trying to get some work done with it, if only to appreciate how we have nicer things now.
It is lovely on embedded devices. I sometimes bring it out for fun on my main PC instead of vim too haha
Another nice thing about ed is that it is sometimes easier to use than sed when you want to edit a file programmatically, since you can navigate lines at random (forward and backward directions), and you can still run regex find/replace like with sed. Just
printf 'i\nstring of ed commands\n.\n' | ed file-to-edit.txt
and pipe the commands into ed, although it is really an esoteric way to write scripts.
Idk if it counts as less popular, but I always thought Sublime got too much flak. The popups are annoying, but other than that it’s a great editor imo. It doesn’t have the bells and whistles of something like VSCode or a full IDE, but that’s also why I like it, it’s much more snappy and lightweight. And you can still get things like LSP working so for me at least it gives me everything I look for in an editor. I even decided to pay for a license a few years back, considering I make my salary with this thing the cost is negligible.
Geany. A real sleak, flexible and powerful editor.
You can use it to edit multiple lines simultaneously, perform extensive search/replace operations, etc.
It has plugins that can transform it from a humble notepad to a full IDE with code versioning support.
It often saves me from having to muck about with sed or awk in some tasks.
I came here to say geany. I love the speed, simplicity and power. Use it every day for coding and other text things.
It’s not exactly lesser known, but I only use Kate on both Linux and Windows
Kate in gui, nano in terminal
Before I got around to learning
vi
, I spent a few years usingjoe
, which seems to have fallen out of active development (the last release was in 2018). It’s a terminal-based editor that bears some resemblance to old DOS editors.I love Joe. And even though its last update was a while ago, it’s still my preferred editor.
I use joe regularly for in-terminal editing. It’s easy, lightweight and very helpful, unlike vi…
I’d argue that vi/vim is fairly light depending on how you’re using it. I don’t use any plug-ins and I much prefer it over GUI programs other than in exceptional circumstances
I’ll give you six that I haven’t seen mentioned yet:
-
sim
andvis
, both of which focus on combiningvim
motions with structural regular expressions as used in… -
sam
andacme
from Plan 9, both of which are included in Plan 9 from User Space (akaplan9port
).sam
also has a modified/expanded version in the form ofdeadpixi/sam
, whileacme
has spin-offs like a port to Go and a standalone version. -
mg
, one of the three default text editors included with OpenBSD (the others beingvi
anded
). -
sandy
, the abandoned suckless text editor. It usesdmenu
and is fun to mess with for shits and giggles.
I am trying to help with vis and it is a lot of fun to use. Aside from things where I really need neovim (because of large plugins), I use vis every day. Sam and ACME (and whole Plan9 for that matter) have the biggest problem with being too GUI oriented. They are from times when we discovered a mouse and then decided we need to use it for everything. Thirty years down the line we know better: we don’t.
I think you mean st instead of dmenu here
…no, I definitely meant
dmenu
.sandy
has keybindings that bring up (by default) variousdmenu
prompts as a substitute for the usual “command mode”.:
orM-x
to bring up a command prompt,C-\
for a “pipe to” prompt,M-\
for ased
prompt… you get the idea.st
is just the suckless terminal emulator;sandy
can be run from any terminal emulator.
-
Currently, I prefer using Helix.
Ed Is The Standard Text Editor
I’m not saying it doesn’t get a lot of shout outs, but it could always do with one more. I think the last time I used it was to automate the editing of config files on some antiquated telephony system by piping ed commands through netcat. There remains a chance that I might live long enough to find some excuse to use it again.
Using Ed on an old Unix system feels like talking about WW2 with a veteran in a home except we both have shellshock.
Ed Is The Standard Text Editor
ed
,ex
, andvi
are all standard, required text editors in the Single Unix Specification.