Instalando e configurando o zsh

Iniciado por irtigor, 21 de Outubro de 2010, 19:04

tópico anterior - próximo tópico

irtigor

Introdução

O Zsh é um shell: rápido, totalmente customizável e com opções avançadas não presentes no bash.

Vídeo mostrando algumas dessas características: http://www.youtube.com/watch?v=HGBgMX5HW_g
Comparação de shells (wikipédia/en): http://en.wikipedia.org/wiki/Comparison_of_command_shells

Instalando e configurando

Comando para instalação
sudo apt-get install zsh

Depois de instalado, dá pra rodar usando "zsh". Pra torna-lo padrão:

chsh -s /bin/zsh

ou

usermod -s /bin/zsh nome_do_usuario


Referencias
http://wiki.archlinux.org/index.php/Zsh
http://grml.org/zsh/zsh-lovers.html
http://en.gentoo-wiki.com/wiki/Zsh

Exemplo de configuração com comentários em português
http://www.vivaolinux.com.br/etc/zshrc

bred81

O que o Mario foi fazer no pscicólogo?
- Ele estava passando por uma fase difícil...

irtigor

Achei uma boa "config" para o zsh: https://github.com/robbyrussell/oh-my-zsh

Instalação

git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
mv ~/.zshrc ~/.zshrc_old
ln -s ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
source ~/.zshrc

1- clona o repositório (é necessário ter o git intalado) 2- move a configuração atual (só é necessário, se existir uma configuração atual.) 3- cria um link simbólico para a configuração padrão do "oh-my-zsh" 4- carrega ela.

Existem coisas interessantes para o git, ruby... e 57 temas para o prompt.

Bônus - Vídeo de introdução ao zsh

http://fosscasts.com/screencasts/16-Hello-Zsh-Part-1
http://fosscasts.com/screencasts/17-Hello-Zsh-Part-2

São vídeos curtos, no segundo existem alguns exemplos de "globbing" que podem motivar um teste.

rafael182

pessoal to precisando de um tutorial que explique melhor como eu aplico todas as configurações deste tópico http://www.vivaolinux.com.br/etc/zshrc.
e se alguem puder me explicar que risco eu corro aplicando essa configuração:
CitarCommand Completion

Perhaps the most compelling feature of Zsh is its advanced autocompletion abilities. At the very least, you will want to enable autocompletion in your .zshrc. To enable autocompletion, add the following to:
File: ~/.zshrc

autoload -U compinit
compinit

The above configuration includes ssh/scp/sftp hostnames completion but in order for this feature to work you will need to prevent ssh from hashing hosts names in ~/.ssh/known_hosts (Warning: be aware that this makes your computer vulnerable to "Island-hopping" attacks). In that intention, comment the following line or set the value to "no":
File: /etc/ssh/ssh_config

#HashKnownHosts yes

And move your ~/.ssh/known_hosts somewhere else so that ssh creates a new one with with un-hashed hostnames (warning: previously known hosts will thus be lost).

For autocompletion with an arrow-key driven interface, add the following to:
File: ~/.zshrc

zstyle ':completion:*' menu select
deste tópico: https://wiki.archlinux.org/index.php/Zsh#Making_Zsh_your_default_shell

e se tiver risco, como faço pra desfazer ??? (to tremendo de medo aqui com medo de ser invadido)

outra coisa tambem, como faço pra toda vez que eu abrir o terminal o Zsh ja estar executando ?
esses comandos não deixaram ele como padrão no meu sistema.
CitarCódigo:

chsh -s /bin/zsh

ou
Código:

usermod -s /bin/zsh nome_do_usuario

Sou iniciante no Ubuntu mas gostaria muito de poder usar esse shell pois gostei muito dele.
versão do meu Ubuntu é 10.04 LTS.

irtigor

Pra voltar o bash como shell padrão, é só usar chsh -s /bin/bash. O arquivo deve ficar no seu home, com o nome de ".zshrc" sem aspas. Como o usermod modifica qualquer usuário, ele deve ser rodado pelo root (use sudo) e nome_do_usuario deve ser substituído pelo nome do usuário, que vai ter o shell trocado. Você só vai notar a mudança na hora que abrir o shell novamente, echo $SHELL para confirmar.