diff options
Diffstat (limited to 'dotfiles/system/.zsh/lib/-ftb-generate-query')
| -rw-r--r-- | dotfiles/system/.zsh/lib/-ftb-generate-query | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/dotfiles/system/.zsh/lib/-ftb-generate-query b/dotfiles/system/.zsh/lib/-ftb-generate-query deleted file mode 100644 index 87ebb75..0000000 --- a/dotfiles/system/.zsh/lib/-ftb-generate-query +++ /dev/null @@ -1,36 +0,0 @@ -#!/hint/zsh - -local key qtype tmp query_string -typeset -g _ftb_query= --ftb-zstyle -a query-string query_string || query_string=(prefix input first) -for qtype in $query_string; do - if [[ $qtype == prefix ]]; then - # find the longest common prefix among descriptions - local -a keys=(${_ftb_compcap%$'\2'*}) - tmp=$keys[1] - local MATCH match mbegin mend prefix=(${(s::)tmp}) - for key in ${keys:1}; do - (( $#tmp )) || break - [[ $key == $tmp* ]] && continue - # interpose characters from the current common prefix and $key and see how - # many pairs of equal characters we get at the start of the resulting string - [[ ${(j::)${${(s::)key[1,$#tmp]}:^prefix}} =~ '^(((.)\3)*)' ]] - # truncate common prefix and maintain loop invariant: ${(s::)tmp} == $prefix - tmp[$#MATCH/2+1,-1]="" - prefix[$#MATCH/2+1,-1]=() - done - elif [[ $qtype == input ]]; then - local fv=${_ftb_compcap[1]#*$'\2'} - local -A v=("${(@0)fv}") - tmp=$v[PREFIX] - if (( $RBUFFER[(i)$v[SUFFIX]] != 1 )); then - tmp=${tmp/%$v[SUFFIX]} - fi - tmp=${${tmp#$v[hpre]}#$v[apre]} - fi - if (( $query_string[(I)longest] )); then - (( $#tmp > $#_ftb_query )) && _ftb_query=$tmp - elif [[ -n $tmp ]]; then - _ftb_query=$tmp && break - fi -done |
