Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5712

MacVimからNeovim+iTerm2+tmuxに移行した経緯と困ったところ

$
0
0

開発環境をいじってみて、タイトル通りの環境に落ち着きました。
その経緯を書いていきます。

もともとの開発環境

  • MacVim
  • tmux
  • Terminal

言語は主にPHPを使っていて、場合によってPython, Ruby, Goなど。

Neovimの導入

以前からちょいちょい試していたのですが、GUI環境で良いのがなかったのがネックになり完全導入はできていませんでした。

Vimを使っていて特に困っていなかったのですが
今回はどうしてもDeniteでfloting windowを使いたかったので、思い切ってTerminalでNeovimを使うことにしました。

homebrewを使ってインストール

$ brew install neovim --HEAD$ nvim -v# -> NVIM v0.5.0-cb8b942

tmux

もともと使用していたので、特に変わりなく使っています。

.bash_profile
alias tmux-new='tmux new  -c ~/develop -s develop -n _vim nvim \;\
                     neww -c ~/develop -n src \;\
                     neww -c ~/develop -n docker docker exec -it hogehoge \;\
                     neww -c ~/develop -n fugafuga \;\
                '

こんな感じで、aliasを作って環境を一気に立ち上げるようにしています。
0とやるとNeovimが立ち上がるので便利です。

iTerm2

もともとTerminalを使ってNeovim+tmuxで開発をしていたのですが、
なんだかカーソルの動きがカクつくというかスムーズに動かないのが気になってきました。
悩んだ結果、iTerm2を試してみることに。

そうしたら、カーソルもスムーズに動くようになりました!
Terminalを置き換えただけで特に設定はなし。カラーテーマを「Solarized dark」に変えただけ。

ちょっと困ったところ

ファイルの変更通知がでない

MacVimでは別アプリなどでファイルが更新されたときに警告が出ます(:help W11)。
Terminalで使っているとこれが出ないようでした。下記の設定を入れることで表示されるようになりました。

.tmux.conf
set -g focus-events on
.vimrc
set noautoread
autocmd FocusGained * checktime

:terminalの設定が動かない

vimでは下記のような設定をしていました

.vimrc
command! T lcd %:p:h|bo terminal ++close bash --login

しかし、下記の問題が発生しました。

  • ++closeがないという警告がでる
  • インサートモードでスタートしない

下記のように設定を変えることで解決しました。

.vimrc
command! T lcd %:p:h|bo split term://bash --login | normal i

ただ、いままではexitでウインドウが閉じていたのですが、nvimでは閉じてくれないようでした。
これはまだ解決できていません。

まとめ

今のところ快適に使えています。
現状、iTerm2の利点は感じていないので、どうにかしてTerminalに戻れないかなと頑張ってます。


Viewing all articles
Browse latest Browse all 5712

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>