Удаление раздражающих брекетов/скобов

Удаление раздражающих брекетов/скобов

У меня есть команда, которая работает с таким синтаксисом:

\startmycommand[{

nononononononononononon
nononononononononononon
nononononononononononon

}]\endmycommand

Пользователь предоставил (превосходное) упрощение \startmycommand, как вы можете видеть выше:

\newcommand\mynewstartcommand{%
  \expandafter\startmycommand
  \expandafter[%
  \expandafter{%
  \iffalse}\fi
}%

Как я могу сделать то же самое для }]\endmycommand?

решение1

Возможно, вы ищете что-то вроде следующего примера:

\long\def\mynewstartcommand#1\endmycommand{%
  \startcommand[{#1}]\endmycommand
}

\mynewstartcommand

  nononononononononononon
  nononononononononononon
  nononononononononononon

\endmycommand

Но вопрос не совсем ясен: каково регулярное содержание аргумента, какова цель пустых строк в аргументе, каков желаемый синтаксис?

решение2

@Heiko Oberdiek, ваш ответ здесь сработал отлично.

Минимальный пример, иллюстрирующий, как я его использую, — с вашим предложением:

\documentclass[a4paper, twocolumn, twoside]{article}
\usepackage{lipsum}

\long\def\mynewstartcommand#1\endmycommand{%
  \twocolumn[{#1}]\vspace*{10 mm}
}

\begin{document}


\mynewstartcommand

\begin{minipage}{0.795\paperwidth}
\begin{minipage}[t][][b]{0.45\linewidth}
\lipsum[1]
\end{minipage}\qquad~\qquad
\begin{minipage}[t][][b]{0.45\linewidth}
\lipsum[2]
\vspace*{40 mm}
\end{minipage}
\end{minipage}


\lipsum[3]

\endmycommand


\end{document}

Связанный контент