precmd(zsh)/PROMPT_COMMAND(bash)์ ํด๋นํ๋ ๋ฌผ๊ณ ๊ธฐ๊ฐ ์์ต๋๊น?
๋ณ๋์ ๋ก๊ทธ ํ์ผ์ ๊ฒฝ๋ก, ๋ ์ง ๋ฐ ๋ช ๋ น์ด ํฌํจ๋ ๋ณด๋ค ํฌ๊ด์ ์ธ ๊ธฐ๋ก์ ์ ์ฅํ๋ ๋ฐฉ๋ฒ์ ์ฐพ๊ณ ์์ต๋๋ค.
๋ค์ํ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. 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
์ด๋ ์๋ ๋ก๋๋๋ฏ๋ก functions ๋๋ ํ ๋ฆฌ์ ์ ์ฅํ ์ ์์ต๋๋ค. config.fish, ๋๋ (๋ค์ fish ๋ฆด๋ฆฌ์ค์์) ~/.config/fish/conf.d(".fish"๋ก ๋๋๋ ํ์ผ)์ ์ ์ฅํฉ๋๋ค.
๋ํ fish_preexec
๋ฐ fish_postexec
์ด๋ฒคํธ๊ฐ ๊ฐ๊ฐ ์์
์ง์ /์งํ์ ๋ฐ์ํฉ๋๋ค.
@gawells , ์ด๊ฒ์ด ๊ทํ์ ์ง๋ฌธ์ ๋ํ ๋ต๋ณ์ด์์ต๋๊น?
๋ค, ๊ฐ์ฌํฉ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋ค์ํ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. Fish์ ํ๋กฌํํธ๋
fish_prompt
๋ผ๋ ํจ์์ ์ฝ๊ฐ์ ์ฝ๋์ ๋๋ค.funced fish_prompt
๋ฅผ ํตํด ์์ ํ ๋ค์funcsave fish_prompt
๋ฅผ ์ฌ์ฉํ์ฌ ํด๋น ๋ณ๊ฒฝ ์ฌํญ์ ๋์คํฌ์ ์ ์ฅํ ์ ์์ต๋๋ค(์ด๋ ๊ฒ ํ๋ฉด ~/.config/fish/functions/fish_prompt.fish์ ์ ์ฅ๋๋ฉฐ ์ง์ ์์ ํ ์๋ ์์ต๋๋ค. ๋น์ ์ด ๊ทธ๋ ๊ฒ ์ ํํ๋ค๋ฉด).๊ทธ๋ ์ง ์์ผ๋ฉด ํ๋กฌํํธ ์ง์ ์ ์คํ๋
fish_prompt
์ด๋ฒคํธ๊ฐ ์์ต๋๋ค. ๋ค์๊ณผ ๊ฐ์ด ๋ฆฌ์ค๋๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.์ด๋ ์๋ ๋ก๋๋๋ฏ๋ก functions ๋๋ ํ ๋ฆฌ์ ์ ์ฅํ ์ ์์ต๋๋ค. config.fish, ๋๋ (๋ค์ fish ๋ฆด๋ฆฌ์ค์์) ~/.config/fish/conf.d(".fish"๋ก ๋๋๋ ํ์ผ)์ ์ ์ฅํฉ๋๋ค.
๋ํ
fish_preexec
๋ฐfish_postexec
์ด๋ฒคํธ๊ฐ ๊ฐ๊ฐ ์์ ์ง์ /์งํ์ ๋ฐ์ํฉ๋๋ค.