- Fish é um shell de linha de comando amigável para o usuário para macOS, Linux e outros sistemas operacionais da família Unix
- A partir da versão 4.0.0, o código principal do Fish foi portado de C++ para Rust
- Isso traz grandes mudanças nas dependências e na forma de build, mas não tem impacto direto para os usuários
- Mudanças incompatíveis:
- Introdução de uma nova notação de teclas para o comando
bind
ctrl-c agora chama clear-commandline, e o comportamento anterior pode ser usado com cancel-commandline
- Os resultados da função
random com base no valor da seed podem ser diferentes das versões anteriores
- Variáveis na posição de comando agora não podem mais ser expandidas como palavras-chave de subcomando
functions --handlers agora lista os handlers na ordem em que foram definidos
- O recurso
qmark-noglob agora vem ativado por padrão
Melhorias e correções
- Protocolo de teclado: suporte ao
modifyOtherKeys do XTerm e ao protocolo de teclado do kitty
- Binários auto-instaláveis: agora é possível compilar o fish como um binário auto-instalável
- Histórico de comandos: a função
fish_should_add_to_history permite decidir quais comandos serão adicionados ao histórico
- Função de desfazer: o histórico é mantido mesmo após a execução de comandos
- Restrição de abreviações: agora é possível expandir abreviações apenas para comandos específicos
Recursos obsoletos e removidos
commandline --tokenize foi substituído por commandline --tokens-expanded
- A especificação de nomes de teclas com a sintaxe
bind -k foi descontinuada
- O modo de colagem foi removido
Melhorias em scripting
- Novo comando de histórico:
history append permite adicionar comandos ao histórico sem executá-los
- Novo redirecionamento: `
1 comentários
Comentários do Hacker News
clear-commandlineé um recurso interessantecancel-commandline