2011-10-06 6 views
20

En vim gf abre el archivo cuyo nombre está debajo del cursor en la ventana actual. <C-W>f hace lo mismo, pero lo abre en una nueva ventana. Sin embargo, esta nueva ventana se crea con una división horizontal.¿Cómo puedo hacer algo como gf, pero en una nueva división vertical?

¿Cómo puedo hacer lo mismo y obtener una división vertical?

Probé varias alternativas que funcionaron (como :vsplit +normal\ gf), pero tengo un pequeño problema: si el archivo no existe, se crea una nueva ventana de todos modos. Esto no ocurre con gf ni <C-W>f. Me gustaría tener este comportamiento también desde el comando "abrir archivo bajo el cursor en una división vertical". ¿Cómo puedo hacer eso?

+16

@close voter: vim preguntas fuera del tema ahora? Lo siento por eso. ¿Dónde puedo preguntar? ¿Deberíamos migrar las más de 4000 preguntas? Mi pregunta se refiere a "herramientas de software comúnmente utilizadas por los programadores", que, de acuerdo con las preguntas frecuentes, lo hacen sobre el tema. –

Respuesta

17

Aquí es posible mapeo:

:nnoremap <F8> :vertical wincmd f<CR> 

Con un nombre de archivo bajo el cursor, pulse F8 y listo.

+4

¡Ooh, gracias! Aprendí sobre ': wincmd', limpio. –

+0

He agregado la siguiente asignación a mi '.vimrc'. Se sienten como extensiones naturales del comportamiento predeterminado. 'map gs: arriba wincmd f ' para abrir el archivo en una nueva ventana horizontal dividida. 'map gv: wincmd vertical f ' para abrir el archivo en la nueva ventana de división vertical. –

0

Aquí es una solución simple que no implica una nueva asignación:

:vsp 
gf 

Eso es :vsp seguido por gf.

Cuando ingresa :vsp, la ventana actual se divide en dos con el mismo archivo en ambos y el cursor permanece en la misma posición (es decir, en el nombre del archivo al que desea ir en una nueva división vertical) . Entonces, si ingresa gf ahora, la ventana actual ahora se actualiza con el archivo al que desea ir.

El resultado final es dos ventanas divididas verticales: una con el primer archivo y otra con el archivo al que deseaba ir.

Cuestiones relacionadas