Nah… vim users fight emacs users, but not nano users. Wrong league. We do not beat little children ;)
Nano is more like fast food. It’s easy and convenient, but it makes you feel a little guilty and dirty afterwards.
Nano is the tool that people use when they don’t have a need for TUI editors in general and therefore don’t want to have to memorize how people with teletypes decided things should have been done 75 years ago and who also don’t want to get dragged into endless pointless bickering arguments about which set of greybeards was objectively right about their sets of preferences.
I’m glad people enjoy the editors they use and also I just wanna change a single fuckin line in a config file every once in a while without needing to consult a reference guide.
I don’t have much to say about nano, except the hotkey bindings are weird and unnatural.
They make sense, but they feel wrong.
Vim felt like having superpowers when I started with it, after being spoiled by helix it feels like a relic though
And yet Emacs users don’t fight vim users. Emacs users decided vim’s interface was pretty cool and added it to Emacs. Somehow people still call it a war though.
Bruh 😂 the Emacs user community absolutely constantly shit on Vim users. When they added Vi(m) bindings they literally named it ‘evil mode’, and they constantly make fun of people who use it, and spacemacs, and the latest flavor of (neo)vi(m), and all the extensions necessary to make vim halfway useful as an ide, etc etc etc.
Evil or the extensible vi layer is super popular and improves the one area that emacs was lacking i prefer the emacs keybinds but have never seen peeps chat shit about it
Which Emacs community? I’ve been following it for ages in a few places (Reddit is the most common) and I literally do not encounter any of that. Calling it evil was humor - as if people who went to all the bother making it would be trying to push people away…
Using the evil package is very popular and often recommended, which means literally using it like vim, but with all the Emacs ability on top. I don’t know what on earth you’re talking about.
Same here.
The biggest diss I have on emacs users, as a vim user, is that emacs is the only text editor where people routinely need to keep a book about it on their desk!
I used to work with a bunch of emacs guys and they all had an emacs book or two on their desk or as a monitor stand. They usually also had one on awk and/or Perl to go with it.
I’m sure they’d probably make fun of me for being unable to edit a file with anything but my specific vim config, which is not compatible with any other human’s vim config.
(I would never seriously judge someone on their editor, but I will bust an emacs users chops and accept a good natured jab back)
Oh to be clear, it’s all humor. At least mostly, I’m sure there are RMS level fanatics somewhere that truly believe some of the BS.
This is something as old as time. I’ve seen it prolifically on Reddit (though not in the Emacs community, they generally discourage memes), various Linux forums, old Usenet, various programming forums… I’m not trying to be evasive, but it’s hard to provide examples that aren’t specifically cherry picked, which wouldn’t benefit the conversation much.
There’s even a Wikipedia page dedicated to this: https://en.wikipedia.org/wiki/Editor_war
How close to vim’s functionality is evil mode? I’ve been toying with the idea of learning Emacs but I rely on Vim’s langmap and that is rarely implemented in Vim emulations / bindings.
Although I came from vi (pre-vim and pre-evil) and still have the muscle memory, I don’t and haven’t used it myself.
I hear it described as a “nearly complete” and “very comprehensive”. There is definitely a solid community of people using and enjoying it, but on the other hand there are always some reports of getting tired of having to work through, and sometimes extend, an additional interface layer, so in the long run being happier to just adopt the default bindings.
I know there are a few areas where trying to follow common vim workflows doesn’t work as well. Historically the performance of line number display been weak in Emacs, though I believe it’s recently much improved. A lot of people seem to make heavy and constant use of it in vim but conversely for me (and I think it’s more common in Emacs) it’s only an occasional, transient need when some external log or error quotes a line number, so I have them only displayed when I hit the go-to-line binding.
Overall, I think the most frustrating issues people have trying to adopt Emacs from vim are due to trying to impose their specific familiar vim workflows. The most obvious example is people concerned with startup time, but for more typical Emacs workflows it’s a non-issue. Users typically stay in Emacs rather than jumping in and out of it from a terminal (and if you really want that workflow, you run one instance as a daemon and pop up a new client to it instantly). My Emacs instance’s uptime usually matches my computer’s uptime.
The draw of Emacs is not about it only being an editor so much as a comprehensive and programmable text environment. It is a lisp-based text-processing engine that can run numerous applications, the primary being an editor (the default, or evil, or others…) but also countless other applications like file managers, VC clients, subprocess management and many others. It 95% replaces the terminal for me, and many other tools. So it’s the environment through which you view and manipulate all things text that is very accessible to modify and extend to fit your needs. Hence the joke about it being an OS is pretty apt, though to believe it needs a good editor implies vim isn’t a good editor ;).
I once fixed my bashrc file with libreoffice
calm down satan
I regularly fix my bashrc file with Notepad. I run it in Wine because I cbf to RealVNC from my Windows CE media server.
(n.b: None of this is real, I wrote it to upset people, I’m sorry)
Well let me upset you.
Ive been helping my coworker on a call and he was sharing his screen. I told him to edit a file (add a line) on a linux box we develop and he copied the file to his windows host with winscp, edited it in notepad and copied it back. I fantasize about killing him ever since.
They need to learn how to use their tools better. Winscp does all that transparently for you if you press F4 on a file on a remote system. Or maybe they did and you just didn’t see it…
It’s quite a handy function when you’re diving through endless layers of directories on a remote box looking for one config file amongst many.
I prefer Office 365 online.
Come back after your uploaded it to the cloud and edited it using Google docs.
IME?
Integrated Mevelopment Environment. You should have known this
I’m a meveloper
MevOps Engineer
My mate mevops
tips fedora M’eveloper
That acronym usually stands for “Input Method Editor” and describes the program that makes people able to type east Asian characters with a usual keyboard.
日本語は楽しいです。
The M stands for beefcake
Integrated Memeing Environment
Vscode is malware
VScodium is FOSS though
?
nano friends rise up!
I too use nano.
alias nano="vi -y"
Just tried it in my terminal and I couldn’t exit, lol
sorry, i didn’t tell how to quit. it’s
ctrl+q
Thanks, I finally got my access to the terminal back.
just when you thought you knew how to exit vim lol
also, this is vim’s “easy” mode.
ln -sf /bin/nano /bin/vi
I like Nano. I think it is quite good. There, I said it.
Edit a file, writing a quick shell script or whatever in the terminal. Nano is great. I don’t see any use in learning vim or emacs. If I need something more I’m going use a gui editor anyway.
Don’t get triggered anyone it’s just my preference
This is my thought process exactly.
I get it, for a power user, vim is probably incredibly powerful. However, I just want to edit text files. I don’t want a text editor where I need a cheat sheet just to save my changes and quit.
Funny, that’s what I hate about Nano. The key binds seem completely random to me and the programs solution to this is to display a cheatsheet on the screen
Control+W = "Where is," Control+O = "Overwrite", Control+X = “Exit.”
Makes just enough sense to me, and those are really the only three binds I ever need for editing config files.
I don’t want to come off like a vim hater, because I do believe it when people say it’s powerful, but… I don’t need powerful. I just need to edit text files.
Well hello there!
Looks like you only got one so far.
There are dozens of us!
nah you’re wrong
Why do you all say that? There were no replies when I added mine so that’s why I said what I said.
Micro, hell yea!
Made the switch as well thanks to the modern key bindings
nano gang
Gross
They hate’us cause they anus.
Vim is pretty easy for me because I’m used to it. Nano is very difficult to use for me because I’ve rarely used it.
I was Nano user and I liked it. After I learned to use Vim, I liked it more. Now when I use nano it’s frustrating to use and I can do things much faster and easier in vim 😅
Same here, nano is the bane of my existence.
Opposite here. I got started with Gentoo back in the day of building things from the ground up. Their tutorials all used nano and I just got used to using that. I think when I had casually tried to mess with linux previously, old Mandrake and Redhat in the '90s, I always used the GUI editors, but I also didn’t have a ton of time to mess with it and my hardware wasn’t well-supported.
Same. Stage 1 install will forever be a core memory for me.
You noobs. I just use combinations of cat piped to sed to edit my files, which are mainly lisp code.
cat pipeing is safer though.
foobar > file and your file is gone.
You can always alias
to
<
in your shell.
<file foobar
Huh does that actually work? Don’t have a system handy to try it out.
I think so! I think it’s something like
< file
works anywhere in the line, not just the end. There may be some specifics about no space when it is the front but I don’t remember lol.storage/documents/programs ro > echo puts "hello world" > main.rb storage/documents/programs ro via rb > ls c js main.rb python storage/documents/programs ro via rb > < main.rb grep hello puts hello world storage/documents/programs ro via rb >
Amateur! I write my code down on a piece of paper, scan it in, send it to my computer through email, then make a custom-built AI read the paper and print it in the terminal!
M-x M-c butterfly
Link.
Sometimes you don’t even have the luxury of nano. Any moderately advanced Linux user should probably learn the basics of vi. Just knowing how to insert text and save it can fix a system that’s stuck in recovery. Even if it’s just to add a comment in front of a line in a config file.
I do like that some distros make visudo use Nano instead.
When does that even happen? If you have nano installed, wouldn’t it work too?
Not in rescue mode. If you can’t mount your root partition because something was fudged in /etc/fstab, for example, you may be stuck in recovery and depending on your distribution, it may not have nano in that minimalist mode.
For me it also happens when I install a VM of Debian using the small image, on my dedicated server in a data center. The company hosting the server requires a special network configuration and AFAIK, there’s only vi. So i need to use the console to access the VM and from there, edit /etc/network/something with vi to setup the network. Once done I can reboot and install the rest of the software over the network, including nano.
I’ve been using Linux for more than two decades. Before nano I was using pico, but it also required to have pine/alpine installed. So knowing the basics of vi has often been helpful over the years for me.
Maybe it’s because I like tinkering with VMs and SBCs, and most people will not encounter situations where they don’t have nano, but it can happen. And you’ll be glad to know at least “i” and “:wq!”.
In a professional context, you might end up on servers that don’t have nano installed, but do have vi. Or if you’re helping out a friend on their laptop, they might not have the same software as you. Or if you often end up tinkering with random devices and/or setting up new systems it might be tedious to install the same applications every time.
It’s basically an argument for learning the very basics of the most common editors so you have flexibility no matter where you end up. Even when you have the ability to download and install your preferred software, it’s still an extra step that might not be desirable for a variety of reasons. But if it’s just your own personal device, I see no problem with just installing whatever you prefer and running with it.
EDIT: Personally, I find that I don’t end up using those other editors often enough to remember the abstruse commands of tools like vim, so I’m not worried about it. When it does happen, 99% of the time I can just whip out a smartphone and look up the directions for the n-dozenth time.
Sometimes you don’t even have the luxury of vi. Any moderately advanced Linux user should probably learn the basics of sed. Just knowing how to insert text and save it can fix a system that’s stuck in recovery. Even if it’s just to add a comment in front of a line in a config file.
I’ve come to the conclusion, people who use vim just continue to do so out of a stubborn sense of pride for finally learning the key combinations.
In my case it’s not a sense of pride. I can’t use anything other than Vim because I keep accidentally putting random incantations into my word documents.
“There once was a dduuuZQ:q!”
haha, same. do you use vimium as well?
That extension is actually pretty cool. There is also tridactyl and a browser that was made with vim in mind, but a browser and a text editor are too different for many things to translate.
thanks for sharing, I’ll try it on my work machine
Ya know, I might throw that on to my browser but I doubt I’d actually use it much. I only really use my browser for research; notes, music, and most of my work is done in the terminal. Being able to swap tabs faster by not having to cycle could be useful, but other than that I find the mouse to be a pretty rapid way of navigating unfamiliar pages
in my case, my hand hurts if I use mouse(or a mobile phone) for some time. using
j
/k
for scrolling and clicking links viaf
help me a lot.
I mean, yeah, kind of. In the same way pilots fly planes out of a stubborn sense of pride for knowing what all the flight deck controls do.
I honestly learned it just because I hated having to change hand position to use a mouse.
Can you use a mouse in nano? I always just use the arrow keys, or page up/down and home/end
I mostly use vim but I barely use the jkl; to navigate the document.
Ah sorry, I meant using Vim in a GUI program. I wanted something with the flexibility of a mouse (quick navigation, context menu actions, etc.) without using a mouse. Using just the arrow keys, shift highlighting, etc. is just too slow when writing lots of text, and it doesn’t follow the natural position of typing.
Even if you use arrows, you still have to reposition your hand.
nano -m <file>
orset mouse
in your nanorc
It’s just convenient that it’s pre-installed on many servers.
So I can use it now everywhere with my stubborn sense of pride for finally learning the key combinations.I am faster, more comfortable, and more productive in Vim. I use the same keybindings in all my editors and IDEs. It’s okay for people to have different preferences.
What do you mean? The vim users know their key combinations pretty well, that’s kind of the point of vim.
That’s funny, I feel the same way about Excel users.
It’s not pride, it’s just that I know how to use it really well and that makes it easy for me to use.
But it’s really only for viewing files on another system over SSH. For local work I use Sublime Text
Somehow it seems this would apply to any linux user
I just use vi
Is that stupid? It’s all I ever bothered to learn, hasn’t failed me yet. Now I’m not some big time linux guru but I’m a sysadmin and regularly find myself elbow deep in a CLI for stuff.
When you only need to hammer a nail every once in a while, any hammer will do. When you’re a roofer, you better have a roofing hammer.
If you don’t spend your life in a terminal and just need to edit a file, vim isn’t for you. If you want to learn complex strings of arcane wizardry to not only make your life easier but amaze your underlings, use vim.
no, modal text editors are just nicer to use
There is no sense of pride. Every text/code editor has key combinations that many users will learn eventually. Vim has easier key bindings.
Vim (or emacs, or any other advanced text editor) is much easier to use than nano when you need to do something more complex than type couple of lines.
Better? Maybe!
More efficient? Surley!
But easier?! Hell no! Easy means you can use it without a lot of training or studying. It is self explanatory. And there is no way on earth that vim is easier than nano. I don’t need to know anything to use nano I need to check docs for hours before I can even start using vim
This makes it seem like jerking off to MILF porn is hard because there is a learning curve
It is easier after you learn basics. Learning is not easy, but usage is.
Well okay by that logic playing Beethoven on piano is super easy
A handful of shortcuts isn’t that hard
Right, it’s remembering them and using them efficiently that’s hard. It’s amusing watching coworkers try to flex in vim and then struggle at the most basic tasks.
No, some piano plays are still harder than others, mo matter how long you practice. Editing text with vim is easier than with nano after some practice.
If something is “easy to use” this includes the time you need learn said thing.
Drinking rahmen from the bowl is easier then using chopsticks (even if you are more elegant with chopsticks)
Driving automatic is easier then driving manual (even if you may be more efficient with manual if you practised shifting a lot)
Walking is easier then flicflacs (even if you may be faster with flicflacs if you practised a lot)
Using Ubuntu is easier than using arch (even if arch gives you more control and opportunities if you understand it)
“Easy to use” means that you do less and get more. Learning doesn’t count if you learn something once and then use the skills you obtained many times.
(…once you learn the bindings)
And how often does that happen in the real world?
VIM may have been a very useful tool 20 or 30 years ago, but today it’s nothing else but a tool for one’s sense of superiority. It’s the vinyl of editors.
If you have to type that much code in a terminal, your infrastructure is outdated. Simple as that.
Every day in my case, except holidays.
…so your infrastructure is outdated.
Why do you think so?
You seem to believe that people only use the terminal if they HAVE to. I doubt anybody these days HAS to type any amount of code in the terminal, but choose to anyway. Like probably anyone else I have access to modern tools and infrastructure, but I choose to do work in the terminal because I’m more productive there. I use (neo)vim because I like it more than any other text editor I’ve used, and have no problem writing code and debugging in the terminal.
You’re using the terminal, because you’re used to it. It is not the better tool, it’s simply what you happen to know already.
People who argue with productivity because of some key bindings live in the world of the 80s. You don’t just sit there and type code 12h a day, that’s not how modern software development works.
And all those blockheads down voting me are caught up in their weird superiority complex. They are the powerful superhackers, and don’t understand that we are just highly qualified plumbers.
I’m actually fairly young and wasn’t around in the 80s. I graduated college with a CS degree in the past 5 years, where I was exposed to many different tools and software. What did I come out of that experience with? I like the terminal more than any IDE I had to use in any class.
Now in the real world, we don’t always get to use our favorite tools for every task, obviously. I do need to use other, more enterprise, software from time to time for work. But whenever possible I go to the terminal because I’m faster there, and I can quickly automate things.
I’m not saying the terminal is the best tool for every job, I’m just saying it is the best for ME. Notice I’m also not putting down other tools here. It seems to me like you might be the one with a superiority complex.
No, I’d argue you simply didn’t want to invest in the other tools.
Think about it, you probably spent hours on customizing and automating vim, and then say you’re faster in that. Well, that’s called a habit.
IDE are objectively more powerful and since you can actually see options and navigate quickly, you don’t need to memorize every obscure feature.
All the terminal editor enthusiasts are actively holding us back, because they insist everything outside vim is garbage for enterprise and kiddies.
If your tool of choice is actively hostile to new users for no reason other than “that’s how it’s always been, and thus it’s better”, well then you’re digging a moat to automate your gatekeeping.
vim + terminal is actually objectively more powerful than any IDE, and most IDEs include a way to pull up a terminal as a crutch for things they can’t do. In any case It seems you can’t be reasoned with. Your argument is just a strawman about what you say other people are saying.
Yes it’s so outdated that mostly every IDE offers usage with its keybindings.
VIM may have been a very useful tool 20 or 30 years ago, but today it’s nothing else but a tool for one’s sense of superiority. It’s the vinyl of editors.
So, because you don’t understand something, it’s outdated?
If you have to type that much code in a terminal, your infrastructure is outdated. Simple as that.
Ok, I can see you have no idea what you’re talking about.
I understand it very well. And that’s exactly why I’m writing this.
Ok, I can see you have no idea what you’re talking about.
Then say, grandmaster delusion, what purpose does vim serve, where it is actually the best tool? Writing code? Hardly, it’s way too limited and requires a ton of upfront investment and headspace. Writing config files? Hardly, because if you write these by hand, you’re living in the 90s, that’s what Ansible, Terraform etc are for.
You just don’t want to admit, that vim is nothing more than a habit. Muscle memory.
I actually use VIM bindings in PyCharm, slightly cursed but actually works really well and meshes fairly nicely with the other IDE shortcuts. Being able to use it in any terminal is a nice bonus.
Average vim user: vim is easy.
Also average vim user: literally hours of reading tutorial pages on how to use vim.
Allow me to present to you my Ultimate Guide to Emacs.
You can learn Emacs in one day. Every day.
It is easy, though? I cannot even use it correctly. I just know some of the commands and that if you hold down shift it goes backwards.
I’m a vim user and I would say it’s not. It’s very powerful, but only once you become familiar with the commands.
Nano is a better default for the average user because it works in a way most users would expect for a text editor to work.
Honestly, these days it’s pretty simple. The thing you need to remember is that you do not need to know EVERYTHING all at once. Learn a little bit, use it, keep what you use, discard what you don’t, get it in muscle memory, and learn a bit more. Very quickly you’ll be zooming through vim.
You can learn the basics, and go from there- the basics of vim (which imo everyone should know- vi is often the fallback editor), and then you can just casually learn stuff as you go.
Here’s the basics for modern default/standard vim: Arrow keys move you around like you expect in all ‘modes’ (there’s some arguments about if you should be using arrow keys in the vim community- for now, consider them a crutch that lets you learn other things). There’s two ‘modes’- command mode, and edit mode.
Edit mode acts like a standard, traditional text editor, though a lot of your keybinds (e.g. ctrl-c/ctrl-v) don’t work.
Press escape to go back into command mode (in command mode, esc does nothing- esc is always safe to use. If you get lost/trapped/are confused, just keep hitting escape and you’ll drop into command mode). You start vim in command mode. Press i to go into edit mode at your current cursor position.
To exit vim entirely, go to command mode (esc), and type :wq<enter>.
‘:’ is ‘issue command string’,
‘w’ is ‘write’, aka save,
‘q’ is quit.
In other words, ‘:wq’ is ‘save and quit’
‘:q’ is quit without saving, ‘:w’ is save and don’t quit. Logical.
Depending on your terminal, you can probably select text with your mouse and have it be copied and then pasted with shift-ins in edit mode, which is a terminal thing and not a vim thing, because vim ties into it natively.
That gets you started with basically all the same features as nano, except they work in a minimal environment and you can build them up to start taking advantage of command mode, which is where the power and speed of vim start coming into play.
For example ‘i’ puts you in edit mode on the spot- capital i puts you in command mode at the beginning of the line. a is edit mode after your spot- capital A is edit mode at the end of the current line.
Do you need these to use vim? Nope. Once you learn them, start using them, and have them as muscle memory, is it vastly faster to use? Yes. And there’s hundreds of keybinds like that, all of which are fairly logical once you know the logic behind them- ‘insert’ and ‘after’ for i/a, for example.
Fair warning, vim is old enough that the logic may seem arcane sometimes- e.g. instead of ‘copy and paste’ vim has ‘yank and put,’ because copy/paste didn’t exist yet, so the keybinds for copy/paste are y and p.
The second most important thing about vim to learn is:
If nothing is behaving then you probably have caps lock on.
Vim makes it easy to edit text in complicated ways, once you’ve learned it.
Vim is not easy to learn nor intuitive.
It is simple and compounding.
You might not ever edit enough text to ever need to learn a new skillset to edit text. If that’s the case, use
nano
.But if you do find yourself editing a lot of text, consider trying
vimtutor
.It takes 20 minutes and you’ll be proficient enough to match
nano
’s efficiency ceiling.
It’s extremely easy to get started
Once you start you can’t stop
The Terminator is not here to kill you, its here to protect you from Emacs (which can change its form to anything).
Cmon dude, what’s most likely to be Skynet?
-
Vim: Clearly evil, lightning fast. Relies on vimscript for any interactivity and can barely be used outside of the editor.
-
Emacs: the hippie brain child of some of the brightest minds at the MIT AI lab, funded by military contracts. Slow, but uses a near-universal language that can easily escape the bounds of the editor, (and often does (, and holy shit where did those parentheses come from. (Oh no, it’s becoming self-aware - fly you fools…!
Vim: Clearly evil, lightning fast. Relies on vimscript for any interactivity and can barely be used outside of the editor.
I don’t know why you want use Vimscript for anything outside of the editor. But if that your issue, then there is Neovim. It uses Lua instead Vimscript, but what is the benefit of using Lua outside of Vim? That changes nothing.
Lua outside of Vim has huge applications in embedded products. Dude I would kill for Lua. Do you know what we have? Common Lisp. Yeah, it’s great and fancy and all, but try adding that to your CV and applying for an embedded system job.
My point is, then use Lua outside of Vim. What does this have anything to do with the language used in Vim? You can use Vimscript in Vim, and still use Lua outside of Vim. So what’s the problem? It’s not like Lua gets available to you outside of Vim, just because you switch to Neovim. What do I miss here?
(it was mostly a joke, but) the skills you acquire tinkering your Vim to your needs using vimscript can’t be used elsewhere, whereas Emacs has the (small) advantage that at least most of one’s elisp skills can be translated to common lisp quite easily (with the joke being that common lisp really isn’t that useful, hence my Lua jealousy rant).
It uses Lua instead Vimscript, but what is the benefit of using Lua outside of Vim?
The only other (in fact, the first) place I’ve run into Lua is WoW plugins.
But WoW plugins have nothing to do with Vim. That’s my point. You can use Lua in WoW, while using Vimscript in Vim.
Factoring mods also use lua. Lua is a neat little extension language.
-
The best text editor is ‘$EDITOR’.
I think you mean “$EDITOR”. Gotta have that variable expansion.
Not necessarily! I always run
ln -s '/usr/bin/$EDITOR' $(which $EDITOR)
after a fresh install, so I have a valid executable on the path called$EDITOR
.Of course, then I have to make sure to add
export EDITOR=\$EDITOR
to my.bashrc
. (Obviously.)Well,.that’s one way to solve the problem of not expanding your editor var correctly…
That’s like the picture of a normal dude with Nano, a large Vim dude, a larger buff Emacs dude and an ever larger massive Ed dude.
eh the emacs folks are just chilling in a corner somewhere. Maybe in the old folks home together with the ed users
Don’t forget the joe user in the corner wearing a trench coat with a bomb strapped to his chest wired to a dead man’s switch.
Do people still use ed unironically outside of scripting context?
Unironically? Maybe not. But using something ironically is still using it.
Ed is like Skynet itself.