O BASH suporta uma $PROMPT_COMMAND
variável de ambiente que define um comando a ser executado antes de qualquer prompt interativo de primeiro nível. Estou à procura de um equilíbrio ZSH disso.
A documentação diz que há uma função precmd
que posso definir para conseguir isso; no entanto, não tenho idéia de como defini-lo a partir de uma variável de ambiente.
Eu considerei passar uma variável de ambiente que faria o ZSH ler um arquivo contendo a definição dessa função, mas o ZSH não suporta essas coisas : ele lê apenas arquivos globais e arquivos por usuário. Posso substituí-los, mas não posso adicioná-los sem modificar os arquivos, o que não posso fazer.
Então, como defino um gancho de pré-prompt no ZSH por meio de uma variável de ambiente, como faria usando o $PROMPT_COMMAND
BASH?
exit
e exec
, ok ;)
)
start() { eval "$@"; echo post-command-code }
e depois use um zle-binding para executar a linha de comando com o start
prefixo?
DEBUG
armadilha é uma boa descoberta, mas você ainda tem o problema de defini-la. Estendi minha resposta mais uma vez, mas deixo para você escrever sua própria resposta sobre a solução de interceptação DEBUG. :)