neovimは「vimを近代化させよう」というvimのforkです。
https://github.com/neovim/neovim
http://news.mynavi.jp/news/2014/02/26/097/
なかなかかっこいいので、現状どのような改修が行われたのかcommitを追いかけてみました
TL;DR
- 開発始まったばっかりなので総Commit数まだ少ない
- CMake使うようにした
- ゴミ掃除とサポートしたくない環境の切り捨てをした
- 実用段階になるには少なくとも半年以上はかかりそう
詳しく
Import vim from changeset v5628:c9cad40b4181
- ファーストコミット
- いらなそうなファイルとかマクロとか消したらしい
- Cmakeにビルドを移植したらしい
- fork元との差分はなし。あんまり丁寧じゃないね
Fix build on OSX/Archlinux and add README
- SELinux対応面倒なのでとりあえずコメントアウト
- OSX/Archlinuxでビルドが壊れているのを修正
- OSXでlibintl(gettextなどから使用される)を探すように&なんか色々ハックしてる
- Archlinuxでリンク時に-ltermcapをつけても名前が見つからずリンクできないのでtermcapを包有しているcursesをリンクすることで(-llibcurses)回避
わりと雑なハックが行われている模様
- 古いマクロとかさまざまな環境に対応するためのコードとかをごっそり削除
- Mac OS 9とかBorland C++ CompilerとかMSDOSとか
- libuvの乗り換えるためかsys/poll.hとか使うのやめている
- GUIは別プロセスにしてTCP接続する疎結合に切り替える予定のためかGUIまわりのコード(X11, GTK, ...)もごっそり削除
Automate libuv download and build
Add libtool to OSX installs
Add Arch dependency instructions to README.md
include a copy of the Vim License
- うっかり忘れていたっぽい。雑っぽい
Cleanup refactoring in main
Clean up main.c:parse_command_name
- 長いコードを別の関数に切り出したり
- 王道リファクタリングなことをしている
- TravisCI導入
First pass on getting build working on FreeBSD.
- FreeBSDでビルドできるように
- みんな自分のOSに対応させるし使ってないOSはどうでもいいということがわかっておもしろい
- バザール開発だ
README.md: fix ubuntu/debian deps
- 「For Ubuntu 12.04」ってなんだよ、俺はdebian使ってるんだという心の声が聞こえる
build-essentialはubuntuにしかないんだよ。要するに必要なのはlibtool, autoconf, g++だという心の声が聞こえる
追記: debianにもbuild-essentialはあるらしい(thx KoshianX!)。今手元のsqueezeで確認したら確かにありました。build-essentailではlibtool, autoconfは入らないようなのでそこを直したと思われる
Added 'neovim' to the feature list, following discussion on #44
- VimLからhas("neovim")でneovimがどうか判定できるように
scripts/common.sh: remove a couple bashisms
追記:bashでしか動かないバグをbashismsというらしい(thx KoshianX!)。
シェルスクリプト詳しくないので精進します
Adding neovim formula for Homebrew
Updating README file to use Homebrew for local builds
- Homebrewのfomula書いたぜ
> brew install neovim/neovim/neovim
でneovimが入る便利ライフに