I've been using Vim for 20 years.
I only opened it once and I haven't been able to close it yet
I've been using Vim for 20 years.
I only opened it once and I haven't been able to close it yet
Didn't end your post with :wq
I use it where it's available and helix isn't
Helix is just user friendly vim, honestly. Vim barely has any help and helix is batteries included. Ever since discovering it, vim feels like a downgrade.
It's just way easier to get helix to a usable state for the languages I write in than it is with vim. I don't have to go plugin hunting or vetting random github repos; all the support mostly comes shipped with the editor. Throw some lines in TOML file and you're good, vs downloading a plugin manager, downloading plugins, configuring those plugins and hoping you got everything right and the plugin repo's README isn't 10 years out of date.
vim feels like a downgrade.
100%
The process you described is definitely what I went though with vim and neovim. After about a decade of vim I still couldn't get proper language support and an IDE like experience going. When language servers and the debugging protocol came along, it was worse to find the right plugin and configure that correctly.
Helix simplified my decade long struggle with vim in a single weekend. It still isn't a TUI IDE but it's such an upgrade, I'll take it.
Same. Every machine I have control of I install Helix. For the rest, I remember just enough vi to do what I need and get out.
Old school Emacs user here. The keyboard shortcuts are so ingrained in my head I don't know if I would ever be able to switch to another editor. Old dog ...
i mean vim is fine and all and i can get around it fine but nano superiority
# ── behaviour ────────────────────────────────────────────────
set autoindent
set atblanks
set casesensitive
set constantshow
set cutfromcursor
set historylog
set indicator
set linenumbers
set minibar
set mouse
set nohelp
set positionlog
set smarthome
set softwrap
set speller "aspell -x -c"
# set suspend
# NOTE: Removed in nano 7.x; CTRL+Z suspend is now always enabled by default.
# Kept here for reference in case of older nano versions.
set tabsize 2
set tabstospaces
set zap
# ── backups ────────────────────────────────────────────────
set backup
set backupdir "~/.cache/nano/backups/"
# ── syntax highlighting ───────────────────────────────────────
include "/usr/share/nano/*.nanorc"
For much, not for all.
System and user files are pretty close to one another in NixOS, so I use it for both. Sudoedit is set to vim, but I have a kitty and neovim (technically it's nnot nvim, it's nvf so I can config it in Nix instead of Lua) environment that tiles quite nicely and uses nonconflicting keymaps.
I use mod+hjkl for navigating my window manager, too, which has led to an interesting situation. Hyprland just migrated to Lua from Hyprscript, and Neovim uses a lot of Lua for inbuilt commands and stuff, so you'd think I'd be thrilled to write them both in the same language. Instead I just sigh at the greener grass because I already configured them both in Nix.
I do use Obsidian (with Vim binds, and monospace source mode as default for everything except tables) for my markdown viewer / primary notekeeping cloud sync, and Kate for previewing media that needs to be formatted right as a .doc or .pdf.
Some Obsidian notes are handled with Vim, actually. I have a script that sets up a new Zettelkasten note with automatic tags and opens it in Neovim, because I find it faster than Obsidian when I have a single thought and need to write it before it's forgotten. Thanks ADHD. I write Zettelkasten like little scripts of code - unique, atomic, referencing and importing each other, with a unique version history, and Vim's great at that.
Damn, that's quite the detailed setup.
Yes! Neovim for coding, Vim for non-code editing
I keep it holy with Emacs
iyes :wq
Been there, done that: forgetting to press ESC
I'm a freelance linux it nerd. I figured I better get used to vim/nvim because every company I visited had different tooling available but their servers ALWAYS had vim.
Now I have a nice .vim setup I can easily copy/paste and work easily and fast. I've become quite adept in the years following that decision.
Plus, as a freelance dude using vim quickly and flying through code bases makes it really seem like I know what I'm doing / hacker type .... I don't. And I'm no hacker..... But the customer is happy soooo :-)
P.s. I'm currently trying out the Zed editor with vim bindings. They are emaculate!
Yes. I started using it years ago and have been unable to exit ever since.
But honestly related to your question, I started learning to use vim exactly because when I started to learn and use Linux I was often stuck in situations where that was the only thing available.
Yes. I also use vim here (in this Web textarea where I'm typing this answer) thanks to Tridactyl.
I use to use vim but I discovered org mode so I use emacs.
Recently I been doing programming on plan 9 so I been using acme.
VSCode/Codium with vim mode. Regular vim if I’m stuck in text land.
I haven’t tried neovim. Supposedly that could handle everything I need out of vscode, but it’s easier to not be an odd one out at work.
You almost always have nano or pico available, so it's really unlikely that you'd get stuck with nothing but vim, unless you just didn't know that nano existed.
neovim at home, Zed with vim bindings at work because I'm stuck with a locked-down Windows machine.
Started on vi, stayed in whatever has vi/vim bindings available.
The more I can stay on home row keys the better editing text is.
Nano for low-level system crap (config, scripting, etc) and Obsidian/Typora/Insert WYSIWYG editor here for major writing. I'll utilize LibreOffice if I need something done in a Windows-compliant way.
No. But only because I switched to helix. I have used vim for a lone time before that. Only having vim on a system is fine. Far worse is only having vi. Which is almost like vim but missing a lot of useful things.
I use helix part-time but am forced to go back to neovim a majority of the time for a few reasons:
If 1 and 2 got fixed, I'd be a full time helix user
What do you mean by persistent undo? Never used helix before
In college, my advisor/boss was basically the emacs guy, so I picked up enough to do some basic text editing but didn’t go further because I didn’t feel like spending hours reading man pages.
Later I worked at a place where a shared computer only had vi, so same story. I learned about a half dozen commands and left it with that.
Then I went though a series of other editors and IDEs at different jobs, Notepad++, StyledEdit, CodeWarrior, CodeComposer, some weird proprietary Netbeans based thing, VS Code, etc. I still used vi for minor config editing on the occasional remote machine.
Then I got a job where I would be doing a ton of work on headless remotes, so I decided to get serious about learning something purely terminal based. I tried a couple of things, but ended up with Helix because:
Now I’m all helix all the time and really enjoying it.
I switch between Nano and Vi depending on what machine I am on and if I remember if Nano is installed.
Yes, yes, and have been in a situation where the only editor available was nvi (not vim). ed(1) rocks when on slow connections to low-specced boxen, btw.
I do not use it as my default text editor but I use it practically every working day. Plenty of times it's the only thing I have available to me. Pretty often vi is all I have to work with
Yes. I use vim as much as possible. When I don’t use vim, I use its keybindings in Firefox, IntelliJ, VSCode and even in eMacs (spacemacs with evil mode).
Yes, started using vi when I started using a Unix login at university. That was in about 1994 or so. When I started using Linux it was definitely vim.
I've tried using evil-mode and vim keybindings in other editors. I somehow keep coming back to vim, though.
Yes I love using neovim it feels better having an editor, agent, and cli in separate terminal tabs instead of having one program for all three
Yes I do and to my delight I' ve yet to encounter a situation where I can't use the editor I prefer anyway. Joy.
Do you use vim as your default text editor?
I used Vim for a few years before switching to Neovim. So, yes?
If you do not, have you ever been in a situation you could do nothing but use vim?
This question is not relevant to me, based on the prior question and answer, as I use it as my default text editor. But allow me to give a somewhat relevant answer. When I installed my operating system from scratch, I had to do text edits without Vim or Neovim being installed. It felt like I could do nothing without Vim, but managed it somehow. I had to use Nano!
For quick edits in the terminal? Sure.
As my main IDE? No way. I'm too used to GUI IDEs like VSCodium and PyCharm.
I just find it easier to navigate with a mouse. With just keyboard, I find I overshoot the block of code I'm looking for, whereas scroll wheel gives me more control.
I prefer NeoVim, but now I'm trying out Guile Scheme, and the best Lisp support is in Emacs from what I understand, so I'm currently attempting to stop using Vim commands in Emacs.
full vim. It always messes with my muscle memory when vim-tiny is installed as a replacement.
Nah, I'm another nano guy. You can set up syntax highlighting for it you know?
It's not that any one is better than the other, it's up to your use cases. I've learned vim a few times in my life already (and mostly just know the hjkl bindings from playing tons of terminal roguelikes) but it always decays because I don't put the knowledge to use. Because it just doesn't fit my use case.
I write small scripts, some Python and stuff and I'll usually use PyCharm to debug that these days. So nano is relegated to the small tasks like config editing or quick, in place fixes to scripts.
I've been in a situation where I could do nothing but use vi until I installed vim. Then could only use vim or vi. I've also had to use GVimPortable on Windows because of shitty corporate computers don't have bash or vim (or didn't back in the day.)
It's not hard. Just grab a cheat sheet. There is an Android app cheat sheet for Linux commands with Vim. You'll be fine.
I used to use vim pretty exclusively, I've since switched to neovim. There have been a few cases where vim/nvim weren't available but regular vi was and I've used it to edit text files. I imagine there were other editors but I'm so accustom to how vi/vim/neovim does things that I can't imagine using anything else. Sometimes someone will try and convince me to use a new editor and I'll try it but generally end up switching back to nvim. Even vi compatibility mode doesn't really help because I use a bunch of plugins.
I have a vim setup with plenty of plugins that honestly, I don't know if I need anymore.
Vim is slop-coded now, unfortunately. I use evil Emacs.
There are forks.
evi is not mature enough and doesn't have any package repos. There is another fork that I'm not going to mention, because it's developed by a horrible human being.
VI and vim have been my editors of choice for thirty plus years at this point. I also use set -o vi in bash.
I’ve had a couple systems that started with nothing more than vi, but rather more that started with nano (don’t think I’ve come across any that started with vim) – that being said, I’ll tolerate vi long enough to get micro installed
I used to use neovim primarily, but mostly use Kate now, as I've switched away from programming for the most part. I've had plenty of situations where the only text editor available is vi, and I'm able to get by no problem. I do usually prefer nano over vi if it's an option, though that may get me crucified lol
On the terminal yes.
On GUIs I generally use an IDE or VSCodium with vim keybindings.
I use nvim for editing, and started after needing to use vi on minimal servers, etc., and being annoyed at not having muscle memory
Helix for really quick edits, emacs for pretty much anything else. I do use tridactyl in firefox though, does that count? 😁
Yes! With a few plugins, of course. YouCompleteMe and fzf.vim are my favorites by far. I spend a lot of time on embedded Linux devices at work, so it's pretty convenient to use the same editor on my laptop and on the target device.
I have never been on a machine where I can't install and use nano. I can use vi / vim / nvim, but I don't have muscle memory. I have tried to convert away from nano, but it's just too easy and what I have been used to over nearly 2 decades on Linux. I have nvim installed with a few plugins and a bit of a custom config, but anytime I need to do something important or complex I jump into nano. If I remember and am not in a rush I'll jump into nvim to try and practice.
Nano gang
I started using emacs a while back. Before that i was using helix. If i need to make a quick edit in the tty i still find myself going back to nano. I've never been in a situation where i could only use vim. If i ever am though, i would know my way around.
Wanted to, but lacked the motivation to learn it. Was stuck on one occasion without nano, so I pulled up the vim cheat sheet on my phone.
Yes in SSH terminal,
Yes in vscode,
Yes because I use TUIs that use all the same bindings and they're great one you get the vocab.
Yes as Hyprland bindings, k9s, etc etc etc etc
VSCode with vim bindings for coding, neovim for configs, etc.
Wish I could switch fully to neovim but can’t be bothered to spend the time to configure it to my liking
top 100 comments