Fasd: рддрд╛рдЬрд╛ рд╕реНрдерд╛рдкрд┐рдд рд▓реЗрдХрд┐рди рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 1 рджрд┐рд╕ре░ 2017  ┬╖  14рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: clvv/fasd

рдореИрдВрдиреЗ рдЗрд╕ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ ubuntu 14.04 рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдерд╛
$ sudo add-apt-repository ppa:aacebedo/fasd
$ sudo apt-get update
$ sudo apt-get install fasd

рддрдм рдореИрдВрдиреЗ рдЙрджрд╛рд╣рд░рдг рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдИ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИ
$ рд╕реНрдкрд░реНрд╢ example.txt
$ fasd рдЙрджрд╛рд╣рд░рдг
$

рдХреНрдпрд╛ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдерд╛? рдпрд╛ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдЖрджреЗрд╢ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ https://github.com/jimhester/per-directory-history fasd рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░рддрд╛ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдХрд┐ fasd рдХрд┐рд╕реА рднреА рдлрд╛рдЗрд▓ рдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЯреНрд░реИрдХ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддрд┐-рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛-рдЗрддрд┐рд╣рд╛рд╕ рдкреНрд▓рдЧрдЗрди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж fasd рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╕рднреА 14 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореЗрд░реА рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдпрд╣ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЕрдкрдиреЗ рд╢реЗрд▓ рдХреЗ рдЖрд░рд╕реА (рдЬреИрд╕реЗ рдЖрдкрдХрд╛ .bashrc рдпрд╛ .zshrc ) рдореЗрдВ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛрдб ( eval "$(fasd --init auto)" ) рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЕрдкрдиреЗ рд╢реЗрд▓ рдХрд╛ рдПрдХ рдирдпрд╛ рдЙрджрд╛рд╣рд░рдг рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ?

рд╣рд╛рдВ рдореИрдВрдиреЗ рдХрд┐рдпрд╛, рдореИрдВ рдЖрдЙрдЯрдкреБрдЯ рд▓реЙрдЧ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ, рдлрд┐рд░ рднреА рд╕рд╛рдорд╛рдиреНрдп init рдХреЛрдб eval "$(fasd --init auto)" рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдПрдХ рдФрд░ zsh рд╕рддреНрд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╛ iterm рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ рдФрд░ fasd/fasd -a/рдЯрд╛рдЗрдк рдХрд░реЗрдВ, рдпрд╣ рдмрд╕ рдХреБрдЫ рдирд╣реАрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИред

рд▓реЙрдЧ рдХреНрдпрд╛ рд╣реИ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ рдпрд╣рд╛рдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

(eval):2: рдЖрджреЗрд╢ рдирд╣реАрдВ рдорд┐рд▓рд╛: fasd
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
fasd -U -V fasd -K _fasd_zsh_cmd_complete -x 'C[-1,-e ] , s[-] n[1,e]' -c - 'c[-1,-A][-1,-D ]' -рдПрдлfasd_cd -U -V fasd -K _fasd_zsh_cmd_complete -x 'C[-1,-e ] , s[-] n[1,e]' -c - 'c[-1,-A][-1,-D ]' -рдПрдл
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ

рдореИрдВрдиреЗ "/usr/local/bin/fasd -a" рднреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рджрд┐рдЦрд╛, рдореБрдЭреЗ рдЕрднреА рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХрдорд╛рдВрдб рдХреНрдпреЛрдВ рдирд╣реАрдВ рдвреВрдВрдв рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ $PATH рдЪрд░ рдореЗрдВ/usr/рд╕реНрдерд╛рдиреАрдп/рдмрд┐рди рд╣реИред

18 рджрд┐рд╕рдВрдмрд░, 2017 рдХреЛ 08:15 рдмрдЬреЗ, рдпреВрдЖрди рдХреЗрдореНрдк < рдиреЛрдЯрд┐рдлрд╝рд┐рдХреЗрд╢рди @github.com [email protected] > рдиреЗ рд▓рд┐рдЦрд╛:

рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛрдб (eval "$(fasd --init auto)") рдХреЛ рдЕрдкрдиреЗ рд╢реЗрд▓ рдХреЗ rc (рдЬреИрд╕реЗ рдХрд┐ рдЖрдкрдХрд╛ .bashrc рдпрд╛ .zshrc) рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЕрдкрдиреЗ рд╢реЗрд▓ рдХрд╛ рдПрдХ рдирдпрд╛ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдЪрд▓рд╛рдпрд╛ рд╣реИ?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub https://github.com/clvv/fasd/issues/117#issuecomment-352297827 рдкрд░ рджреЗрдЦреЗрдВ, рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ https://github.com/notifications/unsubscribe-auth/ADKNgnXANOaoBoWsmKj82G3Cfuiln8yrks5tBa6QxsoJpZM ред

рд╡реИрд╕реЗ, рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдХрд╛рдо рдХрд░рддреА рд╣реИ "fasd -h" рдЬреЛ рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХрдо рд╕реЗ рдХрдо zsh рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХрдорд╛рдВрдб рдХрд╣рд╛рдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рд▓реЛрдХрд╛ рдХреЛ рдХрдорд╛рдВрдб рдХреНрдпреЛрдВ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред

18 рджрд┐рд╕рдВрдмрд░, 2017 рдХреЛ 09:18 рдмрдЬреЗ рдЬрд┐рдУ-рдореЗрдВрдЧ рд╡рд╛рдВрдЧ < [email protected] [email protected] > рдиреЗ рд▓рд┐рдЦрд╛:

рд╣рд╛рдВ рдореИрдВрдиреЗ рдХрд┐рдпрд╛, рдореИрдВ рдЖрдЙрдЯрдкреБрдЯ рд▓реЙрдЧ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ, рдлрд┐рд░ рднреА рд╕рд╛рдорд╛рдиреНрдп init рдХреЛрдб eval "$(fasd --init auto)" рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдПрдХ рдФрд░ zsh рд╕рддреНрд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╛ iterm рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ рдФрд░ fasd/fasd -a/рдЯрд╛рдЗрдк рдХрд░реЗрдВ, рдпрд╣ рдмрд╕ рдХреБрдЫ рдирд╣реАрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИред

рд▓реЙрдЧ рдХреНрдпрд╛ рд╣реИ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ рдпрд╣рд╛рдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

(eval):2: рдЖрджреЗрд╢ рдирд╣реАрдВ рдорд┐рд▓рд╛: fasd
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
fasd -U -V fasd -K _fasd_zsh_cmd_complete -x 'C[-1,-e ] , s[-] n[1,e]' -c - 'c[-1,-A][-1,-D ]' -рдПрдлfasd_cd -U -V fasd -K _fasd_zsh_cmd_complete -x 'C[-1,-e ] , s[-] n[1,e]' -c - 'c[-1,-A][-1,-D ]' -рдПрдл
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ

рдореИрдВрдиреЗ "/usr/local/bin/fasd -a" рднреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рджрд┐рдЦрд╛, рдореБрдЭреЗ рдЕрднреА рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХрдорд╛рдВрдб рдХреНрдпреЛрдВ рдирд╣реАрдВ рдвреВрдВрдв рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ $PATH рдЪрд░ рдореЗрдВ/usr/рд╕реНрдерд╛рдиреАрдп/рдмрд┐рди рд╣реИред

18 рджрд┐рд╕рдВрдмрд░, 2017 рдХреЛ 08:15 рдмрдЬреЗ, рдпреВрдЖрди рдХреЗрдореНрдк < рдиреЛрдЯрд┐рдлрд╝рд┐рдХреЗрд╢рди @github.com [email protected] > рдиреЗ рд▓рд┐рдЦрд╛:

рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛрдб (eval "$(fasd --init auto)") рдХреЛ рдЕрдкрдиреЗ рд╢реЗрд▓ рдХреЗ rc (рдЬреИрд╕реЗ рдХрд┐ рдЖрдкрдХрд╛ .bashrc рдпрд╛ .zshrc) рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЕрдкрдиреЗ рд╢реЗрд▓ рдХрд╛ рдПрдХ рдирдпрд╛ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдЪрд▓рд╛рдпрд╛ рд╣реИ?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub https://github.com/clvv/fasd/issues/117#issuecomment-352297827 рдкрд░ рджреЗрдЦреЗрдВ, рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ https://github.com/notifications/unsubscribe-auth/ADKNgnXANOaoBoWsmKj82G3Cfuiln8yrks5tBa6QxsoJpZM ред

рд╡рд╣реА рд╕рдорд╕реНрдпрд╛, рдореЗрд░рд╛ env рд╡рд┐рдВрдбреЛрдЬ 10 рдкрд░ рдЙрдмрдВрдЯреВ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рд╣реИ

рдХреГрдкрдпрд╛ рдиреНрдпреВрдирддрдо рдкреБрдирд░реБрддреНрдкрд╛рджрди рдкреНрд░рджрд╛рди рдХрд░реЗрдВред

рдпрд╣ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП fasd init рдХреЛрдб рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

set -x
eval "$(fasd --init auto)"
set +x

рдпрд╛ рдЙрд╕ рдЖрджреЗрд╢ рд╕реЗ рдкрд╣рд▓реЗ set -x рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рддреНрд░реБрдЯрд┐рдкреВрд░реНрдг рд╣реИред

рдореИрдВ рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реВрдВред рдпрд╣рд╛рдВ рд╡реЗ рдЪрд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдмреИрд╢ рдХреЗ рддрд╣рдд рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ fasd рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛ рд╕рдХрддрд╛ рд╣реВрдВ (рдЬреЛ, рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдХрд╛рдо рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЖрдкрдХреЗ bashrc рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд╣реИ рдпрд╛ рдХрд╣реАрдВ рдФрд░):

$ testhome=$(mktemp -d)
$ mkdir -p ${testhome}/bin
$ curl -sSL -o "${testhome}/bin/fasd" https://raw.githubusercontent.com/clvv/fasd/master/fasd
$ chmod +x ${testhome}/bin/fasd

$ cat > "${testhome}/.bashrc" <<EOF
export PATH=$PATH:${testhome}/bin                                    
# Ensure history is not blank; fasd grabs commands to process from history
# (https://github.com/clvv/fasd/blob/90b531a5daaa545c74c7d98974b54cbdb92659fc/fasd#L127-L130)
# and, if history is empty, will error out
echo "echo hello world" >> ~/.bash_history
eval "\$(fasd --init auto)" 
EOF

$ env -i HOME=${testhome} bash
$ cd ~/bin
$ cd ~/bin
$ cd ~

$ z bin && pwd

$ touch example.txt
$ fasd example

рдиреЛрдЯ : рдЙрдкрд░реЛрдХреНрдд рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП fasd рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░реЗрдХреНрдЯрд┐рд╡ рд╢реЗрд▓ рдХреЗ рддрд╣рдд рдЪрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯред рдХреЗрд╡рд▓ рдорд╛рдореВрд▓реА рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЗ рд╕рд╛рде, ('рдмреИрд╢' рдХреЛ 'zsh' рд╕реЗ рдмрджрд▓рдХрд░) рдЙрдкрд░реЛрдХреНрдд zsh рдХреЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореЗрд░реЗ рд▓рд┐рдП рдЙрдкрд░реЛрдХреНрдд рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реВрдВ ( /tmp/tmp.zKxt6nvlxj/bin рдФрд░ 6 /tmp/tmp.zKxt6nvlxj/bin/example.txt рдкреНрд░рд┐рдВрдЯ рдХрд░рдирд╛)ред

рдХреГрдкрдпрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдпрджрд┐ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  1. рдХреНрдпрд╛ рдЯреВрдЯ рд░рд╣рд╛ рд╣реИ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП fasd example рдпрд╛ fasd --init рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╢реЗрд▓ рдореЗрдВ set -x рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрд╛рдж)
  2. рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдЙрдкрд░реЛрдХреНрдд рдЬреИрд╕реЗ рдиреНрдпреВрдирддрдо рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  3. рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдиреНрдпреВрдирддрдо рдкреНрд░рдЬрдирди рдЬреЛ рд╕рд┐рд░реНрдл "рдореЗрд░реА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛" рдирд╣реАрдВ рд╣реИ

рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд▓рд┐рдП рд╣рд╛рдп рдпреВрдЖрди, рдпрд╣рд╛рдВ рдХреБрдЫ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдорд┐рд▓рд╛ рд╣реИред

рдкрд╣рд▓рд╛ рднрд╛рдЧ, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ:
рдпрд╣ zsh . рдореЗрдВ рд╣реИ

~ рд╕реЗрдЯ-рдПрдХреНрд╕ рдЧрд┐рдЯ: рдорд╛рд╕реНрдЯрд░ *
eval "$(fasd --init auto)"
рд╕реЗрдЯ +x

+zsh:2> fasd --init auto
+zsh:2> eval $'{ if [ "$ZSH_VERSION" ] && compctl; рдлрд┐рд░ # zsh\n eval "$(fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install \n zsh-wcomp zsh-wcomp-install)"\n elif [ "$BASH_VERSION" ] && рдкреВрд░рд╛ рдХрд░реЗрдВ ; рдлрд┐рд░ # рдмреИрд╢\n eval "$(fasd --init posix-alias bash-hook bash-ccomp bash-ccomp-install)"\n рдФрд░ # posix shell\n eval "$(fasd --init posix-alias posix- рд╣реБрдХ)"\n fi\n} >> "/Users/Administrator/.config/fasd/fasd.log" 2>&1'
+(eval):1> [ 5.3 ']'
+(eval):1> рдХреЙрдореНрдкрдХреНрдЯреНрд▓
+(eval):2> fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcomp-install
+(eval):2> eval $'alias a=\'fasd -a\'\nalias s=\'fasd -si\'\nalias sd=\'fasd -sid\'\nalias sf=\'fasd - sif\'\nalias d=\'fasd -d\'\nalias f=\'fasd -f\'\n# рдлрдВрдХреНрд╢рди рдмрд┐рд▓реНрдЯ-рдЗрди cd\nfasd_cd() рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП {\n if [ $# -le 1 ] ; рдлрд┐рд░\n fasd "$@"\n рдФрд░\n рд╕реНрдерд╛рдиреАрдп _fasd_ret="$(fasd -e \'printf %s\' "$@")"\n [ -z "$_fasd_ret" ] && return\n [ -d "$_fasd_ret" ] && cd "$_fasd_ret" || рдкреНрд░рд┐рдВрдЯрдл %s\n "$_fasd_ret"\n fi\n}\nalias z=\'fasd_cd -d\'\nalias zz=\'fasd_cd -d -i\'\n\n# zsh рд╣реБрдХ рдЬреЛрдбрд╝реЗрдВ\n_fasd_preexec( ) {\n { eval "fasd --proc $(fasd --sanitize $1)"; } >> "/Users/Administrator/.config/fasd/fasd.log" 2>&1\n}\nautoload -Uz add-zsh-hook\nadd-zsh-hook preexec _fasd_preexec\n\n# zsh рдХрдорд╛рдВрдб рдореЛрдб рдкреВрд░рд╛ рдХрд░рдирд╛ \n_fasd_zsh_cmd_complete() {\n рд╕реНрдерд╛рдиреАрдп рд╢рд┐рдХрд╛рдпрдд\n рдкрдврд╝реЗрдВ -рд╕реА рд╢рд┐рдХрд╛рдпрдд\n (($+compstate )) && рдХреЙрдореНрдкрд╕реНрдЯреЗрдЯ[рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВ]=рдореЗрдиреВ # рдЕрдЧрд░ рдХреЙрдореНрдкрд┐рд╕ рд▓реЛрдб рд╣реЛ рдЧрдпрд╛ рд╣реИ рддреЛ рдХреЛрдИ рд╡рд┐рд╕реНрддрд╛рд░ рдирд╣реАрдВ рд╣реИ\n рдЙрддреНрддрд░=(${(f)"$( fasd --complete "$compl")"})\n}\n\n# рдХрдорд╛рдВрдб рдореЛрдб рдХреЛ рдкреВрд░рд╛ рдХрд░рдирд╛ \n рд╕реЙрд░реНрдЯ-рдПрдирдЖрд░ | //\' | do\n compadd -U -V fasd "$line"\n рдХрд┐рдпрд╛ рд╣реБрдЖ\n рдХреЙрдореНрдкрд╕реНрдЯреЗрдЯ[рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВ]=рдореЗрдиреВ # рдХреЛрдИ рд╡рд┐рд╕реНрддрд╛рд░ рдирд╣реАрдВ\n }\n _fasd_zsh_word_complete_f() { _fasd_zsh_word_complete f ; }\n _fasd_zsh_word_complete_trigger() {\n рд╕реНрдерд╛рдиреАрдп _fasd_cur="${words[CURRENT]}"\n eval $(fasd --word-complete-trigger _fasd_zsh_word_complete $_fasd_cur)\n }\n # zle рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ\n zle -рд╕реА fasd-рдкреВрд░реНрдг рдкреВрд░реНрдг-рд╢рдмреНрдж _generic\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг: \' рдкреВрд░реНрдг _fasd_zsh_word_complete\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг: \' рдореЗрдиреВ-рдЪрдпрди\n\n zle -C fasd -рдкреВрд░реНрдг-рдПрдл рдкреВрд░реНрдг-рд╢рдмреНрдж _рдЬреЗрдиреЗрд░рд┐рдХ\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг-рдПрдл: \' рдкреВрд░реНрдг _fasd_zsh_word_complete_f\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг-f: \' рдореЗрдиреВ-рдЪрдпрди\n\n zle -рд╕реА fasd-рдкреВрд░реНрдг-рдбреА рдкреВрд░реНрдг-рд╢рдмреНрдж _generic\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг-рдбреА: \' рдкреВрд░реНрдг _fasd_zsh_word_complete_d\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг-рдбреА: \' рдореЗрдиреВ-рдЪрдпрди\n }\n\n(($+functions[compdef] )) && {\n # рд╡рд░реНрдб рдореЛрдб рдХрдВрдкреНрд▓реАрд╢рди рдХреЛ рдЗрдиреЗрдмрд▓ рдХрд░реЗрдВ\n orig_comp="$(zstyle -L \':completion:*\' Completer 2>> "/Users/ рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░/.config/fasd/fasd.log")"\n рдЕрдЧрд░ [ "$orig_comp" ]; ) eval "$orig_comp _fasd_zsh_word_complete_trigger"; рдореВрд▓_рдХрдВрдк\n}'
+(eval):1> рдЙрдкрдирд╛рдо 'a=fasd -a'
+(eval):2> рдЙрдкрдирд╛рдо 's=fasd -si'
+(eval):3> рдЙрдкрдирд╛рдо 'sd=fasd -sid'
+(eval):4> рдЙрдкрдирд╛рдо 'sf=fasd -sif'
+(eval):5> рдЙрдкрдирд╛рдо 'd=fasd -d'
+(eval):6> рдЙрдкрдирд╛рдо 'f=fasd -f'
+(eval):17> рдЙрдкрдирд╛рдо 'z=fasd_cd -d'
+(eval):18> рдЙрдкрдирд╛рдо 'zz=fasd_cd -d -i'
+(eval):24> рдСрдЯреЛрд▓реЛрдб -рдЙрдЬрд╝ рдРрдб-рдЬрд╝рд╢-рд╣реБрдХ
+(eval):25> рдРрдб-рдЬрд╝рд╢-рд╣реБрдХ рдкреНрд░реАрдПрдХреНрд╕реЗрдХ _fasd_preexec
+zsh:3> рд╕реЗрдЯ +x

рджреВрд╕рд░рд╛ рднрд╛рдЧ, рдореИрдВ рдЙрджрд╛рд╣рд░рдг рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд▓рд┐рдЦ рд╕рдХрддрд╛ рдЗрд╕рд▓рд┐рдП рдореИрдВ рд░реВрдЯ рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ рдФрд░ рдЗрд╕ рдиреНрдпреВрдирддрдо env рдореЗрдВ, fasd рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрднреА рддрдХ .bashrc рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рдмрдирд╛рдИ рд╣реИред

рдмреИрд╢-3.2$ рд╕реБрдбреЛ рд╕реБ
рдХреБрдВрдЬрд┐рдХрд╛:
рд╢-3.2# рдЯреЗрд╕реНрдЯрд╣реЛрдо=$(рдПрдордХреЗрдЯреЗрдореНрдк-рдбреА)
sh-3.2# mkdir -p ${testhome}/bin
рд╢-3.2# рд╕реАрдбреА ${testhome}/bin
рд╢-3.2# рдПрд▓рдПрд╕
рд╢-3.2# рдкреАрдбрдмреНрд▓реНрдпреВрдбреА
/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.SFwFn0r6/bin
sh-3.2# рдХрд░реНрд▓ -sSL -o "${testhome}/bin/fasd" https://raw.githubusercontent.com/clvv/fasd/master/fasd;chmod https://raw.githubusercontent.com/clvv/ fasd/master/fasd;chmod +x ${testhome}/bin/fasd;
рд╢-3.2# рдПрд▓рдПрд╕ -рдЕрд▓
рдХреБрд▓ 40
drwxr-xr-x 3 рд░реВрдЯ рд╡реНрд╣реАрд▓ 96 рджрд┐рд╕рдВрдмрд░ 28 16:51ред
drwx------ 3 рд░реВрдЯ рд╡реНрд╣реАрд▓ 96 рджрд┐рд╕рдВрдмрд░ 28 16:50 ..
-rwxr-xr-x 1 рд░реВрдЯ рд╡реНрд╣реАрд▓ 20195 рджрд┐рд╕рдВрдмрд░ 28 16:51 fasd
рдмреИрд╢-3.2# eval "$(./bin/fasd --init auto)"
рдмреИрд╢-3.2# рдлрд╛рд╕рдбреА
рдмреИрд╢-3.2# рдПрд▓рдПрд╕
.viminfo рдмрд┐рди example.txt
рдмреИрд╢-3.2# рдЗрдХреЛ тАЛтАЛ"рдЗрдХреЛ рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб" >> ~/.bash_history
рдмреИрд╢-3.2# рдПрд▓рдПрд╕
.bash_history .viminfo рдмрд┐рди example.txt
рдмреИрд╢-3.2# рдирд┐рд░реНрдпрд╛рдд рдкрде=$рдкрде:${testhome}/bin
рдмреИрд╢-3.2# рдПрд▓рдПрд╕
.bash_history .fasd .viminfo рдмрд┐рди example.txt
рдмреИрд╢-3.2# рд╡реА .fasd
рдмреИрд╢: рд╡реА: рдХрдорд╛рдВрдб рдирд╣реАрдВ рдорд┐рд▓рд╛
рдмреИрд╢-3.2# рдХреИрдЯ .fasd
/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.SFwFn0r6/.fasd|1|1514451952
рдмреИрд╢-3.2# ./bin/fasd
12 /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.SFwFn0r6/.fasd
рдмреИрд╢-3.2# ./bin/fasd рдЙрджрд╛рд╣рд░рдг
рдмреИрд╢-3.2# рдЖрд░рдПрдо example.txt
рдмреИрд╢-3.2# рд╕реНрдкрд░реНрд╢ рдХрд░реЗрдВ example.txt
рдмреИрд╢-3.2# ./bin/fasd рдЙрджрд╛рд╣рд░рдг
6 /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.SFwFn0r6/example.txt

28 рджрд┐рд╕рдВрдмрд░, 2017 рдХреЛ 02:37 рдмрдЬреЗ, рдпреВрдЖрди рдХреЗрдореНрдк < рд╕реВрдЪрдирд╛рдПрдВ @github.com рд╕реВрдЪрдирд╛рдПрдВ @github.com> рдиреЗ рд▓рд┐рдЦрд╛:

рдХреГрдкрдпрд╛ рдиреНрдпреВрдирддрдо рдкреБрдирд░реБрддреНрдкрд╛рджрди рдкреНрд░рджрд╛рди рдХрд░реЗрдВред

рдпрд╣ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП fasd init рдХреЛрдб рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

рд╕реЗрдЯ -x
eval "$(fasd --init auto)"
рд╕реЗрдЯ +x
рдпрд╛ рдХрдорд╛рдВрдб рд╕реЗ рдкрд╣рд▓реЗ рд╕реЗрдЯ -x рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рддреНрд░реБрдЯрд┐рдкреВрд░реНрдг рд╣реИред

рдореИрдВ рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реВрдВред рдпрд╣рд╛рдВ рд╡реЗ рдЪрд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдмреИрд╢ рдХреЗ рддрд╣рдд рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ fasd рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛ рд╕рдХрддрд╛ рд╣реВрдВ (рдЬреЛ, рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдХрд╛рдо рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЖрдкрдХреЗ bashrc рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд╣реИ рдпрд╛ рдХрд╣реАрдВ рдФрд░):

$ рдЯреЗрд╕реНрдЯрд╣реЛрдо = $ (рдПрдордХреЗрдЯреЗрдореНрдк-рдбреА)
$ mkdir -p ${testhome}/bin
$ рдХрд░реНрд▓ -sSL -o "${testhome}/bin/fasd" https://raw.githubusercontent.com/clvv/fasd/master/fasd https://raw.githubusercontent.com/clvv/fasd/master/fasd
$ chmod +x ${testhome}/bin/fasd

$ рдмрд┐рд▓реНрд▓реА > "${testhome}/.bashrc" < рдирд┐рд░реНрдпрд╛рдд рдкрде=$рдкрде:${testhome}/bin

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЗрддрд┐рд╣рд╛рд╕ рдЦрд╛рд▓реА рдирд╣реАрдВ рд╣реИ; рдЗрддрд┐рд╣рд╛рд╕ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП fasd рдЧреНрд░реИрдм рдХрдорд╛рдВрдб

(https://github.com/clvv/fasd/blob/90b531a5daaa545c74c7d98974b54cbdb92659fc/fasd#L127-L130 https://github.com/clvv/fasd/blob/90b531a5daaa545c74130c7d989274b54cb )

рдФрд░, рдпрджрд┐ рдЗрддрд┐рд╣рд╛рд╕ рдЦрд╛рд▓реА рд╣реИ, рддреЛ рддреНрд░реБрдЯрд┐ рд╣реЛ рдЬрд╛рдПрдЧреА

рдЗрдХреЛ "рдЗрдХреЛ рд╣реЗрд▓реЛ рд╡рд░реНрд▓реНрдб" >> ~/.bash_history
eval "$(fasd --init auto)"
рдИрдУрдПрдл

$ env -i HOME=${testhome} рдмреИрд╢
$ рд╕реАрдбреА ~/рдмрд┐рди
$ рд╕реАрдбреА ~/рдмрд┐рди
$ рд╕реАрдбреА ~

$ z рдмрд┐рди && pwd

$ рд╕реНрдкрд░реНрд╢ example.txt
$ fasd рдЙрджрд╛рд╣рд░рдг
рдиреЛрдЯ: рдЙрдкрд░реЛрдХреНрдд рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП fasd рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░реЗрдХреНрдЯрд┐рд╡ рд╢реЗрд▓ рдХреЗ рддрд╣рдд рдЪрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯред рдХреЗрд╡рд▓ рдорд╛рдореВрд▓реА рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЗ рд╕рд╛рде, рдЙрдкрд░реЛрдХреНрдд рдХреЛ zsh рдХреЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореЗрд░реЗ рд▓рд┐рдП рдЙрдкрд░реЛрдХреНрдд рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реВрдВ (рдкреНрд░рд┐рдВрдЯ рдЖрдЙрдЯ /tmp/tmp.zKxt6nvlxj/bin рдФрд░ 6 /tmp/tmp.zKxt6nvlxj/bin/example.txt)ред

рдХреГрдкрдпрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдпрджрд┐ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдХреНрдпрд╛ рдЯреВрдЯ рд░рд╣рд╛ рд╣реИ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП fasd рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдпрд╛ fasd --init рд╢реЗрд▓ рдореЗрдВ set -x рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрд╛рдж)
рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдЙрдкрд░реЛрдХреНрдд рдЬреИрд╕реЗ рдиреНрдпреВрдирддрдо рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдиреНрдпреВрдирддрдо рдкреНрд░рдЬрдирди рдЬреЛ рд╕рд┐рд░реНрдл "рдореЗрд░реА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛" рдирд╣реАрдВ рд╣реИ
-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ https://github.com/clvv/fasd/issues/117#issuecomment-354156542 , рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ https://github.com/notifications/unsubscribe-auth/ADKNgl5x1H3BscF4Pa3- fIjkOr9WFjjWks5tEo53gaJpZM4QxsoO ред

https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed -b52498112777.png https://github.com/clvv/fasd https://raw.githubusercontent.com/clvv/fasd/master/fasd/r/n$ https://github.com/clvv/fasd/blob /90b531a5daaa545c74c7d98974b54cbdb92659fc/fasd#L127-L130 https://github.com/clvv/fasd/issues/117#issuecomment-354156542

рдореЗрд░рд╛ zsh init рдХреЛрдб рдЗрд╕ рдкреНрд░рдХрд╛рд░ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

fasd_cache = "$ HOME / .config / fasd / fasd-init-zsh"
рдЕрдЧрд░ ["$ (рдХрдорд╛рдВрдб -v fasd)" -nt "$ fasd_cache" -o! -рдПрд╕ "$ fasd_cache"]; рдлрд┐рд░
fasd --init posix-alias posix-hook zsh-hook zsh-ccomp zsh-ccomp-install zsh-ccomp zsh-ccomp-install> | "$ fasd_cache"
рдлрд╛рдИ
рд╕реНрд░реЛрдд "$ fasd_cache"
рдЕрдирд╕реЗрдЯ fasd_cache

рдЬрд╣рд╛рдВ fasd-init-zsh рд╣реИ:

fasd рдмрд┐рд▓реНрд▓реА fasd-init-zsh git: рдорд╛рд╕реНрдЯрд░ *
рдЙрд░реНрдл рдП = 'рдлрд╛рд╕рдж-рдП'
рдЙрд░реНрдл s = 'fasd -si'
рдЙрд░реНрдл sd = 'fasd -sid'
рдЙрд░реНрдл sf = 'fasd -sif'
рдЙрд░реНрдл d = 'fasd -d'
рдЙрд░реНрдл f = 'fasd -f'

рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕реАрдбреА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп

fasd_cd () {
рдЕрдЧрд░ [$ # -рд▓реЗ 1]; рдлрд┐рд░
fasd "$ @"
рдЕрдиреНрдп
рд╕реНрдерд╛рдиреАрдп _fasd_ret = "$ (fasd -e 'printf% s'" $ @ ")"
[-z "$ _fasd_ret"] && рд╡рд╛рдкрд╕реА
[-рдбреА "$ _fasd_ret"] && рд╕реАрдбреА "$ _fasd_ret" || рдкреНрд░рд┐рдВрдЯрдл% рдПрд╕ \ n "$ _fasd_ret"
рдлрд╛рдИ
}
рдЙрдкрдирд╛рдо z = 'fasd_cd -d'
рдЙрд░реНрдл zz = 'fasd_cd -d -i'

_fasd_prompt_func () {
eval "fasd --proc $ (fasd --sanitize $ (рдЗрддрд┐рд╣рд╛рд╕ 1 | \
sed "s / ^ [] [0-9] [] * //")) "" >> "/Users/Administrator/.config/fasd/fasd.log" 2> рдФрд░ 1
}

рдмреИрд╢ рд╣реБрдХ рдЬреЛрдбрд╝реЗрдВ

рдорд╛рдорд▓рд╛ $ PROMPT_COMMAND рдореЗрдВ
_fasd_prompt_func );;
*) PROMPT_COMMAND = "_ fasd_prompt_func; $ PROMPT_COMMAND" ;;
esac

рдмреИрд╢ рдХрдорд╛рдВрдб рдореЛрдб рдкреВрд░рд╛ рдХрд░рдирд╛

_fasd_bash_cmd_complete () {
# "-e" рдХреЗ рдмрд╛рдж рдкреВрд░рд╛ рдХрдорд╛рдВрдб
рд╕реНрдерд╛рдиреАрдп рд╡рдХреНрд░ = $ {COMP_WORDS [COMP_CWORD]}
[[$ {COMP_WORDS [COMP_CWORD-1]} == - рдИ]] && \COMPREPLY = ($ (compgen -A рдХрдорд╛рдВрдб $ cur)) && рд░рд┐рдЯрд░реНрди# "-рдП" рдпрд╛ "-рдбреА" рдХреЗ рдмрд╛рдж рдкреВрд░реНрдг рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реАрдбрд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреВрд░рд╛ рдХрд░реЗрдВрдХреЗрд╕ $ {COMP_WORDS [COMP_CWORD-1]} рдореЗрдВ-рдП | -рдбреА) COMPREPLY = ($ (compgen -o default $ cur)) && return ;;esac# рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдЙрдкрдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреВрд░реНрдгрддрд╛ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рдгрд╛рдо = $ (fasd --complete "$ (рдЙрдкрдирд╛рдо -p $ COMP_WORDS \)2 >> "/Users/Administrator/.config/fasd/fasd.log" | \)' / \ 1 / p")$ {COMP_LINE # } "| -r рд▓рд╛рдЗрди рдкрдврд╝рддреЗ рд╕рдордп; do
рдХреЛрдЯ_рд░реАрдбрд▓рд╛рдЗрди "$ рд▓рд╛рдЗрди" 2> / рджреЗрд╡ / рдирд▓ || \
рдкреНрд░рд┐рдВрдЯрдл% рдХреНрдпреВ "$ рд▓рд╛рдЗрди" 2> / рджреЗрд╡ / рдЕрд╢рдХреНрдд && \
рдкреНрд░рд┐рдВрдЯрдл \ n
рдХрд┐рдпрд╛ рд╣реБрдЖ)
рд╕реНрдерд╛рдиреАрдп рдЖрдИрдПрдлрдПрд╕ = $ '\ n'; рдкреВрд░реА рддрд░рд╣ = ($ рдкрд░рд┐рдгрд╛рдо)
}
_fasd_bash_hook_cmd_complete () {
рд╕реАрдПрдордбреА рдХреЗ рд▓рд┐рдП $ *; рдХрд░рдирд╛
рдкреВрд░реНрдг -F _fasd_bash_cmd_complete $ cmd
рдХрд┐рдпрд╛ рд╣реБрдЖ
}

рдмреИрд╢ рдХрдорд╛рдВрдб рдореЛрдб рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ

_fasd_bash_hook_cmd_complete fasd asdf sd sf z zz

Fasd.log рдореЗрдВ, рдпрд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддрд╛ рд╣реИ:

(eval):2: рдЖрджреЗрд╢ рдирд╣реАрдВ рдорд┐рд▓рд╛: fasd
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
(eval):2: рдЖрджреЗрд╢ рдирд╣реАрдВ рдорд┐рд▓рд╛: fasd
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
(eval):2: рдЖрджреЗрд╢ рдирд╣реАрдВ рдорд┐рд▓рд╛: fasd
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
(eval):2: рдЖрджреЗрд╢ рдирд╣реАрдВ рдорд┐рд▓рд╛: fasd
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди
рдбрд┐рдлрд╝реЙрд▓реНрдЯ -f -tn
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдХрдорд╛рдВрдб-рд╕реА-рдЯреАрдПрди

рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ fasd -h рдЯрд╛рдЗрдк рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ:

~ fasd -h git:рдорд╛рд╕реНрдЯрд░*
fasd [рд╡рд┐рдХрд▓реНрдк] [рдХреНрд╡реЗрд░реА ...]
[рдПрдл|рдП|рдПрд╕|рдбреА|рдЬреЗрдб] [рд╡рд┐рдХрд▓реНрдк] [рдХреНрд╡реЗрд░реА ...]
рд╡рд┐рдХрд▓реНрдк:
рд╕реНрдХреЛрд░ рдХреЗ рд╕рд╛рде -s рд╕реВрдЪреА рдкрде
-рдПрд▓ рд╕реНрдХреЛрд░ рдХреЗ рдмрд┐рдирд╛ рд╕реВрдЪреА рдкрде
-рдореИрдВ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдореЛрдб
-рдЗрдкрд░рд┐рдгрд╛рдо рдлрд╝рд╛рдЗрд▓ рдкрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рд╕реЗрдЯ рдХрд░реЗрдВ
-рдмреАрдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдмреИрдХрдПрдВрдб
-рдмреАрдЕрддрд┐рд░рд┐рдХреНрдд рдмреИрдХрдПрдВрдб рдЬреЛрдбрд╝реЗрдВ
-рдПрдХ рдорд┐рд▓рд╛рди рдлрд╝рд╛рдЗрд▓реЗрдВ рдФрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛
-d рдХреЗрд╡рд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХрд╛ рдорд┐рд▓рд╛рди рдХрд░реЗрдВ
-f рдХреЗрд╡рд▓ рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдорд┐рд▓рд╛рди рдХрд░реЗрдВ
-r рдХреЗрд╡рд▓ рд░реИрдВрдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдореИрдЪ
-t рдХреЗрд╡рд▓ рд╣рд╛рд▓ рдХреА рдкрд╣реБрдВрдЪ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ
-R рд░рд┐рд╡рд░реНрд╕ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдСрд░реНрдбрд░
-рдПрдЪ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╕рд╣рд╛рдпрддрд╛ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдПрдВ
-[0-9] nth рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ

fasd [-рдП|-рдбреА] [рдкрде ...]
-рдП рдкрде рдЬреЛрдбрд╝реЗрдВ
-рдбреА рдкрде рд╣рдЯрд╛рдПрдВ
~ рдЧрд┐рдЯ: рдорд╛рд╕реНрдЯрд░ *

28 рджрд┐рд╕рдВрдмрд░, 2017 рдХреЛ 17:15 рдмрдЬреЗ, рдЬрд┐рдУ-рдореЗрдВрдЧ рд╡рд╛рдВрдЧреЛ[email protected]> рдиреЗ рд▓рд┐рдЦрд╛:

рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд▓рд┐рдП рд╣рд╛рдп рдпреВрдЖрди, рдпрд╣рд╛рдВ рдХреБрдЫ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдорд┐рд▓рд╛ рд╣реИред

рдкрд╣рд▓рд╛ рднрд╛рдЧ, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ:
рдпрд╣ zsh . рдореЗрдВ рд╣реИ

~ рд╕реЗрдЯ-рдПрдХреНрд╕ рдЧрд┐рдЯ: рдорд╛рд╕реНрдЯрд░ *
eval "$(fasd --init auto)"
рд╕реЗрдЯ +x

+zsh:2> fasd --init auto
+zsh:2> eval $'{ if [ "$ZSH_VERSION" ] && compctl; рдлрд┐рд░ # zsh\n eval "$(fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install \n zsh-wcomp zsh-wcomp-install)"\n elif [ "$BASH_VERSION" ] && рдкреВрд░рд╛ рдХрд░реЗрдВ ; рдлрд┐рд░ # рдмреИрд╢\n eval "$(fasd --init posix-alias bash-hook bash-ccomp bash-ccomp-install)"\n рдФрд░ # posix shell\n eval "$(fasd --init posix-alias posix- рд╣реБрдХ)"\n fi\n} >> "/Users/Administrator/.config/fasd/fasd.log" 2>&1'
+(eval):1> [ 5.3 ']'
+(eval):1> рдХреЙрдореНрдкрдХреНрдЯреНрд▓
+(eval):2> fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcomp-install
+(eval):2> eval $'alias a=\'fasd -a\'\nalias s=\'fasd -si\'\nalias sd=\'fasd -sid\'\nalias sf=\'fasd - sif\'\nalias d=\'fasd -d\'\nalias f=\'fasd -f\'\n# рдлрдВрдХреНрд╢рди рдмрд┐рд▓реНрдЯ-рдЗрди cd\nfasd_cd() рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП {\n if [ $# -le 1 ] ; рдлрд┐рд░\n fasd "$@"\n рдФрд░\n рд╕реНрдерд╛рдиреАрдп _fasd_ret="$(fasd -e \'printf %s\' "$@")"\n [ -z "$_fasd_ret" ] && return\n [ -d "$_fasd_ret" ] && cd "$_fasd_ret" || рдкреНрд░рд┐рдВрдЯрдл %s\n "$_fasd_ret"\n fi\n}\nalias z=\'fasd_cd -d\'\nalias zz=\'fasd_cd -d -i\'\n\n# zsh рд╣реБрдХ рдЬреЛрдбрд╝реЗрдВ\n_fasd_preexec( ) {\n { eval "fasd --proc $(fasd --sanitize $1)"; } >> "/Users/Administrator/.config/fasd/fasd.log" 2>&1\n}\nautoload -Uz add-zsh-hook\nadd-zsh-hook preexec _fasd_preexec\n\n# zsh рдХрдорд╛рдВрдб рдореЛрдб рдкреВрд░рд╛ рдХрд░рдирд╛ \n_fasd_zsh_cmd_complete() {\n рд╕реНрдерд╛рдиреАрдп рд╢рд┐рдХрд╛рдпрдд\n рдкрдврд╝реЗрдВ -рд╕реА рд╢рд┐рдХрд╛рдпрдд\n (($+compstate )) && рдХреЙрдореНрдкрд╕реНрдЯреЗрдЯ[рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВ]=рдореЗрдиреВ # рдЕрдЧрд░ рдХреЙрдореНрдкрд┐рд╕ рд▓реЛрдб рд╣реЛ рдЧрдпрд╛ рд╣реИ рддреЛ рдХреЛрдИ рд╡рд┐рд╕реНрддрд╛рд░ рдирд╣реАрдВ рд╣реИ\n рдЙрддреНрддрд░=(${(f)"$( fasd --complete "$compl")"})\n}\n\n# рдХрдорд╛рдВрдб рдореЛрдб рдХреЛ рдкреВрд░рд╛ рдХрд░рдирд╛ \n рд╕реЙрд░реНрдЯ-рдПрдирдЖрд░ | //\' | do\n compadd -U -V fasd "$line"\n рдХрд┐рдпрд╛ рд╣реБрдЖ\n рдХреЙрдореНрдкрд╕реНрдЯреЗрдЯ[рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВ]=рдореЗрдиреВ # рдХреЛрдИ рд╡рд┐рд╕реНрддрд╛рд░ рдирд╣реАрдВ\n }\n _fasd_zsh_word_complete_f() { _fasd_zsh_word_complete f ; }\n _fasd_zsh_word_complete_trigger() {\n рд╕реНрдерд╛рдиреАрдп _fasd_cur="${words[CURRENT]}"\n eval $(fasd --word-complete-trigger _fasd_zsh_word_complete $_fasd_cur)\n }\n # zle рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ\n zle -рд╕реА fasd-рдкреВрд░реНрдг рдкреВрд░реНрдг-рд╢рдмреНрдж _generic\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг: \' рдкреВрд░реНрдг _fasd_zsh_word_complete\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг: \' рдореЗрдиреВ-рдЪрдпрди\n\n zle -C fasd -рдкреВрд░реНрдг-рдПрдл рдкреВрд░реНрдг-рд╢рдмреНрдж _рдЬреЗрдиреЗрд░рд┐рдХ\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг-рдПрдл: \' рдкреВрд░реНрдг _fasd_zsh_word_complete_f\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг-f: \' рдореЗрдиреВ-рдЪрдпрди\n\n zle -рд╕реА fasd-рдкреВрд░реНрдг-рдбреА рдкреВрд░реНрдг-рд╢рдмреНрдж _generic\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг-рдбреА: \' рдкреВрд░реНрдг _fasd_zsh_word_complete_d\n zstyle \': рдкреВрд░реНрдгрддрд╛: fasd-рдкреВрд░реНрдг-рдбреА: \' рдореЗрдиреВ-рдЪрдпрди\n }\n\n(($+functions[compdef] )) && {\n # рд╡рд░реНрдб рдореЛрдб рдХрдВрдкреНрд▓реАрд╢рди рдХреЛ рдЗрдиреЗрдмрд▓ рдХрд░реЗрдВ\n orig_comp="$(zstyle -L \':completion:*\' Completer 2>> "/Users/ рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░/.config/fasd/fasd.log")"\n рдЕрдЧрд░ [ "$orig_comp" ]; ) eval "$orig_comp _fasd_zsh_word_complete_trigger"; рдореВрд▓_рдХрдВрдк\n}'
+(eval):1> рдЙрдкрдирд╛рдо 'a=fasd -a'
+(eval):2> рдЙрдкрдирд╛рдо 's=fasd -si'
+(eval):3> рдЙрдкрдирд╛рдо 'sd=fasd -sid'
+(eval):4> рдЙрдкрдирд╛рдо 'sf=fasd -sif'
+(eval):5> рдЙрдкрдирд╛рдо 'd=fasd -d'
+(eval):6> рдЙрдкрдирд╛рдо 'f=fasd -f'
+(eval):17> рдЙрдкрдирд╛рдо 'z=fasd_cd -d'
+(eval):18> рдЙрдкрдирд╛рдо 'zz=fasd_cd -d -i'
+(eval):24> рдСрдЯреЛрд▓реЛрдб -рдЙрдЬрд╝ рдРрдб-рдЬрд╝рд╢-рд╣реБрдХ
+(eval):25> рдРрдб-рдЬрд╝рд╢-рд╣реБрдХ рдкреНрд░реАрдПрдХреНрд╕реЗрдХ _fasd_preexec
+zsh:3> рд╕реЗрдЯ +x

рджреВрд╕рд░рд╛ рднрд╛рдЧ, рдореИрдВ рдЙрджрд╛рд╣рд░рдг рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд▓рд┐рдЦ рд╕рдХрддрд╛ рдЗрд╕рд▓рд┐рдП рдореИрдВ рд░реВрдЯ рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ рдФрд░ рдЗрд╕ рдиреНрдпреВрдирддрдо env рдореЗрдВ, fasd рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрднреА рддрдХ .bashrc рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рдмрдирд╛рдИ рд╣реИред

рдмреИрд╢-3.2$ рд╕реБрдбреЛ рд╕реБ
рдХреБрдВрдЬрд┐рдХрд╛:
рд╢-3.2# рдЯреЗрд╕реНрдЯрд╣реЛрдо=$(рдПрдордХреЗрдЯреЗрдореНрдк-рдбреА)
sh-3.2# mkdir -p ${testhome}/bin
рд╢-3.2# рд╕реАрдбреА ${testhome}/bin
рд╢-3.2# рдПрд▓рдПрд╕
рд╢-3.2# рдкреАрдбрдмреНрд▓реНрдпреВрдбреА
/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.SFwFn0r6/bin
sh-3.2# рдХрд░реНрд▓ -sSL -o "${testhome}/bin/fasd" https://raw.githubusercontent.com/clvv/fasd/master/fasd;chmod https://raw.githubusercontent.com/clvv/ fasd/master/fasd;chmod +x ${testhome}/bin/fasd;
рд╢-3.2# рдПрд▓рдПрд╕ -рдЕрд▓
рдХреБрд▓ 40
drwxr-xr-x 3 рд░реВрдЯ рд╡реНрд╣реАрд▓ 96 рджрд┐рд╕рдВрдмрд░ 28 16:51ред
drwx------ 3 рд░реВрдЯ рд╡реНрд╣реАрд▓ 96 рджрд┐рд╕рдВрдмрд░ 28 16:50 ..
-rwxr-xr-x 1 рд░реВрдЯ рд╡реНрд╣реАрд▓ 20195 рджрд┐рд╕рдВрдмрд░ 28 16:51 fasd
рдмреИрд╢-3.2# eval "$(./bin/fasd --init auto)"
рдмреИрд╢-3.2# рдлрд╛рд╕рдбреА
рдмреИрд╢-3.2# рдПрд▓рдПрд╕
.viminfo рдмрд┐рди example.txt
рдмреИрд╢-3.2# рдЗрдХреЛ тАЛтАЛ"рдЗрдХреЛ рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб" >> ~/.bash_history
рдмреИрд╢-3.2# рдПрд▓рдПрд╕
.bash_history .viminfo рдмрд┐рди example.txt
рдмреИрд╢-3.2# рдирд┐рд░реНрдпрд╛рдд рдкрде=$рдкрде:${testhome}/bin
рдмреИрд╢-3.2# рдПрд▓рдПрд╕
.bash_history .fasd .viminfo рдмрд┐рди example.txt
рдмреИрд╢-3.2# рд╡реА .fasd
рдмреИрд╢: рд╡реА: рдХрдорд╛рдВрдб рдирд╣реАрдВ рдорд┐рд▓рд╛
рдмреИрд╢-3.2# рдХреИрдЯ .fasd
/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.SFwFn0r6/.fasd|1|1514451952
рдмреИрд╢-3.2# ./bin/fasd
12 /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.SFwFn0r6/.fasd
рдмреИрд╢-3.2# ./bin/fasd рдЙрджрд╛рд╣рд░рдг
рдмреИрд╢-3.2# рдЖрд░рдПрдо example.txt
рдмреИрд╢-3.2# рд╕реНрдкрд░реНрд╢ рдХрд░реЗрдВ example.txt
рдмреИрд╢-3.2# ./bin/fasd рдЙрджрд╛рд╣рд░рдг
6 /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.SFwFn0r6/example.txt

28 рджрд┐рд╕рдВрдмрд░, 2017 рдХреЛ 02:37 рдмрдЬреЗ, рдпреВрдЖрди рдХреЗрдореНрдкреЛрд╕реВрдЪрдирд╛рдПрдВ@github.com> рдиреЗ рд▓рд┐рдЦрд╛:

рдХреГрдкрдпрд╛ рдиреНрдпреВрдирддрдо рдкреБрдирд░реБрддреНрдкрд╛рджрди рдкреНрд░рджрд╛рди рдХрд░реЗрдВред

рдпрд╣ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП fasd init рдХреЛрдб рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

рд╕реЗрдЯ -x
eval "$(fasd --init auto)"
рд╕реЗрдЯ +x
рдпрд╛ рдХрдорд╛рдВрдб рд╕реЗ рдкрд╣рд▓реЗ рд╕реЗрдЯ -x рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рддреНрд░реБрдЯрд┐рдкреВрд░реНрдг рд╣реИред

рдореИрдВ рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реВрдВред рдпрд╣рд╛рдВ рд╡реЗ рдЪрд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдмреИрд╢ рдХреЗ рддрд╣рдд рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ fasd рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛ рд╕рдХрддрд╛ рд╣реВрдВ (рдЬреЛ, рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдХрд╛рдо рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЖрдкрдХреЗ bashrc рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд╣реИ рдпрд╛ рдХрд╣реАрдВ рдФрд░):

$ рдЯреЗрд╕реНрдЯрд╣реЛрдо = $ (рдПрдордХреЗрдЯреЗрдореНрдк-рдбреА)
$ mkdir -p ${testhome}/bin
$ рдХрд░реНрд▓ -sSL -o "${testhome}/bin/fasd" https://raw.githubusercontent.com/clvv/fasd/master/fasd https://raw.githubusercontent.com/clvv/fasd/master/fasd
$ chmod +x ${testhome}/bin/fasd

$ рдмрд┐рд▓реНрд▓реА > "${testhome}/.bashrc" < рдирд┐рд░реНрдпрд╛рдд рдкрде=$рдкрде:${testhome}/bin

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЗрддрд┐рд╣рд╛рд╕ рдЦрд╛рд▓реА рдирд╣реАрдВ рд╣реИ; рдЗрддрд┐рд╣рд╛рд╕ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП fasd рдЧреНрд░реИрдм рдХрдорд╛рдВрдб

(https://github.com/clvv/fasd/blob/90b531a5daaa545c74c7d98974b54cbdb92659fc/fasd#L127-L130 https://github.com/clvv/fasd/blob/90b531a5daaa545c74130c7d989274b54cb )

рдФрд░, рдпрджрд┐ рдЗрддрд┐рд╣рд╛рд╕ рдЦрд╛рд▓реА рд╣реИ, рддреЛ рддреНрд░реБрдЯрд┐ рд╣реЛ рдЬрд╛рдПрдЧреА

рдЗрдХреЛ "рдЗрдХреЛ рд╣реЗрд▓реЛ рд╡рд░реНрд▓реНрдб" >> ~/.bash_history
eval "\$(fasd --init auto)"
рдИрдУрдПрдл

$ env -i HOME=${testhome} рдмреИрд╢
$ рд╕реАрдбреА ~/рдмрд┐рди
$ рд╕реАрдбреА ~/рдмрд┐рди
$ рд╕реАрдбреА ~

$ z рдмрд┐рди && pwd

$ рд╕реНрдкрд░реНрд╢ example.txt
$ fasd рдЙрджрд╛рд╣рд░рдг
рдиреЛрдЯ: рдЙрдкрд░реЛрдХреНрдд рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП fasd рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░реЗрдХреНрдЯрд┐рд╡ рд╢реЗрд▓ рдХреЗ рддрд╣рдд рдЪрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рди рдХрд┐ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯред рдХреЗрд╡рд▓ рдорд╛рдореВрд▓реА рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЗ рд╕рд╛рде, рдЙрдкрд░реЛрдХреНрдд рдХреЛ zsh рдХреЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореЗрд░реЗ рд▓рд┐рдП рдЙрдкрд░реЛрдХреНрдд рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реВрдВ (рдкреНрд░рд┐рдВрдЯ рдЖрдЙрдЯ /tmp/tmp.zKxt6nvlxj/bin рдФрд░ 6 /tmp/tmp.zKxt6nvlxj/bin/example.txt)ред

рдХреГрдкрдпрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдпрджрд┐ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдХреНрдпрд╛ рдЯреВрдЯ рд░рд╣рд╛ рд╣реИ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП fasd рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдпрд╛ fasd --init рд╢реЗрд▓ рдореЗрдВ set -x рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрд╛рдж)
рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдЙрдкрд░реЛрдХреНрдд рдЬреИрд╕реЗ рдиреНрдпреВрдирддрдо рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдиреНрдпреВрдирддрдо рдкреНрд░рдЬрдирди рдЬреЛ рд╕рд┐рд░реНрдл "рдореЗрд░реА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛" рдирд╣реАрдВ рд╣реИ
-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ https://github.com/clvv/fasd/issues/117#issuecomment-354156542 , рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ https://github.com/notifications/unsubscribe-auth/ADKNgl5x1H3BscF4Pa3- fIjkOr9WFjjWks5tEo53gaJpZM4QxsoO ред

https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc -7290892c7bb5.png https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b -11e6-9aed-b52498112777.png https://github.com/clvv/fasd https://github.com/clvv/fasd https://raw.githubusercontent.com/clvv/fasd/master/fasd/r/ n$ https://raw.githubusercontent.com/clvv/fasd/master/fasd/r/n$ https://github.com/clvv/fasd/blob/90b531a5daaa545c74c7d98974b54cbdb92659fc/fasd#L127-L130 https://github .com/clvv/fasd/blob/90b531a5daaa545c74c7d98974b54cbdb92659fc/fasd#L127-L130 https://github.com/clvv/fasd/issues/117#issuecomment-354156542 https://github.com/clvv/fasd/issues #рдЗрд╢реНрдпреВ рдХрдореЗрдВрдЯ-354156542

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ https://github.com/jimhester/per-directory-history fasd рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░рддрд╛ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдХрд┐ fasd рдХрд┐рд╕реА рднреА рдлрд╛рдЗрд▓ рдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЯреНрд░реИрдХ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддрд┐-рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛-рдЗрддрд┐рд╣рд╛рд╕ рдкреНрд▓рдЧрдЗрди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж fasd рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

bash рдФрд░ zsh рджреЛрдиреЛрдВ рдХреЗ рд╕рд╛рде, рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдкрд░ рднреА рдпрд╣ рдорд┐рд▓рд╛ (рдпрд╣рд╛рдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ)ред
рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ rc рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрдиреНрдп рд╕рднреА рдЪреАрдЬреЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди fasd рд╕реВрдЪрд┐рдпрд╛рдВ рд╣рдореЗрд╢рд╛ рдЦрд╛рд▓реА рд░рд╣рддреА рд╣реИрдВред

рдореИрдВрдиреЗ рд░реЗрдкреЛ рд╕реЗ fasd рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЗрд╕реЗ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛, рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рдмрджрд▓реЗред

set -x
eval "$(fasd --init auto)"
set +x
+-zsh:2> fasd --init auto
+-zsh:2> eval $'{ if [ "$ZSH_VERSION" ] && compctl; then # zsh\n    eval "$(fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install \\\n      zsh-wcomp zsh-wcomp-install)"\n  elif [ "$BASH_VERSION" ] && complete; then # bash\n    eval "$(fasd --init posix-alias bash-hook bash-ccomp bash-ccomp-install)"\n  else # posix shell\n    eval "$(fasd --init posix-alias posix-hook)"\n  fi\n} >> "/dev/null" 2>&1'
+(eval):1> [ 5.5.1 ']'
+(eval):1> compctl
+(eval):2> fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcomp-install
+(eval):2> eval $'alias a=\'fasd -a\'\nalias s=\'fasd -si\'\nalias sd=\'fasd -sid\'\nalias sf=\'fasd -sif\'\nalias d=\'fasd -d\'\nalias f=\'fasd -f\'\n# function to execute built-in cd\nfasd_cd() {\n  if [ $# -le 1 ]; then\n    fasd "$@"\n  else\n    local _fasd_ret="$(fasd -e \'printf %s\' "$@")"\n    [ -z "$_fasd_ret" ] && return\n    [ -d "$_fasd_ret" ] && cd "$_fasd_ret" || printf %s\\n "$_fasd_ret"\n  fi\n}\nalias z=\'fasd_cd -d\'\nalias zz=\'fasd_cd -d -i\'\n\n# add zsh hook\n_fasd_preexec() {\n  { eval "fasd --proc $(fasd --sanitize $1)"; } >> "/dev/null" 2>&1\n}\nautoload -Uz add-zsh-hook\nadd-zsh-hook preexec _fasd_preexec\n\n# zsh command mode completion\n_fasd_zsh_cmd_complete() {\n  local compl\n  read -c compl\n  (( $+compstate )) && compstate[insert]=menu # no expand if compsys loaded\n  reply=(${(f)"$(fasd --complete "$compl")"})\n}\n\n# enbale command mode completion\ncompctl -U -K _fasd_zsh_cmd_complete -V fasd -x \'C[-1,-*e],s[-]n[1,e]\' -c - \\\n  \'c[-1,-A][-1,-D]\' -f -- fasd fasd_cd\n\n(( $+functions[compdef] )) && {\n  # zsh word mode completion\n  _fasd_zsh_word_complete() {\n    [ "$2" ] && local _fasd_cur="$2"\n    [ -z "$_fasd_cur" ] && local _fasd_cur="${words[CURRENT]}"\n    local fnd="${_fasd_cur//,/ }"\n    local typ=${1:-e}\n    fasd --query $typ "$fnd" 2>> "/dev/null" | \\\n      sort -nr | sed \'s/^[^ ]*[ ]*//\' | while read -r line; do\n        compadd -U -V fasd "$line"\n      done\n    compstate[insert]=menu # no expand\n  }\n  _fasd_zsh_word_complete_f() { _fasd_zsh_word_complete f ; }\n  _fasd_zsh_word_complete_d() { _fasd_zsh_word_complete d ; }\n  _fasd_zsh_word_complete_trigger() {\n    local _fasd_cur="${words[CURRENT]}"\n    eval $(fasd --word-complete-trigger _fasd_zsh_word_complete $_fasd_cur)\n  }\n  # define zle widgets\n  zle -C fasd-complete complete-word _generic\n  zstyle \':completion:fasd-complete:*\' completer _fasd_zsh_word_complete\n  zstyle \':completion:fasd-complete:*\' menu-select\n\n  zle -C fasd-complete-f complete-word _generic\n  zstyle \':completion:fasd-complete-f:*\' completer _fasd_zsh_word_complete_f\n  zstyle \':completion:fasd-complete-f:*\' menu-select\n\n  zle -C fasd-complete-d complete-word _generic\n  zstyle \':completion:fasd-complete-d:*\' completer _fasd_zsh_word_complete_d\n  zstyle \':completion:fasd-complete-d:*\' menu-select\n}\n\n(( $+functions[compdef] )) && {\n  # enable word mode completion\n  orig_comp="$(zstyle -L \':completion:\\*\' completer 2>> "/dev/null")"\n  if [ "$orig_comp" ]; then\n    case $orig_comp in\n      *_fasd_zsh_word_complete_trigger*);;\n      *) eval "$orig_comp _fasd_zsh_word_complete_trigger";;\n    esac\n  else\n    zstyle \':completion:*\' completer _complete _fasd_zsh_word_complete_trigger\n  fi\n  unset orig_comp\n}'
+(eval):1> alias 'a=fasd -a'
+(eval):2> alias 's=fasd -si'
+(eval):3> alias 'sd=fasd -sid'
+(eval):4> alias 'sf=fasd -sif'
+(eval):5> alias 'd=fasd -d'
+(eval):6> alias 'f=fasd -f'
+(eval):17> alias 'z=fasd_cd -d'
+(eval):18> alias 'zz=fasd_cd -d -i'
+(eval):24> autoload -Uz add-zsh-hook
+(eval):25> add-zsh-hook preexec _fasd_preexec
+-zsh:3> set +x

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рд░реИрдВрдХрд┐рдВрдЧ ~/.fasd рдореЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдлрд╝рд╛рдЗрд▓ рд╣рдореЗрд╢рд╛ рдЦрд╛рд▓реА рд▓рдЧрддреА рд╣реИред

рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕рдиреЗ рдЗрд╕реЗ рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреА, fasd --init posix-alias bash-hook bash-ccomp bash-ccomp-install рд╕реЗ рднрд╛рдЧ рдирд┐рдХрд╛рд▓рдХрд░
fasd --init auto рдХрдорд╛рдВрдб рдФрд░ рдЗрд╕реЗ eval рдХреЗ рд╕рд╛рде рдШреЗрд░реЗрдВ, eval "$(fasd --init posix-alias bash-hook bash-ccomp bash-ccomp-install)" рдФрд░ рд░реВрдЯ рдореЗрдВ рдЖрд╡реЗрджрди рдХрд░рдирд╛ /root/.bashrc , рд╢рд╛рдпрдж рдирд┐рдХрд╛рд▓ рд░рд╣рд╛ рд╣реИ init рдХрдорд╛рдВрдб рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рдерд╛ рдФрд░ рд╕рднреА рдкрд░реНрдпрд╛рдкреНрдд рдЗрд╕реЗ рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛ рд░рд╣реЗ рдереЗ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рд╕рдордп рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ рдЬреИрд╕реЗ рд░реВрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ - рдореБрдЭреЗ рдХрд░рдирд╛ рдерд╛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ init рдХрдорд╛рдВрдб рдХрд╛ рдмреИрд╢ рд╣рд┐рд╕реНрд╕рд╛ рднреА рдирд┐рдХрд╛рд▓реЗрдВред

рднрд╡рд┐рд╖реНрдп рдХреЗ рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдереА рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ ~/.fasd рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдЕрдзрд┐рдХрд╛рд░ 600 рдереЗ (рдХреЗрд╡рд▓ рд░реВрдЯ рдХреЗ рд▓рд┐рдП рдЖрд░рдбрдмреНрд▓реНрдпреВ)ред рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рдореЗрд░реЗ ~/.zshrc рдХреЛ рд╕реЛрд░реНрд╕ рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред

рднрд╡рд┐рд╖реНрдп рдХреЗ рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдереА рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ ~/.fasd рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдЕрдзрд┐рдХрд╛рд░ 600 рдереЗ (рдХреЗрд╡рд▓ рд░реВрдЯ рдХреЗ рд▓рд┐рдП рдЖрд░рдбрдмреНрд▓реНрдпреВ)ред рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рдореЗрд░реЗ ~/.zshrc рдХреЛ рд╕реЛрд░реНрд╕ рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред

рдореЗрд░реЗ рд▓рд┐рдП рднреА рдпрд╣реА рдореБрджреНрджрд╛ рдерд╛

рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ 100% https://github.com/clvv/fasd/issues/117#issuecomment -357458043 рдерд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

mhlinder picture mhlinder  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

sindresorhus picture sindresorhus  ┬╖  11рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

pearofducks picture pearofducks  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ixil picture ixil  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

josephholsten picture josephholsten  ┬╖  15рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ