multicursor - Usando PhpStorm IdeaVim, no puedo usar las teclas de flechas Mayús+para seleccionar palabras
phpstorm multicursor (4)
Cree el archivo ~ / .ideavimrc con las siguientes líneas
nnoremap <S-Left> :action EditorLeftWithSelection<CR>
nnoremap <S-Right> :action EditorRightWithSelection<CR>
nnoremap <S-Up> :action EditorUpWithSelection<CR>
nnoremap <S-Down> :action EditorDownWithSelection<CR>
inoremap <S-Left> <C-O>:action EditorLeftWithSelection<CR>
inoremap <S-Right> <C-O>:action EditorRightWithSelection<CR>
inoremap <S-Up> <C-O>:action EditorUpWithSelection<CR>
inoremap <S-Down> <C-O>:action EditorDownWithSelection<CR>
Estoy usando PhpStorm 7.1.2 con el complemento IdeaVim.
Cuando estoy en el modo Insertar, quiero seleccionar palabras usando Shift + ArrowKey
. Sin embargo, este complemento de IdeaVim parece estar impidiendo hacerlo. Solo puedo resaltar las palabras en el modo Comando usando la tecla v
.
shift+Home/End/PageDown/PageUp
o shift+ctrl+arrowKeys
no funcionan correctamente.
Intenté cambiar los accesos directos (es decir, seleccionar a la derecha => shift + derecha) en la configuración del mapa de teclas, pero no funcionó.
¿Hay alguna manera de que pueda lograr este comportamiento no vim?
ACTUALIZACIÓN 1
Hay un ticket abierto en su sistema de seguimiento de errores sin ninguna solución. Así que supongo que no puedo hacer lo que he descrito anteriormente.
Me gustaría crear un ~/.ideavimrc
con las siguientes líneas
nmap <S-Up> v<Up>
nmap <S-Down> v<Down>
nmap <S-Left> v<Left>
nmap <S-Right> v<Right>
vmap <S-Up> <Up>
vmap <S-Down> <Down>
vmap <S-Left> <Left>
vmap <S-Right> <Right>
imap <S-Up> <Esc>v<Up>
imap <S-Down> <Esc>v<Down>
imap <S-Left> <Esc>v<Left>
imap <S-Right> <Esc>v<Right>
Hace que mi código seleccione texto de la misma manera.
Parece que no es posible salir de la caja. Sin embargo, no es difícil piratear el complemento para eliminar las acciones de codificación rígidas para las teclas de flecha de cambio +, siempre y cuando tengas ideavim. Esto tiene el efecto de permitir que se usen los comportamientos predeterminados.
Pasos:
-
git clone https://github.com/JetBrains/ideavim.git
- Abra el proyecto recién clonado en ideavim.
- Configure la dependencia intellij sdk en Archivos / Estructura del proyecto (si es necesario).
- Edite
ideavim/src/com/maddyhome/idea/vim/RegisterActions.java
. - Eliminar todas las acciones clave que redefinen la tecla
:s%/^.*KeyEvent.VK_/(KP_/)/?/(LEFT/|RIGHT/|UP/|DOWN/), KeyEvent.SHIFT_MASK.*$//
. - Reconstruir utilizando las tareas ant
clean compile dist
. - Reinstale el complemento a través de Opciones / Complementos / Instalar complemento desde el disco y busque
ideavim/out/dist/ideavim-xx-dev.zip
Si tiene un enlace para habilitar / deshabilitar IdeaVIM, puede obtener la selección de la flecha de desplazamiento al deshabilitar temporalmente a IdeaVIM, luego usar la selección de la flecha de cambio, y luego volver a habilitar IdeaVIM.
La acción en el cuadro de diálogo Mapa de teclado se llama "Vim Emulator", y en el mapa de teclado "Predeterminado" está vinculada a ⌃ ⌥ V ; en el mapa de teclado "Mac OS X 10.5+" está vinculado a ⌘ ⌘ V.
Puede buscar accesos directos para el mapa de teclas en el cuadro de diálogo Preferencias => Mapa de teclas o en el menú Ayuda => Buscar acción ...
(Nota: ⌥ también se llama "opción" o "alt"; ⌘ es la tecla de "comando" en una Mac).