2011-05-05 16 views
9

En vim, puedo encontrar un archivo y abrirlo en una nueva pestaña usando :tabfind, y puedo abrir un archivo que conozco la ubicación de una nueva división usando :split o . Sin embargo, me gustaría que vim encuentre archivos en mi camino cuando ejecute los comandos :split o :vsplit. Por ejemplo, decir en mi directorio actual, tengo estos archivos (todos los cuales están en mi camino):¿Cómo hace que vim encuentre o busque un archivo en la ruta al abrir una división?

./ReallyLongFileName1.txt 
./fooDir/ReallyLongFileName2.txt 
./barDir/bazDir/ReallyLongFileName3.txt 

me gustaría escriba el siguiente comando en vim:

:vsplit R<Tab> 

Y tienen vim búsqueda en mi camino para todos los archivos que coinciden con esa expresión, y llenar el resto de la línea con

:vsplit ReallyLongFileName 

Esto funciona perfectamente con :find o :tabfind, pero no funciona cuando dividiendo ¿Hay algún comando que haga esto que yo no sepa, o hay alguna forma de agregar esta funcionalidad a los comandos :split y :vsplit?

+1

Mi instalación de Vim 7.3 hace esto, y no creo que tenga que cambiar ninguna configuración. ¿Podría decirnos la versión de su instalación de Vim? –

+0

VIM - Vi IMproved 7.3 (2010 Ago 15, compilado el 11 de noviembre de 2010 14:49:38) Parches incluidos: 1-55 –

Respuesta

10

Como dijo romainl, :sf es el comando que realiza esta acción. No hay división vertical encontrada, aunque puede hacer lo mismo con el comando ligeramente más largo :vert sf.

3

Typing :split | :find<space>R (que significa "abrir una división luego encontrar ..." parece hacer el truco. Lo mismo con :vsplit.

Por lo que es una función personalizada y llamándolo con un nnoremap lo haría aún mejor.

Editar:

yo no sabía nada de :find y :tabfind así que les miraron hacia arriba en la ayuda de Vim y me encontré :sfind que hace exactamente una de las cosas que quiere Desafortunadamente no veo un. 210 o :vsfind.

Búscalo: :help sfind.

Cuestiones relacionadas