===============================================
zsh + screen で端末に表示されてる文字列を補完する - 2nd life の tmux 版。
tmux に移ったころもう不要だと思ってなにもしなかったけど、これ意外と使いたい時があるのよねぇ。
コピペして.zshrc
にでも貼れば動くと思う。
HARDCOPYFILE=/tmp/tmux-hardcopy
touch $HARDCOPYFILE
dabbrev-complete () {
local reply lines=80
tmux capture-pane && tmux save-buffer -b 0 $HARDCOPYFILE && tmux delete-buffer -b 0
reply=($(sed '/^$/d' $HARDCOPYFILE | sed '$ d' | tail -$lines))
compadd -Q - "${reply[@]%[*/=@|]}"
}
zle -C dabbrev-complete menu-complete dabbrev-complete
bindkey '^o' dabbrev-complete
bindkey '^o^_' reverse-menu-complete
ほぼ、screen のコマンド部分を tmux に変えただけ。
一応変更点として、ファイル保存先 /tmp にしたのと~/Documents
みたいなのの~
が\~
にならないようにしたはず。