- 816 名前:名無しさん@お腹いっぱい。 mailto:sage [03/11/20 17:54]
- screen のスレを読んでいて、以前 >>486 を書いたものの結局使わなかったなと思いつつ、
よく考えたら screen 内で動いている zsh を前提にすれば話が簡単だということに気付いた。 こんな感じでどうでしょう。 # # $ZDOTDIR/.zsh/dabbrev # HARDCOPYFILE=$HOME/tmp/screen-hardcopy touch $HARDCOPYFILE dabbrev-complete () { local reply lines=100 # screen -X eval "hardcopy -h $HARDCOPYFILE" # scrollback buffer の内容も含む場合 screen -X eval "hardcopy $HARDCOPYFILE" reply=($(sed '/^$/d' $HARDCOPYFILE | sed '$ d' | tail -$lines)) compadd - "${reply[@]%[*/=@|]}" } zle -C dabbrev-complete menu-complete dabbrev-complete bindkey '^[/' dabbrev-complete bindkey '^[^_' reverse-menu-complete あとは .zshrc に例えばこんな風に書いておけばいいか。 if [[ -n $WINDOW ]]; then source $ZDOTDIR/.zsh/dabbrev fi scrollback buffer の内容も利用する場合は、適当に行数を増やした方がいいでしょうね
|

|