Writing your thesis in LaTeX on Linux
March 31st 2009 22:39
If you're ready to write your thesis - undergraduate or graduate - it seems like most of the people around you will shrug their shoulders and tell you to use Microsoft Word.
Your school might also subtly encourage the same behaviour, by installing Word across the department, as well as purchasing Endnote for reference management.
If you're fortunate enough to be using Linux, then an obvious solution is to eschew any word processor, moving straight to a document preparation system like LaTeX.
I won't go into WHY you should use LaTeX, except that, after writing half of my thesis in LaTeX, I'm constantly thankful for not having to do it in Microsoft Word. Instead, read these:
LaTeX isn't for everyone, but could be for you
Word Processors: Stupid and Inefficient
Word vs. LaTeX
Ok - so you've decided to use LaTeX for your thesis. You like the great typesetting, the output PDFs, the ease of adding features.
Now you're sitting down to it, and you're running a Linux distro with KDE. What are the key apps to make this as smooth as possible?
I'm running Kubuntu 8.04 on an underpowered Asus laptop, and it's more than enough to manage all of this. Furthermore, the tight integration of KDE apps makes it a delight to write in Kubuntu, even easier than using LaTeX in Windows!
First, obviously, I'm using Kile as the LaTeX frontend.
Why? Kile is a smart LaTeX frontend, determining if you need to run BibTeX, Makeindex, then running LaTeX the appropriate number of times, to make sure all the references are filled out.
It's got better auto-complete than other frontends that I've used, such as Texniccenter. For example, if I type 'equ' then Alt Space, Kile will auto complete a
Hey, I like that...!
Other nice features include a little terminal for any command line activity you need to do, simple file format conversions, and an excellent project manager.
Install:
For viewing my output PDFs, I use Okular - well, it's the default in Kubuntu, but it's an excellent app. It's tight and small, and it loads up really fast. No more waiting for Adobe Reader to 'load fonts'! Whee!
Why? The greatest thing about Okular - maybe many apps do this, I don't know - is that if you open your generated thesis, then run LaTeX again, Okular will watch the file and auto-load it. Ah, this is a dream... on my Windows platform, LaTeX will generate an error if I don't close the PDF first, which is just more click-click-clicking.
Additionally, Okular loads a heap of other formats, from TIFF to PS to electronic comic books!
Install:
Now, for the most important thing: reference managers... the most commonly used LaTeX reference manager is probably JabRef. Because it's written in Java, you can get it up-and-running on any machine that has Java on it, but this is weighty and slow for me.
No, instead, I use KBib, which is not well documented, but it -actually - incredible.
Why? KBib is no hassles... it's small, it loads in an instant. It'll autogenerate keys, sort your references out, edit fields and tags. Wonderful.
Even better, KBib will grab references from Google Scholar, which means you're flying, now. Or, if you've found a BibTex reference, simply select it, copy it, then paste it directly into KBib - it'll parse it into a reference.
KBib has tight integration with Kile, so if you select a reference, or several references, there's a button which will insert the '\cite{ref}' right into your document, where the cursor rests.
It's unobtrusive, not flashy, and gets the work done. That's my KBib!
Install:
My thesis has quite a lot of math and numerical simulation attached to it, but, luckily, I don't need anything fancy to get it done. While my Uni provides MatLAB, I wanted to complete my thesis with open-source, free software, so I used Octave, the open source equivalent of MatLAB.
Sure, this takes the occasional fiddle, since Octave is not quite 100% compatible.
But, on the whole, it's running great. Even better than MatLAB, actually, since, in Windows, it opens a big, fat GUI that takes 150 MB when it's doing nothing. Then, while I'm running a sim, my computer is hardly usable, except to surf the net.
On the other hand, despite my laptop having less power than my office desktop, running Octave in Kubuntu is a delight - even when cranking though sims, I can still do whatever I want, even play a quick interlude in the computation heavy, but devilishly addictive Dwarf Fortress.
Making figures for LaTeX can be a little tricky in Octave or MatLAB, but I came up with a great little system to knock this one out. I wrote a post on it here:
Use GLE to create LaTeX quality figures in Octave
It requires the use of a command line graphics compiler called GLE, which I've grown very fond of. From an Octave plot, I generate a .gle file, along with a data file. These are used to compile a PDF, which is then inserted into my LaTeX document.
Not that simple, perhaps, but flexible... if I need to change an axis title, I simply edit it in the .gle file, then run GLE again.
Why? There might be better alternatives to GLE, such as some of the interesting tikz environments in LaTeX, but I like the modularity of using GLE.
Install:
Go to the GLE homepage and download the source code.
These are the tools that I've found to be indispensable in writing my thesis... later, I'll describe some of the packages that I use in my thesis to make it come out all nice and pretty.
Your school might also subtly encourage the same behaviour, by installing Word across the department, as well as purchasing Endnote for reference management.
If you're fortunate enough to be using Linux, then an obvious solution is to eschew any word processor, moving straight to a document preparation system like LaTeX.
I won't go into WHY you should use LaTeX, except that, after writing half of my thesis in LaTeX, I'm constantly thankful for not having to do it in Microsoft Word. Instead, read these:
LaTeX isn't for everyone, but could be for you
Word Processors: Stupid and Inefficient
Word vs. LaTeX
Ok - so you've decided to use LaTeX for your thesis. You like the great typesetting, the output PDFs, the ease of adding features.
Now you're sitting down to it, and you're running a Linux distro with KDE. What are the key apps to make this as smooth as possible?
I'm running Kubuntu 8.04 on an underpowered Asus laptop, and it's more than enough to manage all of this. Furthermore, the tight integration of KDE apps makes it a delight to write in Kubuntu, even easier than using LaTeX in Windows!
First, obviously, I'm using Kile as the LaTeX frontend.
Why? Kile is a smart LaTeX frontend, determining if you need to run BibTeX, Makeindex, then running LaTeX the appropriate number of times, to make sure all the references are filled out.
It's got better auto-complete than other frontends that I've used, such as Texniccenter. For example, if I type 'equ' then Alt Space, Kile will auto complete a
\begin{equation}
\end{equation}
\end{equation}
Hey, I like that...!
Other nice features include a little terminal for any command line activity you need to do, simple file format conversions, and an excellent project manager.
Install:
sudo apt-get install kile
For viewing my output PDFs, I use Okular - well, it's the default in Kubuntu, but it's an excellent app. It's tight and small, and it loads up really fast. No more waiting for Adobe Reader to 'load fonts'! Whee!
Why? The greatest thing about Okular - maybe many apps do this, I don't know - is that if you open your generated thesis, then run LaTeX again, Okular will watch the file and auto-load it. Ah, this is a dream... on my Windows platform, LaTeX will generate an error if I don't close the PDF first, which is just more click-click-clicking.
Additionally, Okular loads a heap of other formats, from TIFF to PS to electronic comic books!
Install:
sudo apt-get install okular
Now, for the most important thing: reference managers... the most commonly used LaTeX reference manager is probably JabRef. Because it's written in Java, you can get it up-and-running on any machine that has Java on it, but this is weighty and slow for me.
No, instead, I use KBib, which is not well documented, but it -actually - incredible.
Why? KBib is no hassles... it's small, it loads in an instant. It'll autogenerate keys, sort your references out, edit fields and tags. Wonderful.
Even better, KBib will grab references from Google Scholar, which means you're flying, now. Or, if you've found a BibTex reference, simply select it, copy it, then paste it directly into KBib - it'll parse it into a reference.
KBib has tight integration with Kile, so if you select a reference, or several references, there's a button which will insert the '\cite{ref}' right into your document, where the cursor rests.
It's unobtrusive, not flashy, and gets the work done. That's my KBib!
Install:
sudo apt-get install kbib
My thesis has quite a lot of math and numerical simulation attached to it, but, luckily, I don't need anything fancy to get it done. While my Uni provides MatLAB, I wanted to complete my thesis with open-source, free software, so I used Octave, the open source equivalent of MatLAB.
Sure, this takes the occasional fiddle, since Octave is not quite 100% compatible.
But, on the whole, it's running great. Even better than MatLAB, actually, since, in Windows, it opens a big, fat GUI that takes 150 MB when it's doing nothing. Then, while I'm running a sim, my computer is hardly usable, except to surf the net.
On the other hand, despite my laptop having less power than my office desktop, running Octave in Kubuntu is a delight - even when cranking though sims, I can still do whatever I want, even play a quick interlude in the computation heavy, but devilishly addictive Dwarf Fortress.
Making figures for LaTeX can be a little tricky in Octave or MatLAB, but I came up with a great little system to knock this one out. I wrote a post on it here:
Use GLE to create LaTeX quality figures in Octave
It requires the use of a command line graphics compiler called GLE, which I've grown very fond of. From an Octave plot, I generate a .gle file, along with a data file. These are used to compile a PDF, which is then inserted into my LaTeX document.
Not that simple, perhaps, but flexible... if I need to change an axis title, I simply edit it in the .gle file, then run GLE again.
Why? There might be better alternatives to GLE, such as some of the interesting tikz environments in LaTeX, but I like the modularity of using GLE.
Install:
Go to the GLE homepage and download the source code.
These are the tools that I've found to be indispensable in writing my thesis... later, I'll describe some of the packages that I use in my thesis to make it come out all nice and pretty.
| 46 |
| Vote |






Comments (4)
Add Comments


Read More







