% listings-tex-options.sty % ************************ % highlight LaTeX code with lstlistings % ===================================== % % :Author: Günter Milde % :Contact: milde@users.berlios.de % :Revision: $Revision: 5534 $ % :Date: $Date: 2005-06-28$ % :Copyright: © 2007, 2009 G. Milde, % Released without warranties or conditions of any kind % under the terms of the Apache License, Version 2.0 % http://www.apache.org/licenses/LICENSE-2.0 % % Usage % ----- % % For syntax highlight of literal blocks with the `listings` LaTeX package, % call ``rst2latex.py`` with the options % ``--stylesheet=listings-tex-options.sty --literal-block-env=lstlisting``. % % Adapt the settings to your needs by either % % * modifying a copy of this file under a different name, or % * copy parts of this file into your custom style sheet. % % See listings.pdf_ for configuration and usage of the listings package. % % Implementation % -------------- % % .. highlight:: latex % % Identification:: \ProvidesPackage{listings-tex-options} [2009/03/02 v0.1 highlight LaTeX with lstlistings] % Of course, we need to load the listings package itself:: \RequirePackage{listings} % In a document with lots of lists and listings, separating paragraphs by % vertical seems appropriate:: \RequirePackage{parskip} % load hyperref with blue citation colour:: \RequirePackage[colorlinks=true,linkcolor=blue,urlcolor=blue,citecolor=blue] {hyperref} % In the References/Bibliography section, % avoid holes in the title due to block alignment:: \renewcommand{\titlereference}[1]{\raggedright\textsl{#1}} % Omit the auto-inserted "References" heading, to be compatible with HTML % output also if use latex references is set:: \AtBeginDocument{\renewcommand{\refname}{\vspace{-2em}}} % Font settings % ~~~~~~~~~~~~~ % % Times, Helvetica, Courier:: %\RequirePackage{mathptmx} %\RequirePackage[scaled=.90]{helvet} % scaled to fit Times %\RequirePackage{courier} % Palatino, Helvetica, Courier:: \RequirePackage[sc]{mathpazo} % with small caps % \RequirePackage[sc,osf]{mathpazo} % with small caps and old style figures \RequirePackage[scaled=.95]{helvet} % scaled to fit Palatino \RequirePackage{courier} % (The TX typewriter font comes with bold, slanted, and small-caps variants % and without the problems of `txfonts`' math fonts). However, `txfonts` is % a contributed package, not necessarily available:: %\renewcommand{\ttdefault}{txtt} % Default language % ~~~~~~~~~~~~~~~~ % % Highlight literal blocks as TeX:: \lstset{language=[LaTeX]TeX} % pre-load the language:: \lstloadlanguages{[LaTeX]TeX} % comma separated list of languages % Style % ~~~~~ % % Typeface settings:: \lstset{ basicstyle=\ttfamily, % print whole listing in tt % basicstyle=\ttfamily\small, keywordstyle={}, % do not highlight keywords % identifierstyle=\slshape, % macros that are not keywords, args commentstyle=\rmfamily\itshape, % italic comments % stringstyle=\ttfamily, % typewriter type for strings % texcsstyle=\slshape, } % Visible whitespace:: \lstset{showstringspaces=false} % no visible spaces in strings %\lstset{showspaces=true, % showtabs=true, % tab=\rightarrowfill} % Line numbers:: %\lstset{numbers=left, numberstyle=\tiny, stepnumber=2, numbersep=5pt} % Frames around listings:: %\lstset{frame=single} % Extended characters in listings:: %extendedchars=true %extendedchars=false % Column alignment % ~~~~~~~~~~~~~~~~ % % (for typesetting with variable width fonts) % % ``columns=[c|l|r] `` % in [fixed, flexible, spaceflexible, or fullflexible] % % The optional c, l, or r controls the horizontal orientation of smallest % output units (keywords, identifiers, etc.). % % default: [c]fixed % % ``basewidth={fixed, flexible}`` % .. % % sets the width of a single character box for fixed and flexible column % mode (both to the same value or individually). % % default: {0.6em,0.45em} % % Free spacing for comments:: \lstset{columns=fullflexible, basewidth={0.5em,0.4em}} % .. _listings.pdf: % ftp://dante.ctan.org/tex-archive/macros/latex/contrib/listings/listings.pdf