06/01/14 08:59:49
>>361
それは自分がパート2で書いたのが下敷きになっているようだね。
URLリンク(makimo.to:8000)
> って何やっているのですか?
ls や zsh の補完リストで、ファイル名にファイルの種別を表すサフィックスが
ついてることが多いので、それを削除したのを補完候補としている。
そのレスを書いてから、2、3回手を入れて今はこんな感じ。
# dabbrev complete for zsh
HARDCOPYFILE=$HOME/tmp/screen-hardcopy
touch $HARDCOPYFILE
screen-dabbrev-complete () {
setopt localoptions extendedglob
local reply lines=1000
local hp="([\'\"])##" tp="([*/=@|:\'\",)])##"
screen -X eval "hardcopy $HARDCOPYFILE"
# screen -X eval "hardcopy -h $HARDCOPYFILE" # scrollback buffer の内容も含む場合
reply=($(sed '/^$/d' $HARDCOPYFILE | tr ${WORDCHARS//[._-]/} ' ' | sed '$ d' | tail -$lines))
compadd -M 'm:{a-z-}={A-Z_}' - ${${${${reply[@]##${~hp}}%%${~tp}}://(?|??)}}
}
zle -C screen-dabbrev-complete menu-complete screen-dabbrev-complete
#bindkey '^[/' screen-dabbrev-complete
bindkey '^[^_' screen-dabbrev-complete