Vim で端末ウィンドウを複製する
Vim で端末ウィンドウを使ってるとスクロールされた出力を見たくなる時があると思います。
ただシェルでコマンド実行中なので、 <C-w>N
すると出力も止まってしまう。なるべくなら出力を止めたくないと思います(たぶん)。
そういう時は以下を vimrc に貼り付ければ <C-w>y
で端末ウィンドウの複製バッファができます。色とかもそのまま。
追記 (9/25) すみません、以下のコードだとやっぱりスクロールされた出力は見れませんでした…直すのでお待ちください…というか誰か直してください…
tnoremap <C-w>y <C-w>:<C-u>call <SID>dup_term_buf()<CR> function! s:dup_term_buf() abort let file = tempname() call term_dumpwrite('', file) call term_dumpload(file) setlocal nolist call delete(file) endfunction
追記
term_dumpload() で一部の色が復元されないと思って現実逃避気味によっしゃ term_scrape() で頑張るぞ!ってやってたコードが単に setlocal nolist すれば出ると知った時の顔
— tyru🍆 (@_tyru_) 2018年9月22日
— tyru🍆 (@_tyru_) 2018年9月22日