Nano has already supplanted the great EMacs and Vim as the most popular text editor of all linux distros, for though it has many omissions in functionality it scores over the older, more complete programs in two important respects. First, it is slightly simpler; and secondly it has the text “^ Exit” inscribed in highlighted text on its footer
EDIT : This sees to be going over some people’s heads. It’s a hitchiker’s guide to the galaxy reference.
The Hitchhiker’s Guide has already supplanted the great Encyclopaedia Galactica as the standard repository of all knowledge and wisdom, for though it has many omissions . . . it scores over the older, more pedestrian work in two important respects. First, it is slightly cheaper; and secondly it has the words DON’T PANIC inscribed in large friendly letters on its cover.
Best local simple terminal text editor is micro.
It is insane how far using the same shortcuts literally everything else can get you in the world of terminal text editors and yet here we are
It’s there and it’s easy. Most people don’t use terminal text editors unless they are SSHing in a server, and they would only do that sporadically, so it makes no sense to become proficient in a complex text editor like vim or Emacs for that little use case.
Sidenote: personally, I learned vim once, and used it extensively every day for two years. I stopped using it for one year and was back to square one. Now I use vscode for everything… Even when I’m using SSH, because vscode supports SSH
I only use terminal text editors anymore when I need to edit config files à la
sudo nano. I just don’t trust visual text editors to do that stuff, I’ve been burned too many times in the past. Files “saving” but not actually saving. Files actually corrupting or changing ownership on save. Etc. Good old nano, doesn’t fuck with the critical system files any more than I already am.Every editor “supports” SSH, you can mount files on a remote SSH server via SSHFS.
And instead vscode supports SSH (without quotes), you can connect to an SSH host, and it will open files and folders on the host like it does locally. And if you open the integrated terminal it will run on the remote host. And it will forward the git login agent so you can commit or push with the credentials of your local machine. And it can forward ports from the remote.
Sure, but none of that is special in any way. That’s just what SSH does already. If you like that to happen in your editor GUI, by all means, you do you.
What I’m saying is not a single of those features is an accomplishment of vscode and you can do that with every editor you like, or even without any. I didn’t want people to believe they’d need to switch to vscode to achieve any of that. That was my angle.
I can’t and I’m not going to comment on the integration or the workflow, if you’re the audience for those kinda things, it’s probably great, give vscode a try. It’s probably obvious that I am not but hey, different strokes and all.
By the way, regarding integration, I just learned from a colleague last week that he uses emacs for editing remote files too. You can just open a file as:
/method:user@host:filename, with method being ssh or ftp for examplehttps://www.gnu.org/software/emacs/manual/html_node/emacs/Remote-Files.html
It’s kind of sad that many people don’t use the shell / terminal anymore, especially as part of their regular development flow. There’s so much scripting and so many shell commands you can use that will do things you just can’t do in vscode. And having an editor like vi immediately available is part of that flow.
For me, vim and the shell are my primary IDE. I rarely fire up vscode. But I guess I’m getting old. Still faster than the younger devs who mainly use vscode and then struggle when they are forced to use the command line due to whatever circumstance where vscode is not available or appropriate. Kind of makes me sad. Feels like a valuable skill is being lost.
Vscode has terminal built in too
Oh, I use the terminal a lot, it doesn’t throw me off. When I can’t have vscode (e.g. small openwrt devices) I can use vim. It’s just plain easier to use vscode for editing files when I can
I use kate for almost everything. I can open and edit files over sftp, and it has a terminal like vscode as well. I should try vscode again, it’s been a while.
Konqueror was the goat. Split screens. Browse the web. Browse remote directories. Browse local directories. I was sad when it went away.
I always forget that vscode can do that
I use nano just because it’s the one that’s usually installed. if it was usually Vim, I would use that instead.
Exactly. I use nano because it’s always there, and if it’s not somehow? It’s in a preloaded repo. It’s just so simple and easy.
And I’ve used it to write code before, only several dozen lines at a time. And that’s BEFORE I knew about the option to use modern key commands. (Learned that today).
Now nano is unstoppable in my mind.
If I learned vim or whatever, then on top of learning it, I’d have to stop and install it every single time. Bleh. No thanks.
I like Nano; it lets me do what I need to do quickly, simply and efficiently.
Vi lets me jump to the place I need to be and make edits to a config file very sticky, simply, and efficiently. But all that came at the cost of the steep learning curve.
That’s why nano gets used more than vi/vim. In the past, the majority of people using terminal text editors were geeks and developers. Now the majority of people using the terminal text editors are more often casual users who have no use for putting the time and effort to learn vi/vim, especially because they have no need for the extended functionality
I don’t get you people. Proper copy/paste support is “extended functionality”? I beg to differ. This is basic functionality.
And no, single line copy/paste as offered by nano, or copy and paste through the terminal is not proper copy/paste.
this functionality is only bloated and complicated for the person using a terminal a couple of times a year.
i say that while looking like this when i see any editor but
vimused:
but i know my co-worker looks at me like this, because he knows he only ever uses
vi:
Sit down by the campfire my dear youngin’ and I’ll talk you tales of a terror myth called ASSEMBLY
OOOOOooOOOOOooOOO!
Machine language! Director memory addressing! AAAAAaaaaa!
MWAHAHAHAHAHAHAHAHA!!!
Computers existed before the year 2000, you silly children…
Don’t be silly, grandpa. Everyone knows assembly doesn’t exist.
https://demoscene.assembly.org/
My favorite when I was a kid was absolutely, and without a doubt Second Reality by Future Crew. Full screen 3-D object rendering at 30 frames a second on a 486SX/25 CPU without a graphics card. in 1993
Future Crew, active in the early 90s, was a legendary group within the demoscene. They were acclaimed for their groundbreaking demos, like “Second Reality”, that demonstrated advanced programming, visual artistry, and music composition. These works set new standards for what was possible in real-time computer graphics, and they inspired countless artists and programmers around the world. Despite the group’s dissolution in 1994, Future Crew’s influence on the demoscene and the broader fields of graphics and game development is undeniable, and their legacy continues to inspire creativity in the digital world.
Fucking legendary.
And it fit on a floppy
Edit: I remember my friend Nick brought back a copy of Second Reality from ASSEMBLY 93, an annual convention of assembly developers where they would show off their programming prowess with these demos. Me and my friends got to see it before it hit the BBSs and Usenet. So fresh, yo!
Just watched it all and goddamn. Rabbit hole time. Haven’t remembered what it was like back then for a long time. An age of marvels and wonder.
That’s incredible work.
And it makes me remember another gem of the period, Elite! I first played Elite Plus, but when I heard about the original, the magic of being able to navigate all those worlds in such a small format fired my imagination.
I remember seen it in 1993 or 1994 in a friend’s PC with a Gravis Ultrasound. It was AMAZING. For comparison, the games of that year were almost all 16 bits platformers.
I think it took me over an hour to get my sound blaster pro configured just right
Here’s another reference from the era, let’s see if you get it:
“Did you bring the pages?”
It was from a game, but not a platformer
Nano has proper copy/pate, it works identical to any text editor. Mark -> copy/cut -> paste
Blasphemy! Ctrl+k is multi line!
Doesn’t matter if it’s not “proper” if it works.
Ah, I looked it up, it seems it actually has multiline copy/paste? Alt-A to mark the start of the text, Alt-6 to copy, Ctrl-U to paste. I’ll try it out next time I’m stuck in nano, thanks!
That’s true, if you had no GUI for an extended period, it’d be worth learning something that could do that. Although, other people are saying there’s a way in nano.
If you’re using a GUI, and working in an emulator, who cares if it’s not “proper”?
I understand why. People tried using vi/vim but couldn’t figure out how to exit the app. On the other hand, with Emacs, you need to use 4 keystrokes to do anything. It does not surprise me why nano is way used by default.
Nano is to EMacs/Vim as Notepad is to Notepad++ or VSCode (Nano has features Notepad doesn’t, but you get the point).
I don’t do a ton of code editing directly on the CLI. I do things like change parameters in config files or open a file to read it quickly. If I’m doing more heavy editing, I’ll use a GUI editor (with an SFTP extension if I’m working on a headless server). So programs like Vim and EMacs have never been useful for me.
To each their own (and I have all the respect for anyone who knows how to exit Vim without looking it up) but I’m guessing the majority of people have a similar experience.
Being good at nano does not transfer like notepad transfers to notepad++ or kwrite.
vim does not respect nano shortcuts and modes are simply a barrier: an extra keypress and another thing to keep track of. It slows you down significantly.
Noone good at nano would switch to vim naturally, you have to force yourself to endure until you catch back up to what you could long do in nano.Conversely I don’t know a single shortcut, behavior, or info notepad shows that np++ or kwrite don’t have. Besides maybe bracket and quote completion in kwrite which you’d have to disable in settings.
And on the other hand the advantages are more directly visible, like tabs, syntax hilighting, …
You might not immediately intuit the shortcuts for tab management, but you can still use tabs and then not return to notepad due to missing them.Sure, Notepad transfers to other GUI programs better than Nano transfers to Vim or EMacs. But that has little to do with Notepad and more to do with GUIs typically supporting similar shortcuts. Like I said, it’s an imperfect analogy.
I think you missed my original point. Most people wouldn’t describe themselves as “good” or “bad” at Notepad or Nano. They’re simple programs designed for simple editing. The learning curve is very low for both. Advanced editors have differing learning curves, but they’re all a lot more steep.
And my original point was that, because many people do only simple editing in a CLI and more advanced editing in a GUI, it makes sense that Nano became the most popular for CLI due to its shallow learning curve.
vim does not respect nano shortcuts and modes are simply a barrier: an extra keypress and another thing to keep track of. It slows you down significantly.
You obviously haven’t used much vim if you think modes slow you down. First it means you don’t have to bring your right hand all the way to the arrows whenever you want to move the cursor, secondly it means you can use shortcuts without adding a modifier everytime - this translates to fewer keypresses.
I was talking about the new user experience. No new user can navigate without the arrow keys, the most you can expect is looking up i and esc to enter and exit edit mode, and then using both modes the same way being annoyed at being in the wrong mode when something doesn’t work.
Keeping track of the modes is also obviously something only problematic to those not familiar with vim.
I spent enough time learning vim that I can do basic navigation and text editing. I’d like to be able to navigate efficiently like some of the savants out there, but the effort to get to that point is more than I’m willing to put into in.
I see Hitchhikers Guide to the Galaxy parody, I updoot
If ind it quite funny that the majority of the posts are about the text editor and not about the blatant hitchhiker’s guide reference to the point where I had to specify it in the OP and then the thread exploded after that point.
I’m a vim stan. I love my vim. I still end up installing nano on all my machines. It’s honestly not even for me anymore, it’s for anyone else who happens to use it. Vim is great but it’s got a learning curve.
Often times I’ll just use vi, since it’s always there.
OK so… How long did it take you to learn to use vim? I mean, where you didn’t have to look anything up?
As a nano user, I’ve assumed it was in the 1 - 6 months range, but maybe it’s not that bad?
I had a job for a while where my main task for about a year was reviewing / editing configs on servers, in which I learned the basic functions of vim (opening, closing, seeking, copy / paste, find / replace, etc.) and used them enough to get them embedded in my memory.
I use vim less now, as I still prefer graphical editors with a visual file tree for most development tasks, but I still have the simple stuff ready at hand when I have to jump on a server and change a config file. I’ve “learned” new tricks with vim since then, but I have a harder time remembering them when I don’t use them every day, and I periodically come across vim functionality that I’ve encountered before but then forgot.
So, maybe six months isn’t so far off, but it’s not that I dedicated myself to studying and learning the full length and breadth of vim’s capabilities for that whole period. It’s more that I picked up the basics pretty quickly, maybe after a few days of getting settled, then repeated the basics in slightly varying contexts until they became rote, which took longer.
Like two or three weeks for most tasks. I still check the manual sometimes, it’s built in :)
Check out vimtutor if you wanna learn it fast
https://vimschool.netlify.app/introduction/vimtutor/
I oft reference the wikibooks page as well https://en.wikibooks.org/wiki/Vim
if you use something like Neovim/Lazyvim or NVChad it’s pretty easy to pick up as you can just hit space and it’ll tell you pretty much everything you can do. Neovim also includes a decent tutorial. you can pick up the absolute basics pretty quickly, easily within a day or so.
Also a die hard vim user. Once you get comfortable with it, it’s a very functional tool that will always be there for you, at least in vi form if nothing else.
I only ever use to quickly edit some config file and for that i really don’t need anything more complex.
Perhaps you’re right…or perhaps the Encyclopaedia Galactica is a better tool for navigating the galaxy if you’re willing to learn a trick or two about how to navigate it? No one ever argued that the Restaurant at the End of the Universe was the BEST restaurant, only that it was the one at the end.
Many were increasingly of the opinion that they’d all made a big mistake in making text editors in the first place. And some said that even making operating systems had been a bad move, and that no one should ever have built computers at all.
Same here, computers have gone the wrong way; from utility to project to pet.
I still think smart watches are a pretty neat idea.
In the beginning, boolean algebra was invented.
This has made a lot of people very angry and been widely regarded as a bad move.
Big fan of micro. Like nano, it’s non-modal, but unlike nano, it doesn’t need to print its shortcuts on the bottom because everyone already knows most of the shortcuts from almost every GUI editor. And it has inbuilt LSP support (TBH it’s a bit much at times, the UI is a bit too intrusive to (by default) complain every time you violate some style guideline).
Though that’s moot if you don’t have admin privileges on the box you’re working on.
nano -xmay be more to your liking then. Ornano -0if you like being terrified.Hints: Ctrl+X still works to quit. Alt-Z and Alt-X toggle the title and the help respectively.
You can also use the toggles in regular
nanoto hide one or the other if you’re bothered by them.The UI isn’t the issue with nano, it’s that it needs that kind of UI … you could memorize nano’s shortcuts, but it doesn’t have enough features to justify the effort.
What extra features do you think it ought to have?
Well, micro has syntax highlighting and LSP support, and vim is just really efficient at text editing … though nano’s feature set is honestly fine for what it is, I’d much rather it used well-known shortcuts by default.
Asking nano to use the modern keybinds by default is akin to insisting that Emacs run in evil mode by default. If you really must have it do that, set up a shell alias or put something in your .nanorc.
Also, nano has syntax highlighting. No LSP though. It’s an editor, not an IDE.
Maybe that explains the size difference I was talking about elsewhere.
It’s not that they want more features - it’s that in micro for instance copy is ctrl+c which everyone already knows, where in nano it’s different
Then you want
nano -/which uses the modern key bindings. They’ve been in nano for a while now.For historical reasons, it doesn’t use them by default.
Yup they could use
nano -/0, or they could just use micro.A note: I couldn’t find
-/referenced online easily though when I checked it is indeed there. On Macnanoredirects topicoby default which doesn’t have that either. I think it’s understandable someone would just choose to use microTo flog this dead horse just a bit longer, micro is nearly seven times the size of nano, and Apple are clearly doing it wrong. Pointing an old name at a new thing is fine as long as there’s backward compatibility, but a new name at an old thing that doesn’t support the same features is a disservice to the old thing, the new thing and the user.
Many were increasingly of the opinion that they’d all made a big mistake moving away from ‘ed’ in the first place, and some said that even ‘ed’ had been a bad move, and that no-one should ever have left punch cards.
Nano’s used because it’s easier to use, which means the user interface is more intuitive than the others who insist you hit a key before making an edit.
The Venn diagram of nano users and Debian/Ubuntu users is a circle
sudo apt install microyep. One of the reasons I stick to debian based (vanilla Deb) is so that any dumbass tutorial works for me, because I am not smart.
sample size of me supports this hypothesis
I’m N+1
















