- Fish est un shell en ligne de commande convivial pour macOS, Linux et d'autres systèmes d'exploitation de type Unix
- À partir de la version 4.0.0, le code cœur de Fish a été porté de C++ vers Rust
- Cela entraîne d'importants changements au niveau des dépendances et du mode de build, mais n'a pas d'impact direct pour les utilisateurs
- Changements incompatibles :
- introduction d'une nouvelle notation des touches pour la commande
bind
ctrl-c appelle désormais clear-commandline, et l'ancien comportement reste disponible via cancel-commandline
- les résultats de la fonction
random selon la valeur de seed peuvent différer de ceux des versions précédentes
- les variables en position de commande ne peuvent désormais plus être développées en mots-clés de sous-commande
functions --handlers liste désormais les handlers dans l'ordre de leur définition
- la fonctionnalité
qmark-noglob est désormais activée par défaut
Améliorations et correctifs
- Protocole clavier : prise en charge de
modifyOtherKeys de XTerm et du protocole clavier de kitty
- Binaire auto-installable : fish peut être compilé en binaire auto-installable
- Historique des commandes : la fonction
fish_should_add_to_history permet de décider quelles commandes ajouter à l'historique
- Fonction d'annulation : l'historique est conservé même après l'exécution d'une commande
- Restriction des abréviations : l'expansion des abréviations peut être limitée à certaines commandes
Fonctionnalités dépréciées et supprimées
commandline --tokenize est remplacé par commandline --tokens-expanded
- la désignation des noms de touches via la syntaxe
bind -k est dépréciée
- le mode collage a été supprimé
Améliorations du scripting
- Nouvelle commande d'historique :
history append permet d'ajouter des commandes à l'historique sans les exécuter
- Nouvelle redirection : `
1 commentaires
Commentaires Hacker News
clear-commandlineest une fonctionnalité intéressantecancel-commandline