HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
tpope
vim-sensible
Vim Script2013–2025
tpope / vim-sensible

vim-sensible

sensible.vim: Defaults everyone can agree on

17Distinct people
21Mentions
1Explicit recommenders
5.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

sensible.vim: Defaults everyone can agree on

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

I would recommend against starting with someone else's pimped out configs and go with something more conservative. Tim Pope's sensible.vim is a good starting point. It has…

exDM69 used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year21 dated mentions

Observed mentions: 2013-01-07 04:48:22 UTC to 2025-10-11 15:59:49 UTC.

012342013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments20132014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC211
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC101
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC303
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC101
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC404
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC000
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC101
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC101
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC101
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC303
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC303
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC000
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC101

What Hacker News says

21 sources
There literally is a plugin [1] containing sensible defaults that everyone in the community agrees would be good as default but “backspace” and “incsearch” are the most obvious. “Backspace” allows you to delete with the backspace key beyond the point where you pressed “insert”. I don’t think I’ve ever met someone who thinks the vim default (not allowing this) is ergonomic. [1] https://github.com/tpope/vim-sensible
In Notes on switching to Helix from Vim
That’s a good question. The built in tutorial is actually really good, you can launch it with “vimtutor” on the command line. It doesn’t give you everything, but its instructions and text to try things out on in the editor itself, which I find a good way to learn. It isn’t particularly programming focused either. For getting used to the motions especially https://vim-adventures.com can be a fun way, in its game format. For getting started I’d say don’t worry about plugins much, but get https://github.com/tpope/vim-sensible at least so the defaults meant for vi don’t get in the way. The only other thing you might want is a format syntax if your preferred note syntax isn’t highlighted well by default or something. Polyglot can be good to stave that off but really I’d say learn on a really lean config, and get used to using :help or similar.
Read the rest
It’s the best way to learn the parts that work everywhere.
In Obsidian 1.5 Desktop (Public)
I didn't realise vim Vs vi purist was a thing. I'm aware that for a while vim has had some backwards compatibility setting that people recommended turning off to get more modern defaults. And that Tim Pope had a plugin that took you one step beyond that: https://github.com/tpope/vim-sensible > Think of sensible.vim as one step above 'nocompatible' mode: a universal set of defaults that (hopefully) everyone can agree on. And that neovim took the opportunity to make an updated set of defaults: https://neovim.io/doc/user/vim_diff.html#nvim-defaults
In The Vim features that make me a Vim user instead of a Vi user
I made the switch to vim a few years ago. You'll want to start with learning the keybindings. Every major IDE and editor out there has a "vim mode" and an "emacs mode" so pick one you like and enable it. Whenever you need to move more quickly just switch back to your usual keybindings and get it done. Once you have the keybindings memorized, try to use them everywhere. There are browser plugins like vimium that let you navigate with vim keybindings for example. It gets a bit weirder from there. If you pick vim for example theres a whole lot of customization rabbit holes you can go down. My advice is to find some sensible defaults and layer in stuff as you need it from there. vim-sensible[0] is a good start. Good luck! [0] - https://github.com/tpope/vim-sensible
In Ask HN: How to become good at Emacs/Vim?
See also `:h defaults.vim-explained` (https://vimhelp.org/usr_05.txt.html#05.3) which now comes by default. You can either copy the settings you are interested in or source it entirely in your vimrc file: source $VIMRUNTIME/defaults.vim --- Here's some more related resource links: * stackoverflow: useful .vimrc tips - (https://stackoverflow.com/q/164847/4082052) * vi.stackexchange: How do I debug my vimrc file? - (https://vi.stackexchange.com/q/2003/1616) * vim-sensible - (https://github.com/tpope/vim-sensible) * minimal vimrc for new users - (https://gist.github.com/benmccormick/4e4bc44d8135cfc43fc3) * Vim Configuration From Scratch - (https://marcgg.com/blog/2016/03/01/vimrc-example) * vimconfig: generate `.vimrc` by selecting options - (https://vimconfig.com/)
In Vim – Minimal Setup Explained
While the information in there is good, a bunch of the settings are now redundant¹. The ones that jumped out to me were esckeys, ruler and showcmd. Not that I'm saying you can't — or shouldn't — re-set options, just that the linked documentation is a little dated. FWIW, I personally re-set a couple of default options mostly so that I have a point of reference for how an option works when I'm digging about in my config. I'm of the opinion that the combination of recent vim and Tim Pope's sensible.vim² is The Minimal Setup™. ¹ The site says the last update was 2014, and back then $VIMRUNTIME/defaults.vim wasn't a thing for example(7.4.2111). ² https://github.com/tpope/vim-sensible
In Vim – Minimal Setup Explained
A bunch of the better defaults mentioned are already handled by vim since v8(:h defaults.vim), but beyond that using Tim Pope's vim-sensible¹ feels like it may be a better starting point. The repo's issues also contain some real gold on the reasoning behind why some settings are useful as defaults and why others are probably less so. In the spirit of that reddit thread, my only tip is to have a few full runs at vimtutor and then simply buy both of Drew Neil's excellent books²³. Structured learning from domain experts, not piecemeal randomness from our fellow internet commenters. Drew's free vimcasts⁴ are great too, and give a taste of the quality you'll find in his books. JNRowe leans back to chew on some piecemeal randomness ¹ https://github.com/tpope/vim-sensible ² https://pragprog.com/book/dnvim2/practical-vim-second-editio... ³ htt
Read the rest
In Vim It Up
I disagree with the notion that you have to write your own vimrc from scratch in order to become a proficient vim user. Don't waste your time pouring over the documentation and trying to get things just right, vim is a pretty old program and a lot of useful config options are not on by default, nor are they easy to understand by a skim of the documentation. There's no point to having a deep understanding of them, because you want them on 100% of the time. Start by copying someone else's vimrc (vim-sensible [1] is a great starting point) and tweak it as needed. My $0.02 is to avoid plugins until you have used vim for a substantial amount of time. [1]: https://github.com/tpope/vim-sensible/blob/master/plugin/sen...
In Interactive Vim tutorial
Disclaimer: I committed that change. If you think the issue is important, you are free to report it; the project has reverted decisions like this when people have complained (most recently, the default value of the `mouse` setting). On the other hand, considering how much time this had to be discussed, I would think that by and large this is not a mayor concern for users. This commit was made In June 2015, and the discussion about defaults goes as far back as essentially the beginnings of the project in 2014. We inherited this setting from sensible.vim (which many people consider, well, a very sensible minimal configuration), where the issue was discussed and dismissed back in 2013 (https://github.com/tpope/vim-sensible/issues/64). I think the argument there is convincing. Again, if you don't, please discuss it in the appropriate channels
Read the rest
.
In Vim's 25th anniversary and the release of Vim 8
exDM69·Feb 9, 2017Recommendation phrase
I would recommend against starting with someone else's pimped out configs and go with something more conservative. Tim Pope's sensible.vim is a good starting point. It has "sensible defaults" but no opinionated keyboard configs, extra plugins or so. https://github.com/tpope/vim-sensible That's pretty much all I have, plus a few personal shortcut keys and some syntax highlights that aren't included in vanilla vim. It's pretty short, I recommend copying it to your .vimrc, understanding every line (:help) and modifying to taste.
In Vim's 25th anniversary and the release of Vim 8
I kind of agree but vim's defaults are awful. Tim Pope has put together a good set of non-opinionated defaults which don't change key bindings or customize it otherwise [0]. I have a very similar vanilla setup with no plugins apart from syntax highlighting for some languages not included by default. [0] https://github.com/tpope/vim-sensible
In Vim for Humans

Showing the 15 most recent of 21 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.