
Ich verwende das Listings-Paket, um Python-Code anzuzeigen, aber ich kann anscheinend kein optionales Argument angeben, das die vom Algorithmus verwendete Schriftgröße angibt. Y möchte, dass der Algorithmus in normaler Größe gedruckt wird, aber wenn ich einen Parameter an die python
Umgebung übergebe, soll stattdessen die neue Schriftgröße verwendet werden. Ich habe viele Beiträge darüber gesehen, wie das \newcommand
funktioniert, aber ich scheine es nicht zum Laufen zu bringen (ich habe gesehenDasUndDaszum Beispiel). Der Code, mit dem ich angefangen habe, ist dieser:
\documentclass{article}
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
\usepackage{listings}
\newcommand\pythonstyle{\lstset{language=Python,
basicstyle=\ttfamily\normalsize,
showstringspaces=false,
emph={ClassName}, % Custom highlighting
morekeywords={>, >=, <, <=, ==, !=, __init__, __new__, __lt__, __eq__, __ne__, __le__, __ge__, __gt__, __repr__, __str__, __del__, __format__, __hash__, __bool__}
}}
% Python environment
\lstnewenvironment{python}[1][mathescape]
{
\pythonstyle
\lstset{#1}
}
{}
\begin{document}
\begin{python}
def hi(s):
print("how are you?")
\end{python}
\end{document}
Antwort1
Ich würde dies nicht tun, da die Lösung der Frage bereits die Verwendung von z. B. unterstützt. \begin{python}[\basicstyle=\ttfamily\Huge]
Dennoch:
\documentclass{article}
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
\usepackage{listings}
\newcommand\pythonstyle[1][\normalsize]{\lstset{language=Python,
basicstyle=\ttfamily#1,
showstringspaces=false,
emph={ClassName}, % Custom highlighting
morekeywords={>, >=, <, <=, ==, !=, __init__, __new__, __lt__, __eq__, __ne__, __le__, __ge__, __gt__, __repr__, __str__, __del__, __format__, __hash__, __bool__}
}}
% Python environment
\lstnewenvironment{python}[1][\normalsize]
{
\pythonstyle[#1]
}
{}
\begin{document}
\begin{python}
def hi(s):
print("how are you?")
\end{python}
\begin{python}[\Huge]
def hi(s):
print("how are you?")
\end{python}
\end{document}