Bízzon bennünk, amikor azt mondjuk, hogy az Oh My Zsh még munka közben is 10-szer élvezetesebbé és rendkívül szórakoztatóbbá teszi a terminálhasználatot.
Mindazonáltal, bár remek alapértelmezett beállítást kínál, számos módja van a Zsh-környezet további testreszabására és fejlesztésére.
Ebben az oktatóanyagban az Oh My Zsh-felhasználók haladó tippjeit fogjuk felfedezni, a szintaxis kiemelésére és más termelékenységnövelő funkciókra összpontosítva.
Telepítés
MEGJEGYZÉS: Győződjön meg arról, hogy a Zsh telepítve van a rendszeren. Az alapértelmezett csomagkezelővel konfigurálhatja a gépén.
Ezután, ha még nem tette meg, telepítheti az Oh My Zsh-t a következő parancs futtatásával a terminálon:
sh -c '$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)'
Alapkonfiguráció
Az Oh My Zsh létrehoz egy alapértelmezett konfigurációt a „~/.zshrc” helyen. Amikor testre kell szabni, akkor szövegszerkesztővel kell szerkesztenie ezt a fájlt.
Szintaxis kiemelés
Az Oh My Zsh szintaxiskiemelése lehetővé teszi a parancsok, fájlok és egyebek vizuális megkülönböztetését. Azt is lehetővé teszi, hogy megtudja, hogy a futtatni kívánt parancs helyes-e vagy sem.
Az engedélyezéséhez kezdje a tár klónozásával.
$ git klón https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-$ git klón FF16315343B55AFDB27585C6DD5CD9460CE/custommy}pl s/zsh-syntax-highlightingEzután adja hozzá vagy frissítse a következő sort a „~/.zshrc” fájlban.
plugins=(... zsh-syntax-highlighting)Végül alkalmazza a módosításokat a konfigurációs fájl újratöltésével.
$ forrás ~/.zshrc
Testreszabhatja a kiemelő színeket saját igényei szerint. Ezt megteheti a színkonfiguráció meghatározásával a „~/.zshrc” fájlban.
ZSH_HIGHLIGHT_HIGHLIGHTERS=(fő zárójelek mintája)ZSH_HIGHLIGHT_COLORS[ 'minta' ]= 'fg=kék, félkövér'
Ez a példa a mintaillesztés színét kékre és félkövérre állítja be.
Az Oh My Zsh lehetővé teszi az álnevek és funkciók kiemelését is. A funkció engedélyezéséhez a következő bejegyzéseket adhatjuk hozzá a Zsh konfigurációs fájlhoz:
ZSH_HIGHLIGHT_ENABLE_ALIASES=igazZSH_HIGHLIGHT_ENABLE_FUNCTIONS=igaz
Más esetekben érdemes lehet letiltani a szintaxis kiemelését bizonyos parancsoknál. Ezt úgy érhetjük el, hogy kivételeket adunk a konfigurációhoz, amint azt a következő példa bemutatja:
ZSH_HIGHLIGHT_IGNORE_COMMENTS=igazZSH_HIGHLIGHT_IGNORE_SELF=igaz
Ezek a sorok megakadályozzák a megjegyzések és az önállóan végrehajtott parancsok kiemelését.
Speciális prompt testreszabás
Térjünk át egy fejlettebb azonnali testreszabásra az Oh My Zsh keretrendszer használatával.
A Powerlevel10k témával nagymértékben testreszabható és funkciókban gazdag promptot kaphatunk.
A következő parancs futtatásával telepíthetjük:
$ git klón --depth= 1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10kEzután beállíthatjuk a témát a „~/.zshrc” fájl szerkesztésével. Adja hozzá a bejegyzést a következőképpen:
ZSH_THEME= 'teljesítményszint10k/teljesítményszint10k'Indításkor a téma futtatja a telepítővarázslót, amely végigvezeti a téma beállításának alapjain.
Az ezzel kapcsolatos teljes útmutatóhoz van egy meglévő oktatóanyagunk a Powerlevel10k beállításához és konfigurálásához.
Egyedi elemek
A Powerlevel10k lehetővé teszi az egyéni prompt elemek hozzáadását. Például az aktuális Git-ág és állapot megjelenítéséhez a következőképpen adhatjuk hozzá a bejegyzést:
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(állapot git)Prompt témák és stílusok
A prompt megjelenésének további testreszabásához egyéni stílusokat definiálhatunk a „~/.zshrc” fájlban. További részletekért tekintse meg a dokumentációt.
Beépülő modulok és automatikus javaslatok
Az Oh My Zsh bővítmények hatalmas gyűjteményével rendelkezik, amelyek javítják a shell-élményt. A beépülő modulok kezeléséhez adja hozzá őket a „~/.zshrc” beépülő modulok tömbjéhez.
Például a Git és Docker beépülő modulok engedélyezéséhez használja a következő parancsot:
plugins=(... git docker)Egyéni beépülő modulok hozzáadása
Ha nem talál egy adott bővítményt, létrehozhat saját bővítményt vagy klónozhat; egyet egy Github adattárból. Helyezze a beépülő modul szkriptjét a „~/.oh-my-zsh/custom/plugins/plugin_name” mappába, és adja hozzá a bővítmények tömbéhez.
Zsh automatikus javaslatok
A Zsh támogatja az automatikus javaslatokat is, amelyek előrejelzik és befejezik a parancsokat az előző parancsok előzményei alapján. Az engedélyezéséhez adja hozzá a következő bejegyzést a „~/.zshrc” fájlhoz.
plugins=(... zsh-autosuggestions)Álnevek és funkciók
Az álnevek olyan parancsok, amelyek a hosszú parancsok utólagos vagy parancsikonjaiként működnek. Egyéni álnév meghatározásához szerkessze a Zsh konfigurációs fájlt, és kövesse a megadott szintaxist:
álnév ll= 'ls -alF'álnév frissítés= 'sudo apt-get update && sudo apt-get upgrade'
Az adott példában az „ll” álnév az „ls –alF” parancsot, míg az „update” a teljes frissítési parancsokat jelöli.
Zsh függvények
Arra is lehetőségünk van, hogy Zsh-ban függvényeket definiáljunk. A függvények erősebbek, mint az álnevek, mivel egyéni logikát és végrehajtást tartalmaznak.
Ugyanabban a konfigurációs fájlban definiálhatjuk őket az alábbiak szerint:
function show_datetime() {helyi aktuális_dátumidő
current_datetime=$(dátum '+%Y-%m-%d %H:%M:%S' )
visszhang 'Jelenlegi dátum és idő: $current_datetime'
}
Ezután az előző parancs futtatásával megjeleníthetjük a dátumot és az időt az alábbiak szerint:
show_datetimeAz álnevek és funkciók rendszerezése
Az álnevek és a funkciók rendszerezése érdekében külön fájlokat hozhatunk létre a „~/.oh-my-zsh/custom/aliases” és „~/.oh-my-zsh/custom/functions” mappában, majd a forrást a „~/.zshrc” konfigurációs fájl.
forrás ~/.oh-my-zsh/custom/aliases/*forrás ~/.oh-my-zsh/custom/functions/*
Ez lehetővé teszi, hogy az álneveket és függvényeket különböző alkönyvtárakban tartsa, miközben a fájlrendszer bármely részén hozzáférhet.
Következtetés
Ebben az oktatóanyagban bemutattuk az Oh My Zsh telepítésének és beállításának alapjait a gépen. Ezután az összetettebb és részletesebb fogalmakkal foglalkoztunk, mint például az azonnali testreszabások, a tématelepítések, a beépülő modulok használata, az automatikus javaslatok, az álnevek és funkciók, és még sok más.