[Tex/LaTex] Different minted styles for different languages

minted

I am trying to add two different snippets of code to a document, one in Java and one in ObjC. I have been able to set up the languages the way I like them, but I would like to set a different style depending on what language I am using. According to the minted documentation, the command \usemintedstyle[<language>]{<style>} can be used, but I keep on getting errors. This is what I have for now:

\documentclass[]{article}
\usepackage{filecontents}   % for writing to the .m file from within this .tex file
\usepackage{minted}

%Get the nice font for the code
\usepackage[T1]{fontenc}
\usepackage[scaled=0.8]{beramono}


\newmintedfile[objectiveccode]{objectivec}{
numberblanklines=true,
numbersep=12pt,
numbersep=5pt,
gobble=0,
frame=lines,
framerule=0.4pt,
framesep=1mm,
tabsize=4,
obeytabs=true,
samepage=false, %with this setting you can force the list to appear on the same page
showspaces=false,
showtabs =false,
linenos,
stepnumber=2
}

\newmintedfile[javacode]{java}{
numberblanklines=true,
numbersep=12pt,
numbersep=5pt,
gobble=0,
frame=lines,
framerule=0.4pt,
framesep=1mm,
tabsize=4,
obeytabs=true,
samepage=false, %with this setting you can force the list to appear on the same page
showspaces=false,
showtabs =false,
linenos,
stepnumber=2
}

% ===== CAUSING PROBLEMS =====
\usemintedstyle[objectivec]{xcode}
\usemintedstyle[java]{emacs}

\begin{document}

Prova

\begin{filecontents*}{sampleObjCcode.m} 
#import <stdio.h>

int main( int argc, const char *argv[] ) {
    printf( "hello world\n" );
    return 0;
}
\end{filecontents*}

\begin{filecontents*}{sampleJava.java} 
public class HelloWorld {

    public static void main(String[] args) {
        System.out.println("Hello, World");
    }

}\end{filecontents*}


\objectiveccode{sampleObjCcode.m}
\javacode{sampleJava.java}

\end{document}

Any ideas why it is failing?

Best Answer

Meanwhile this feature is integrated into the distro package minted. So the \usemintedstyle by language will work and output the following for your example:

style per language

Related Question