Entrada de teclado similar a Vim en todos los campos de texto en todos los programas

9

Entonces, soy adicto a vim y, a menudo, agrego mucha basura a los campos de texto normales cuando trato de usar los comandos de vim y no estoy en vim. Pensé para mí mismo, ¿por qué no puedo estar en TODAS PARTES?

Entonces me llamó la atención. Por qué no? ¿Alguien ha escrito un programa que pueda redirigir los campos de entrada / texto actual a un búfer vim para que uno pueda usar la edición de estilo vim en otras cosas que no sean terminales y gVim? Redirigir entrada de teclado? Alterar un key-logger?

¿Alguna idea de cómo se podría hacer? $ wdw thoughtsA Lo hice de nuevo. Necesito ayuda seria Ideas, alguien?

ACTUALIZACIÓN: Más necesitados. Acabo de recibir un correo electrónico con esto como final:

Los bibliotecarios del campus estarán encantados de trabajar con el profesorado y los estudiantes para identificar fuentes alternativas de alta calidad de informes y análisis de noticias científicas.

--Karen
: r firma

Es bueno saber que hay otros.

physicsmichael
fuente
Necesita un :s/\$wdw /^wce/. ^ [: Wq
intuido
@intuited english?
Jason Basanese
Parece que estaba corrigiendo el texto tachado de @physicsmichael destinado a corregir el error tipográfico en la palabra "pensamientos [sic]". Para más explicaciones, dispara vimy hazlo :help :s.
intuido

Respuestas:

2

Utilizo viedición de estilobash y vimperator para la navegación web con firefox (lamentablemente no tiene :vsplit). ¡En Firefox lo fantástico es todo texto! El complemento configurado para usar gvimhace que los cuadros de entrada (como este) sean menos malos. muttrecoge mi $EDITORsin problemas (dile a Karen que establezca esa variable también).

Supongo que eso es todo lo que hago fuera vim.

Benjamin Bannier
fuente
Comprobaré regularmente el vimperator para posibles extensiones de Chrome. Si usara Firefox, esto sería increíble. Es un gran comienzo; ¡muchas gracias!
physicsmichael
Seguí algunos foros de vimperator a vrome para chrome. No he conseguido que funcione, pero por el bien de los demás hay una opción.
physicsmichael
También puede intentar uzbluna sensación similar, pero se necesita mucho trabajo para obtener las características a las que está acostumbrado desde los navegadores "normales".
Benjamin Bannier
1

No he visto nada que permita esto, pero parece que podría manejarse escribiendo un módulo para enchufarlo a un IM como SCIM o IBus .

Ignacio Vazquez-Abrams
fuente
1

Esto no es exactamente lo que está buscando, pero también he experimentado el deseo de las combinaciones de teclas vim en todas partes. Una solución que he usado es Touch Cursor , que asigné para que mis teclas de fila de inicio me permitieran navegar mi cursor. La disposición predeterminada no es similar a la de VIM, pero puede cambiarla fácilmente. Puede tomar un tiempo acostumbrarse a mantener presionada la barra espaciadora para lograr acordes, pero lo encontré bastante natural.

Estos son algunos otros programas que ofrecen soluciones específicas de la aplicación: uso Viemu , que proporciona una capa de emulación vim en Visual Studio 2005/2008, Outlook y Word.

También hay una nueva extensión de Chrome que agrega combinaciones de teclas similares a vim para la navegación, también llamada Vimium .

bentsai
fuente
0

Todavía no he encontrado una manera, pero usando un xclipscript puedes al menos acelerar el ciclo copiar-pegar-editar-pegar. Se pega en un archivo temporal y lo edita con Vim:

#!/bin/bash

# Dependencies: xclip, gvim

# Create an "ephemeral" file, that disappears with this process
tmpfile=$(mktemp /tmp/vim-edit-clipboard.XXXXXX)
exec 3>"$tmpfile"
rm $tmpfile

# It's unlinked, but can be referred to by other processes using /proc
ephemeral_path=/proc/$$/fd/3

# Paste to the file
xclip -selection clipboard -o > $ephemeral_path
# Edit it. Make Vim respect the presence or lack of EOL at EOF
gvim --nofork -c 'set nofixeol' $ephemeral_path
# Then copy it to the clipboard, removing the newline at the end
xclip -selection clipboard < $ephemeral_path

Es probable que desee asignar un atajo de teclado para esta secuencia de comandos, por lo que puede hacer algo como CtrlA, CtrlC,SuperC

Leif Arne Storset
fuente