Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I am writing a long report and I need to include some codes I programed. I would like present my code with coloration, as we can have in some text editor (and not using verbatim).

I need the coloration mode for two kind of languages (coloration given can be totally different, no problem with that):

  • Bash language
  • (Java language)<= Already have it, thanks!

Thank you in advance for your help.

*concerning the coloration itself, we can consider as simple example linux text editor.

share|improve this question
add comment

2 Answers

up vote 3 down vote accepted

Not contradicting anything in JoG's answer:

\documentclass{article}
\usepackage{xcolor}
\usepackage{listings}
\lstset{basicstyle=\ttfamily,
  showstringspaces=false,
  commentstyle=\color{red},
  keywordstyle=\color{blue}
}

\begin{document}

\begin{lstlisting}[language=Java,caption={Java version}]
public class HelloWorld {
   // Here's the main class
   public static void main(String[] args) {
       System.out.println("Hello, world!");
   }
}
\end{lstlisting}

\begin{lstlisting}[language=bash,caption={bash version}]
#!/bin/bash
echo "Hello, world!"
\end{lstlisting}

\end{document}

enter image description here

share|improve this answer
add comment

for java i use the listings package with following style:

\definecolor{javakeyword}{rgb}{0,0,0.5}
\definecolor{javastring}{rgb}{0,0.5,0}
\definecolor{javacomment}{rgb}{0.5,0.5,0.5}
\lstdefinestyle{java}{
   language=Java,
   showspaces=false,
   showstringspaces=false,
   basicstyle=\ttfamily,
   columns=flexible,
   stringstyle=\color{javastring},
   keywordstyle=\color{javakeyword}\ttfamily\textbf,
   commentstyle=\color{javacomment}\ttfamily\textit
 }

which i then use like

\begin{lstlisting}[float,style=Java,caption={Correct Logging example},label=lst:logging]
  private static final Log log = LogFactory.getLog(MyClass.class);

  public void doSomeStuff(Stuff stuff) throws StuffException {
      checkNotNull(stuff,"stuff should not be null");
  }
\end{listlisting}
share|improve this answer
1  
Welcome to TeX.sx! Can you turn your code snippets into a complete minimal working example (MWE)? Again, welcome and we look forward for more of your contributions to the TeX.sx. –  hpesoj626 Jan 4 '13 at 11:46
    
listings also supports bash and several other languages. –  marczellm Jan 4 '13 at 12:04
    
@marczellm Indeed, the OP should use sh as the language because Java isn't appropriate and it's the best alternative to using bash. –  Marc van Dongen Jan 4 '13 at 13:16
    
@MarcvanDongen Ermmm... what? –  marczellm Jan 4 '13 at 13:24
    
@JoG:Thanks for Java it's working well, but what about bash and some special chars (like $) etc. –  user23710 Jan 4 '13 at 13:40
show 3 more comments

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.