Vim: дергать всю среду Tex-файла

Я использую vim с latex-suite для редактирования моего документа, и иногда мне нужно скопировать всю среду (от \begin{...} до \end{...}). Например, я хочу скопировать эту часть

\begin{align*}
  \sigma &\rightarrow A | B | C | ABC \\
  A &\rightarrow a | \varepsilon \\
  B &\rightarrow b | \varepsilon \\
  C &\rightarrow c | \varepsilon
\end{align*}

Всякий раз, когда мне нужно сделать это, я должен перейти к начальным тегам, посчитать количество строк и ввести команду yank (6yy в случае вышеупомянутого примера).

Мой вопрос:

  1. Есть ли более быстрый способ сделать эту работу, которая похожа на вытащить весь тег в html или xml файле (yit, yat)?
  2. Если нет, не могли бы вы показать мне, как я могу создать свою собственную команду, чтобы сделать это в Vim?

1 ответ

Решение

Я бы посоветовал вам использовать плагин vim-textobj-latex, который дает вам новый текстовый объект. В частности, ae а также ie текстовые объекты для "среды" и "внутренней среды".

Примечание: плагин vim-textobj-latex использует vim-textobj-user

Другие вопросы по тегам