from Hacker News

Vim's 25th anniversary and the release of Vim 8

by Iuz on 2/9/17, 12:58 PM with 204 comments

  • by a-b on 2/9/17, 4:24 PM

    Fun fact about vim:

    When vi was originally designed the most popular keyboard was ADM-3A and later IBM XT https://en.wikipedia.org/wiki/IBM_PC_keyboard#/media/File:IB... The layout of this keyboard has Control on the place where modern keyboards have a CapsLock key. Naturally that's why vi and vim was meant to use CTRL-[ to exit to the normal mode.

    25 years later Apple introduced ToughBar and made ESC key virtual. As result remapped CapsLock-[ make sense again ;)

    edit: Add ADM-3A keyboard

  • by robteix on 2/9/17, 4:26 PM

    In the early 2000s, I was at a friend's place with John "maddog" Hall, who was talking to a group of us about the future of software and the promises of quantum computing.

    He said something that I always found interesting. He was talking about how in a decade or so we would probably be using software and tools that would be unrecognizable to us at that moment, but after a pause he added: "but we'll still be writing code with vi." :)

  • by a-b on 2/9/17, 4:27 PM

    Vim is great, but hard out of box. That's why I'd like to mention couple community distributions to make it even better:

    http://vim.spf13.com this distribution is remarkable! Extremely well documented vimrc file is a great source of knowlege by itself https://github.com/spf13/spf13-vim/blob/3.0/.vimrc

    https://github.com/carlhuda/janus

    Also, it worth to mention

    http://spacemacs.org

    and

    https://neovim.io

  • by jmcdiesel on 2/9/17, 6:01 PM

    I don't see why he felt the need to halfway add in package management, but not go all the way. You still have to download the package and update it manually from what i can tell... where the others you simply add a github path (or other repository path) and updates come eaily, install comes easily.

    Consider the case of people like me who work on remote servers, who spin up new vagrant boxes and work on them remote... with the package manager as he described it, i'd have to download all the plugins and manually place them, etc... as i currently stand, i install vundle really quickly , then it just reads my .vundlerc.bundles and installs all the plugins i want, presto. Half solutions are worse than no solutions... because now people will compare the two, and default (likely) to the default solution and make package management harder on themselves than it needs to be...

  • by shmerl on 2/9/17, 10:03 PM

    > User demand for a multi-threaded Vim (e.g. a patch for supporting multiple threads) and its rejection is what prompted the Neovim fork in January 2014. In his presentation, Moolenaar concedes that Neovim did create some pressure to add a way to handle asynchronous jobs.

    I switched to neovim a while ago, because it supported 24-bit color themes in the terminal. Since then it seems even regular vim picked it up too. It's good to see that some pressure moved the project forward in different areas which were stuck forever before.

    Though neovim already uses XDG base directory specification, but vim still doesn't.

  • by a-b on 2/9/17, 4:42 PM

    Best place to start vim journey http://vimcasts.org/episodes/page/7/
  • by jmcdiesel on 2/9/17, 5:58 PM

    I love VIM... but I feel like VIM's life is coming to an end... as VIM. NeoVIM is just... better. The editor as it stands now is essentially the same, but an actual active development that isn's a single contributor is going to create a better project, and its going to respond to the community more and keep itself more up to date and performant.

    I feel bad, in a way, because i have a strong loyalty to vim, but Bram's stubbornness at playing well with others is basically holding onto sand, and we know how that analogy goes...

  • by a-b on 2/9/17, 4:43 PM

    Ranked list of vim plugins http://vimawesome.com
  • by Keyframe on 2/9/17, 6:40 PM

    This is one case where it feels a lot longer than that! I've used jot as primary editor on SGI and emacs sometimes and always when on Sun machines. Vi was always something I wasn't all that comfortable with. Then came about amiga where I've encountered Vim and thought to hell with it, why not. Ever since I've used Vim more and more and emacs less and less. In the meantime I've stopped programming as a full time job and I think in the last 8 years or so I've moved completely from emacs to Vim. With plugins I really don't see working any other way on longer things. For smaller, scratch type of crap I tend to dwell into sublime and experimenting with VSCode, but Vim is just, well, it's an editing experience. Fells like it has been around forever, probably due to vi.
  • by ivanche on 2/9/17, 4:09 PM

    I just wonder whether in 2042 we'll read about 50th anniversary of this masterpiece!
  • by smhenderson on 2/9/17, 4:42 PM

    Congratulations Bram! 22 years ago I installed my first GNU/Linux distro and tried both emacs^ and Vim. I ended up liking Vim better and I've been using it ever since.

    ^ no disrespect to emacs though, it is also a great and venerable program!

  • by 6ftdan on 2/10/17, 1:06 PM

    Yay! I've been using this for quite some time now. I build from the master branch on VIM's git repo for custom plugin support. There was a moment it had issues with the FishShell before this official release but that's fixed now.

    I've also built this into a remote programming Docker image: https://hub.docker.com/r/danielpclark/ruby-pair/

  • by a-b on 2/10/17, 4:03 AM

    I'm wondering how many folks are using g& command ;)

    It works great considering that

      :s//new_pattern/g
    
    will search for last

      /old_pattern
  • by CaliforniaKarl on 2/9/17, 4:48 PM

    I use Vim 8 (via MacVim) every day, but I'm definitely not at an advanced level!

    I'd say the most advanced stuff I do is gqap, and performing substitutions via regex, either with a range or in visual mode.

    I'd appreciate suggestions as to the best path to take, to move to a more advanced level of Vim 8. (Note I mention Vim 8 explicitly. Also, if extending my existing vimrc becomes a thing to do, I'd want to do it myself, learning what each not does!)

  • by _nato_ on 2/9/17, 5:52 PM

    Long-time vi[m] user, and always learning/amazement. This very morning I learned about the `-c` flag. So, `vim -c "set spell" my-misspelled-file.txt` starts up vim with a given setting.
  • by YeGoblynQueenne on 2/9/17, 6:22 PM

    Vimscript now has lambdas and closures!

    Also:

    https://github.com/idanarye/vim-smile

    Vim now has a ":smile" command :D

  • by adtac on 2/9/17, 4:23 PM

    I wonder if we'll see software this timeless ever again.