Zsh (Česky)

From ArchWiki
Revision as of 13:54, 11 December 2009 by Ondrej (Talk | contribs)

Jump to: navigation, search

Template:I18n links start Template:I18n entry Template:I18n entry Template:I18n links end Zsh je mocný shell se kterým je možno pracovat jako s interaktivním shellem i jako se interpretrem skriptovacího jazyka. Je sice kompaktibilní se shellem Bash, nabízí však další možnosti jako:

  • Rychlost
  • Vylepšené doplňování klávesou TAB
  • Vzlepšený globbing
  • Vylepšená práce s poli
  • Plně přizpůsobitelný

Zsh Faq nabízí více důvodů proč používat Zsh.

Instrukce pro instalaci

Než začneš, zjisti který shell právě používáš:

$ echo $SHELL

Instalace

Pro instalaci Zsh balíku, spusť:

# pacman -S zsh

Před nastavením Zsh jako impliticní shell se ujisti jestli byl nainstalován korektně jeho spuštěním např. v okně xtermu nebo tty:

$ zsh

Pokud instalace proběhla hladne, měl by jsi teď vidět neznámý prompt, zatím prostě napiš:

$ exit

Nastavení Zsh jako implicitní shell

Pro změnu uživatelského implicitního shellu bez rootovských oprávnění se používá příkaz chsh. Příkaz chsh lze použít pro změnu implicitního shellu bez rootovských oprvávnění jen pokud je shell uveden v souboru Template:Filename. Pokud jsi Zsh instaloval použitím pacmana, Zsh již by měl mít odpovídající záznam v Template:Filename.

Pro pokračování potřebuješ znát plnou cestu k Zsh, proto spusť:

$ which zsh

Změn implicitní shelll pro práve přihlášeného uživatele:

$ chsh -s /bin/zsh

Alternativní cesta ke změně shellu vede přes příkaz usermod. Nevýhodou této metody je potřeba mít k pc rootovský přístup. Více uživatelských účtů může být změněno rychle jako root, použitím příkazu usermod nebo chsh.

Změna implicitního shellu pro více uživatelů použitím příkazu usermod:

# usermod -s /bin/zsh uzivatel

Změna implicitního shellu pro více uživatelů použitím příkazu chsh:

# chsh -s /bin/zsh username

Template:Poznámka

Po opětovném přihlášení si můžeš ověřit, zda je Zsh opravdu tvým implicitním shellem:

$ echo $SHELL

Pokud nemáš rootovská práva a Zsh není zapsán v souboru Template:Filename ale i přesto by jsi rád používal Zsh jako implicitní shell, přejdi na tento záznam ve Zsh FAQ.

Konfigurace

Prestože je Zsh použitelný 'out of the box', skoro určitě nebude nastavený tak jak by sis přál. Kvůli velkému množství možných nastavení dostupných v Zsh se může vytváření konfiguračního souboru stát časově velice náročnou záležitostí.

Dále je přiložený ukázkový konfigurační soubor, poskytuje několik základních nastavení. Pokud chceš použít tento konfigurační soubor, ulož jej jako Template:Filename ve svém domovském adresáři. Poté jej již můžeš upravovat bez potřeby odhlašování se tímto příkazem:

$ source ~/.zshrc

Ukázkový .zshrc

Tady je základní Template:Filename, který by měl být pro začátek dostačující:

Template:File

/etc/zprofile

Much like the Template:Filename used for Bash, this file is for global Zsh settings & is a good place from which to run scripts from Template:Filename and set up environment variables such as $PATH. When setting up $PATH etc. in Template:Filename and using a login-manager such as kdm, you may find those settings not being taken up by the window-manager, whereas they are when using Template:Filename.

Obecně řečeno, můžes skopírovat Template:Filename do Template:Filename.

Ukázková konfigurace:

Template:File

Template:Poznámka

Doplňování příkazů

Asi nejpůsobivější funkcí Zshellu jsou jeho rozšířené schopnosti doplňování. Přinejmenším budeš chtít povolit automatické doplňování ve tvém Template:Filename. Pro povolení automatického doplňování, přidej následující:

Template:File

Pro automatické doplňování obohacené o možnost výběru kurzorovými šipkami přidej toto: Template:File

Nastavení kláves

Zsh nečte obsah souboru Template:Filename, který říká co který příkaz zaslaný emulátorem terminálu znamená. Pro povolení standardních kláves, přidej něco jako toto:

Template:File

Výzvy příkazového řádku

There is a quick and easy way to set up a colored prompt in Zsh. Make sure that prompt is set to autload in your Template:Filename. This can be done by adding these lines to:

Template:File

You can now see available prompts by running the command:

$ prompt -l

To try one of the commands that is listed, use the command prompt followed by the name of the prompt you like. For example, to use the "walters" prompt, you would enter:

$ prompt walters

Advanced .zshrc

This is an example of a more advanced Template:Filename:

Template:File

There are many more ways that you can customise Zsh, obviously far too many to list here, see the Zsh manual for more information.

Sample .zshrc files

Here is a list of Template:Filename files. Feel free to add your own:

Enable Unicode (obsolete)

Note: Unicode is enabled by default on the official Arch Linux Zsh package.

The latest versions of Zsh support unicode characters. To enable it, just rebuild the package with the Arch Build System.

And add the option --enable-multibyte to:

Template:File

Uninstallation

If you decide that Zsh is not the shell for you and you want to return to Bash. You must first change your default shell back to Bash, before removing the Zsh package.

Follow, Zsh#Making Zsh your default shell to change the default shell back to Bash, just replace zsh with bash.

Now you can safely remove the Zsh package.

Warning: Failure to follow the above will result in all kinds of problems.

If you did not follow the above, you can still change the default shell back to Bash by editing /etc/passwd as root. For example:

from:

username:x:1000:1000:Full Name,,,:/home/username:/bin/zsh

to:

username:x:1000:1000:Full Name,,,:/home/username:/bin/bash

External Resources


  • IRC channel: #zsh at irc.freenode.org