Existe-t-il un équivalent en poisson pour precmd (zsh) / PROMPT_COMMAND (bash) ?
Je cherche un moyen de stocker un historique plus complet avec chemin, date et commande dans un fichier journal séparé
Il existe une variété de façons de le faire. L'invite de Fish est un peu de code dans une fonction appelée fish_prompt
. Vous pouvez le modifier via funced fish_prompt
puis enregistrer ces modifications sur le disque avec funcsave fish_prompt
(cela le stockera dans ~/.config/fish/functions/fish_prompt.fish, que vous pouvez également modifier directement si vous le souhaitez).
Sinon, il y a l'événement fish_prompt
qui sera déclenché juste avant une invite. Vous pouvez écrire un auditeur pour cela comme
function dostuff --on-event fish_prompt
# do your stuff
end
Notez que cela ne peut pas être enregistré dans le répertoire des fonctions car celles-ci sont chargées automatiquement. Enregistrez-le dans config.fish, un fichier qui en provient ou (dans la prochaine version de fish) ~/.config/fish/conf.d (dans un fichier se terminant par ".fish").
Il y a aussi les événements fish_preexec
et fish_postexec
qui seront respectivement déclenchés juste avant/après une tâche.
@gawells , cela a-t-il répondu à votre question ?
Oui, c'est fait merci
Commentaire le plus utile
Il existe une variété de façons de le faire. L'invite de Fish est un peu de code dans une fonction appelée
fish_prompt
. Vous pouvez le modifier viafunced fish_prompt
puis enregistrer ces modifications sur le disque avecfuncsave fish_prompt
(cela le stockera dans ~/.config/fish/functions/fish_prompt.fish, que vous pouvez également modifier directement si vous le souhaitez).Sinon, il y a l'événement
fish_prompt
qui sera déclenché juste avant une invite. Vous pouvez écrire un auditeur pour cela commeNotez que cela ne peut pas être enregistré dans le répertoire des fonctions car celles-ci sont chargées automatiquement. Enregistrez-le dans config.fish, un fichier qui en provient ou (dans la prochaine version de fish) ~/.config/fish/conf.d (dans un fichier se terminant par ".fish").
Il y a aussi les événements
fish_preexec
etfish_postexec
qui seront respectivement déclenchés juste avant/après une tâche.