Как я могу использовать bindkey для запуска скрипта?

В оболочке Z, как я могу использовать bindkey для привязки последовательности клавиш к скрипту?

Вы можете определить виджет, который вызывает ваш скрипт:

my-script_widget() my-script its args zle -N my-script_widget bindkey '\ej' my-script_widget 

Но почему вы хотите назвать свой скрипт прямо из zle?

Если он отображает что-либо, это испортит дисплей. Если вы хотите, чтобы его вывод отображался как другие сообщения виджетов, вы можете сделать следующее:

 my-script_widget() zle -M "$(my-script its args)" 

Или если вы хотите, чтобы результат был вставлен в курсор:

 my-script_widget() LBUFFER+=$(my-script its args) 

Я думаю, вам не нужен виджет для этого:

 bindkey -s '\eb' '/path/to/script.sh\n' 

Из zsh docs :

Как и команды ZLE, последовательности клавиш могут быть привязаны к другим строкам, используя «bindkey -s».