Fish 4.5.0 lançado: veja as novidades e correções

Atualização emergencial corrige falhas críticas no modo Vi e moderniza o terminal abandonando dependências antigas do ncurses.

Escrito por
Emanuel Negromonte
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre...
  • O Fish shell 4.5.0 foca em corrigir regressões críticas no modo Vi que afetavam a produtividade de desenvolvedores ao apagar caracteres e espaços incorretamente.
  • Esta nova versão do Fish shell remove de forma definitiva a dependência do ncurses e terminfo, modernizando o código e facilitando compilações customizadas.
  • Desenvolvedores brasileiros que utilizam Linux e macOS já podem atualizar para o Fish shell 4.5.0 através dos binários oficiais ou repositórios como o PPA do Ubuntu.
  • A atualização do Fish shell 4.5.0 aprimora a pesquisa de histórico interativa, garantindo suporte exato para caracteres complexos e atalhos de teclado sem interromper o fluxo.
  • Para quem busca estabilidade em distribuições rolling release no Brasil, o Fish shell 4.5.0 elimina os travamentos inesperados ao aceitar autossugestões no terminal.

O Fish (Friendly Interactive Shell) é uma shell de linha de comandos para sistemas baseados em Unix (como Linux e macOS) conhecida pelo seu foco na interactividade e facilidade de utilização imediata. Ao contrário do Bash ou Zsh, que normalmente exigem configurações complexas, a Fish oferece nativamente autocompletar inteligente baseado no histórico, realce de sintaxe em tempo real e uma linguagem de scripting simplificada. A sua função é otimizar o fluxo de trabalho de quem passa muito tempo no terminal.

Principais novidades

  • Independência do terminfo e ncurses: a Fish deixou definitivamente de ler a base de dados terminfo para alterar o seu comportamento com base na variável TERM. A flag ignore-terminfo, introduzida na versão 4.1, é agora permanente. Isto moderniza a base de código e remove dependências de software antigas. A shell continuará a funcionar perfeitamente em qualquer emulador de terminal moderno do século XXI, sacrificando de forma consciente a compatibilidade com hardware extinto (como os terminais Data General Dasher D220 ou Wyse WY-350).
  • Melhorias na pesquisa interativa: o atalho ctrl-l, habitualmente utilizado para limpar o ecrã, já não cancela a pesquisa no histórico de comandos. Além disso, o posicionamento do cursor durante essa pesquisa foi corrigido para lidar corretamente com caracteres de larguras arbitrárias, como alfabetos asiáticos e emojis.

Impacto e repercussão

Embora seja classificada como uma versão menor de correção de falhas (patch release), a atualização 4.5.0 tem um impacto muito forte no fluxo de trabalho dos power users que utilizam o modo Vim da shell (fish_vi_key_bindings). A versão anterior (4.4.0) havia introduzido regressões bastante frustrantes, resultando na eliminação incorreta de espaços e em encerramentos inesperados (crashes) da shell ao aceitar autossugestões em momentos específicos. A comunidade celebrou a correção destas falhas, uma vez que elas bloqueavam o uso diário de quem dependia dos atalhos do Vi. Adicionalmente, o abandono completo da biblioteca ncurses tem sido elogiado por facilitar a compilação do projeto a partir do código-fonte.

Resumo técnico

  • Correção de regressão no modo Vi: a combinação de teclas d,f voltou a funcionar.
  • Correção de regressão no modo Vi: a combinação c,w já não apaga incorretamente os espaços finais.
  • Resolvido um crash no modo Vi ao utilizar c,i,w logo após a aceitação de uma autossugestão.
  • A chamada da função fish_vi_key_bindings com um argumento de modo já não produz erros.
  • Fim do suporte e dependência do ncurses e do banco de dados terminfo.
  • Implementação de correções específicas para garantir a compilação no sistema operativo Illumos.

Disponibilidade

O código-fonte da versão 4.5.0 encontra-se disponível no GitHub em formato .tar.xz, existindo também binários pré-compilados e autónomos para distribuições Linux nas arquiteturas aarch64 e x86_64. Para utilizadores de macOS, o repositório oficial já fornece os pacotes nativos .pkg e ficheiros .app. Em distribuições Linux do tipo rolling release (como o Arch Linux ou openSUSE Tumbleweed), a nova versão deverá chegar aos repositórios oficiais nas próximas horas. Nos sistemas Ubuntu e derivados, os utilizadores podem recorrer ao repositório PPA oficial (ppa:fish-shell/release-4) para instalar a atualização imediatamente.

Compartilhe este artigo