iTerm2 + oh-my-zsh | Configurar o macOS
23 de Maio de 2019 (tempo de leitura: 5 min)
configuracao desenvolvimento ferramentasFerramentas disponíveis no macOS
A Apple fornece o macOS com uma shell (Bash) que tem mais de 10 anos. A razão principal tem a ver com a natureza da licença de utilização associada a esta versão - GPLv2. A versão 3.2 da Bash Shell foi a última versão com a GPLv2.
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18)
Copyright (C) 2007 Free Software Foundation, Inc.
Em Janeiro de 2019 foi lançada a versão 5 da bash shell, que utiliza a licença GNU General Public License v3 (GPLv3).
Para uma utilização comum do macOS, a versão da shell não tem muita importância. Mas quando usamos o computador como ferramenta principal de desenvolvimento, uma das aplicações que usamos mais é o terminal e a respectiva shell.
Em conjunto com esta shell o sistema oferece-nos uma aplicação Terminal, quem tem também um conjunto de limitações quanto à capacidade de configuração e não é muito agradável.
Existem várias alternativas à Bash Shell, uma delas é a Z Shell que também é fornecida no macOS.
Troca da Bash para a Z shell
Vamos começar por alterar a nossa shell para Z Shell usando o comando csh
Para verificar se estamos com a shell alterada, abrimos uma nova janela no terminal.
Apesar de não ser a última versão, esta shell é compativel com o pacote Oh My Zsh, que oferece um conjunto de configurações e temas.
Pode ser definido da seguinte forma:
Oh My Zsh is an open source, community-driven framework for managing your zsh configuration. It will not make you a 10x developer…but you might feel like one” — Robby Russell
Podemos sempre actualizar a versão da Bash ou da Z Shell, mas corremos o risco de perder a actualização durante uma actualização do sistema operativo.
Substituição do terminal
A combinação da aplicação iTerm2 com a Z Shell e o pacote de personalização Oh my zsh oferece-nos uma excelente substituição para as ferramentas que estão incluídas no macOS. A imagem seguinte mostra o ambiente desta combinação:
Vamos começar por instalar o iTerm2 na maquina, seguindo os seguintes passos:
- Fazemos o download da aplicação
- Descompactamos o ficheiro ZIP e colocamos a aplicação na pasta de aplicações do macOS
- Colocamos um atalho na barra de ferramentas (Dock)
Temos uma opção muito útil do iTerm2, que é poder configurar uma tecla (hotkey) para esconder/mostrar o terminal em qualquer altura. Ficamos com o terminal à distância de um click. A imagem seguinte mostra o painel de configuração que permite configurar este shortcut, pessoalmente eu configuro uma tecla pouco usada que tem o seguinte simbolo "§".
Esta página mostra outras opções e funcionalidades que podemos usar/configurar no iTerm2.
Após a instalação ficamos com um terminal mais interessante e configurável, no entanto a shell bash que o sistema operativo nos oferece ainda pode ser melhorada.
O Oh-my-zsh oferece-nos um conjunto de configurações e opções para a shell zsh.
Fazemos a instalação, executando o seguinte comando na shell (o curl vem com o sistema
operativo): sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
Se o computador não tiver o Xcode Command Line Developer Tools instalado vai dar um erro, e vai ser sugerido que façamos a instalação deste pacote da Apple. Temos a possibilidade de instalar o pacote préviamente executando o comando xcode-select --install
.
O Git é uma das ferramentas que está incluída no Xcode Command Line Developer Tools e que é necessária para instalar o Oh My Zsh.
Após a instalação voltamos a executar o comando de instalação.
Ficamos imediatamente com uma shell muito mais agradável, onde é mais fácil entender o que o sistema está a apresentar.
Apesar de ter melhorado bastante, podemos ainda melhorar mais o ambiente de trabalho explorando o potencial de personalização destas ferramentas.
Vamos começar por alterar a configuração do Oh My Zsh colocando um tema diferente. Podemos escolher vários temas que estão instalados na pasta ~/.oh-my-zsh/themes/
. Nesta página podemos visualizar cada um deles.
Neste caso vamos usar um tema que eu personalizei e que uso diáriamente, executamos o comando:
curl https://gist.githubusercontent.com/pedro-vasconcelos/8a9a8ccbf80f23aa7a2766c482e2620d/raw/56cba08d650bacd26b7f33b2ea26d448a662a182/pedro.zsh-theme --output ~/.oh-my-zsh/themes/pedro.zsh-theme
Para alterar o tema temos de alterar o conteúdo da variável ZSH_THEME
. Esta váriável está no ficheiro de configuração da ZShel - ~/.zshrc
. Pode defeito vem com o valor robbyrussel
e devemos colocar ZSH_THEME="pedro"
. Para editar o ficheiro com o TextEdit que vem com o macOS executamos o comando open ~/.zshrc
Para activármos no novo tema, pedimos à shell para voltar a assumir os valores do ficheiro de configuração, através do comando source ~/.zshrc
.
(colocar aqui uma imagem do tema com explicação do prompt)
Instalar uma nova fonte Ter uma fonte apropriada para quem passa muito tempo a olhar para o ecran é muito importante Existem fontes apropriadas para programação e Alterar o tamanho das letras e do espaçamento Descascar Este doc: https://medium.com/@caulfieldOwen/programming-fonts-a-visual-guide-567fc210d2c6
Alterar as cores do terminal, estão muito vivas iTerm2
https://draculatheme.com/iterm/ https://www.martinseeler.com/iterm2-material-design/ https://github.com/mbadolato/iTerm2-Color-Schemes https://iterm2colorschemes.com/
Alguns detalhes:
- Remover o MOTD Remove the “Last login” Message from the Terminal touch .hushlogin
Mostrar:
- Onde são guardadas as configurações do iTerm2 ~/Library/Preferences/com.googlecode.iterm2.plist
- Como apagar as configurações defaults delete com.googlecode.iterm2
- Onde estão os restantes ficheiros de configuração ~/Library/Application Support/iTerm2/DynamicProfiles
Hyper Terminal https://hyper.is/ https://github.com/bnb/awesome-hyper
Ver isto https://medium.com/@caulfieldOwen/youre-missing-out-on-a-better-mac-terminal-experience-d73647abf6d7