Vim: Sélection à la souris sans enregistrement

Bonjours à tous

avant que je passe à Buster, le comportement de la souris sous vim était le suivant, que je ne parviens plus à retrouver:

*Clic gauche, glisser = *
sélectionner du texte, (visuellement, ça fonctionne), et le garder en mémoire, puis
clic cental = le coller dans un autre processus (autre fenêtre vim ou autre logiciel, comme l’éditeur de ce forum, par exemple)

Le problème est symétrique, comme la sélection dans une fenêtre xpdf et tentative de collage dans une fenêtre vim (en mode insert, évidemment).

Le message de vim au moment du clic central:

E353: Le registre " est vide

C’est l’un des rares usages de la souris que j’utilise avec vim, mais il me manque beaucoup.

Une solution alternative serait la fonction « copier » du menu (clic droit de la souris après sélection à la souris) mais elle est également désactivée (grisée).

Je dois vous préciser que ce problème est spécifique de vim, ce fonctionnement persiste correctement avec le shell bash et d’autres éditeurs ou afficheurs.

J’ai recopié intégralement ~/vimrc et l’arborescence ~/vim/ de Jessie sous Buster, mais des différences persistent sans que j’ai pu en identifier l’origine.

Voici les infos parmi celles que j’ai pu cherchées:

$update-alternatives --display vim
vim - mode automatique
  link best version is /usr/bin/vim.nox
 le lien pointe actuellement sur /usr/bin/vim.nox
  link vim is /usr/bin/vim
/usr/bin/vim.basic - priorité 30
/usr/bin/vim.nox - priorité 40

$apt policy vim
vim:
  Installé : 2:8.1.0875-5
  Candidat : 2:8.1.0875-5
 Table de version :
 *** 2:8.1.0875-5 500
        500 http://deb.debian.org/debian buster/main amd64 Packages
        100 /var/lib/dpkg/status

J’ai désinstallé vim-tiny, car dans /etc/vim/vim.tiny, figurait la commande s

et compatible

(mais dans une pensée magico-mystique, car set compatible n’apparaît pas dans l’affichage de « :set » ) et que je n’utilise pas vim.tiny, mais vim.nox, sans doute choisi par « vim-common »

$vim --version | egrep mouse
+acl               +extra_search      +mouse_netterm     +tag_old_static
+arabic            +farsi             +mouse_sgr         -tag_any_white
+autocmd           +file_in_path      -mouse_sysmouse    +tcl
+autochdir         +find_in_path      +mouse_urxvt       +termguicolors
-autoservername    +float             +mouse_xterm       +terminal
-dnd               +mouse             +startuptime       -xim
-ebcdic            -mouseshape        +statusline        -xpm
+emacs_tags        +mouse_dec         -sun_workshop      -xsmp
+eval              +mouse_gpm         +syntax            -xterm_clipboard
+ex_extra          -mouse_jsbterm     +tag_binary 

-xterm_savevim–version.txt (3,4 Ko) (version complète)

Tu peux tester avec un :

:set mouse=a

Si ça marche il te restera à modifier ta configuration de vim.

Merci clochette, mais c’est déjà le cas.
(comment copier le résultat de la commande « :set », qui n’est pas exactement celle de « vim --version », comme je l’ai cru un peu trop hâtivement)

Bonjour

Dans vim, j’ai sélectionné avec la souris le retour de la commande set,
et j’ai fait Ctrl-Shift-c pour copier
puis j’ai collé le tout dans une fenêtre de l’éditeur mousepad (et de ce forum)
en faisant Ctrl-v ou bien Shift-Ins

:set
--- Options ---
  background=dark     history=200       nolangremap           mouse=a             scroll=9            ttimeout            ttymouse=sgr
  display=truncate    incsearch         nomodeline            nrformats=bin,hex   scrolloff=5         ttimeoutlen=100     wildmenu
  helplang=fr         langnoremap         modified            ruler               showcmd             ttyfast             window=18
  backspace=indent,eol,start
  fileencodings=ucs-bom,utf-8,default,latin1
  printoptions=paper:a4
  suffixes=.bak,~,.swp,.o,.info,.aux,.log,.dvi,.bbl,.blg,.brf,.cb,.ind,.idx,.ilg,.inx,.out,.toc
Appuyez sur ENTRÉE ou tapez une commande pour continuer

Merci MicP,

sous Jessie, je peux effectivement sélectionner le retour de :set à la souris, et le clic central copie dans le document vim en cours. (je ne connaît pas mousepad, étant devenu depuis longtemps un vimiste aussi intégriste que limité :wink: )

C’est bien ce comportement que je cherche à rétablir sous Buster.

Actuellement sous Jessie, dés que je peux retourner sous Buster, je revisite la question.

(Il serait sans doute plus malin d’installer Jessie en système virtuel sous Buster, mais ça serait un apprentissage -et peut-être une galère - supplémentaire. Un problème à la fois!).

Bonjour,
je viens de trouver la solution: sous Jessie, vim-gtk était le paquet utilisé pour vim, et sous Buster c’était le paquet vim-nox.

vim-gtk installé sur Buster, « update-alternatives --display vim » donne vim-gtk comme
link best version is /usr/bin/vim.gtk

et je peux de nouveau utiliser le tampon (sélection sans «copier», puis clic du milieu sans «coller», qui est la fonction la plus utile de la souris avec le texte ( pour transférer du texte entre différents logiciels.)

Merci à tous les deux