我试图将两个代码示例并排放置tcolorbox
。问题是我使用的alltt
环境是环境的派生项verbatim
。
这是我的代码:
\begin{tcolorbox}[sidebyside,title=Exemple]
On souhaite créer trois variables \verb~a~, \verb~b~ et \verb~c~ avec des chiffres puis faire des opérations dessus.
\begin{alltt}
{\color{green!50!black!}a} ← 2 (la variable a vaut 2)
{\color{green!50!black!}b} ← 3 (la variable b vaut 3)
{\color{green!50!black!}c} ← {\color{green!50!black!}a} + {\color{green!50!black!}b}
{\color{red}afficher} {\color{green!50!black!}c}
\(\Longrightarrow\) 5
\end{alltt}
\tcblower
On souhaite créer deux variables \verb~prenom~ et \verb~nom~ avec du texte.
\begin{alltt}
{\color{green!50!black!}prenom} ← "Jean"
{\color{green!50!black!}nom} ← "Jaurès"
{\color{red}afficher {\color{green!50!black!}prenom} + {\color{green!50!black!}nom}}
\(\Longrightarrow\) "Jean Jaurès"
\end{alltt}
\end{tcolorbox}
结果如下:
如您所见,问题在于第二列的起始位置与第一列的起始位置不同,而是较低。我认为这是因为环境verbatim
(嗯alltt
,因为当我删除它时,我没有遇到这个问题。
答案1
你需要sidebyside align=top
。
\documentclass{article}
\usepackage[margin=2cm]{geometry}
\usepackage[many]{tcolorbox}
\usepackage{alltt}
\begin{document}
\begin{tcolorbox}[
sidebyside,
sidebyside align=top,
title=Exemple
]
On souhaite créer trois variables \verb~a~, \verb~b~ et \verb~c~ avec
des chiffres puis faire des opérations dessus.
\begin{alltt}
{\color{green!50!black!}a} ← 2 (la variable a vaut 2)
{\color{green!50!black!}b} ← 3 (la variable b vaut 3)
{\color{green!50!black!}c} ← {\color{green!50!black!}a} + {\color{green!50!black!}b}
{\color{red}afficher} {\color{green!50!black!}c}
\(\Longrightarrow\) 5
\end{alltt}
\tcblower
On souhaite créer deux variables \verb~prenom~ et \verb~nom~ avec du texte.
\begin{alltt}
{\color{green!50!black!}prenom} ← "Jean"
{\color{green!50!black!}nom} ← "Jaurès"
{\color{red}afficher {\color{green!50!black!}prenom} + {\color{green!50!black!}nom}}
\(\Longrightarrow\) "Jean Jaurès"
\end{alltt}
\end{tcolorbox}
\end{document}
当然,更好的代码是
\documentclass{article}
\usepackage[margin=2cm]{geometry}
\usepackage[many]{tcolorbox}
\usepackage{alltt}
\colorlet{one}{green!50!black!}
\colorlet{two}{red}
\newcommand{\OO}[1]{\textcolor{one}{#1}}
\newcommand{\TT}[1]{\textcolor{two}{#1}}
\begin{document}
\begin{tcolorbox}[
sidebyside,
sidebyside align=top,
title=Exemple
]
On souhaite créer trois variables \verb~a~, \verb~b~ et \verb~c~ avec
des chiffres puis faire des opérations dessus.
\begin{alltt}
\OO{a} ← 2 (la variable a vaut 2)
\OO{b} ← 3 (la variable b vaut 3)
\OO{c} ← \OO{a} + \OO{b}
\TT{afficher} \OO{c}
\(\Longrightarrow\) 5
\end{alltt}
\tcblower
On souhaite créer deux variables \verb~prenom~ et \verb~nom~ avec du texte.
\begin{alltt}
\OO{prenom} ← "Jean"
\OO{nom} ← "Jaurès"
\TT{afficher} \OO{prenom} + \OO{nom}
\(\Longrightarrow\) "Jean Jaurès"
\end{alltt}
\end{tcolorbox}
\end{document}
重命名\OO
、和\TT
,使其在您的上下文中更加语义化。one
two