Использовать пользовательский разделитель для встроенной среды minted

Использовать пользовательский разделитель для встроенной среды minted

Используя этот listingsпакет, мы можем сделать следующее для создания |среды встроенного кода, разделенного символом (контуром):

\lstMakeShortInline|

Я заинтересован в использовании mintedпакета вместо этого, однако он, похоже, не поддерживает подобную комбинацию клавиш. Как мне сделать так, чтобы символ вертикальной черты разделял фрагмент встроенного кода, используя \mintinline.

решение1

Ниже представлен макрос \makemintedshortinline, который принимает два параметра: язык, который следует использовать, и символ, который вы хотите использовать в качестве сокращения.

Не обязательно экранировать символ (использовать \|вместо |) для каждого символа, но поскольку для некоторых это необходимо (например, %нельзя ввести напрямую и приходится использовать \%вместо ), то не помешает это сделать.

При активации символа не проверяется, имеет ли он уже определение, поэтому таким образом можно изменить используемый язык, например, \makemintedshortinline{python}\|после его использования для форматирования кода LaTeX можно использовать для форматирования кода Python позже в документе.

\documentclass{article}

\usepackage{minted}

\newcommand\makemintedshortinline[2]
  {%
    \catcode`#2=13
    \begingroup
    \lccode`\~=`#2
    \lowercase{%
    \endgroup
    \protected\def~{\mintinline{#1}~}%
    }%
  }

\makemintedshortinline{latex}\|

\begin{document}

|\verb+input+|

\end{document}

введите описание изображения здесь

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