Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I attempted this within a few days of first being exposed to vi - 35 years ago.

But since I was logging into different machines all the time I soon decided it was better to just use vi the way it came out of the box, modes and all. That philosophy has served me well over the years.



I had a similar realization early after first picking up vim in college: customization of any tool eventually hits a point of diminishing returns beyond which further alterations reduce your ability to use the tool in its default state. It's an insight I've found applies to almost any tool... From software to hardware and beyond.

Master the default behavior of a tool, and then improve your effectiveness with customization, but not so much customization that you can no longer use the tool effectively in its unmodified state. Sometimes you have to use other people's tools, and it's important to still work effectively when you do.


I agree with this very much! I learnt it the hard way: my experience with many powerful tools, Vim included, was to learn the basics first, customize it to the point where you can't recognize it anymore, and then finally strip it down to the basics again, keeping only the configuration that doesn't prevent me from using the the raw features.

I used to manage complex "dotfiles" and scripts to configure a new computer, etc. I still technically do, but they are much more simple now. I just don't want to spend my time on configuring the stuff anymore, and appreciate the out-of-the-box experience much more. This by itself became a criterion when choosing new tools, frameworks, etc.


I used to think like that, but 10 years ago I decided to create a git-repo for my .emacs.d and started configuring beyond the most trivial settings (and including all dependencies in the repo too). Diminishing returns? Not sure how to measure. Editor configuration was never anything I did because I thought it would somehow save time, as some seem to imply, but rather just about removing sharp edges and making the experience of editing files nicer. With everything a quick git clone away it is rare that I have to work without my configuration.


I totally agree, but we should concede that the defaults need to accommodate the next billion users instead. I propose that a distribution ought to have the right to:

- Easy-mode as sensible-editor

- runtime mswin.vim, set nocompatible, etc as the skel vimrc

These are easier to change than driving new users to Google “how to exit vi”.

But remapping Ctrl-O, like this post, is a breaking change.


Speaking about mswin.vim which does mostly what this does: what's the point of this project.


Do you remember which plugin/project you used at the time? The one being linked looks pretty recent [1]. Are there any other implementations?

[1]: https://github.com/SebastianMuskalla/ModelessVim/blob/main/L...


> But since I was logging into different machines all the time

We now have actually portable executables (multiplatform, multios) that contain their own config file: you can just scp 1 binary and be done with it.


Do you have a link to this? It is not always possible, arcane non x86 arches, low bandwidth connections, but time is the big thing. A binary upload just to change some lines in a machine on the other side of the world. I am lazy.


The superset is 243MB from https://justine.lol/cosmo3/ but it might be more convenient to be lazy and run sshfs rather than modify the far end.


for vim aarch64 and x86-64 : https://github.com/csdvrx/CuteVim

just embed your own vimrc with zip following the instructions

for others, see https://cosmo.zip/pub/cosmos/bin/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: