------------------------------------------------------------------------------
                       Songs LaTeX Package Documentation
------------------------------------------------------------------------------

Table Of Contents:
   I. Overview
   II. Copyright Notice
   III. System Requirements
   IV. Installation Instructions
   V. Usage
      A. LaTeX Package Style File and Documentation
      B. Sample Song Books
      C. Creating a New Song Book
      D. Support Utilities (songidx and sbdchk)
   VI. Removal / Reinstallation
   VII. Help and Support


I. Overview

The Songs package is for producing songbooks containing lyrics and chords
(but not sheet music).  Each songs document can produce a lyric-only songbook
for singers, a chorded songbook for musicians, a set of overhead
transparencies, or a set of digital projector slides, all from a single master
document.  It can also automatically generate partial songbooks consisting of
only some songs from the master document in a specified order.  Facilities for
automatic transposition and creation of guitar tablature diagrams are also
included.


II. Copyright Notice

The songs LaTeX package is copyright (C) 2012 Kevin W. Hamlen.

It is free software; you can redistribute it and/or modify it under the terms
of the GNU General Public License as published by the Free Software Foundation;
either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
Street, Fifth Floor, Boston, MA  02110-1301, USA.


III. System Requirements

In order to install and run this software, you will need:

1. a C compiler (included on all Unix systems),
2. a LaTeX2e installation (by default, the installation tries "pdflatex"),
3. tar and gunzip programs (to unpack the songs-x.xx.tar.gz file), and
4. an installation of GNU Make (to run the Makefile).


IV. Installation Instructions

1. Unpack the songs-x.xx.tar.gz file (where x.xx is the version number).

     gunzip songs-x.xx.tar.gz
     tar -xof songs-x.xx.tar

2. Change directory to the songs directory and run the configure script.

     cd songs-x.xx
     ./configure

3. Run GNU Make (other versions of Make are not supported).  To be sure that
you are using GNU Make and not some other version of Make, use the "gmake"
command:

     gmake

4. If you only intend to use the software by editing files within the
songs-x.xx directory tree (i.e., a single-user installation), then you don't
need to perform the following final step.  However, to allow other users to
access the software or to build song books yourself in other directories, you
must next install the binary programs, data files, LaTeX style files, and Vim
support scripts in appropriate places on your system.  This can either be done
semi-automatically or manually.  To install semi-automatically, make the
"install" target and specify appropriate directories as follows:

     gmake install bindir=... datadir=... texmfpath=...  docdir=...
                   vimfilespath=...

In the above, each "..." should be replaced with an appropriate directory
path.  The meaning of each directory specification name is as follows:

     bindir:       The songidx and sbdchk executables will be stored here.
     datadir:      The *.can data files used by songidx will be stored in
                     the "songs" subdirectory of this directory.
     texmfpath:    This should be the root of your LaTeX tree.  The songs.sty
                     LaTeX package file will be stored in the tex/latex/songs
                     subdirectory of this directory.
     docdir:       The songs.pdf, songs.ps, or songs.dvi documentation file
                     will be stored here.
     vimfilespath: This should be the root of your Vim local files directory.
                     (If you don't have Vim, omit the vimfilespath spec
                     completely.)  Vim support scripts will be installed in
                     various subdirectories of this directory.

If you omit one or all of the directory specifications, GNU Autoconf will
attempt to guess the appropriate location for each.  Suggestions for good
locations follow:

     For a typical multi-user installation, try the following:
       bindir=/usr/local/bin
       datadir=/usr/local/share
       texmfpath=/usr/share/texmf
       docdir=/usr/local/share/doc/songs
       vimfilespath=/usr/share/vim/vimfiles
     For a typical single-user installation, try the following:
       bindir=~/bin
       datadir=~/data
       texmfpath=~/localtexmf
       docdir=~/doc/songs
       vimfilespath=~/.vim

For example, an installation confined to a typical user home directory tree
might use:

     gmake install bindir=~/bin datadir=~/data texmfpath=~/localtexmf
                   docdir=~/doc/songs vimfilespath=~/.vim

Alternatively, you can manually install the relevant files by copying them
to the appropriate locations on your system.  For example:

     cp src/songidx/songidx src/sbdchk/sbdchk ~/bin
     mkdir ~/data/songs
     cp src/songidx/*.can src/sbdchk/hyphdict.tex ~/data/songs
     mkdir ~/localtexmf/tex/latex/songs
     cp src/songs/songs.sty ~/localtexmf/tex/latex/songs
     mkdir ~/doc/songs
     cp src/songs/songs.pdf ~/doc/songs
     cp -r src/vim ~/.vim


V. Usage

Running "gmake" from the songs-x.xx directory will generate the following file
clusters:

A. LaTeX Package Style File and Documentation

In songs/src/songs you will find:
* src/songs/songs.sty: If you don't use "gmake install" to install this LaTeX
  style file in the system's TeX repository tree, then songs.sty must be copied
  into each directory that has a .tex file that uses the songs package.  (This
  is done automatically by the makefile that generates the sample book.)
* src/songs/songs.pdf: This file fully documents the songs package and all of
  its features.  To generate documentation as a .dvi or .ps file instead, use
  "gmake dvi" or "gmake ps".

B. Sample Song Books

The GNUmakefile in songs/sample generates the sample song books.  There are
four books in total:

* sample/chordbook.pdf: a chord book for musicians,
* sample/lyricbook.pdf: a lyric book for singers,
* sample/slidebook.pdf: a book of slides for use with a digital projector, and
* sample/transparencies.pdf: book of transparencies for an overhead projector

All four books draw upon the song data contained in the file songs.sbd.  By
modifying that file, you can change the content of all four books.  To change
the formatting style of any particular book, change the corresponding
sample/*.tex file.

C. Creating a New Song Book

You can create a new song book directory by copying the sample directory and
its contents to a new subdirectory:

     cp -r sample mybook
     cd mybook
     gmake

If you have used "gmake install" to install the software (see Section III.4)
then your new "mybook" directory can be located anywhere; otherwise it must be
in the songs-x.xx directory.

D. Support Utilities (songidx and sbdchk)

* songs/src/songidx/songidx: This program is required for auto-generating song
  book indexes.  The GNUmakefile in songs/sample invokes it automatically as
  necessary.
* songs/src/sbdchk/sbdchk: The sbdchk program is a utility that proofs .sbd
  files for chord placement errors.  Chords are misplaced if they fall at an
  invalid hyphenation point or they break a ligature.  To use the sbdchk
  utility with the sample song books, change to the songs/sample directory and
  type

     gmake sbdcheck

  This will generate a report file named songs.hyp in the current directory.


VI. Removal / Reinstallation

To reverse the behavior of "make install", type:

     gmake uninstall

To merely delete all generated files within the songs directory (without
deleting the non-generated files), type:

     gmake clean


VII. Support and Bug Reporting

For the most current version of this software as well as author contact
information, see the songs project homepage at:

     http://songs.sourceforge.net

