[vox-tech] LATEX, ucthesis.cls and changes in font size

Dylan Beaudette dylan.beaudette at gmail.com
Thu Dec 7 08:50:30 PST 2006


On 12/7/06, p at dirac.org <p at dirac.org> wrote:
> On Tue 05 Dec 06,  7:44 PM, Dylan Beaudette <dylan.beaudette at gmail.com> said:
> > Greetings,
> >
> > I am attempting to use the ucthesis.cls document class for my MS thesis, but
> > have run into a bit of a snag in terms of altering font size. Commands like
> > \tiny \scriptsize etc. do not seem to have any effect within a verbatim
> > environment. I did not have this problem when using a different document
> > class. Ideally I would like all verbatim blocks to be slightly smaller than
> > the rest of the text so that they don't take up as much room on the page.
> >
> > here is a link to some of the details:
> > http://www.movesinstitute.org/~kolsch/ucthesis/ucthesis.readme
> >
> > Cheers,
>
>
>
>
> Hey Dylan,
>
> Do yourself a favor and don't ever use verbatim.  There's another package
> which is at least an order of magnitude better.  Maybe even two orders of
> magnitude.  It's called fancyvrb.
>
>
> You can change font size quite easily with it:
>
>
>    \usepackage{fancyvrb}
>
>    \begin{Verbatim}[fontsize=8]
>       foobar
>    \end{Verbatim}
>
>
> The fancyvrb environment rocks supremely when you include another package
> called 'relsize' because it allows you to change fontsize relative to the
> current fontsize:
>
>
>    \usepackage{fancyvrb,relsize}
>
>    \begin{Verbatim}[fontsize=\relsize{-2}]
>       foobar
>    \end{Verbatim}
>
>
> It also allows you to print line numbers next to the text on the left margin
> (note you can also use "numbers=right" to get the numbers to the right of
> the text).
>
>
>    \begin{Verbatim}[fontsize=\relsize{-2},numbers=left]
>       item 1
>       item 2
>       item 3
>    \end{Verbatim}
>
>
> You can even define your own environment so you don't have to keep putting
> the same options within the [] everytime you use fancyvrb:
>
>
>    \DefineVerbatimEnvironment%
>       {VerbatimProg}%
>       {Verbatim}%
>       {numbers=left, fontsize=\relsize{-2}, frame=single}
>
>
>    \begin{VerbatimProg}
>    int main( int argc, char *argv[] );
>    \end{VerbatimProg}
>
>
> BTW, the "frame=single" means "put a frame box around the verbatim text".
> Another very cool feature.
>
> One really great thing about fancyvrb is that you __can__ use LaTeX commands
> from within the verbatim environment.  OH YESSSSSSSS!!!!!!
>
>    \DefineVerbatimEnvironment%
>       {VerbatimCmdProg}%
>       {Verbatim}%
>       {numbers=left, fontsize=\relsize{-2}, frame=single, commandchars=\\\{\}}
>
>
> Allows you to do...
>
>
>
>    \begin{VerbatimCmdProg}
>    int main( void )
>    \{
>          printf("hello world\Backslash{n}");   \label{printf_call}
>          return 0;
>    \}
>    \end{VerbatimCmdProg}
>
>
>    Here we call {\tt printf()} at line \ref{printf_call}.
>
>
> Two things to note when you use the commandchars feature of fancyvrb:
>
>    * You have to escape the French braces "{" and "}".
>    * You also have to jump through a hoop to print backslashes.  Here's how
>       I defined \Backslash:
>
>          \newcommand{\Backslash}[1]{\texttt{\symbol{92}}#1}
>
>
> This is just a very tiny example of the power of fancyvrb.
>
> Have fun!
>
> Peter

Thanks Pete!

I will look into this immediately!

Also, as a more general question: would you or any others recommend
using the slightly dated ucthesis.cls ? Or would the book class, with
some tweaking be better?

Any ideas?

Cheers,

Dylan


More information about the vox-tech mailing list