HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
b4winckler
macvim
C2010–2014
b4winckler / macvim

macvim

Vim - the text editor - for Mac OS X

9Distinct people
12Mentions
0Explicit recommenders
5KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Vim - the text editor - for Mac OS X

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

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, 12:54:37 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 year12 dated mentions

Observed mentions: 2010-08-16 04:07:42 UTC to 2014-11-20 18:49:26 UTC.

012342010-01-01 00:00:00 UTC to 2011-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20102011-01-01 00:00:00 UTC to 2012-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2012-01-01 00:00:00 UTC to 2013-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments20122013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments2014

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
20102010-01-01 00:00:00 UTC2011-01-01 00:00:00 UTC101
20112011-01-01 00:00:00 UTC2012-01-01 00:00:00 UTC202
20122012-01-01 00:00:00 UTC2013-01-01 00:00:00 UTC303
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC202
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC404

What Hacker News says

12 sources
We as developers and open source advocates have to get over this "thou shall not ever remove code" no matter how old and useless it may be. What the NeoVim team is doing sounds a whole lot like what the libressl team did when they forked OpenSSL, which also had tons of code for obsolete operating systems. At the point of this presentation[1], they removed 90,000 lines of code; it's probably more now. Unlike system software like OpenSSL, Vim is something I (and many developers) spend many hours each day using. In 2014, there's no good reason why it shouldn't be as responsive and flexible as possible. Sometimes when my projects get large and have lots of files open and Vim starts to slowdown just a little, you can almost feel the decades of technical debt taking its toll. As someone mentioned previously, the function that waits for user inp
Read the rest
ut [2] is 400 lines long and has more the 41 ifdefs, many for operating systems that have been long dead. Interestingly enough, it's because of the growing popularity of Vim that this is becoming more of an issue. I live in the Boston area and have visited many startups; Vim is quite popular among them. Yes, it's a little hipster, but in a good way. ;-) We have lots of seasoned developers at our Vim meetup [3] of course, but there are way more younger people who've discovered Vim. The room is usually packed. 1. http://www.openbsd.org/papers/bsdcan14-libressl/mgp00026.htm... 2. https://github.com/b4winckler/macvim/blob/master/src/os_unix... 3. http://www.meetup.com/The-Boston-Vim-Meetup/
In Questions with Vim’s Creator, Bram Moolenaar
Are you familiar with Vim's code? Just look at all the OS-specific files in the source tree[1]. Not only that, there are ifdefs-galore in the shared code. RealWaitForChar is over 400 lines and contains 41 ifdefs.[2] Many are for long-dead features or platforms. That function just waits for user input, but it has to be ridiculously complicated to account for platforms without basic functions like select(). The infamous eval.c starts off with ifdefs for Amiga, VMS, and Mac OS Classic.[3] Neovim has ripped out tons of this stuff, and it's drastically reduced line count. 1. https://github.com/b4winckler/macvim/tree/master/src 2. https://github.com/b4winckler/macvim/blob/master/src/os_unix... 3. https://github.com/b4winckler/macvim/blob/master/src/eval.c
In Questions with Vim’s Creator, Bram Moolenaar
Have you looked at the Vim source? There are a few things in platform-specific headers, but most ifdefs are scattered in actual code. There are even ifdefs in the middle of control flow statements. For example, in RealWaitForChar(): https://github.com/b4winckler/macvim/blob/master/src/os_unix... That function is over 400 lines and has over 50 ifdefs. What does it do? It waits for any key to be pressed. Unfortunately, Vim is single-threaded and synchronously character-driven, so it has to try and process some autocmds and other events in the same loop. Oh and the wait loop uses gettimeofday(), which is not monotonic. To get another taste of Vim's source, take a look at https://github.com/b4winckler/macvim/blob/master/src/eval.c (Warning, may crash your browser.) That file is 25,000 lines and checks hundreds of different ifdefs.
In Bram Moolenaar responds to Neovim
The author of NeoVim (Thiago de Arruda) tried to add support for multi-threaded plugins to Vim and has been stymied[1]. I'm not sure how to get a patch merged into Vim. Bram Moolenar is the only person with commit access, and he's not a fan of most changes beyond bug fixes. My co-founder and I tried to add setTimeout & setInterval to vimscript[2]. Even six weeks of full-time effort and bending over backwards wasn't enough. Eventually we were just ignored. I've contributed to a lot of open source projects, and the Vim community has been the most difficult to work with. I've been writing C for almost two decades, and the Vim codebase is the worst C I've ever seen[3]. The project is definitely showing its age, and I'd love for something new to replace it. 1. https://groups.google.com/d/msg/vim_dev/65jjGqS1_VQ/fFiFrrIB... 2. https://groups.go
Read the rest
ogle.com/d/msg/vim_dev/-4pqDJfHCsM/LkYNCpZj... 3. If you value your sanity, do not read eval.c. It is over 25,000 lines and has over 400 ifdefs. The first ifdef checks for Amiga; the second checks for VMS: https://github.com/b4winckler/macvim/blob/master/src/eval.c
In Neovim
* Adium is great. * Growl works very well but the whole notification business (emails + builds + IM + song details…) can be counter productive. Use it lightly. * iTerm2 is the most modern terminal emulator you'll find on Mac OS X. I use it only because I wanted 256 colors and I'm not on Lion. I've never used its more advanced features. * I don't know Notepad++ but I would say Sublime Text 2 (http://www.sublimetext.com/blog/articles/sublime-text-2-beta) and TextMate (http://macromates.com/) may do. You could also try a full blown IDE like Aptana (http://aptana.com/) or RubyMine (http://www.jetbrains.com/ruby/). If you already know Vim, MacVim (https://github.com/b4winckler/macvim) is the way to go for both the GUI and the CLI. * Apple's own Mail.app works well. I've never felt the need to use another app. Microsoft's Outlook is pretty good
Read the rest
, too. * VLC is the obvious choice on Mac OS X too. You might want to install Perian (http://perian.org/) to add support for many exotic formats to Quicktime. For audio, Cog (http://cogx.org/) is nice. * You don't need a CSS editor. Just use your code editor. --- You might be interested in a few other apps: * ClipMenu (multiple clipboards) http://www.clipmenu.com/ * Burn (disc burning) http://burn-osx.sourceforge.net/Pages/English/home.html * Charles (http debugging) http://www.charlesproxy.com/ * DejaMenu (access the menubar from a contextual menu) http://homepage.mac.com/khsu/DejaMenu/DejaMenu.html * HTTP Client (http debugging) http://ditchnet.org/httpclient/ * Notational Velocity (the most elegant AND efficient note taking app ever) http://notational.net/ * Quicksilver (Quicksilver) http://qsapp.com/ * ShiftIt (window positioning) https://github.com/fikovnik/ShiftIt * The unarchiver (opens exotic archive formats) http://wakaba.c3.cx/s/apps/unarchiver.html * Yummy FTP (the best FTP client on Mac OS X) http://www.yummysoftware.com/ * VirtualBox (virtual machines) https://www.virtualbox.org/ * SourceTree (Git/Mercurial GUI) http://www.sourcetreeapp.com/
In Ask HN: Just ordered my first Mac- what apps should I know about?

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.