LoginSignup
10
10

More than 5 years have passed since last update.

Vim + tmux + Slimuxでインタラクティブなコーディング

Last updated at Posted at 2013-11-15

Vim + tmux + pry / R

rubyとRを統合しながら開発しているので、分析時に使っているRStudio的な開発をVimとtmuxでやりたい!と思ったので設定しました。

+ Slimux

今まではjpalardy/vim-slimeを使っていたんですが、RStudioみたいに行単位で送りたいなー、と思って探していたらepeli/slimuxに行き当たりました。(設定次第でvim-slimeでも出来るのかもしれませんが…)

vim-slimeよりもconfigurableな感じで使いやすいです。

#409 - asciinema

NeoBundle 'epeli/slimux'

map <C-c><C-c> :SlimuxREPLSendLine<CR>j
vmap <C-c><C-c> :SlimuxREPLSendSelection<CR>

標準の設定ではmap ...<CR>ですが、僕は最後にjを付けてます。これでCtrl押しながらc連打で各行をtmuxの画面に送れます。RStudioでcmd+enterしてるのと同じ感じですね。 -> 追記:初回設定時に毎回jが効いて鬱陶しいので回避方法募集中です。

v}<C-c><C-c>してやれば複数領域の実行も出来るので良いですね!
体感としてはRStudioで実行するよりも軽量なので気に入りました。

バッファ単位で送り先のtmux panelも変えられるので、僕はtmuxを縦に二分割して片方をpry、もう片方にRを起動してgvimからCtrl+cしながらコーディングしてます。
特にRはデータを直接確認しながら作業をすることが多いので、いちいちRStudioに画面を切り替えることなくvimから全て実行できる環境は快適です。

作者に感謝!
Slimux - tmux Plugin for Vim - Esa-Matti Suuronen

余談

僕はgvimをサブモニタに表示しながら使ってるんですが、
一般的にはtmuxのpanelを分割して使うものなんでしょうか。

何にせよvim, tmux, pryの組み合わせは便利です。
言葉だと余り便利さが伝わりにくいですが、僕は以下の動画を見て「使いたい!」と思いました。
Velvet Pulse » Improve Your Ruby Workflow by Integrating vim/tmux/pry
こっちもいい感じです。
▶ LA Ruby Conf 2013 - Impressive Ruby Productivity with Vim and Tmux by Chris Hunt - YouTube

10
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
10