以前書いた初心者がVimをインストールするメモという記事が今でもたまに見られているようなので、新しいMacのセットアップを機に書き直してみました。以前の記事よりは洗練されているはずです。
XCodeをインストールする
App Storeにありますので、アプリを起動してインストールします。
インストールが終わったら一度起動して、コマンドラインツールをインストールしておきましょう。
Homebrewをインストールする
Homebrewにアクセスすると、トップにインストールスクリプトが表示されていますので、それをターミナルにコピペして実行します。
実行するとパスワードを聞かれるので、管理者パスワードを入力しましょう。
インストールが完了したらbrew help
を実行してみます。使い方が表示されていたら正常にインストールが完了しています。man brew
などで詳しい使い方を見てみてもいいでしょう。
gitをインストールする
Mac標準でgitがインストールされていますが、最新バージョンを使用するためにHomebrewでインストールします。
まずは標準のgitについて確認してみましょう。
$ git --version
git version 2.11.0 (Apple Git-81)
$ which git
/usr/bin/git
標準のgitを確認したところで、Homebrewでgitをインストールしてみます。
$ brew install git
インストールが完了したら、先ほどMac標準のgitを確認したときと同じように、今インストールしたgitを確認してみます。
$ git --version
git version 2.11.0 (Apple Git-81)
$ which git
/usr/local/bin/git
gitは/usr/local/bin/gitを参照しているようですが、バージョン情報が変わっていませんね。一度ターミナルを再起動して再度実行してみましょう。
$ git --version
git version 2.12.2
$ which git
/usr/local/bin/git
無事バージョンが上がり、Homebrewでインストールしたgitを使える状態になりました。
Vimをインストールする
では本題のVimをインストールします。
これまたMacには標準のVimがインストールされていますので、バージョンを確認してみます。
$ vim --version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Feb 4 2017 00:48:24)
Included patches: 1-898, 8056
Compiled by root@apple.com
Normal version without GUI. Features included (+) or not (-):
+acl -farsi -mouse_netterm +syntax
-arabic +file_in_path -mouse_sgr +tag_binary
+autocmd +find_in_path -mouse_sysmouse +tag_old_static
-balloon_eval +float -mouse_urxvt -tag_any_white
-browse +folding +mouse_xterm -tcl
+builtin_terms -footer +multi_byte +terminfo
+byte_offset +fork() +multi_lang +termresponse
+cindent -gettext -mzscheme +textobjects
-clientserver -hangul_input +netbeans_intg +title
-clipboard +iconv +path_extra -toolbar
+cmdline_compl +insert_expand -perl +user_commands
+cmdline_hist +jumplist +persistent_undo +vertsplit
+cmdline_info -keymap +postscript +virtualedit
+comments -langmap +printer +visual
-conceal +libcall -profile +visualextra
+cryptv +linebreak +python/dyn +viminfo
+cscope +lispindent -python3 +vreplace
+cursorbind +listcmds +quickfix +wildignore
+cursorshape +localmap +reltime +wildmenu
+dialog_con -lua -rightleft +windows
+diff +menu +ruby/dyn +writebackup
+digraphs +mksession +scrollbind -X11
-dnd +modify_fname +signs -xfontset
-ebcdic +mouse +smartindent -xim
-emacs_tags -mouseshape -sniff -xsmp
+eval -mouse_dec +startuptime -xterm_clipboard
+ex_extra -mouse_gpm +statusline -xterm_save
+extra_search -mouse_jsbterm -sun_workshop -xpm
system vimrc file: "$VIM/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc -L/usr/local/lib -o vim -lm -lncurses -liconv
$ which vim
/usr/bin/vim
とても長いですが、重要なことが書かれています。
$ vim --version | grep clipboard
-clipboard +iconv +path_extra -toolbar
+eval -mouse_dec +startuptime -xterm_clipboard
grepで必要な部分だけ抜き出してみました。Mac標準のVimではclipboardに対応していないため、ブラウザでコピーしたスニペットなどをVimに貼り付ける、といったことができません。
$ vim --version | grep lua
+dialog_con -lua -rightleft +windows
これは私事なのですが、Luaに対応していないため、普段使っているVimのプラグインも使えません。
そのため、Luaを使えるようにインストールをしなければなりません。
なお、clipboardはHomebrewでインストールするVimだと標準で有効になっています。
では実際にインストールを行ってみましょう。
まずはインストールオプションを確認します。
$ brew info vim
vim: stable 8.0.0535 (bottled), HEAD
Vi "workalike" with many additional features
http://www.vim.org/
Conflicts with: ex-vi
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/vim.rb
==> Dependencies
Optional: lua ✘, luajit ✘, gettext ✘
==> Requirements
Required: ruby >= 1.8 ✔, perl >= 5.3 ✔
Recommended: python ✔
Optional: python3 ✘
==> Options
--with-client-server
Enable client/server mode
--with-custom-perl
Build with a custom Perl instead of the Homebrew version.
--with-custom-python
Build with a custom Python 2 instead of the Homebrew version.
--with-custom-ruby
Build with a custom Ruby instead of the Homebrew version.
--with-gettext
Build vim with National Language Support (translated messages, keymaps)
--with-lua
Build vim with lua support
--with-luajit
Build with luajit support
--with-override-system-vi
Override system vi
--with-python3
Build vim with python3 instead of python[2] support
--with-tcl
Build vim with tcl support
--without-perl
Build vim without perl support
--without-python
Build vim without python support
--without-ruby
Build vim without ruby support
--HEAD
Install HEAD version
いっぱい出てきました。例によってgrepでluaの部分だけ抜き出してみましょう。
$ brew info vim | grep lua
Optional: lua, luajit, gettext
--with-lua
Build vim with lua support
--with-luajit
Build with luajit support
実際luaとluajitの何が違うのかわかりませんが、jitは多分JITコンパイラ付きだったりするのかなあと思うものの、実際にLuaを書くことは今のところないので、余計なことはせず--with-lua
オプションだけつけます。
$ brew install vim --with-lua
インストールにはしばらく時間がかかるので、ゆっくり待ちましょう。
インストールが終了したら、先ほどのgitのようにバージョンを確認してみます。
$ vim --version | grep VIM
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Feb 4 2017 00:48:24)
system vimrc file: "$VIM/vimrc"
fall-back for $VIM: "/usr/share/vim"
$ which vim
/usr/local/bin/vim
またもやバージョンの情報がおかしいですね。ターミナルを再起動してもう一度確認してみましょう。
$ vim --version | grep VIM
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Apr 3 2017 22:51:38)
system vimrc file: "$VIM/vimrc"
defaults file: "$VIMRUNTIME/defaults.vim"
fall-back for $VIM: "/usr/local/share/vim"
$ which vim
/usr/local/bin/vim
バージョンが上がっています。ではclipboardとluaがどうなっているのか見てみましょう。
$ vim --version | grep clipboard
+clipboard +job +path_extra +user_commands
+eval +mouse_dec +statusline -xterm_clipboard
$ vim --version | grep lua
+dialog_con +lua +rightleft +writebackup
Linking: clang -L. -L/usr/local/lib -F/private/tmp/vim-20170403-5105-18lfi48/vim-8.0.0535/Frameworks -L/usr/local/lib -o vim -lm -lncurses -liconv -framework Cocoa -L/usr/local/lib -llua -fstack-protector -L/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE -lperl -framework Python -lruby.2.0.0 -lobjc
clipboardもluaも有効になっています。
インストール作業は以上になります。今後は.vimrcをセットアップして快適なVimライフを満喫しましょう。
ちなみに、Vimがどの設定ファイルを参照するかはvim --version
の下の方に書いてあります。Vimに慣れてない人は、どんなファイルを参照しているのか確認しておいたほうがいいでしょう。