

Ask HN: Best way to organize files for a book? - bpourriahi

I'm sure there are some of you that have written books before. Would like the 'hacker' (if you guys still read this site) approach to maintaining the contents for a book.<p>I was thinking of some sort of vim extension that had a windows explorer tree on the side of the screen (for weaving through folders/text files).
======
kroger
It depends of the kind of book you are writing and what the final file format
is. In the past I'd use LaTeX unconditionally, but I've been thinking about
using Sphinx[1].

[1] <http://sphinx.pocoo.org/>

The two main approaches are to have the whole book in one big file or one
chapter per file. I think that having one chapter per file is more flexible
and that's the way I'd do today.

Another thing to keep in mind is if your book is going to have source code. Is
it going to be highlighted? If so, in color or grayscale? Do you want to have
a way to test automatically every code snippet so you don't ship the book with
broken code examples?

Also, do you have images that need to be converted, say from inkscape to png
or eps? Usually I use a makefile for things like that.

------
shogunmike
I had a similar setup to pierrefar, with each chapter a separate LaTeX file.
However the whole project was in a Subversion repository. All of my papers,
figures and other binaries were included in there too.

I'm not going to pretend I know much about the implications of storing huge
binary files in SVN, but at least they were in VC.

The main benefit to me of this was not backup (although that was highly
useful!) but in the fact that I could write it up in the Uni office, at home
or on my laptop on holiday. Just don't forget to SVN commit every now and then
:-)

------
mark_l_watson
For my current writing project, I have two editions (one for JVM languages and
one for Common Lisp) so I have three directory structures: common material for
both editions, JVM, and Lisp.

For each of these structures, I use:

/ - top level have Latex files

/images - OmniGraffle figure files and exported vector PDFs

/code - code snippets that are automatically included and formatted using
Latex commands

------
pierrefar
For my thesis, each chapter was a separate LaTeX file, with one master index
file that pulled it all together. I didn't use version control then and in
retrospect, perhaps I should have.

One thing I did that saved my a __: daily backups. My hard disk actually died
3 days before my deadline. These days I would also use Dropbox.

------
linker3000
If it's going to be commercially published, the publishers often have their
own (sometimes mandatory) standards - for example, Wiley has a site dedicated
to their layout requirements: <http://www.wiley.com/legacy/DART/index.htm>

------
growt
if you're going vim try these plugins:

NERD_tree

minibufexplorer

command-t

good choices not only for books but also for coding.

