fish – Seu novo Shell.

Há bastante tempo eu testei o fish e, naquela época, o desenvolvimento já se encontrava meio parado. Apesar de ter gostado do ambiente, distro vai, distro vem, preguiça fica e eu deixei o bash como shell no Linux. Hoje citei o fish em um comentário no facebook e resolvi ver se ainda existia. Para minha surpresa, o desenvolvedor abandonou o projeto mas, como é opensource, outro pessoal pegou e deu seguimento. Fui na página do fish, baixei pelo git, compilei, instalei, troquei o shell padrão de bash para fish e comecei a utilizar. Grata surpresa. Até melhorou.

Não sou expert em shell mas posso dizer que, principalmente para o usuário mais comum (se é que existe usuário comum no Linux) o fish é melhor que o bash em muitos aspectos. Vejamos alguns detalhes.
Utilizando o Tab no bash, se o usuário não digitou nada, receberá uma mensagem do tipo ‘mostrar todas as 4592 possibilidades?’. Nunca gostei. No fish, não acontece nada. Se você digitar algo, o bash apenas irá mostrar os comandos existentes. O fish mostra os comandos e um breve comentário sobre a utilização dele. Muito mais inteligente para quem não tem memória de elefante.
Mas falando em memória de elefante, quem já não ficou perdido nas opções disponíveis por um programa qualquer? Pelo menos eu, lembro uma meia dúzia de opções que são costumeiramente utilizadas. Para as outras, seria necessário uma man ou –help ou algo parecido. No fish, isso e coisa do passado. Para o ls, por exemplo, basta digitar ‘ls –‘ e pressionar Tab. Todas as opções são mostradas. Complete com -l e dite tab novamente e terá uma nova lista de opções disponíveis. Quer moleza maior que essa. Deixar a cabeça livre para resolver os problemas e não decorar parâmetros é bem interessante.
Para ver ou alterar diversas configurações do fish também é coisa de criança. Basta digitar fish_config e será aberto no navegador as possibilidades. Você pode, por exemplo, alterar a cor do texto em diversas circustâncias.
Também pode alterar o prompt por vários que foram definidos anteriormente, ver todas as funções disponíveis (o fish utiliza funções que são mais poderosas e não alias), verificar as diversas variáveis do sistema (um set melhorado e com filtro) ou verificar o histórico (podendo também filtrar e/ou excluir linhas do histórico).
Problemas? Certamente poderão surgir incompatibilidades. Quando eu testei o fish na primeira vez, o único problema que encontrei foi na compilação de alguns programas. Na realidade foi no ./configure. O fish não utiliza `` para executar um comando. Pessoalmente acho uma péssima escolha o ‘grave‘ para a função. É muito fácil de confundir com o ‘apóstrofo‘ (a primeira vez eu confundi). Acho mais legal echo (seq 10) do que echo `seq 10`.
Tem mais um monte de coisas mas, por enquanto fico por aqui.

Edição: O cara que retomou o desenvolvimento parece que estava procurando algo mais parecido com o Mac. Can a command line shell be Mac-like? Pode ser interessante para que utiliza Mac.

=-=-=-=-=
Powered by Blogilo

Anúncios