1. 63
    1. 21

      The best part of using any editor like Vim/NeoVim/Emacs is that it instills a learning mentality in you. Learning some key strokes to save doing repetitive tasks goes a long way. It’s the mentality that remains with you even when you are doing some other tasks.

      Also, for me the most Zen I ever felt was me alone with an Idea and just writing code in Vim with no plugins/auto completion, just me and Vim going at it.

      1. 8

        alone with an Idea and just writing code in Vim with no plugins/auto completion

        I’ll be honest, that sounds terrible. Technology has made us more productive and not needing to have a browser full of documentation open to context switch to constantly is one of the biggest QOLs of modern tooling.

        1. 4

          I enjoy using all the modern productivity tools like LSP, but there are times when the bare editing interface without any enhancements just feels better. It’s about you and your thoughts and your code, nothing else forcing its way on you. I step into mode that from time to time and while I can’t daily drive it I really enjoy it.

          1. 3

            It’s not terrible, especially with the code you are pretty familiar with. I do use LSPs and other tooling from IDEs when required and especially in foreign codebases.

            However, for me personally nothing beats me, and my editor without distractions. YMMV.

            1. 3

              Auto completion and navigation are pretty handy, but they don’t replace documentation. Although I have dealt with a lot of code written by people who thought they did. “That method name sounds like it would do what I want…hey, seems to work! Ship it!”

              1. 7

                Auto completion and navigation are pretty handy, but they don’t replace documentation.

                My tools embed documentation in hovers. Another benefit of a modern stack.

            2. 3

              Also, for me the most Zen I ever felt was me alone with an Idea and just writing code in Vim with no plugins/auto completion, just me and Vim going at it.

              I’ve always written all my code that way! I do find it pleasant

              Ctrl-N is good enough completion in many codebases. I do think compiler-assisted autocomplete is nice when you have it, but it’s not essential.

              It does force you to learn the languages very well, which takes awhile, but having everything “ready at mind” has all sorts of other nice effects

              I want to say “there’s almost nothing you can’t do with Python/C/C++/shell” (and those languages never had very good IDE support), but I guess the main place that falls down is either web UI or GUIs. In the latter case I think it’s much more conventional to use IDEs

            3. 8

              A good friend of mine made fun of me for using neovim while we were in university. Now he got a job that mainly involves managing k8s deployments and so on, for which he has to extensibly use the terminal. So, a couple of months ago he actually asked me for help to start using/configuring neovim.

              1. 9

                In a bizarre turn of events, in mere months of joining my current employer I’ve managed to convert a new colleague from using Visual Studio Code to NeoVim and also to switch from a traditional staggered keyboard to a split ortholinear keyboard. There is a learning curve involved with both, but he says he is glad to have given both of them a chance. It doesn’t look like he’s going back to his old ways!

                1. 4

                  I’ve managed to convert a new colleague from using Visual Studio Code to NeoVim

                  that’s a shame. vscode is great as an editor… especially when paired with neovim for all the backend editing.

                  https://github.com/vscode-neovim/vscode-neovim

                  1. 1

                    Coming from a long-time user of vscode-neovim who switched to neovim entirely, I don’t see the point of using it compared to regular neovim if you aren’t using any VS Code specific extensions. You don’t even have to do too much to get started with neovim if you use a distribution like LazyVim; that’s how I started and I felt right at home.

                    1. 4

                      Some of those vscode extensions are really nice. I switch between vscode and neovim all the time!

                      1. 1

                        well aside from the other person pointing out that there are many great extensions… there’s a ton of vscode built in features that are very nice to have in a gui. debugger support, file tree, etc as a first class citizen and all built in are great and cohesive. the only thing that is missing is the vim style editing. there’s a lot of power to vscode by itself.

                        1. 1

                          The GUI features are why I switched to neovim, actually. VS Code essentially forces you to use a mouse when you need to interact with those, while in neovim with neotree and dap I can have a keyboard-centred workflow that uses standard vim keybindings for navigating. I especially love grug-far which gives you the multibuffer UI for find and replace that emacs (and now Zed) boast of. That’s also why I suggest LazyVim; you don’t have to configure too much (or at all, really) to reach parity with VS Code.

                          1. 2

                            I’m not here to convince you to change back really but to mention this for other people might be able to transition to a more keyboard oriented view… for the neotree example you can absolutely do a lot of keyboard navigation via shortcuts. one of the commands you can bind a shortcut to or just use the command palette is Explorer: focus on directories which you can then up and down arrow press space to peek in the file. and do anything you really want to do there. if you are done there cmd/ctrl-1 goes back to your editor “group 1” or cmd/ctrl-2 goes to group 2. there’s many “focus on” commands that you can bind and probably one to focus on the one that’s open already but i don’t know it off the top of my head.

                            vscode is really actually pretty configurable and navigable via the keyboard.

                            also if you use something like vspacecode you get the leader key which will popup a window with all the common commands of which space - 0 being focus on file explorer and space 1-9 being tabs 1-9 etc. it’s emulating emacs spacemacs. neovim has a similar thing i think cloning that.

                2. 6

                  I’m glad to see more people discovering vi and using it. This seems like a bit of the “Lindy Effect”, similar to Unix shell

                  FWIW I used Windows exclusively from when I was ~12 to 25, and I skipped from editor to editor, never settling down, or finding anything that memorable. (I do remember there was this Lua-based editor “SciTE” that was nice)

                  Then I got a job in 2005 where I had to use Unix (for the first time!) And I learned enough vim in a few weeks, and never looked back.

                  I liked it immediately – there was nothing like it on Windows. (you could use vim on Windows, but that never occured to me until I used Unix)

                  I remember my coworkers were older, like 35 or 45, and many of them preferred to use Java IDEs and so forth. People wondered why I was a young person starting with vi !!!

                  And now I’ve been using it for almost 20 years. So it’s great to see that it is timeless, and alive/evolving with Neovim (one of these days I should give Neovim a spin).

                  Even very experienced programmers can switch editors, and see the value in it!

                  1. 3

                    I first started dabbling with a more non-conventional editor when Helix started making the rounds as a friendlier alternative to (Neo)Vim, but I quickly realized that since a lot of my day-to-day work revolves servers, then I’d be better off learning Vim motions instead. I made the switch to it overnight (YouTube pushed me over the edge^1), not touching Visual Studio Code at all, and now that it has been over a year, I seriously could not be more glad.

                    I did start out with a NeoVim distribution^2 instead of something more bare, which meant that actually understanding how certain things work has been obfuscated away from me. One of these days I will definitely create a NeoVim configuration from scratch that tailors to my exact needs, but right now I’m still over the moon that I have managed to dump the scourge that is Visual Studio Code.

                    (I’m not that ideologically against Visual Studio Code, but it just pains me to see people never giving other editors a chance.)

                    1. 3

                      Even VSCode has a vim mode.

                      I’ve been using vim since the 90’s, then switched to emacs with evil mode, then helix to have some control with my (always broken) configuration and now I’m on zed. Always with a vim mode, and quite often the provided vim mode in emacs or zed is more than enough for my needs.

                      What (neo)vim lacks in my taste is a reasonable configuration language (I’m not fond of vimscript or lua) and a reasonable default setup for programming (lsp, tree-sitter at minimum). Helix might get there with the steel integration eventually, but we’ll see.

                      Now I’m in such a big project having a graphical editor makes sense. It just needs to be very fast, meaning zed had a really good timing for me to switch. Modal editing I will never get rid of.

                    2. 3

                      The Windows experience with Vim has surprisingly been quite good since the 7.x era, and even though a lot of people recommended the “Cream” distribution to me, I ended up just using it plainly, having learned about it at a summer camp in 2005. I of course did not read most of the documentation until years later, but was still proficient enough in it versus other editors like Notepad++ by just googling around.

                      I’ve kept my old vimrc around, even as I’ve switched to Neovim, as it’s been traveling with me for nearly 20 years now and I can’t bring myself to delete it 🥲 (even if I can bring it back via git history).

                      Something about vim’s modal system just clicked with me, and even though I’ve never used hjkl for navigation (except under extreme duress), I really do enjoy using it.

                      1. 3

                        I also have a vimrc from around 2008, where I tried to really learn vimscript and sync it across all machines, in my dotfiles repo

                        The learning vimscript part failed, as I find it impossible to remember :)

                        But I’m still using the same dotfiles repo, and gradually deleting some of the customizations I made! There are a bunch I no longer use, so I just slim it down, and I’m closer to stock vim

                        I find Debian’s stock vim is pretty much exactly what I like – it is fast and works 100% reliably

                        1. 3

                          The best thing to happen to Vim was in the 8.x period when they added a defaults.vim file that has all the stuff people would have at the top of their file, and IIRC Debian turned it on by default for the cases where you’re not BYOV(imrc). Things like set nocompatible, ruler, etc.

                          I managed to learn vimscript briefly. Then vim9 script came out and I gave up 😆

                    3. 5

                      Like the author points out at the beginning of the article, the secret sauce is modal editing.

                      And there have been super interesting advancements in terminal modal editors fairly recently with editors such as kakoune and helix. Helix’s bindings in particular make up a language that I find more intuitive and expressive than vim’s (after having used vim and neovim for a long time).

                      These days I recommend helix over vim or neovim especially to newcomers, the learning curve is more of a curve and less of a wall.

                      1. 4

                        I will put another one in the ring: Ki.

                        Ki is similar to vim in that it uses modal editing.

                        Its similar to helix in that:

                        1. It selects first, then acts on the selection.
                        2. It has first-class multi-cursor support
                        3. It aims to be low-config
                        4. It has built-in LSP support. Adding a new language is a matter of declaring it. (I add 2 on my own yesterday, within 2 hours of using Ki. I could never have dared do this with vim/neovim).

                        Its different from both vim and Helix in that it splits the mental model into:

                        1. selection mode;
                        2. movement;
                        3. action

                        such that:

                        1. A selection mode sets the current unit - column/character, word, line, syntax node, the latter two of which are semantic units derived from tree-sitter grammar.
                        2. Because selection unit is already configured, movements are reduced to hjkl.
                        3. Actions, like helix, then act on the current selection.

                        I think I made the explanation more complicated than the actual execution.

                        I’ve only been exploring it for a day. Navigation through syntax nodes is impressive, but also heavily reliant on the language’s tree-sitter grammar being decent. Also, I’m not sure how much of a leg up it is against helix’s LSP jump to symbol. But helix’s operations on syntax nodes surely feels like a second thought, when compared to Ki’s.

                        There are other goodies:

                        • Everything is a buffer. So, same key-bindings are used everywhere.
                        • It has a built-in file-tree explorer (using yaml!), which can be fuzzy-searched too.
                        • Thought-out keybindings. For example, choosing between editor and system clipboard is a matter of \ key. y or p copies or pastes to editor clipboard, while \y or \p copies or pastes to the system clipboard.
                        1. 2

                          I want to like ‘meow’, a modal editing package for Emacs. It clicks with me in a way that vi doesn’t (and I’ve been using vi in a minimal capacity for 30 years), and could be the first thing to really get me using modal editing. I just haven’t figured out a meow layout that works for me on both QWERTY and Colemak.

                          1. 2

                            As a die-hard vi user I’ve been trying Helix for a while but had some stability issues with the language server and since then my optimism waned off a bit in the last couple of months.

                            1. 1

                              Mmh why do you blame it on helix though? Probably depends on the particular LSP backend. LSP integration in vim/neovim is not better than helix’s for sure.

                              1. 1

                                I’ve recently had issues with ESLint (which is actually the LSP used internally by vscode, broken out). The newer versions of the LSP use a different mechanism (pull-based messaging or something like that? I forget the details) that Helix just doesn’t support. Neovim, I believe, does support this new mechanism.

                                There is a pull request open to fix the issue in vscode, and for now you can always downgrade to an older version of the ESLint plugin, but it cost me a couple of hours the other day trying to figure out how to make an the pieces talk to each other properly.

                                FWIW, this isn’t just a Helix issue, it’s also partly that ESLint doesn’t have an official LSP outside the one used internally by vscode. And I still really enjoy using Helix, although I think I’ll enjoy it more once it’s easier to configure it more with plugins and more complex integrations than just the LSP system.

                                1. 1

                                  Out of the box LSP support was the main reason to try out Helix. And while in the beginning everything just worked, after a couple of months it became less stable for an unknown reason. I used the Go language server and it might not be true for this specific piece of software but in general all official Go code is of pretty high quality with very little knobs, so I was not looking into that direction much.

                                  I still plan to give Helix another try in a couple of months and hope it’s better.

                            2. 4

                              Also, i am glad he mentioned TextMate at the end. It was a good looking editor back in 2005. It felt like THE editor you had to use if you were doing Rails. For some reason, TextMate development stopped not to long after that. I am amazed he stuck with it for so long.

                              1. 4

                                the game unlocks an entirely new dimension the moment you pull off your first hadoken — a fireball move done by making a half circle with the joystick followed by a punch

                                This guy’s been doing half circles for quarter circle fireballs since ’91. Wait till he hears a shoryuken can start with down-forward in place of neutral forward.

                                Kidding aside, this is a great analogy.

                                  1. 16

                                    This is literally what the troll tag is for.

                                    1. 5

                                      I didn’t consider the implication that VI is as bad as those other things, it’s not. Whatever editor makes you happy, use it.

                                      If it helps, I use vim mode. I just think others might not know that “Dave likes X” is associated with some ideology they might not agree with. I should have spelled out that intention better.

                                      1. 18

                                        Starting with the first post, it reads like a freedom-of-speech opinion more than “liking” Andrew Tate.

                                        That’s a trolling, to get someone to point that out. The other links aren’t that different.

                                        But what’s the ultimate purpose?

                                        I really like how this site leans into the actual tech, and you typed up the kind of list that adds nothing to the tech merits of TFA, like discussing LazyVim would.

                                        I think if you want to start cancelling someone you disagree with, using strawman lists or not, there’s X/Twitter for that.

                                        Your statement about adding Vi to the list isn’t a troll or a joke, it’s an excuse, or so it reads.

                                        1. 4

                                          The Bozo Bit is a hallowed tradition in hacker culture. I think it’s relevant to remind people that they might want to set the Bozo Bit on the author of an article.

                                          1. 7

                                            The article is about the opinions of someone in tech. Sharing their other opinions is very relevant IMHO. If OP only wants to talk about VI without the association of an author they have plenty of options to do that. Sort of like how if Dave ONLY wanted to talk about freedom of speech, he could have chosen from 7.951 billion people that aren’t Andrew Tate.

                                            I think if you want to start cancelling someone

                                            I don’t think that stating things people have said publicly while citing them is “cancelling” them. I feel people use the term “canceling” when someone states an observation they don’t like. Not to mention the vast majority of “canceled” people are in fact still quite influential and very much around. I appreciate you think my words are so powerful, however I an assure you…if I had the power to cancel anyone, I think I would be the first to know.

                                            leans into the actual tech,

                                            Here’s a published, well cited research paper for you “Do [tech] Artifacts have Politics” https://faculty.cc.gatech.edu/~beki/cs4001/Winner.pdf. Spoiler alert, they do. There is no neutral, it’s all connected.

                                            I like how this site has people discussing things that they find relevant and topical. As you noted, you can easily hide my discussion and move on if you get nothing out of it. But you commented, now again. I like that you got to share your perspective of the situation and I got to share mine. That’s what I want to see in a healthy community. To hear and be heard. That’s all I’m looking for, you don’t need to agree with me, I just want an ACK that I’m heard.

                                            1. 2

                                              The article is about the opinions of someone in tech. Sharing their other opinions is very relevant IMHO.

                                              How so? That just seems like an attempt to easily dismiss people / ad hominem them. What would his opinions on Tate/Peterson/Shopify hosting Breitbart/DEI have to do with his opinions on Vim?

                                              I appreciate you’re (probably) being facetious and making an editor wars joke when you imply we can safely dismiss his praise of Vim based on his political opinions, but all that does is open up much more contentious political wars for the sake of a joke on mostly-exaggerated editor wars; moreover, a joke that would simply fall flat to anyone who doesn’t agree with the political takes you find so obvious or finds the inverse obvious.

                                              I don’t know the rules around discussion of politics on this site (or baiting people into such discussions), and while I’m very open to having political discussion be allowed, based on my previous experience, I don’t think that’s the kind of site that @pushcx is going for.


                                              Edit:

                                              Sort of like how if Dave ONLY wanted to talk about freedom of speech, he could have chosen from 7.951 billion people that aren’t Andrew Tate.

                                              Defending principles, like freedom of speech, usually entails defending the most unsympathetic people (to any given audience), since sympathetic people usually don’t become victims of violations of that principle. Nobody’s restricting the speech (or even trying) of someone whose words everyone agrees with.


                                              I don’t think that stating things people have said publicly while citing them is “cancelling” them. I feel people use the term “canceling” when someone states an observation they don’t like.

                                              While not exactly censorship, I do think using ad hominems, poisoning the well, and other such responses to get people to dismiss someone’s opinions before hearing them out aren’t exactly conducive to truth-seeking or even to free expression (especially on completely unrelated topics; if he had a track record of dumb technical takes, for example, it’d be more excusable).

                                              Not to mention the vast majority of “canceled” people are in fact still quite influential and very much around.

                                              Things can be both popular and silenced.

                                              There is no neutral, it’s all connected.

                                              Agreed, but really, unless you can draw a line from DHH “liking” Tate — which the link you posted to prove that claim doesn’t — to Vim, then it’s off-topic, liable to bait people into further off-topic discussion which are themselves liable to be acrimonious discussions, acrimony that could have been avoided since it’s all off-topic anyway.

                                              1. 3

                                                Flagging 12 day old comments as “off topic” and misrepresenting their contents isn’t exactly a community high road to be starting from. How did you even find this thread?

                                                1. 0

                                                  Wow, I think I touched a nerve, that’s a lot of deflections. “You’re hardly innocent, you misrepresented me and you’re flagging old content”, oh, and I detect a possible insinuation of brigading.

                                                  We can all accuse each other of misrepresenting people; you yourself were (truthfully IMO) accused due to your initial comment of misrepresenting DHH’s posts as him liking certain people, when they were clearly not him expressing a liking, or even support, of those people.

                                                  There’s no rule of the site or norm of civility to not misrepresent someone (except intentionally), because who would adjudicate that? I don’t think I did misrepresent you, but even if I did, that’s obviously unintentional, a simple matter of disagreement which has nothing to do with “community high road”.

                                                  As for the age of the submission, I don’t think 12 days is that long. I found the thread because I like to check out submissions past the front page, since I don’t check lobste.rs so frequently.

                                                  How does my alleged misrepresentation absolve you of the clearly uncivil — and possibly rule-breaking — behaviour of dredging up someone’s irrelevant-to-the-submission political opinions? Don’t try to point the finger back at me because I might have accidentally misrepresented you to deflect from a clearly uncivil post (especially one where you yourself could be credibly accused of misrepresenting others).

                                      2. 23

                                        Librarians are some of the nicest people in the world. Librarians don’t like David.

                                        https://blogs.library.duke.edu/blog/2023/11/30/why-were-dropping-basecamp/

                                        1. 10

                                          I’m not a fan of Jordan Peterson, but all I can gather from that blog post is that David read his book and likes the concept of meaningful responsibility providing purpose in life. He doesn’t appear to be defending him like he does in the Andrew Tate article, just citing him for the term “meaningful burden”. I would personally leave that out of a list like this.

                                          1. 8

                                            Now I’ll add to the list “Dave likes VI”

                                            To what end?

                                            1. 12

                                              I believe they were being facetious. I think it’s clear Dave is on the wrong side of history in a lot of respects.

                                              1. 7

                                                Agreed! I just didn’t feel like it added anything at all here, so I was wondering if I was missing something (like an actual belief that this means vi too is destined to doom, or what).

                                                1. 11

                                                  I don’t think the joke is relating vi to his polemics. I’m guessing it’s a humorous way to bring up to people who are unaware that DHH has terrible opinions (because this article about vi doesn’t really make any of them clear).

                                                  1. 5

                                                    I dunno, liking vi is a terrible opinion… /s

                                                    1. 2

                                                      lol, fair enough

                                                      1. 2

                                                        vi is the worst form of editor, except for all the oth­ers.

                                                        1. 2

                                                          This statement is invalidated by the fact that emacs exists.

                                                    2. 6

                                                      (like an actual belief that this means vi too is destined to doom, or what).

                                                      I think they just wanted to bring attention to the character of the author and maybe not platform them?

                                                      1. 4

                                                        Sure — I suppose I expect actually saying and suggesting that would be more effective, and so the point of the flippancy is lost on me. That’s OK!

                                                      2. 1

                                                        I use VIM and VIM keybindings. VI is fine. I was trying to relate my comment back to the original post in which Dave says he likes a thing. Which made me remember some of the other things he likes. I don’t like those, but I like VIM.

                                                  2. 1

                                                    Thank you for the valuable on-topic links, wish your comment could be labeled culture!

                                                    These really made me reconsider Ruby on Rails as an underground railroad for political dissidents.

                                                  3. 3

                                                    I love modal editing, and it is nice to see people write about it. But often they make it seem like the vi/vim/neovim style of editing language is the only one. I tried using neovim as my main editor for a couple of years, but I gave up on it because even after all that time, I found it difficult to use.

                                                    But then I discovered alternative takes on modal editing, like Kakoune and Helix. Now I use Kakoune all the time. It also has a learning curve, but one that I am actually climbing. I get more effective with over time.

                                                    So keep writing about modal editing, but don’t pretend it is the best and only solution.

                                                    1. 4

                                                      I also love modal editing. I also love pluralities & exploration, so I’d like to +1 that while vi/vim/nvi implies modality, modality does not imply vi/vim/nvi. My humble message for those who are unaware is that emacs lets you use & configure whatever modal system you’d like, including your own creations or variations. ‘Evil’ is a popular choice, since it essentially replicates vim (along with ex), but there’s also meow, a kakoune mode, god-mode, and who knows what else.

                                                    2. 2

                                                      What I wonder is how he does “ciq” or “dab”. are “q” and “b” only placeholders or is there some plugin that does this (I am pretty sure it is not surround)?

                                                      1. 1

                                                        b means block (not brackets; see e.g. :help *vab* or :help *vib*, this is standard vim), q I have no idea. You can ci" or ci' or ci`, however, to change within that respective quote type. Maybe he has a plugin, or is simply wrong :)

                                                      2. 2

                                                        Interesting, I haven’t seen zellij before. I need to check that out. Tmux is getting a little unwieldy for some things i want.

                                                        1. 3

                                                          I’ve had a fantastic experience with it, and it’s written in Rust if that’s your jam.

                                                          1. 3

                                                            Zellij is very friendly for new users. It has an amazing default interface with most of the important keybindings on the screen, and it’s much easier to configure. My config has slowly drifted towards a minimal UI that behaves more like tmux as I’ve gotten more comfortable with it.

                                                          2. 2

                                                            I tried LazyVim recently. It’s a real great example of what NeoVim can do and it has a lot of eye candy. But that’s not really how I use vim.

                                                            I exit and re-open vim constantly, using the terminal to navigate around. I have syntax highlighting, but no theme. My config is super minimal, and everything that I can do in the terminal I do in the terminal, rather than a vim buffer. I feel that this is not unique to me as I see the Primeagen has a similar workflow. When working like this, LazyVim becomes a bit slow. But I think if you are coming from a GUI editor LazyVim might be less of a paradigm shift, as DHH points out.

                                                            1. 2

                                                              Yeah, I have a strong preference for building my config from the ground up rather than starting with a heavier distribution; much easier to keep things performant when I understand everything the editor is loading. I’ve discovered that lazy.nvim (which LazyVim uses) with well tuned plugin activation triggers is basically essential if you’re trying to have a fast launch time without giving up a bunch of heavier IDE features.

                                                            2. 2

                                                              That’s kinda incredible! That I can sit here, almost half a century after Bill Joy first gave birth to vi, and enjoy the same quirky style of text editing to make modern web apps in 2024.

                                                              You can also still use TECO.

                                                              1. 1

                                                                I use this [0] on linux when I lose the battle against system default settings of vim.

                                                                [0] https://github.com/n-t-roff/heirloom-ex-vi

                                                                1. 2

                                                                  Huh, I thought nvi was the vi of choice for vim refuseniks.

                                                                  (Fun fact! The version of Berkeley DB in BSD libc has a “recno” mode that treats a file as an array of variable-length records. It is used by nvi to access text files by line number. Both nvi and BDB were written by Keith Bostic who led the effort to eliminate AT&T encumbered code from BSD.)

                                                                  1. 1

                                                                    I use the default nvi on BSDs. I had some issue getting it to work on linux some time ago. I don’t remember which version/fork of nvi (though that is part of the reason I guess, since different BSDs maintain their own copies.)

                                                                2. 1

                                                                  I know vi and vim well enough to know the seams. vi is terrible and missing important features. vim is great.

                                                                  I’d wager that most devs who think they like vi don’t and actually like vim.

                                                                  1. 1

                                                                    I am amazed by the quality of his work, like omakase. See how beautifully put together the docs are.

                                                                    1. 1

                                                                      I’ve been using Vim and now Neovim for years and didn’t realize a lot of those commands.