1. 32

  2. 13

    Vim.org has had a plugin registry … However it wasn’t until about 2008 that the notion of a plugin manager really came into vogue.

    Indeed. Pathogen is the central enabler of Vim’s sustained popularity in the last 10 years, yet Bram had never even heard of it until someone mentioned it during the “packages” work. Without a runtimepath solution, Vim plugin community would be a small fraction of what it is today. Vimball was atrocious.

    Dependencies (plugins) are a feature. Emacs discovered this with ELPA/MELPA. Go, Rust, NPM, all are examples of treating dependencies as a primary feature.

    Version 8 included some async job support due to peer pressure from NeoVim, whose developers wanted to run debuggers and REPLs for their web scripting languages inside the editor.

    Not sure what “web scripting” has to do with it, but anyways the URL links to a discussion involving zero Neovim developers.

    Note that you’ll need to mkdir ~/.vim/{swap,undodir,backup} or else Vim will fall back to the next available folder in the preference list.

    Not needed in Neovim, which does that for you automatically.

    1. 6

      On the topic of vi historical clones, you should probably mention vip (from 1986) or vi (from at least 87) as vi emulators for Emacs instead of viper. It find it far more fascinating that they already made these things just a few years after the project started.

      Also, what’s your opinion on modern vi relatives like vis?

      1. 4

        Like so many things in technology I like the idea of vis as a second system, an improvement over what we have learned in vi and vim. The issue is that the first system is so entrenched, not only code written (for languages) but habits and automatic actions ingrained in my brain, in the case of Vim.

        1. 2

          vis as a second system, an improvement over what we have learned in vi and vim. The issue is that the first system is so entrenched

          vis is really neat. But people forget that legacy (“entrenched”) is valuable. So when people say “X is better except for lack of ubiquity”, that’s like saying “X is better except it’s not”.

          1. 1

            I agree with you. Comparing individual aspects of software it’s possible to say one is better, but including other, non-technical aspects, could allow for a different outcome. It reminds me that software is more than just software, it’s people too.

      2. 4

        Useless fun fact: we piped a line to tr in an example above to apply a ROT-13 cypher, but Vim has that functionality built in with the the g? command. Apply it to a motion, like g?$.

        This is amazing. Stupid, but amazing.

        1. 1

          Given the one-time dominance of ROT13 as a means of, for example, hiding spoilers in Usenet postings about works of fiction, it’s always seemed like a natural enough thing to me. (Of course you can filter through /usr/games/rot13 if available, but then not everyone is going to have that ready to hand.) At any rate, it saves me effort at least a few times a year…

        2. 2

          There is also https://github.com/n-t-roff/heirloom-ex-vi which is: “The Traditional Vi (vi with many enhancements from Gunnar Ritter)”