2010-12-14 3 views
7

私はラテックスで行番号が のCソースコードを含む良いテンプレートを誰にでも勧められますか?例えば、こんにちは、古典の世界プログラムを取って、私は次のようにそれが見えるようにしたいと思います:Cソースコードのラテックス文書

(1) /* Hello World program */ 
(2) 
(3) #include<stdio.h> 
(4) 
(5) main() 
(6) { 
(7) printf("Hello World"); 
(8) } 

Typicall、私はいつもそのままの環境を使用しますが、行うには良いとよりよい方法がある場合、私は疑問に思ってそれ。

本当にありがとうございました リチャード

+1

tex.stackexchange.comを参照してください。http://stackoverflow.com/questions/741985/latex-source-code-listing-like-in-professional-books – deinst

+0

おそらく[TeXとLaTeX stackexchange](http://tex.stackexchange.com/)でより良い答えを得ることができます。 –

答えて

9

listings packageをご覧ください。それは非常に柔軟で使いやすいです。

0

CWEBは素晴らしいCフォーマッタを持っていました。

9

他の人が言ったように、listingsパッケージは、おそらくあなたは、次のようなものを使ってやりたいことになります。

\lstset{ 
    language=C,    % choose the language of the code 
    numbers=left,     % where to put the line-numbers 
    stepnumber=1,     % the step between two line-numbers.   
    numbersep=5pt,     % how far the line-numbers are from the code 
    backgroundcolor=\color{white}, % choose the background color. You must add \usepackage{color} 
    showspaces=false,    % show spaces adding particular underscores 
    showstringspaces=false,   % underline spaces within strings 
    showtabs=false,     % show tabs within strings adding particular underscores 
    tabsize=2,      % sets default tabsize to 2 spaces 
    captionpos=b,     % sets the caption-position to bottom 
    breaklines=true,    % sets automatic line breaking 
    breakatwhitespace=true,   % sets if automatic breaks should only happen at whitespace 
    title=\lstname,     % show the filename of files included with \lstinputlisting; 
} 

\lstinputlisting{HelloWorld.c} 

これはよりもはるかに多くのことを行いますが、より強力な代替手段は、mintedパッケージを使用することですあなたが現在与えていることは、あなたがそれを与えるコードを完全にトークン化できるように、あなたのシステムにpygmentsがインストールされていることが必要です。

0

ラテックスには、lgrindパッケージを使用してください。コードを.texファイルに変換する

関連する問題