He instalado tmux.
tmux -V
tmux 2.3
Establecer mi archivo de configuración.
cat ~/.tmux.conf
set -g mouse on
Ingrese tmux y abra dos ventanas verticales, abra la consola python3 a la izquierda, abra vim a la derecha.
Ahora mueva el cursor al comienzo de la primera línea a la derecha con el mouse.
Ingrese al modo normal e ingrese 2yy+
, para copiar dos líneas en mi +
registro.
Mueva el cursor en la python3 console
ventana izquierda , ¿cómo puedo pegar el contenido +
registrado en la consola de Python? @ Kent, haz lo que dices:
1.Mueve el cursor al comienzo de la primera línea y escribe "+2Y
2.Mueve el cursor a la ventana izquierda, y haz clic con el botón central del mouse, no pasa nada. 3. ctrl+b
Presione y luego presione la ]
tecla.
python-3.x
vim
console
tmux
vista_coder
fuente
fuente
Respuestas:
primero tu vim debe compilarse con
+clipboard
seevim --version | grep 'clipboard'
Para copiar (o eliminar) en cualquier registro vim puede usar la siguiente sintaxis
"<register name><oprator><motion>
(ver:h registers
) ej."ayy
(copiar la línea actual en el registroa
) o"bdd
(eliminar la línea actual en el registrob
) o"*ce
(eliminar al final del trabajo actual y colocar contenido en el registro*
usandoc
también lo pondrá en modo de inserciónyy
+
o*
(según el sistema operativo)para copiar toda la línea en el portapapeles del sistema, puede usar
"*yy
o"+yy
(dependiendo del sistema operativo)o copiar 2 líneas
"*2yy
o"+2yy
(para copiar la línea actual y la siguiente a la actual)una vez que el contenido se copia en el portapapeles del sistema, puede pegarlo en tmux usando (
command + v
octrl + shift + v
)o para mapear el portapapeles del sistema con el búfer de pasta tmux, consulte /unix/67673/copy-paste-text-selections-between-tmux-and-the-clipboard#72340
fuente
2yy+
no NO copiar dos líneas en el+
registro, en cambio, da un tirón a dos líneas"
reg, a continuación, mueve el cursor al primer carácter no en blanco en la línea siguienteEn el lado vim puedes hacer:
"*2Y
luego haz clic con el botón central del mouse en la consola de Python.fuente
No me gustó mucho la solución aceptada de que depende de un entorno gráfico para el portapapeles, ya que esto no funciona cuando
vim
no se puede acceder al portapapeles, que es casi siempre el caso de lasssh
conexiones. Así que me levanto con otra solución:En lugar de usar el portapapeles externo,
vim
puede pasar el texto directamente atmux
'pegar búfer al canalizarloDespués de eso, puede pegar el contenido del búfer
prefix + ]
en eltmux
panel activo .Hay varias formas de pasar el texto de
vim
atmux
:Al
tmux paste-buffer
usarlo, incluso puede activar el pegado en el panel correcto al mismo tiempo:Ahora también puede asignar fácilmente la última línea a una tecla para enviar el texto seleccionado visualmente al
python
panel.fuente