
.NET을 사용하여 내 문서에 Python 환경을 정의했습니다 tcolorbox
. 목록에 제목을 추가하고 싶습니다. 그러나 컴파일러는 pythoncode
환경에 다음을 추가하는 것에 대해 불평합니다.
\begin{pythoncode}[colback=red!5!white,colframe=red!75!black,title=My nice heading]
위 옵션을 제거하고 만 사용하면 \begin{pythoncode}[]
코드가 성공적으로 컴파일됩니다. 아래에는 이 문제에 대한 MWE가 있습니다.
\documentclass{book}
\usepackage[left=1.00in, right=1.00in, top=1.00in, bottom=1.00in]{geometry}
\usepackage{amsmath}
\usepackage[pdftex]{graphicx, color}
\usepackage{hyperref}
\hypersetup{ %
pdfborder = {0 0 0},
colorlinks=true,
}
\usepackage[T1]{fontenc}
\usepackage{tcolorbox}
\tcbuselibrary{minted,skins,breakable}
\newtcblisting{pythoncode}[1][]{
listing engine=minted,
breakable,
colback=bg,
colframe=black!70,
listing only,
minted style=colorful,
minted language=python,
minted options={linenos=true,numbersep=3mm,texcl=true,#1},
left=5mm,enhanced,
overlay={\begin{tcbclipinterior}\fill[black!25] (frame.south west)
rectangle ([xshift=5mm]frame.north west);\end{tcbclipinterior}}
}
\definecolor{bg}{rgb}{0.85,0.85,0.85}
\begin{document}
\section{Python example}
\begin{pythoncode}[colback=red!5!white,colframe=red!75!black,title=My nice heading]
# indent your Python code to put into an email
import glob
# glob supports Unix style pathname extensions
python_files = glob.glob('*.py')
for file_name in sorted(python_files):
print ' ------' + file_name
with open(file_name) as f:
for line in f:
print ' ' + line.rstrip()
print
\end{pythoncode}
\end{document}
누군가 이 문제를 밝혀줄 수 있나요?
답변1
#1
잘못된 위치에 인수가 있습니다 . 현재 여기에 있습니다:
minted options={linenos=true,numbersep=3mm,texcl=true,#1},
minted
그래서 당신은 당신이 원하는 것이 아닌 옵션을 패키지에 전달하고 있습니다 .
대신 다음 명령 바로 뒤의 옵션 목록 끝으로 이동하세요 overlay
.
overlay={\begin{tcbclipinterior}\fill[black!25] (frame.south west)
rectangle ([xshift=5mm]frame.north west);\end{tcbclipinterior}},
#1,
다음은 작동하는 버전입니다. hyperref
이 경우 마지막으로 로드해야 합니다. 보다Hyperref 이전이 아닌 이후에 어떤 패키지를 로드해야 합니까?상세 사항은.
% arara: pdflatex: {shell: yes}
\documentclass{book}
\usepackage[left=1.00in, right=1.00in, top=1.00in, bottom=1.00in]{geometry}
\usepackage{amsmath}
\usepackage{tcolorbox}
\tcbuselibrary{minted,skins,breakable}
\usepackage{hyperref}
\hypersetup{ %
pdfborder = {0 0 0},
colorlinks=true,
}
\newtcblisting{pythoncode}[1][]{
listing engine=minted,
breakable,
colback=bg,
colframe=black!70,
listing only,
minted style=colorful,
minted language=python,
minted options={linenos=true,numbersep=3mm,texcl=true},
left=5mm,enhanced,
overlay={\begin{tcbclipinterior}\fill[black!25] (frame.south west)
rectangle ([xshift=5mm]frame.north west);\end{tcbclipinterior}},
#1,
}
\begin{document}
\section{Python example}
\begin{pythoncode}[colback=red!5!white,colframe=red!75!black,title=My nice heading]
# indent your Python code to put into an email
import glob
# glob supports Unix style pathname extensions
python_files = glob.glob('*.py')
for file_name in sorted(python_files):
print ' ------' + file_name
with open(file_name) as f:
for line in f:
print ' ' + line.rstrip()
print
\end{pythoncode}
\end{document}