KAEDE Hack blog

JavaScript 中心に ライブラリなどの使い方を解説する技術ブログ。

Struggle with Vim8.1 updating ~ seeking :terminal ~

Vim8.1での苦戦とその解決策 (:terminalを求めて)

vimとの出会い

MacではずっとVisual Stadio Codeを使っていたが、gitの運用中viが自動で起動することがあって、そこからvim (vi IMproved)に興味を持ち、メインのエディタにしてみようと思った。 Vimは完全なCUI editorであり、マウスを使う必要がほとんどないから、効率的にコードが書けて捗るらしい。

vimを使ってみよう!

そこで私が最近やっているJavaScriptの勉強をVimでやってみることにした。 主にconsole.logの結果をnodeでterminalにoutputしている。

これがしたいな!

必要なのは今はeditor画面とintegrated terminalが同じ画面にあることである。 vi sample.jsで開いた後 :wqをして, node sample.jsとするのでもいいが、やはり同じ画面にコードと実行結果は同居してほしい。

参考画像:VScode

f:id:kei_s_lifehack:20190219235507p:plain
vsc terminal

そうだ聞いてみよう!

ゴリラ.vimという渋谷のDeNAで開かれたvimmerの集いで聞いたところ、それには' :terminal 'というコマンドが必要らしいが、vim8.0には入っていないらしい。 そこではvimにすごく詳しい人に直してもらったが、自分では何をしてもらったかわかっていなかったため、2台目の自宅のMacで同じ問題に挑戦してみた。

やったこと

homebrewでのupdate

そもそも参照される位置には入っていないerrorが出たため、installした。 $ brew install vim --with-override-system-vi
Error: invalid option: --with-override-system-vi
overrideに失敗しているのでbrew install vimをした。  

Python3は
/usr/local/lib/python3.7/site-packages

Ruby
export PATH="/usr/local/opt/ruby/bin:$PATH
になるとの記述が出た。VImに伴い。

でもPHP@7.1 は /usr/local/opt/
にあるのがbrewでinstallしたのとvimでinstallされたのの違いかな?

For compilers to find ruby you may need to set: export LDFLAGS="-L/usr/local/opt/ruby/lib" export CPPFLAGS="-I/usr/local/opt/ruby/include"

vim8.1のinstallには成功したが、vim --versionをしてもvim8.0のままであった 当然 :terminal コマンドも使えないままだった。

場所の確認

which -a vim で確認すると, usr/bin/vimが存在し、usr/bin/local/vimを遮っていることが判明。
この操作はPHPの環境構築でもやることになるのであった...

PATHの修正

.bash_profileにsource ~/.bashrc を追加し .bashrcを作成してexport PATH="/usr/local/bin:$PATH" を記述した。

refresh

source ~/.bash_profile で再読み込みするとvim8.1が読み込まれるようになった! :terminalも使えた!!!

f:id:kei_s_lifehack:20190220002242p:plain
vim8.1 :terminal

注意点

:terminal で開いたのはvimのなかのterminalなので、また別のものを左右に表示したい場合はexitして開いたものを消さないとおかしくなります。 そうでなければ ctrl w wでJS fileとterminalをマウスなしで移動できるので超便利です!!Vim最高!!!

Special Thanks: cateye, Stan_Dma, stmtk, pepper_leaf

追記感想

Desktop, Laptopで二度環境構築をするのは時間の無駄に感じていたが、2台目に同じ操作をするときは手探りでコピペしてやるのではなく、ある程度どうなるかわかりながらできるので、二台環境構築するのはとても勉強になった。 またこの環境構築に手こずらなければMacOSの.bash_profileはもちろん、/usr/local以下のフォルダも見ることはなかったので低いレイヤのことが少しはわかって嬉しくなった。

add 2019.06.18

Exchanged Title ja to en.