\documentclass[english]{article} \usepackage[latin1]{inputenc} \usepackage{babel} \usepackage{verbatim} %% do we have the `hyperref package? \IfFileExists{hyperref.sty}{ \usepackage[bookmarksopen,bookmarksnumbered]{hyperref} }{} %% do we have the `fancyhdr' package? \IfFileExists{fancyhdr.sty}{ \usepackage[fancyhdr]{latex2man} }{ %% do we have the `fancyheadings' package? \IfFileExists{fancyheadings.sty}{ \usepackage[fancy]{latex2man} }{ \usepackage[nofancy]{latex2man} \message{no fancyhdr or fancyheadings package present, discard it} }} \setVersionWord{Version:} %%% that's the default, no need to set it. \setVersion{0.0.1} \begin{document} \begin{Name}{1}{mp\_suggest}{Elf M. Sternberg}{Utilities}{mp\_suggest \\--\\ MP3 Encoding Suggestions} \Prog{mp\_suggest} is a tool to compare your existing MP3 files to their ID3 entries and suggest possible new entries. \end{Name} \section{Synopsis} %%%%%%%%%%%%%%%%%% \Prog{mp\_suggest} \oOptArg{-g}{ genre} \oOptArg{-r}{ artist} \oOptArg{-a}{ album} \oOpt{-d} \oOpt{-n} \oOpt{-h} \oOpt{-v} \section{Description} %%%%%%%%%%%%%%%%%%%%% \Prog{mp\_suggest} works on a directory of MP3 files and attempts to determine the album name, artist name, genre, title, and album order from various clue: the content of ID3 files, the sort order, and the name of the directory. It assumes that your MP3 filenames vaguely resemble the names of the songs, that they're organized with track number prefixes, and ideally that the directory is in ``Artist Name - Album Name'' format. It then generates a shell script suitable to piping into bash to change the details of all the MP3 files to match your specifications. The commands can be tweaked, and all of them override the techniques \Prog{mp\_suggest} uses to derive information. This is probably completely idiosyncratic to the way I do things in my own music archive, but as an exercise in writing Hy, it was fun. \section{Options} %%%%%%%%%%%%%%%%% \begin{Description} \item[\OptArg{--genre}{ genre}] Set the genre manually from the command line. This overrides any settings found in the ID3 tag. A short form of this tag is ``-g'' \item[\OptArg{--album}{ album}] Set the album manually from the command line. This overrides any settings found in the ID3 tag. A short form of this tag is ``-a'' \item[\OptArg{--artist}{ artist}] Set the artist manually from the command line. This overrides any settings found in the ID3 tag. A short form of this tag is ``-r'' \item[\Opt{--usedir}] Use the directory name for artist and album information. This overrides anything found in the ID3 tags. A short form of this tag is ``-n''. \item[\Opt{--usefilename}] Use the filename as the song title. This overrides anything found in the ID3 tags. A short form of this tag is ``-t''. \item[\Opt{--help}] Print a short help message. A short form of this tag is ``-h'' \item[\Opt{--version}] Print the version information. A short form of this tag is ``-v'' \end{Description} \section{Requirements} %%%%%%%%%%%%%%%%%%%%%% \begin{description}\setlength{\itemsep}{1cm} \item[Hy] \Prog{mp\_suggest} requires Hy version $>=$ 0.10.0, as well as a local install of both eyeD3 and django. I'll try to get these fixed eventually. \end{description} \section{Version} %%%%%%%%%%%%%%%%% Version: 0.0.1 of December 6, 2014 \section{License and Copyright} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{description} \item[Copyright] \copyright\ 2001, Elf M. Sternberg \\ \Email{elf.sternberg@gmail.com} \\ \URL{http://elfsternberg.com} \item[License] This program can be redistributed and/or modified under the terms of the GNU Public License. See the file COPYING or visit \URL{http://www.gnu.org/copyleft/gpl.html} for terms of use and distribution. \item[Misc] If you find this software useful, please drop me some email \end{description} \section{Author} %%%%%%%%%%%%%%%% \noindent Elf M. Sternberg \\ Email: \Email{elf.sternberg@gmail.com} \\ WWW: \URL{http://elfsternberg.com}. \LatexManEnd \end{document}