Nesses últimos tempos tenho trabalhado muito no ambiente do Linux, fazendo diversas operações de arquivos, compilação e configuração no terminal. E com isso venho aprendendo a usar o terminal de forma hardcore, usando diversas aplicações do Linux no dia a dia, como sed, grep, find, make, cmake, git. E estou gostando bastante. Recentemente um amigo (obrigado Akira) me apresentou um shell para o terminal bem diferente, o fish. Até então, vinha trabalhando com o padrão do ubuntu (bash). E mudando, me fez perceber várias sutilezas que acabam fazendo uma pequena diferença no todo.
Fish vem de Friendly Interactive SHell. E ele por si, é bem poderoso. Uma das coisas que mais gostei foi o autocompletar dele, que é sensacional. Outra característica é o destaque para sintaxes e comandos.
Sua instalação no ubuntu é bem simples, basta um sudo apt install fish
e ele será instalado. Depois, ele pode ser acessado usando o comando fish
. Com isso lhe será apresentado o shell do fish para uso. Para que o terminal acesse direto o fish quando for aberto, você pode mudar o shell default do sistema. Para isso use o comando chsh -s /usr/bin/fish
.
Dicas
- Histórico de comandos: No shell padrão do ubuntu para fazer buscas no histórico de comando temos que digitar CTRL + R, e começar a digitar um trecho do comando que procuramos. No caso do fish, podemos digitar um trecho do comando que queremos e depois usar as setas para cima ou para baixo para navegar nos comandos encontrados.
- Sugestões: O Fish possui um auto complete bem poderoso. Apertando o TAB ele pode completar o comando ou o argumento, e se houver mais de uma opção ele vai listar todas as opções disponíveis. Na lista, podemos usar o TAB para continuar navegando, ou usar as setas. Ele possui uma integração muito boa com algumas ferramentas, como, por exemplo, git. Nesse caso, se você digitar
git checkout
e apertar TAB, ele mostrará todas as branchs e tags do repositório.
- Sugestão baseado no man pages: Além das sugestões “simples” do autocomplete, ele possui sugestões baseadas na descrição do comando pelo man page. Para usar basta digitar o comando e começar a colocar um argumento e apertar TAB para ter uma lista de sugestões. Por exemplo
grep -
e aperte TAB.
- Destaque: Faz o destaque de alguns comandos e scripts. Quando um comando é digitado errado, ele ficará vermelho.
- Configuração: Para configurá-lo ele disponibiliza uma página web. Ele também disponibiliza as variáveis e funções salvas, e o histórico de comandos utilizado nessa mesma página para facilitar uma pesquisa se necessária. Para acessar digite
fish_config
.
Outras dicas
-
Caso queira remover a mensagem de saudação rode o comando
set -U fish_greeting
. -
Gerenciador de pacotes. Existe alguns gerenciadores de pacotes, um dele é o fisher. Com ele você consegue instalar alguns plugins. Existe uma lista disponível. Alguns plugins que estou usando são: fish-prompt-metro, z, bass (este acho importante, porque ele cria uma camada de compatibilidade entre o bash e o fish).
Experimentem, vale a pena.
Comments