たぶん私は分厚いだけなのかもしれませんが、インデント情報をすべて失うことなく(Pythonにとって重要な)自分の(Python)コードをラテックスに単純に貼り付ける賢明な方法を見つけることができません。
誰もが明るいアイデアを持っていますか?構文の強調表示については心配していません。必要なのは、タブキーを戻すだけです。
たぶん私は分厚いだけなのかもしれませんが、インデント情報をすべて失うことなく(Pythonにとって重要な)自分の(Python)コードをラテックスに単純に貼り付ける賢明な方法を見つけることができません。
誰もが明るいアイデアを持っていますか?構文の強調表示については心配していません。必要なのは、タブキーを戻すだけです。
回答:
このミントの私のお気に入りの環境。次のようなソースファイル全体を入力するために使用します。
\inputminted[linenos,fontsize=\scriptsize]{python}{script.py}
また、ファイルを入力せずに使用することもできます。さらに重要なこととして、いったん貼り付けられたときに、どの程度インデントがぐちゃぐちゃになるかを定義します。
\newminted{python}{gobble=4,linenos,fontsize=\scriptsize}
\begin{pythoncode}
print('I am a Python script')
\end{pythoncode}
そうすれば、LaTeXはまだうまくインデントされますが、逐語的なコードはインデントされません。これにより、構文の強調表示も提供されます。これは、あなたが興味がなかったと言っていました。言語を定義しないでください。
逐語的環境を使用する必要があります:http : //web.mit.edu/vogt/www/latex/ltx-79.html
貼り付けた直後に問題が発生する場合... IDEを使用してドキュメントを作成していますか?geditやメモ帳などのプレーンテキストエディタでファイルを開いてみてください。
リストパッケージを使用するには、パッケージを含めて、必要な言語をプリアンブルに読み込む必要があります。
\usepackage{listings}
\lstloadlanguages{Python}
ドキュメント内のいくつかのオプションを設定します。
\lstset{language=Python,tabsize=2}
...そしてインラインでスニペットを与えることができます:
\begin{lstlisting}
print ("Hello, World!")
\end{lstlisting}
...またはファイルから読み取る:
\lstinputlisting[firstline=10,lastline=20]{Hello.py}
...またはコードをインラインで記述します。 \lstinline!print ("Hello, World!")!