add ais (rust fuzzy selector) and atproto plugin
This commit is contained in:
42
.zsh/plugin/ais.zsh
Normal file
42
.zsh/plugin/ais.zsh
Normal file
@@ -0,0 +1,42 @@
|
||||
# ais - ai selector (Rust)
|
||||
# unified fuzzy finder replacing cdselect/fileselect/histselect
|
||||
# requires: ais binary in PATH
|
||||
|
||||
if ! command -v ais &>/dev/null; then
|
||||
return
|
||||
fi
|
||||
|
||||
# C-j: directory selector
|
||||
ais-cd() {
|
||||
local dir=$(ais cd)
|
||||
if [[ -n "$dir" ]]; then
|
||||
cd "$dir"
|
||||
fi
|
||||
zle reset-prompt
|
||||
}
|
||||
zle -N ais-cd
|
||||
bindkey '^j' ais-cd
|
||||
|
||||
# C-f: file selector -> insert into buffer
|
||||
ais-file() {
|
||||
local file=$(ais file)
|
||||
if [[ -n "$file" ]]; then
|
||||
BUFFER+="$file"
|
||||
CURSOR=${#BUFFER}
|
||||
fi
|
||||
zle reset-prompt
|
||||
}
|
||||
zle -N ais-file
|
||||
bindkey '^f' ais-file
|
||||
|
||||
# C-r: history selector -> insert into buffer
|
||||
ais-hist() {
|
||||
local cmd=$(ais hist)
|
||||
if [[ -n "$cmd" ]]; then
|
||||
BUFFER="$cmd"
|
||||
CURSOR=${#BUFFER}
|
||||
fi
|
||||
zle reset-prompt
|
||||
}
|
||||
zle -N ais-hist
|
||||
bindkey '^r' ais-hist
|
||||
Reference in New Issue
Block a user