Fish-shell: [Решено] рыба, эквивалентная Precmd / PROMPT_COMMAND?

Созданный на 16 апр. 2016  ·  3Комментарии  ·  Источник: fish-shell/fish-shell

Есть ли рыбный эквивалент для Precmd (zsh) / PROMPT_COMMAND (bash)?

Я ищу способ хранить более полную историю с путем, датой и командой в отдельном файле журнала.

question

Самый полезный комментарий

Это можно сделать разными способами. Приглашение Fish - это фрагмент кода в функции с именем fish_prompt . Вы можете изменить его с помощью funced fish_prompt а затем сохранить эти изменения на диск с помощью funcsave fish_prompt (это сохранит его в ~ / .config / fish / functions / fish_prompt.fish, который вы также можете изменить напрямую. если вы так выберете).

В противном случае есть событие fish_prompt которое будет запущено непосредственно перед подсказкой. Вы можете написать для него слушателя, например

function dostuff --on-event fish_prompt
    # do your stuff
end

Обратите внимание, что это не может быть сохранено в каталоге функций, так как они загружаются автоматически. Сохраните его в config.fish, файле, который он получает, или (в следующем выпуске Fish) ~ / .config / fish / conf.d (в файле, заканчивающемся на «.fish»).

Также есть события fish_preexec и fish_postexec которые будут запускаться непосредственно перед / после задания соответственно.

Все 3 Комментарий

Это можно сделать разными способами. Приглашение Fish - это фрагмент кода в функции с именем fish_prompt . Вы можете изменить его с помощью funced fish_prompt а затем сохранить эти изменения на диск с помощью funcsave fish_prompt (это сохранит его в ~ / .config / fish / functions / fish_prompt.fish, который вы также можете изменить напрямую. если вы так выберете).

В противном случае есть событие fish_prompt которое будет запущено непосредственно перед подсказкой. Вы можете написать для него слушателя, например

function dostuff --on-event fish_prompt
    # do your stuff
end

Обратите внимание, что это не может быть сохранено в каталоге функций, так как они загружаются автоматически. Сохраните его в config.fish, файле, который он получает, или (в следующем выпуске Fish) ~ / .config / fish / conf.d (в файле, заканчивающемся на «.fish»).

Также есть события fish_preexec и fish_postexec которые будут запускаться непосредственно перед / после задания соответственно.

@gawells , это ответ на ваш вопрос?

Да, спасибо

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

krader1961 picture krader1961  ·  3Комментарии

rwz picture rwz  ·  3Комментарии

krader1961 picture krader1961  ·  3Комментарии

mqudsi picture mqudsi  ·  3Комментарии

andrewhowdencom picture andrewhowdencom  ·  3Комментарии