Estoy escribiendo una biblioteca que está organizada en dos directorios src / e include / paralelos y bastante profundos que contienen mis archivos .cpp y .h respectivamente. Mi editor favorito es vim, pero aún no he encontrado una buena manera de cambiar rápidamente entre los archivos de origen y de cabecera rápidamente. Por ejemplo, puedo encontrarme editando
~ / workspace / myproject / include / myproject / core / utils / coolutil.h
y decido que ahora necesito hacer un pequeño cambio para
~ / workspace / myproject / src / myproject / core / utils / coolutil.cpp.
¿Existe una manera conveniente y ergonómica de manejar tales interruptores rápidamente en (g) vim? Mi enfoque actual es mantener abiertos dos árboles NERDTrees, uno para src / y otro para include /, aunque siento que debe haber un enfoque menos engorroso.
Respuestas:
Esta función puede hacer lo que quieras. Póngalo en su ~ / .vimrc o en un complemento. Se supone que todos sus archivos .cpp y .h están en directorios paralelos como en su ejemplo.
Cuando tiene abierto el archivo .cpp o .h, al escribir
,o
se abrirá el otro en una ventana dividida.fuente
El complemento alternativo a.vim resuelve esto. Es imprescindible al programar en C o en C ++.
fuente
g:alternateSearchPath
con las expresiones regulares correctas. por ejemplo,let g:alternateSearchPath = 'reg:#\<src\>$#include#,reg:#\<include\>$#src#'
para cambiar entrepath/to/source/include
ypath/to/source/src