Supongamos que tengo el siguiente texto (el cursor está en el medio de la primera palabra "comenzar".
blah blah blah blah stuff stuff stuff
\\\begin{tabular}
{
|p{0.25\textwidth}
|p{0.2\textwidth}
|p{0.5\textwidth}
|}
\hline
Item & Type & Notes\\\hline
Text text text text text text text text &
Text text text text text &
Text text text text text text text text text text text text text text text text text
text text text text text text\\\hline
Installation instructions &
.txt / .html / TBD &
Installation help should be conspicuous but not the central item\\\hline
\end{tabular}
blah blah blah more stuff more stuff
Quiero cortar la mesa y moverla a otro lugar. Las líneas son en realidad mucho más largas, por lo que se ajustan varias veces y no puedo determinar fácilmente cuántas líneas quiero cortar.
Escribo d 2 / a r } / e ⏎ para eliminar hasta el segundo partido del "ar}" se detiene en la 'e'nd del patrón.
Pero esto se agarra desde el medio de la palabra 'comenzar' hasta el final de donde quiero cortar. Me gustaría tomar líneas completas y siento que debería haber un atajo para esto en menos de 6 teclas. No estoy usando Latex-VIM porque no me gusta mi instalación estándar de Windows de GVIM, así que no, no puedo (por lo que sé) agarrar fácilmente del \beginal \end. Me encantaría demostrar que estoy equivocado en eso.
Sí, esta pregunta es potencialmente un cruce de sitios de StackExchange, incluidos Tex, StackOverflow y Unix. Siéntase libre de sugerir un mejor sitio para preguntar esto.

V/ar}<CR>nxdebería hacer el trabajo.Respuestas:
Con un comando Ex:
Descompostura:
:{range}command{address}..pero se puede omitir como aquí, y terminamos con una coincidencia de patrones\end.dlas líneas en ese rango.Con una combinación de búsqueda y marcas contextuales:
Descompostura:
\e.delija desde aquí hasta la línea de la posición del cursor anterior.Con modo visual:
Descompostura:
\e.delija las líneas en la selección.Variación del método anterior con un comando Ex en lugar de un comando de modo normal:
Descompostura:
\e.:, el'<,'>rango se inserta automáticamente.delija las líneas en la selección.fuente
/\\e/;/\\eentonces la segunda solución se convierte en/\\e/;/\\e<CR>d''la tercera solución,v/\\e/;/\\e<CR>Vdetc. La;compensación lamentablemente no funciona en un rango. Deberías probar la sugerencia de benjifisher, es realmente genial.:,/\\e//\\e/d.Esta es una de las características que obtienes con el complemento matchit, parte de la distribución vim estándar. Para fines de prueba, haga esto de manera interactiva; si te gusta, puedes hacerlo desde tu archivo vimrc:
Después de esos dos comandos (ya sea interactivamente o durante el inicio como parte de su archivo vimrc)
y luego, con el cursor en cualquier lugar
\begin{tabular}, useV%para seleccionar todo el entorno. No estoy seguro de si lo considerará un error o una característica, pero esto incluirá líneas enteras, lo que significa que obtendrá el "\\" al principio.Esto también debería manejar entornos anidados y líneas comentadas, correctamente.
Casualmente, el mantenedor de matchit.vim es el mismo que el mantenedor del ftplugin estándar para tex.
fuente
\begin{tabular}línea, selecciona a}. Si el cursor está en una línea como\node [block] (start) ...en el medio de la palabranode, se selecciona desde el cursor al]..:setf tex, presionando%con el cursor en\\\begin{tabular}saltos a la correcta\end{tabular}$VIMRUNTIME/macros/. Cuando me refiero al ftplugin "estándar" para tex, me refiero al que viene en la distribución vim estándar.%, que es anulado por el complemento matchit. Por favor, preste atención al orden de los comandos en mi respuesta.