
Всякий раз, когда я хочу написать встроенный фрагмент кода LaTeX с использованием пакета listings
, мне приходится использовать следующую команду:
\lstinline[language={[latex]tex}, keywordstyle={\color[HTML]{101094}}]|\begin{document}|
\lstinline[language={[latex]tex}, keywordstyle={\color[HTML]{101094}}]|\end{document}|
\lstinline[language={[latex]tex}, keywordstyle={\color[HTML]{101094}}]|{\Huge test text}|
Обратите внимание, что текст, который нужно набрать \begin{document}
, заключен в два вертикальных символа (т.е. |
), чтобы принять подчеркивания и фигурные скобки в аргументе команды. Я хочу создать команду, которая заставит меня не вводить все параметры из \lstinline
команды
\LaTeXLST|\begin{document}|
\LaTeXLST|\end{document}|
\LaTeXLST|{\Huge test text}|
Примечание 1Я попытался сделать следующее, но безуспешно.
\newcommand\LaTeXLST[1]{\lstinline[language={[latex]tex}, keywordstyle={\color[HTML]{101094}}]|#1|}
Заметка 2Я думал создать lst
стиль, который бы определял language
и keywordstyle
, но идея создания команды более привлекательна, поскольку требует меньшего количества нажатий клавиш.
\lstinline[style=mylatex]|\begin{document}|
Заметка 3Я знаю, что LateX принимает только фигурные скобки в качестве разделителей аргументов, но я хочу имитировать поведение пакета \lstinline
, чтобы принимать вертикальные черты в качестве разделителей аргументов команд. Я читал документацию по пакету listings
, и вы можете использовать "любой символ, не входящий в код" (стр. 4) для разделения кода.
Причина, по которой я хочу это сделать, заключается в том, что я работаю над руководством по LaTeX для моих одноклассников. По этой причине мне нужно постоянно верстать листинги кода и встраивать код LaTeX в документ. Я использую , listings
потому что я могу определить стиль и поделиться этим стилем со всеми частями кода, которые были набраны с помощью команд listings
(т. е \lstinline
. , \lstinputlisting
, lstlisting
среда).