

ShowHN: Scraped 800 .vimrc files from github, analyzed for fun - AlexMcP
http://www.mcphersonindustries.com/vimrcs/

======
malkia
Would love to see something similar for "emacs"

I just learned something new for example today - using the ".dir-locals.el" to
specify per-directory variables :)

I want to learn vi/vim, but spent already so much time learning emacs (and
still feeling baby in it... which is good!)

~~~
snogglethorpe
> _spent already so much time learning emacs (and still feeling baby in it...
> which is good!)_

Nobody has _really_ mastered Emacs. Nobody.

There's simply too much detail, much of it hidden in the shadows.

------
recoil
It's interesting that "set autoindent" is so common. I replaced this with
"filetype indent on" some years ago, since I'd rather have language-sensitive
indentation.

~~~
johncoltrane
Thank you.

------
chrismorgan
Normalisation of settings would be a very good thing to do. 'ruler' and 'ru',
'autoindent' and 'ai', 'etc.' and 'et cetera'.

~~~
AlexMcP
I'll work on combining these; as a vim neophyte I wasn't totally sure which
ones might overlap. At least I got color|colorscheme.

Thanks!

~~~
johncoltrane
When you do :help autoindent or :help ai you can see the short version and the
long version.

------
wamatt
Very cool project, thanks for sharing! :)

What could be interesting addition, would be to see how these change over
time, ie .vimrc trends.

I had a similar idea for analyzing dotfiles stats, which was subsequently
filed in evernote as a 'yet-another-hack-i-would-like-to-do-someday-but-
realistically-probably-will-not' ;)

------
AlexMcP
Did this for fun mostly to test out casper.js (it's nice!)

I'd welcome any feedback on how to better present interesting data, or answer
any questions. Thanks!

~~~
chid
Will you release the source? I don't use any of the stuff you use, except vim,
would be interested to have a look

~~~
AlexMcP
I have 2 repos on my github account:

<https://github.com/alexmcpherson>

One is a scaffolded rails app with interesting folders /scraper and /files

And the other is the microsite that was linked in the parent post

------
johncoltrane
What a surprise: 574/800 useless set nocompatible. Cargo cult for the win!

~~~
AlexMcP
What is it purported to do vs. what does it actually do?

~~~
johncoltrane
Vim can run in "compatible" mode (Vi-like settings) or "nocompatible" mode
(Vim-like settings).

    
    
        :set nocompatible
    

is used to switch Vim from "compatible" mode to "nocompatible" mode.

 _A lot_ of people put it at the top of their .vimrc, usually together with a
comment telling that it's needed for many options and features to work
correctly.

But Vim _actually_ switches itself to "nocompatible" mode _if it finds a
vimrc_. It can be the default vimrc in /usr/share/vim/vim7x/ or your own
.vimrc, it doesn't matter.

You can test this by removing this line from your .vimrc, launching another
Vim instance and doing :set compatible? With or without that line, you'll get
nocompatible.

Having this line in your .vimrc essentially does nothing: it sets something
"on" that was already "on". As such it's useless cruft but it is not
dangerous.

The _real_ problem with it is that it demonstrates a dangerous cargo cult
trend among Vim users who copy/paste entire vimrcs from Github or top ranking
blog posts without thinking about it for a second. Because this line and the
comment appeared in a rather famous blog post(1) by a rather famous vimmer
it's now just… everywhere.

I have a lot of respect for Steve Losh and I absolutely don't blame him for
including this line in his post: it's useless but harmless so there's no big
deal. I certainly have a lot of useless redundant stuff in my .vimrc, too. And
I'm totally guilty of using his whole .vimrc verbatim when I started.

But all the people who copied this line from him or from others who copied it
from others who copied it from him (who probably copied it from someone else,
why not?) should show a little less lazyness, I believe. And a more critical
mind.

(1) <http://stevelosh.com/blog/2010/09/coming-home-to-vim/>

~~~
AlexMcP
Hmm, maybe I'll get around to looking at his vimrc and seeing what proportion
of the settings are in the scraped files. I bet I could further validate your
cargo-cult hypothesis.

