Le 28/06/23 à 20:46, Marc Chantreux <mc@unistra.fr> a écrit :
alors déjà: astuce du jour: si tu peux écrire une fonction, n'écris pas un alias.
PAS BIEN:
alias tawk="awk -F'\t'"
BIEN:
tawk() awk -F'\t' "$@"
c'est plus facile à lire mais surtout: si tu ne sais pas qu'alias est en fait un préprocesseur, tu risques de faire des trucs étranges.
annonce() { echo "I will $*" "$@" }
annonce us mc
ca marche avec: us() getent passwd mais pas avec: alias us='getent passwd'
parce que l'extension de l'alias se fait avant l'interpolation
Ok, je commence à saisir…
Ce ne serait pas très compliqué d'ajouter un fichier contenant https://github.com/ohmyzsh/ohmyzsh/blob/master/plugins/git/git.plugin.zsh
oh misère … que des aliases … et en plus: tu les utilises vraiment tous? perso j'ai tendance à respecter un des 7 conseils de productivité de Bram Moolenar: n'ajouter du code que quand il résoud un truc qui m'irrite régulièrement.
J'en utilise une grosse moitié, et j'en ai ajouté plusieurs autres (pour enchaîner une succession usuelle de commande, du genre retourner sur main, faire un fetch de toutes les branches, un pull de main, virer les branches locales disparues sur leur remote après un merge, etc.)
mais oui: tu peux très bien avoir un fichier ~/.zsh/rc/omz-git que tu chargerais comme suit dans ton .zshrc
En fait depuis le post j'ai testé pour voir, et c'est vrai que c'est assez simple d'avoir un ~/.zshrc avec ce qu'a généré compinstall et zsh-newuser-install, quelques setopt de base, puis à la fin un # (c'est dans ce fichier que l'on fera le source des ~/.zsh/*.zsh qui nous intéressent sur cette machine) if [ -f ~/.zsh/_local.zsh ]; then source ~/.zsh/_local.zsh else # on source juste le prompt [ -f ~/.zsh/prompt.zsh ] && source ~/.zsh/prompt.zsh fi et dans le ~/.zsh_local je liste ce que je veux sourcer parmi ce que j'ai mis dans mon ~/.zsh (qui peut du coup devenir un dépôt git), dont des plugins omz qui m'intéressent, z, git-prompt… Et je peux mettre à jour les plugins piqués à omz ou ailleurs [1] à chaque upgrade debian, faire un diff/merge sur 4~5 fichiers tous les deux ans ça reste gérable (ça vaut pas le coup de faire des subrepo pour si peu, mieux vaut à la limite un script qui fait du wget sur les quelques fichiers concernés puis lance un git diff, pour vérifier les changement avant de commit ces modifs). [1] vu par ex https://github.com/zsh-users/zsh-completions/tree/master/src -- Daniel Avec les philosophes il ne faut jamais craindre de ne pas comprendre. Il faut craindre énormément de comprendre. Paul Valéry