Thursday, 30 September 2010

Installing a latex .sty file

I've never managed to successfully do this until now. Here's the deal:
1) download & unzip the package from CTAN
2) run latex on the .ins file so that it creates a .sty file
3) find out what your computer thinks your TDS tree should be:
kpsewhich -var-value TEXMFLOCAL
(mine says "/usr/local/share/texmf")
4) create the tree /usr/local/share/texmf/tex/latex/ if it isn't already there (where is the name of your sty file)
5) paste in your .sty file
6) run mktexlsr /usr/local/share/texmf/
7) profit.

Monday, 16 August 2010

Including pdf files into latex

Further to my earlier post today, this post is the story of how I managed to get my research papers into my thesis as appendices. The earlier post tells a fascinating tale of how I sorted the page counters out and forced some blank pages. I then compiled up to pdf (via ps2pdf, to include my eps diagrams). To insert my other pdf pages I wrote a new latex file to stitch stuff together using pdfpages. Sadly this makes my hyperlinks go away, but nevermind. The object here is to be able to have a file which can be printed and bound by people who don't care to re-arrange pages for me. Behold:

\documentclass[a4paper,portrait]{article}
\usepackage{pdfpages}

\begin{document}

\includepdf[pages={1-32}]{thesis.pdf}
\includepdf[pages={33-34}, landscape, turn=false]{thesis.pdf} % some landscape pages
\includepdf[pages={35-202}]{thesis.pdf}
\includepdf[pages={1-5,{},{},{}}, landscape, nup=1x2, turn=false]{Appendices/specs.pdf}
\includepdf[pages={203-204}]{thesis.pdf}
\includepdf[pages={1-4}]{Appendices/prl.pdf}
\includepdf[pages={205-206}]{thesis.pdf}
\includepdf[pages={1-4}]{Appendices/pra.pdf}
\includepdf[pages={207-220}]{thesis.pdf}

\end{document}

Chunks of my thesis are included (I guess you can spot them), including some landscape pages as a special case. The "turn = false" means that any pdf viewers still display them as portrait. This was important to me, as I want to be able to check they're not going to print upside down! The last two appendices are four pages each and on American letter ("freedom") paper, but that's okay: they'll be scaled for A4. The "specs.pdf" file is 5 pages long and I have included it as 2-up printing on landscape pages which show as portrait in the viewer. Since I needed ensure that they occupy 4 sides of A4 in total, I included 3 blank pages denoted by the empty braces {}. So, the first two-and-a-half sides of A4 have the 5 pages of specs.pdf, and then there are one-and-a-half blank sides following.

I compile with pdflatex.

LaTeX: coloured text and blank page fun.

I want to insert some research papers into my thesis. These are in separate pdf files which I don't yet know how I will insert. (pdfpages isn't my friend because I'm banned from using pdflatex due to having eps graphics which I can't be bothered to convert.)

I'll figure out that bit in a minute, but right now I want to force a blank page (with a header and footer) which will be printed on the reverse of an appendix section page. This has to come before the place where I will insert the pdf pages. Actually, latex adds this page automatically at the moment, because it wants my "Appendix" section pages to be on the right-hand sides of my document. The issue is that if I then start to add to my page counter, the reverse-side blank page has the wrong page number for where it will be printed!

Here's my work-around. Each introductory page for an appendix goes like this:

\chapter{An included paper}
Following is a copy of an amazing paper from our research group.
\newpage
\mbox{}

The mbox ensures the new page actually happens. Then, before the next \include{} in the master file, I add four pages (the research paper length!) to my counter.

\addtocounter{page}{4}

So far, so awesome. Now I'll fight to include the papers in the file. I'm thinking psutils...

OH! I forgot to tell you about coloured text! Before I found the mbox doo-dah I was going to just write "cheese" in white on the blank page. I'd do the following in my preamble:

\usepackage{color}
\definecolor{orange}{rgb}{1,0.5,0}

and then on my "blank" page, I'd do:

\newpage
\textcolor{orange}{cheese}

Ok, that's orange, but you get the picture. You can define white.

Monday, 7 June 2010

Non-coloured hyperrefs in latex

So, I love to leap around my thesis like superman using the "hyperref" package. However, I do not like increased printing costs by having pretty pink references on every page (our printer selects the cheaper b/w printing intelligently). I was colouring my links black using this clunky bit of code:
\hypersetup{
colorlinks,%
citecolor=black,%
filecolor=black,%
linkcolor=black,%
urlcolor=black
}
...but this resulted in the printer choosing to mix colours to achieve black text on pages with a hyperlink! Argh! It looked stupid, it was stupid! Hopefully this more elegant bit of code might fix whatever oddity is occuring:
\hypersetup{pdfborder={0 0 0},colorlinks = false}
The pdf certainly looks no different... fingers crossed for printing time.

Friday, 4 June 2010

Sidewaystable prints upside down

I have two consecutive landscape tables in my thesis using the "sidewaystable" package. The package rotates them so that the top of the table is closest to the spine of the book, however this manifests itself in the pdf as the page headers and footers appearing to the right of one landscape page, and to the left of the next. When I print double sided, one page has a header which is upside down. My preamble is thusly:

\documentclass[a4paper,11pt,twoside]{book}
\usepackage{rotating}

... the solution was to choose:

\usepackage[figuresright]{rotating}

So that the figures are always in one direction. Now my headers are always to the right of the landscape page. Hopefully this will now force them to be the right-way-up! If they both print upside down, I suppose I must choose [figuresleft] instead. I've no idea if this is just a symptom of my particular combination of pdf reader and printer, but hey-ho.

Thanks to the Szwer for solving this one for me.

Wednesday, 24 March 2010

Breaking URLs in BibTeX

Here's a work-around for a sticky problem when citing URLs in LaTeX documents.

My problem manifested itself in ugly URLs in my bibliography which did not break over multiple lines, causing underfull hboxes all over the shop: the line of text preceding the URLs had 5 words spread horridly across the page.

I tried various work-arounds found via google but the one that eventually solved my problem was found here in "BibTeX tips and FAQ" by M. Shell and D. Hoadley.

My preamble contains the following:
\usepackage{url}
\usepackage[ps2pdf, pagebackref]{hyperref}

And I cite all my URLs in BibTeX like this:
\url{http://morecakelessfish.blogspot.com/}

I like to compile into pdf by using dvi2ps then ps2pdf otherwise I seem to have some issues with offset bounding boxes in my pyxplot .eps graphics. Despite calling the url package in my references (see example above), my URLs still weren't breaking. Apparently this is a problem when going via dvi after including the hyperref package. The problem was solved by including breakurl.sty AFTER the hyperref package in my preamble thusly:

\usepackage{url}
\usepackage[ps2pdf, pagebackref]{hyperref}
\usepackage{breakurl}

Jobs a good'un.

Thursday, 23 July 2009

Battles won against my laptop

My 7 year old laptop is now too geriatric to run anything too meaty. Windows is definitely out of the question, so I have Xubuntu.
Today, I bring you:

How to add a terminal launcher to the xfce panel:
right-click>add new item>launcher
Then find the terminal program in /usr/bin/xfce4-terminal and drag it into the launcher. Or, just set command to "/usr/bin/xfce4-terminal" and uncheck the "run in terminal" box. Give it a nice name and picture of a terminal window.


How to connect to a windows shared area when smb4k is acting up:
If you can see the various windows computers in smb4k (eg ACOMPUTER) but it won't let you mount ACOMPUTER/afile, then try this on the command line...
sudo mount -t smbfs //ACOMPUTER/afile/ -o username=myname /home/myfile/MyMount/
...where you have provided your username to access the shared area. When prompted, give the corresponding password.
To unmount:
sudo umount /home/myfile/MyMount/