Do you use vim as your default text editor? If you do not, have you ever been in a situation you could do nothing but use vim?
Helix for really quick edits, emacs for pretty much anything else. I do use tridactyl in firefox though, does that count? 😁
I use nano for quick edits and vim for longer stuff or things that need better find and replace.
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).
No, but I’m interested in using something more advanced than nano but I have no real need to.
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.
} jump forward to next empty line is really quick for navigating, also if you know the identifier then /myVar<enter>nnnn is much faster than scrolling and gets you ready to edit. Otherwise 5j;;;; also works of course.
I use Neovim as much as possible but Jetbrains C# just has a really nice debugging experience (with Vim mode on, of course). I still use Neovim for reading C# and doing some small edits and it works really well when reading what the LLM wrote.
It’s hard to beat stepping through a method until you hit an exception, go into a catch block, ctrl+O until you hit the last line before the exception, breakpoint, skip to top of method and rerun.
I’ve been using Vim for 20 years.
I only opened it once and I haven’t been able to close it yet
Yes. But mostly IdeaVim in JetBrains IDEs though.
For those that haven’t yet learned vim: the real power is that the commands can be combined to form a mini-language. Commands can also be recorded in macros and replayed. This is what makes it so awesome. But to really make use of this you have to properly learn it, only knowing i and x isn’t enough.
Also note that modal editing isn’t for everyone. I’m happy to learn hotkeys, I even got far enough to build musclememory for vim’s normal mode. What never went away though was my confusion about what mode the editor is in. I would constantly input text in normal mode and input commands in insert mode, leading to costly mistakes that tore down any speed advantage vim would have given me. I really tried, but never built muscle memory for this kind of context switching[1], maybe it’s an ADHD thing.
These days I’m on Emacs with an always improving custom command scheme of non-modal but context sensitive commands that do similar things in all major and minor modes.
Same situation with tmux which is almost a requirement for the typical vim workflow, and adds another layer of mode switching on top. On Emacs window management is included and so are remote shells/editing, so no need for the tmux<->editor context switch. ↩︎
I still sometimes do it randomly because of editor lag in Jetbrains Ideavim, you can just hit u usually until you get back to where you were.
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!
No, I use Neovim. But this I use 100% of the time.
Yes
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.
Thank you! I believe Vim is a deeply individual and almost emotional experience, and a bit of rambling is always worthwhile to get the perspective of a Vim setup.
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.
I keep it holy with Emacs
Vim is slop-coded now, unfortunately. I use evil Emacs.
I guess I should take another look at evil-mode.