В технических документах, набираемых с использованием латекса, мы обычно используем множество приемов «vspace», чтобы правильно расположить бумагу в пределах ограничения страницы.Конечно, когда шрифт или количество столбцов изменяется, они все ломаются.Как можно заменить все экземпляры таких элементов:
\vspace{3.4mm} \vspace{2in} \vspace{-1.2in} \vspace{-3mm}
на
\vspace{0mm}
с использованием шаблона vim?
%s/vspace{[^}]\+}/vspace{0mm}/g
ключ:
%
vspace{[^}]\+}
'}'
Одним из решений, которое не зависит от vim, является определение следующего
\newcommand{\myvspace}[1]{\vspace{#1}}
, затем, когда вы хотите изменить его на 0 мм, вы просто заменяете его на
\newcommand{\myvspace}[1]{\vspace{0mm}}
Несколько других ответов здесь будут слишком жадными, если в той же строке после цели } есть еще }.Следующее должно исправить это:
}
:%s/vspace{\zs[^}]\+\ze}/0mm/g
:%s#\\vspace{\zs.*\ze}#0mm#g
Эта команда выполняет работу?
Мне кажется, это работает:
:%s/\\vspace{.*}/\\vspace{0mm}/