Na správu Zsh pluginů jsem "odjakživa" používal Antibody – nevím pořádně proč, nejsem žádný konzolový guru (spíš lamka, abych se přiznal), ale tehdy se profilovali jako rychlejší alternativa k populárnímu Antigenu, tak jsem to vzal a moc neřešil.
Antibody mi sloužilo dobře, .zshrc s ním vypadal nějak takhle:
Vždycky mě trochu štvalo, že start nového shellu trvá zhruba sekundu, což není vina Antibody, ale nějakého mého bordýlku (podezření je na nvs – možná souvisí tohle – a pak na compinit, viz níže), nicméně se mi to nechtělo řešit a bral jsem to jako přežitelnou daň za jinak skvělý Zsh a pluginy v něm (musíte chápat, že jsem dlouhá léta trpěl v cmd.exe a dalších víceméně nepovedených shellech na Windows 🤦♂️).
Nedávno bylo ale Antibody označené jako deprecated. V souvislosti s tím jsem zahlédl zmínku o Znapu, který údajně prompt zobrazí za 40 ms, což znělo až moc zajímavě na to, abych to ignoroval.
⚡️Znap funguje podobně jako Antibody (a asi i většina dalších plugin manažerů) a .zshrc s ním vypadá takhle:
Velkým rozdílem je znap prompt místo znap source pro můj Pure prompt – zobrazí ho okamžitě a zbytek .zshrc vykonává na pozadí / asynchronně. To nijak fundamentálně neřeší pomalost, ale pocitově to pomáhá moc – až si občas říkám, jestli je vše v pořádku, jak prompt naběhne rychle 😄.
Další praktickou věcí je automatické řešení compinit. compinit je ošidná věc – důležitá pro různé completions, ale laik se snadno ztratí v tom, kdy přesně to zavolat, jestli se to nevolá z něčeho jako Oh My Zsh, případně kdy, jak je to s výkonem (volání compinit dokáže trvat přes sekundu) atd. Znap dělá z compinit prázdnou funkci, aby se běžný Franta uživatel nestřelil do nohy, a pak to ve správný moment zavolá. Tedy když vše funguje.
Přechod byl snadný, včetně různého pročišťování vypadal PR takhle:
V praxi je pak potřeba volat znap manuálně v těchto případech:
znap status ukáže, zda nejsou k dispozici aktualizace:
Na správu Zsh pluginů jsem "odjakživa" používal Antibody – nevím pořádně proč, nejsem žádný konzolový guru (spíš lamka, abych se přiznal), ale tehdy se profilovali jako rychlejší alternativa k populárnímu Antigenu, tak jsem to vzal a moc neřešil.
Antibody mi sloužilo dobře,
.zshrc
s ním vypadal nějak takhle:Vždycky mě trochu štvalo, že start nového shellu trvá zhruba sekundu, což není vina Antibody, ale nějakého mého bordýlku (podezření je na nvs – možná souvisí tohle – a pak na
compinit
, viz níže), nicméně se mi to nechtělo řešit a bral jsem to jako přežitelnou daň za jinak skvělý Zsh a pluginy v něm (musíte chápat, že jsem dlouhá léta trpěl vcmd.exe
a dalších víceméně nepovedených shellech na Windows 🤦♂️).Nedávno bylo ale Antibody označené jako deprecated. V souvislosti s tím jsem zahlédl zmínku o Znapu, který údajně prompt zobrazí za 40 ms, což znělo až moc zajímavě na to, abych to ignoroval.
⚡️Znap funguje podobně jako Antibody (a asi i většina dalších plugin manažerů) a
.zshrc
s ním vypadá takhle:Velkým rozdílem je
znap prompt
místoznap source
pro můj Pure prompt – zobrazí ho okamžitě a zbytek.zshrc
vykonává na pozadí / asynchronně. To nijak fundamentálně neřeší pomalost, ale pocitově to pomáhá moc – až si občas říkám, jestli je vše v pořádku, jak prompt naběhne rychle 😄.Další praktickou věcí je automatické řešení
compinit
.compinit
je ošidná věc – důležitá pro různé completions, ale laik se snadno ztratí v tom, kdy přesně to zavolat, jestli se to nevolá z něčeho jako Oh My Zsh, případně kdy, jak je to s výkonem (volánícompinit
dokáže trvat přes sekundu) atd. Znap dělá zcompinit
prázdnou funkci, aby se běžný Franta uživatel nestřelil do nohy, a pak to ve správný moment zavolá. Tedy když vše funguje.Přechod byl snadný, včetně různého pročišťování vypadal PR takhle:
V praxi je pak potřeba volat
znap
manuálně v těchto případech:znap status
ukáže, zda nejsou k dispozici aktualizace:znap pull
provede aktualizace (pullne Git repa)Celkově Znap 👍.