Tout fonctionne bien en dehors de tmux
. Mais dans tmux
je ne peux pas redimensionner vim se scinde avec la souris. J'ai set mouse=a
dans mon .vimrc. Y a-t-il une solution pour cela?
.tmux.conf:
$ cat ~/.tmux.conf
set-option -g mode-mouse on
set-option -g mouse-resize-pane on
set-option -g mouse-select-pane on
set-option -g mouse-select-window on
ttymouse=xterm2
dans Vim ? Cela me permet de faire glisser les fractionnements de Vim à l’ intérieur de tmux (il semble que par défaut,xterm2
lorsqu’il est exécutéTERM=xterm
, ce qui est probablement le cas en dehors de tmux ).Réponses:
Il semble que faire glisser la ligne d'état pour redimensionner une division n'est pas possible lorsque l' option Vim
ttymouse
estxterm
; cela fonctionne quand la valeur estxterm2
bien. Cette dernière valeur configure Vim pour qu'il demande un mode de rapport de souris étendu qui (entre autres choses) offre une meilleure prise en charge du glissement. Ce mode étendu ne fonctionne qu'avec les versions les plus récentes de xterm (et d’autres émulateurs de terminaux compatibles, y compris tmux ). Il ne s’agit donc pas de la valeur par défaut.Vous pouvez utiliser quelque chose comme ce qui suit dans votre
.vimrc
pour définir l’option:(Cependant, je ne suis pas sûr de l'impact que cela aura sur les instances d' écran réelles , qui utilisent également un TERM qui commence par
screen
.)Lorsque vous êtes en dehors de tmux , la variable d'environnement TERM est probablement une
xterm
valeur -ish et Vim recherchera la version xterm à l'aide de lat_RV
séquence de contrôle.la source
set
la variable fonctionne.ttymouse
sur,sgr
carxterm2
cela ne va pas plus loin. Vous pouvez vérifier si votre vim prendsgr
en charge avechas("mouse_sgr")
. Il devrait toujours être sûr de réglersgr
au lieu dexterm2
parce qu'il est compatible avec les versions antérieures. Voir:help ttymouse
Dans mon cas, cela a résolu les deux cas: redimensionnement de la souris et problème de position de la souris pour un écran large.
Le correctif est:
la source