- Étape 1 :
afin que vim lise le fichier des alias j’ai utilisé ce tuto alias-et-vim en remplaçant .bashrc par .bash_aliases
…
The~/.bashrcfile is only read for interactive shell sessions, and the shell that you start from Vim is not interactive. Furthermore, thebashshell does not expand aliases in non-interactive shells by default.
…
To use the$BASH_ENV« trick », make sure that your~/.vimrcfile (or equivalent) sets this environment variable to the pathname of a file that contains the necessary setup code:let $BASH_ENV = "~/.vim_bash_env"Then create
~/.vim_bash_envto sayshopt -s expand_aliases source ~/.bashrcThis would enable the expansions of aliases even though the shell session is non-interactive, and then it would read your
~/.bashrcfile where presumably your aliases are defined.You may then use your aliases with Vim’s
!command.
- Étape 2
La commande à lier à un alias clip est :call system(‹ xclip ›, @0) . Elle doit s’effectuer lorsque je vais écrire , après la sélection et son enregistrement par y ( yank) , :!clip . Cette commande , écrite à la main , fonctionne bien et je récupère le texte sélectionné dans un fichier par xclip -o >fichier . Pas facile à mémoriser , alors un alias s’impose .
Le problème qui me bloque est la présentation à vim de cet alias qui doit être rendu compréhensible par bash pour pouvoir s’effectuer et si je fais simplement alias clip=’:call system(‹ xclip ›, @0)’ ça ne marche pas car , je l’interprète ainsi , la commande entre ’ ’ ne peut pas être lue par bash . J’ai essayé
clip=‹ echo :call system(‹ xclip ›, @0) › mais ça ne va pas . Une idée sur une solution ?

