diff --git a/.cvsignore b/.cvsignore index 81eb43d..05b6858 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -latexmk-320.zip +latexmk-400e.zip diff --git a/latexmk-README.fedora b/latexmk-README.fedora index d21b016..f3ae382 100644 --- a/latexmk-README.fedora +++ b/latexmk-README.fedora @@ -1,12 +1,11 @@ I. CHANGES FROM UPSTREAM -Latexmk almost works out of the box. Three changes have been made to -conform to Fedora Core conventions. First, the default DVI, PostScript, -and PDF previewers have been changed to 'xdg-open'; see below for more -information. Second, the script has been altered so that it does not -search for the perl binary; perl is in a known location on Fedora Core -systems. Finally, the site-wide configuration file is /etc/latexmk.conf -only, as opposed to the list of names searched by the original latexmk. +Latexmk almost works out of the box. Two changes have been made to +conform to Fedora conventions. First, the default DVI, PostScript, and +PDF previewers have been changed to 'xdg-open'; see below for more +information. Second, the site-wide configuration file is +/etc/latexmk.conf only, as opposed to the list of names searched by the +original latexmk. II. PREVIEWERS diff --git a/latexmk-conf.patch b/latexmk-conf.patch index 8737a00..caa9d81 100644 --- a/latexmk-conf.patch +++ b/latexmk-conf.patch @@ -1,10 +1,10 @@ -diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 ---- latexmk-3.20.ORIG/latexmk.1 2007-07-03 14:22:44.000000000 -0600 -+++ latexmk-3.20/latexmk.1 2007-08-31 21:44:15.000000000 -0600 +diff -dur latexmk-4.00e.ORIG/latexmk.1 latexmk-4.00e/latexmk.1 +--- latexmk-4.00e.ORIG/latexmk.1 2008-03-12 09:34:24.000000000 -0600 ++++ latexmk-4.00e/latexmk.1 2008-09-24 10:05:29.000000000 -0600 @@ -1,9 +1,9 @@ --.TH LATEXMK 1L "3 July 2007" "" +-.TH LATEXMK 1L "12 March 2008" "" -.SH NAME -+.TH "LATEXMK" "1L" "3 July 2007" "" "" ++.TH "LATEXMK" "1L" "12 March 2008" "" "" +.SH "NAME" latexmk \- generate LaTeX document -.SH SYNOPSIS @@ -12,7 +12,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 .B latexmk [options] [file ...] -.SH DESCRIPTION +.SH "DESCRIPTION" - .I LatexMk + .I Latexmk completely automates the process of compiling a LaTeX document. Essentially, it is like a specialized relative of the general @@ -15,8 +15,8 @@ @@ -88,18 +88,18 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 \fR.fdb_latexmk\fR, by default) that contains the source file information. --.SH LATEXMK OPTIONS AND ARGUMENTS +-.SH LATEXMK OPTIONS AND ARGUMENTS ON COMMAND LINE -(All options can be introduced by single or double "-" characters, -e.g., "latexmk -help" or "latexmk --help".) -.TP -+.SH "LATEXMK OPTIONS AND ARGUMENTS" ++.SH "LATEXMK OPTIONS AND ARGUMENTS ON COMMAND LINE" +(All options can be introduced by single or double "\-" characters, +e.g., "latexmk \-help" or "latexmk \-\-help".) +.TP .B file One or more files can be specified. If no files are specified, \fIlatexmk\fR will, by default, run on all files in the current working directory -@@ -95,79 +95,79 @@ +@@ -97,32 +97,32 @@ latexmk foo then \fIlatexmk\fR will operate on the file "foo.tex". @@ -138,11 +138,12 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 .TP -.B -c +.B \-c - Clean up (remove) all regenerateable files generated by \fIlatex\fR - and \fIbibtex\fR except dvi, postscript and pdf. In addition, files - specified by the $clean_ext configuration variable are removed. But - the file containing a database of source file information is not - removed. + Clean up (remove) all regeneratable files generated by \fIlatex\fR and + \fIbibtex\fR except dvi, postscript and pdf. These files are a + combination of log files, aux files, and those with extensions +@@ -131,44 +131,44 @@ + removed. But the file containing a database of source file + information is not removed. -This cleanup is instead of a regular make. See the \fB-gg\fR option +This cleanup is instead of a regular make. See the \fB\-gg\fR option @@ -150,11 +151,11 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 .TP -.B -C +.B \-C - Clean up (remove) all regenerateable files generated by \fIlatex\fR - and \fIbibtex\fR including aux, dep, dvi, postscript and pdf. In - addition, those specified by the $clean_ext and $clean_full_ext - configuration variables are removed. But the file containing a - database of source file information is not removed. + Clean up (remove) all regeneratable files generated by \fIlatex\fR and +-\fIbibtex\fR. This is the same as the \fB-c\fR option with the ++\fIbibtex\fR. This is the same as the \fB\-c\fR option with the + addition of dvi, postscript and pdf files, and those with extensions + in the \fI$clean_full_ext\fR configuration variable. -This cleanup is instead of a regular make. See the \fB-gg\fR option +This cleanup is instead of a regular make. See the \fB\-gg\fR option @@ -162,11 +163,10 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 .TP -.B -CA +.B \-CA - Clean up (remove) absolutely all regenerateable files generated by - \fIlatex\fR and \fIbibtex\fR including aux, dep, dvi, postscript and - pdf. In addition, those specified by the $clean_ext, $clean_full_ext, - and @generated_exts configuration variables are removed, and the file - containing a database of source file information. + Clean up (remove) absolutely all regeneratable files. This is the +-action specified by \fB-C\fR with the addition of deleting the file ++action specified by \fB\-C\fR with the addition of deleting the file + containing the database of source file information. -This cleanup is instead of a regular make. It is the same as \fB-C --CF\fR. See the \fB-gg\fR option if you want to do a cleanup then a @@ -201,7 +201,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 Dvi file filtering. The argument to this option is a filter which will generate a filtered dvi file with the extension ".dviF". All extra processing (e.g. conversion to postscript, preview, printing) will then -@@ -175,117 +175,117 @@ +@@ -176,145 +176,145 @@ Example usage: To use dviselect to select only the even pages of the dvi file: @@ -224,10 +224,49 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 +.TP +.B \-dvi\- Turn off generation of dvi version of document. (This may get - overridden, if some other file is made (a .ps file) that is generated from - the dvi file, or if no generated file at all is requested.) + overridden, if some other file is made (e.g., a .ps file) that is + generated from the dvi file, or if no generated file at all is + requested.) +-.TP +-.B -e ++.TP ++.B \-e + Execute the specified initialization code before processing. The code + is \fIPerl\fR code of the same form as is used in \fIlatexmk\fR's +-initialization files -- for more details, see the information on the +-\fB-r\fR option, and the section about "Configuration/initialization ++initialization files \-\- for more details, see the information on the ++\fB\-r\fR option, and the section about "Configuration/initialization + (RC) files". The code is typically a sequence of assignment + statements separated by semicolons. + +-The code is executed when the \fB-e\fR option is encountered during +-\fIlatexmk\fR's parsing of its command line. See the \fB-r\fR option ++The code is executed when the \fB\-e\fR option is encountered during ++\fIlatexmk\fR's parsing of its command line. See the \fB\-r\fR option + for a way of executing initialization code from a file. An error +-results in \fIlatexmk\fR stopping. Multiple instances of the \fB-r\fR +-and \fB-e\fR options can be used, and they are executed in the order ++results in \fIlatexmk\fR stopping. Multiple instances of the \fB\-r\fR ++and \fB\-e\fR options can be used, and they are executed in the order + they appear on the command line. + + Some care is needed to deal with proper quoting of special characters + in the code on the command line. For example, suppose it is desired +-to set the latex command to use its -shell-escape option, then under ++to set the latex command to use its \-shell\-escape option, then under + UNIX/LINUX you could use the line + +- latexmk -e '$latex=q/latex %O -shell-escape %S/' file.tex ++ latexmk \-e '$latex=q/latex %O \-shell\-escape %S/' file.tex + + (Note that the q/.../ construct is a \fIPerl\fR idiom equivalent to using + single quotes. This is easier than arranging to get a quote character + correctly escaped in a way that is independent of the shell and the +-operating-system.) -.TP -.B -f ++operating\-system.) +.TP +.B \-f Force \fIlatexmk\fR to continue document processing despite errors. @@ -249,7 +288,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 +.B \-g Force \fIlatexmk\fR to process document fully, even under situations where \fIlatexmk\fR would normally decide that no changes in the - source files have occured since the previous run. + source files have occurred since the previous run. This option is useful, for example, if you change some options and wish to reprocess the files. -.TP @@ -379,9 +418,9 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 Postscript file filtering. The argument to this option is a filter which will generate a filtered postscript file with the extension ".psF". All extra processing (e.g. preview, printing) will then be -@@ -293,54 +293,54 @@ +@@ -322,51 +322,51 @@ - Example usage: Use psnup to print two pages on the one page: + Example of usage: Use psnup to print two pages on the one page: - latexmk -ps -pF 'psnup -2' foo.tex + latexmk \-ps \-pF 'psnup \-2' foo.tex @@ -425,11 +464,6 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 -governed by the other options, and is the same as for the \fB-pv\fR +governed by the other options, and is the same as for the \fB\-pv\fR option. --This option also turns on the \fB-f\fR option, since it is normally --desirable in preview-continuous-mode to continue working even if -+This option also turns on the \fB\-f\fR option, since it is normally -+desirable in preview\-continuous\-mode to continue working even if - errors are found. -The preview-continuous option \fB-pvc\fR can only work with one file. +The preview\-continuous option \fB\-pvc\fR can only work with one file. So in this case you will normally only specify one filename on @@ -457,7 +491,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 There are some other methods for arranging an update, notably useful for many versions of xdvi and xpdf. These are best set in -@@ -348,65 +348,65 @@ +@@ -374,26 +374,26 @@ Note that if \fIlatexmk\fR dies or is stopped by the user, the "forked" previewer will continue to run. Successive invocations with @@ -485,18 +519,31 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 Read the specified initialization file ("RC file") before processing. -Be careful about the ordering: (1) Standard initialization files -- --see the section below on "Initialization (RC) files" -- are read +-see the section below on "Configuration/initialization (RC) files" -- +Be careful about the ordering: (1) Standard initialization files \-\- -+see the section below on "Initialization (RC) files" \-\- are read - first. (2) Then the options on the command line are acted on in the - order they are given. Therefore if an initialization file is ++see the section below on "Configuration/initialization (RC) files" \-\- + are read first. (2) Then the options on the command line are acted on + in the order they are given. Therefore if an initialization file is -specified by the \fB-r\fR option, it is read during this second step. -Thus an initialization file specified with the \fB-r\fR option can +specified by the \fB\-r\fR option, it is read during this second step. +Thus an initialization file specified with the \fB\-r\fR option can override both the standard initialization files and \fIpreviously\fR specified options. But all of these can be overridden by \fIlater\fR - options. See below for more details about initialization (RC) files. + options. +@@ -401,48 +401,48 @@ + The contents of the RC file just comprise a piece of code in the + \fIPerl\fR programming language + (typically a sequence of assignment statements); they are executed +-when the \fB-r\fR option is encountered during \fIlatexmk\fR's parsing +-of its command line. See the \fB-e\fR option for a way of giving ++when the \fB\-r\fR option is encountered during \fIlatexmk\fR's parsing ++of its command line. See the \fB\-e\fR option for a way of giving + initialization code directly on \fIlatexmk\fR's command line. An + error results in \fIlatexmk\fR stopping. Multiple instances of the +-\fB-r\fR and \fB-e\fR options can be used, and they are executed in ++\fB\-r\fR and \fB\-e\fR options can be used, and they are executed in + the order they appear on the command line. -.TP -.B -silent +.TP @@ -556,24 +603,26 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 file, start a previewer. Then watch for changes in the source file thesis.tex and any files it -@@ -416,55 +416,56 @@ +@@ -452,37 +452,38 @@ encounters an error, latexmk will keep running. --% \fBlatexmk -c\fR \fI# remove .aux, .log, .bbl, .blg, .dep, -+% \fBlatexmk \-c\fR \fI# remove .aux, .log, .bbl, .blg, .dep, - .dvi, .pdf, .ps & .bbl files\fR --.SH INITIALIZATION (RC) FILES +-% \fBlatexmk -c\fR \fI# remove .aux, .log, .bbl, .blg, .dvi, ++% \fBlatexmk \-c\fR \fI# remove .aux, .log, .bbl, .blg, .dvi, + .pdf, .ps & .bbl files\fR + + +-.SH CONFIGURATION/INITIALIZATION (RC) FILES -.PP -+.SH "INITIALIZATION (RC) FILES" ++.SH "CONFIGURATION/INITIALIZATION (RC) FILES" +.PP - There are four initialization files ("RC files") that \fIlatexmk\fR can - read at startup: + \fILatexmk\fR can be customized using initialization files, which are + read at startup in the following order: -.PP +.PP 1) The system RC file, if it exists. On a UNIX system, \fIlatexmk\fR searches for following places for its - system RC file, in the following order, and reads the first it finds: + system RC file, in the following order, and reads the first it finds: "/opt/local/share/latexmk/LatexMk", "/usr/local/share/latexmk/LatexMk", "/usr/local/lib/latexmk/LatexMk". @@ -582,41 +631,50 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 + On Fedora systems, it only looks for "/etc/latexmk.conf". + On a MS\-WINDOWS system it looks for "C:\\latexmk\\LatexMk". +.PP - 2) The user's RC file in "$HOME/.latexmkrc", where $HOME is the value - of the environment variable HOME. On UNIX and clones (including LINUX), - this variable --is set by the system; on MS-Windows, the user may choose to set it. + 2) The user's RC file, "$HOME/.latexmkrc", if it exists. Here $HOME + is the value of the environment variable HOME. On UNIX and clones +-(including LINUX), this variable is set by the system; on MS-Windows, ++(including LINUX), this variable is set by the system; on MS\-Windows, + the user may choose to set it. -.PP -+is set by the system; on MS\-Windows, the user may choose to set it. +.PP - 3) The RC file in the current working directory called "latexmkrc". + 3) The RC file in the current working directory. This file can be + named either "latexmkrc" or ".latexmkrc", and the first of these to be + found is used, if any. -.PP -4) Any RC file(s) specified on the command line with the \fB-r\fR option. -.PP +.PP +4) Any RC file(s) specified on the command line with the \fB\-r\fR option. +.PP - Each RC file is a sequence of Perl commands. Usually it will be just a --sequence of assignment statements that override the built-in settings of -+sequence of assignment statements that override the built\-in settings of - \fILatexmk\fR. Comment lines are introduced by the "#" character. + Each RC file is a sequence of \fIPerl\fR commands. Naturally a user can use + this in creative ways. But for most purposes, one simply uses a +-sequence of assignment statements that override some of the built-in ++sequence of assignment statements that override some of the built\-in + settings of \fILatexmk\fR. Straightforward cases can be handled + without knowledge of the \fIPerl\fR language by using the examples in this + document as templates. Comment lines are introduced by the "#" +@@ -490,27 +491,27 @@ Note that command line options are obeyed in the order in which they are written; thus any RC file specified on the command line with -the \fB-r\fR option can override previous options but can be itself +the \fB\-r\fR option can override previous options but can be itself - overridden by later options on the command line. + overridden by later options on the command line. There is also the +-\fB-e\fR option, which allows initialization code to be specified in ++\fB\-e\fR option, which allows initialization code to be specified in + \fIlatexm\fR's command line. --.SH RC VARIABLES IN INITIALIZATION FILES +-.SH HOW TO SET VARIABLES IN INITIALIZATION FILES -.PP -+.SH "RC VARIABLES IN INITIALIZATION FILES" ++.SH "HOW TO SET VARIABLES IN INITIALIZATION FILES" +.PP - Many of the available variables that can be set are shown in the next - section. Syntax for the statements in an initialization file is of - the form: + The important variables that can be configured are described in the + section "List of configuration variables usable in initialization + files". Syntax for setting these variables is of the following forms: -.PP +.PP - $bibtex = 'bibtex'; + $bibtex = 'bibtex %O %B'; -.PP +.PP for the setting of a string variable, @@ -631,23 +689,88 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 @default_files = ('paper', 'paper1'); -.PP +.PP - for the setting of an array of strings. + for the setting of an array of strings. It is possible to append an + item to an array variable as follows: + +@@ -525,8 +526,7 @@ + + + +-.SH FORMAT OF COMMAND SPECIFICATIONS +- ++.SH "FORMAT OF COMMAND SPECIFICATIONS" + Some of the variables set the commands that \fIlatexmk\fR uses for + carrying out its work, for example to generate a dvi file from a tex + file or to view a postscript file. This section describes some +@@ -534,42 +534,42 @@ + + \fBPlaceholders\fR: Supposed you wanted \fIlatexmk\fR to use the + command elatex in place of the regular latex command, and suppose +-moreover that you wanted to give it the option "--shell-escape". You ++moreover that you wanted to give it the option "\-\-shell\-escape". You + could do this by the following setting: + +- $latex = 'elatex --shell-escape %O %S'; ++ $latex = 'elatex \-\-shell\-escape %O %S'; - Some of the variables set the names of the commands that \fIlatexmk\fR -@@ -472,37 +473,37 @@ + The two items starting with the % character are placeholders. These + are substituted by appropriate values before the command is run. Thus + %S will be replaced by the source file that elatex will be applied to, + and %O will be replaced by any options that \fIlatexmk\fR has decided +-to use for this command. (E.g., if you used the -silent option it +-would replace %O by "-interaction=batchmode".) ++to use for this command. (E.g., if you used the \-silent option it ++would replace %O by "\-interaction=batchmode".) - \fB"Detaching" a command\fR: If a command is to be run detached this - is indicated by preceding it with "start", as in + The available placeholders are: +-.TP ++.TP + .B %B + base of filename for current command. E.g., if a postscript file + document.ps is being made from the dvi file document.dvi, then the + basename is document. +-.TP ++.TP + .B %D + destination file (e.g., the name of the postscript file when + converting a dvi file to postscript). +-.TP ++.TP + .B %O + options +-.TP ++.TP + .B %R + root filename. This is the base name for the main tex file. +-.TP ++.TP + .B %S + source file (e.g., the name of the dvi file when converting a dvi file + to ps). +-.TP ++.TP + .B %T + The name of the primary tex file. -.PP +.PP - $dvi_previewer = 'start xdvi'; + The distinction between %B and %R needs a bit of care, since they are + often the same, but not always. For example on a simple document, the + basename of a bibtex run is the same as for the texfile. But in a +@@ -601,9 +601,9 @@ + the previewer running and then returns to its next task (or exits if + there is nothing else to do). To achieve this effect of detaching a + command, you need to precede the command name with "start ", as in +-.PP ++.PP + $dvi_previewer = 'start xdvi %O %S'; -.PP +.PP This will be translated to whatever is appropriate for your operating - system. (Note: in some circumstances, \fIlatex\fR will always run a - command detached. This is the case for a previewer in preview - continuous mode, since otherwise previewing continuously makes no - sense.) + system. + +@@ -615,28 +615,28 @@ + of the command string, that is equivalent to having just one. + -\fBCommand names containing spaces\fR: Under MS-Windows it is common +\fBCommand names containing spaces\fR: Under MS\-Windows it is common @@ -655,7 +778,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 installed in a subdirectory of "C:\Program Files". Such command names should be enclosed in double quotes, as in - $lpr_pdf = '"c:/Program Files/Ghostgum/gsview/gsview32.exe" /p'; + $lpr_pdf = '"c:/Program Files/Ghostgum/gsview/gsview32.exe" /p %S'; -\fBUsing MS-Windows file associations\fR: A useful trick under modern -versions of MS-Windows (e.g., WinXP) is to use just the command @@ -664,7 +787,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 'start' by itself: -.PP +.PP - $dvi_previewer = 'start'; + $dvi_previewer = 'start %S'; -.PP -Under recent versions of MS-Windows, this will cause to be run +.PP @@ -679,56 +802,48 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 $lpr = 'NONE lpr'; -.PP +.PP - This means that an appropriate command has not been configured. The - string after the 'NONE' is effectively a comment. + This typically is used when an appropriate command does not exist on + your system. The string after the "NONE" is effectively a comment. -@@ -512,9 +513,9 @@ +@@ -646,9 +646,9 @@ Suppose you want \fIlatexmk\fR to use latex with source specials enabled. Then you might use the following line in an initialization file: -.PP -- $latex = 'latex --src-specials'; +- $latex = 'latex --src-specials %O %S'; -.PP +.PP -+ $latex = 'latex \-\-src\-specials'; ++ $latex = 'latex \-\-src\-specials %O %S'; +.PP - \fBAdvanced tricks\fR: Normally \fIlatexmk\fR assumes certain behavior - for commands and in particular it assumes certain kinds and ordering -@@ -522,50 +523,50 @@ - example you might want to use Distiller to convert postscript files to - pdf files. You cannot simply change the name of the ps2pdf conversion - program, as in --.PP -+.PP - $ps2pdf = 'distiller'; ######### WRONG --.PP -+.PP - because the command line arguments will be wrong. In such a --situation, your best bet is to write a batch file (under MS-Windows) or -+situation, your best bet is to write a batch file (under MS\-Windows) or - a script (under UNIX) that will do the conversion. Then you set --.PP -+.PP - $ps2pdf = 'special_script'; --.PP -+.PP - Your script will be invoked by \fIlatexmk\fR in its usual way as - "Special_script file.ps file.pdf". Your script calls Distiller with - Distiller's correct arguments. + \fBAdvanced tricks\fR: Normally one specifies a single command for the + commands invoked by \fIlatexmk\fR. Naturally, if there is some +@@ -662,45 +662,45 @@ + file from a tex file you need to run another program after pdflatex to + perform some extra processing, you could do something like: + +- $pdflatex = 'pdflatex --shell-escape %O %S; pst2pdf_for_latexmk %B'; ++ $pdflatex = 'pdflatex \-\-shell\-escape %O %S; pst2pdf_for_latexmk %B'; + +-This definition assumes you are using a UNIX-like system, so that the ++This definition assumes you are using a UNIX\-like system, so that the + two commands to be run are separated by the semicolon in the middle of + the string. --.SH LIST OF RC VARIABLES IN INITIALIZATION FILES + +-.SH LIST OF CONFIGURATION VARIABLES USABLE IN INITIALIZATION FILES -.PP -+.SH "LIST OF RC VARIABLES IN INITIALIZATION FILES" ++.SH "LIST OF CONFIGURATION VARIABLES USABLE IN INITIALIZATION FILES" +.PP Default values are indicated in brackets. -.TP +.TP .B $banner [0] - If nonzero, the banner message is printed across each page when converting - the dvi file to postscript. Without modifying $banner_message, this is --equivalent to specifying the \fB-d\fR option. -+equivalent to specifying the \fB\-d\fR option. + If nonzero, the banner message is printed across each page when + converting the dvi file to postscript. Without modifying the variable +-\fI$banner_message\fR, this is equivalent to specifying the \fB-d\fR ++\fI$banner_message\fR, this is equivalent to specifying the \fB\-d\fR + option. Note that if \fB$banner\fR is nonzero, the \fB$postscript_mode\fR is assumed and the postscript file is always generated, even if it is newer @@ -760,15 +875,15 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 +\fB\-bs\fR option. +.TP .B @BIBINPUTS - This is an array variable that specifies directories where - \fIlatexmk\fR should look for .bib files. By default it is set from -@@ -588,13 +589,13 @@ - - This variable is likely to become obsolete in a future version of - \fIlatexmk\fR which uses a better method of searching for files. + This is an array variable, now mostly obsolete, that specifies + directories where +@@ -728,13 +728,13 @@ + since it has a better method of searching for files using the + kpsewhich command. However, if your system is an unusual one without + the kpsewhich command, you may need to set the variable \fI@BIBINPUTS\fR. -.TP +.TP - .B $bibtex ["bibtex"] + .B $bibtex ["bibtex %O %S"] The BibTeX processing program. -.TP -.B $bibtex_silent_switch ["-terse"] @@ -780,8 +895,8 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 .B $cleanup_mode [0] If nonzero, specifies cleanup mode: 1 for full cleanup, 2 for cleanup except for dvi, ps and pdf files, 3 for cleanup except for dep and aux -@@ -602,21 +603,21 @@ - $clean_full_ext and @generated_exts variables.) +@@ -743,21 +743,21 @@ + variables.) This variable is equivalent to specifying one of -the \fB-c\fR, \fB-c1\fR, or \fB-C\fR options. But there should be no need @@ -811,7 +926,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 .B @default_files [('*.tex')] Default list of files to be processed. -@@ -643,30 +644,30 @@ +@@ -784,56 +784,56 @@ is '.tex'. Wild cards are allowed. The parentheses are because \fI@default_files\fR is an array variable, i.e., a sequence of filename specifications is possible. @@ -823,7 +938,13 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 -.TP +other processing. Equivalent to specifying the \fB\-dF\fR option. +.TP - .B $dvi_previewer ["start xdvi" under UNIX] + .B $dvi_mode [0] + If nonzero, generate a dvi version of the document. +-Equivalent to the \fB-dvi\fR option. +-.TP ++Equivalent to the \fB\-dvi\fR option. ++.TP + .B $dvi_previewer ["start xdvi %O %S" under UNIX] -The command to invoke a dvi-previewer. -[Default is "start" under MS-WINDOWS; under more recent versions of +The command to invoke a dvi\-previewer. @@ -832,7 +953,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 associated with .dvi files.] -.TP +.TP - .B $dvi_previewer_landscape ["start xdvi"] + .B $dvi_previewer_landscape ["start xdvi %O %S"] -The command to invoke a dvi-previewer in landscape mode. -[Default is "start" under MS-WINDOWS; under more recent versions of +The command to invoke a dvi\-previewer in landscape mode. @@ -841,32 +962,32 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 associated with .dvi files.] -.TP +.TP - .B $dvipdf ["dvipdf"] - Command to convert dvi to pdf file. + .B $dvipdf ["dvipdf %O %S %D"] + Command to convert dvi to pdf file. A common reconfiguration is to + use the dvipdfm command, which needs its arguments in a different order: + +- $dvipdf = 'dvipdfm %O -o %D %S'; ++ $dvipdf = 'dvipdfm %O \-o %D %S'; - WARNING1: The default dvipdf - script generates pdf files with bitmapped fonts, which don't look - good when viewed by acroread. The script should be modified to give --dvips the options "-P pdf" to ensure that type 1 fonts are used in the -+dvips the options "\-P pdf" to ensure that type 1 fonts are used in the - pdf file. + WARNING: The default dvipdf script generates pdf files with bitmapped + fonts, which do not look good when viewed by acroread. That script +-should be modified to give dvips the options "-P pdf" to ensure that ++should be modified to give dvips the options "\-P pdf" to ensure that + type 1 fonts are used in the pdf file. - WARNING 2: If you want to use one of the programs dvipdfm or dvipdfmx -@@ -676,29 +677,29 @@ - the command line. See the extra_scripts directory of the latexmk - distribution, where the necessary scripts dvipdfm_call, etc are to be - found, together with instructions for their use in the file README1. -.TP +-.B $dvips ["dvips %O -o %D %S"] +.TP - .B $dvips ["dvips"] ++.B $dvips ["dvips %O \-o %D %S"] The program to used as a filter to convert a .dvi file to a .ps file. If pdf is going to be generated from pdf, then the value of the --$dvips_pdf_switch -- see below -- will be appended. +-$dvips_pdf_switch -- see below -- will be included in the options ++$dvips_pdf_switch \-\- see below \-\- will be included in the options + substituted for '%O'. -.TP --.B $dvips_landscape ["dvips -tlandscape"] -+$dvips_pdf_switch \-\- see below \-\- will be appended. +-.B $dvips_landscape ["dvips -tlandscape %O -o %D %S"] +.TP -+.B $dvips_landscape ["dvips \-tlandscape"] ++.B $dvips_landscape ["dvips \-tlandscape %O \-o %D %S"] The program to used as a filter to convert a .dvi file to a .ps file in landscape mode. -.TP @@ -885,33 +1006,41 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 .B $dvi_update_command [""] When the dvi previewer is set to be updated by running a command, this is the command that is run. See the information for the variable - \fI$dvi_update_method\fR. +@@ -841,8 +841,8 @@ + on the variable \fI$pdf_update_method\fR for an example for the + analogous case of a pdf previewer. + -.TP -.B $dvi_update_method [2 under UNIX, 1 under MS-Windows] +.TP +.B $dvi_update_method [2 under UNIX, 1 under MS\-Windows] How the dvi viewer updates its display when the dvi file has changed. - 0 => update is automatic, - 1=> manual update by user, which may only mean a mouse click on the -@@ -706,26 +707,26 @@ + The values here apply equally to the \fI$pdf_update_method\fR and to + the \fI$ps_update_method\fR variables. +@@ -852,38 +852,38 @@ 2 => Send the signal, whose number is in the variable - $dvi_update_signal. The default value under UNIX is suitable for xdvi. + \fI$dvi_update_signal\fR. The default value under UNIX is suitable for xdvi. 3 => Viewer cannot do an update, because it locks the file. (As with -acroread under MS-Windows.) +acroread under MS\-Windows.) 4 => run a command to do the update. The command is specified by - the variable $dvi_update_command. + the variable \fI$dvi_update_command\fR. + + See information on the variable \fI$pdf_update_method\fR for an + example of updating by command. + -.TP -.B $dvi_update_signal [Under UNIX: SIGUSR1, which is a system-dependent value] +.TP +.B $dvi_update_signal [Under UNIX: SIGUSR1, which is a system\-dependent value] The number of the signal that is sent to the dvi viewer when it is --updated by sending a signal -- see $dvi_update_method. The default -+updated by sending a signal \-\- see $dvi_update_method. The default - value is the one appropriate for xdvi on a UNIX system. +-updated by sending a signal -- see the information on the variable ++updated by sending a signal \-\- see the information on the variable + \fI$dvi_update_method\fR. The default value is the one appropriate + for xdvi on a UNIX system. -.TP +.TP - .B $fdb_ext ["fdb_latex"] + .B $fdb_ext ["fdb_latexmk"] The extension of the file which \fIlatexmk\fR generates to contain a database of information on source files. You will not normally need to change this. @@ -921,30 +1050,50 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 If nonzero, continue processing past minor \fIlatex\fR errors including unrecognized cross references. Equivalent to specifying the -\fB-f\fR option. --Note that specifying the \fB-pvc\fR sets $force_mode to 1. -.TP +\fB\-f\fR option. -+Note that specifying the \fB\-pvc\fR sets $force_mode to 1. +.TP - .B @generated_exts [( 'ind', 'lof', 'lot', 'out', 'toc', $fdb_ext)] - This contains a list of extensions for files that are generated - (directly or indirectly) during a LaTeX run and that are read in by -@@ -750,38 +751,38 @@ - + .B @generated_exts [( 'aux', 'bbl', 'idx', 'ind', 'lof', 'lot', 'out', 'toc', $fdb_ext )] + This contains a list of extensions for files that are generated during + a LaTeX run and that are read in by LaTeX in later runs, either + directly or indirectly. + + This list has two uses: (a) to set the kinds of file to be deleted in +-a cleanup operation (with the \fB-c\fR, \fB-C\fR, \fB-CA\fR, \fB-g\fR +-and \fB-gg\fR options), and (b) in the determination of whether a ++a cleanup operation (with the \fB\-c\fR, \fB\-C\fR, \fB\-CA\fR, \fB\-g\fR ++and \fB\-gg\fR options), and (b) in the determination of whether a + rerun of (pdf)LaTeX is needed after a run that gives an error. + + (Normally, a change of a source file during a run should provoke a +@@ -892,7 +892,7 @@ + an error, a new run should occur until the user has made a change in + the files. But the user may have corrected an error in a source .tex + file during the run. So \fIlatexmk\fR needs to distinguish +-user-generated and automatically generated files; it determines the ++user\-generated and automatically generated files; it determines the + automatically generated files as those with extensions in the list in + @generated_exts.) + +@@ -905,11 +905,11 @@ adds the extension 'end' to the list of predefined generated - extensions. + extensions. (This extension is used by the RevTeX package, for + example.) -.TP +.TP .B $go_mode [0] - If nonzero, process files regardless of timestamps. Equivalent to the --\fB-g\fR option. + If nonzero, process files regardless of timestamps, and is then +-equivalent to the \fB-g\fR option. -.TP -+\fB\-g\fR option. ++equivalent to the \fB\-g\fR option. +.TP - .B $index_mode [0 and then as determined from the results of a run] - If nonzero, run \fImakeindex\fR to produce index of document. - Normally you should not need to set this variable in an RC file, since - latexmk determines automatically if \fImakeindex\fR needs to be run. + .B $kpsewhich ["kpsewhich %S"] + The program called to locate a source file when the name alone is not + sufficient. Most filenames used by \fIlatexmk\fR have sufficient path +@@ -921,28 +921,28 @@ + See also the \fI@BIBINPUTS\fR variable for another way that \fIlatexmk\fR + also uses to try to locate files; it applies only in the case of .bib + files. -.TP +.TP .B $landscape_mode [0] @@ -954,7 +1103,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 Normally not needed with current previewers. -.TP +.TP - .B $latex ["latex"] + .B $latex ["latex %O %S"] The LaTeX processing program. Note that as with other programs, you can use this variable not just to change the name of the program used, but also specify options to the program. E.g., @@ -965,16 +1114,15 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 + $latex = 'latex \-\-src\-specials'; +.TP +.B $latex_silent_switch ["\-interaction=batchmode"] - \fBSwitch(es)\fR for the LaTeX processing program when silent mode is on. + Switch(es) for the LaTeX processing program when silent mode is on. -Under MS-Windows, the default value is changed to -"-interaction=batchmode -c-style-errors", as used by MikTeX and fpTeX. -.TP +-.B $lpr ["lpr %O %S", or "NONE lpr" under MS-WINDOWS] +Under MS\-Windows, the default value is changed to +"\-interaction=batchmode \-c\-style\-errors", as used by MikTeX and fpTeX. +.TP - .B $lpr ["lpr"] --[Default is "NONE lpr" under MS-WINDOWS.] -+[Default is "NONE lpr" under MS\-WINDOWS.] ++.B $lpr ["lpr %O %S", or "NONE lpr" under MS\-WINDOWS] The command to print postscript files. -Under MS-Windows (unlike UNIX/LINUX), there is no standard program for @@ -982,7 +1130,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 printing files. But there are ways you can do it. For example, if you have gsview installed, you could use it with the option '/p': -@@ -795,14 +796,14 @@ +@@ -956,14 +956,14 @@ the command obeyed; this is necessary because one part of the command name ('Program Files') contains a space which would otherwise be misinterpreted. @@ -1000,55 +1148,57 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 e.g., $lpr = '"c:/Program Files/Ghostgum/gsview/gsview32.exe" /p'; -@@ -812,18 +813,18 @@ +@@ -973,18 +973,18 @@ is necessary because one part of the command name ('Program Files') contains a space which would otherwise be misinterpreted. -.TP +-.B $makeindex ["makeindex %O -o %D %S"] +.TP - .B $makeindex ["makeindex"] ++.B $makeindex ["makeindex %O \-o %D %S"] The index processing program. -.TP +.TP .B $new_viewer_always [0] This variable applies to \fIlatexmk\fR \fBonly\fR in --continuous-preview mode. If $new_viewer_always is 0, -+continuous\-preview mode. If $new_viewer_always is 0, +-continuous-preview mode. If \fI$new_viewer_always\fR is 0, ++continuous\-preview mode. If \fI$new_viewer_always\fR is 0, \fIlatexmk\fR will check for a previously running previewer on the same file, and if one is running will not start a new one. If --$new_viewer_always is non-zero, this check will be skipped, and -+$new_viewer_always is non\-zero, this check will be skipped, and +-\fI$new_viewer_always\fR is non-zero, this check will be skipped, and ++\fI$new_viewer_always\fR is non\-zero, this check will be skipped, and \fIlatexmk\fR will behave as if no viewer is running. -.TP +.TP .B $pdf_mode [0] If zero, do NOT generate a pdf version of the document. If equal to 1, generate a pdf version of the document using pdflatex. -@@ -831,153 +832,153 @@ - file, by using the command specified by the $ps2pdf variable. +@@ -993,39 +993,39 @@ If equal to 3, generate a pdf version of the document from the dvi - file, by using the command specified by the $dvipdf variable. + file, by using the command specified by the \fI$dvipdf\fR variable. + -Equivalent to the \fB-pdf-\fR, \fB-pdf\fR, \fB-pdfdvi\fR, -\fB-pdfps\fR options. -.TP +Equivalent to the \fB\-pdf\-\fR, \fB\-pdf\fR, \fB\-pdfdvi\fR, +\fB\-pdfps\fR options. +.TP - .B $pdflatex ["pdflatex"] + .B $pdflatex ["pdflatex %O %S"] The LaTeX processing program in the version that makes a pdf file instead of a dvi file. -.TP -.B $pdflatex_silent_switch ["-interaction=batchmode"] +.TP +.B $pdflatex_silent_switch ["\-interaction=batchmode"] - Switch(es) for the LaTeX processing program when silent mode is on. + Switch(es) for the pdflatex program (specified in the variable + \fI$pdflatex\fR when silent mode is on. -Under MS-Windows, the default value is changed to -"-interaction=batchmode -c-style-errors", as used by MikTeX and fpTeX. -.TP +Under MS\-Windows, the default value is changed to +"\-interaction=batchmode \-c\-style\-errors", as used by MikTeX and fpTeX. +.TP - .B $pdf_previewer ["start acroread"] + .B $pdf_previewer ["start acroread %O %S"] -The command to invoke a pdf-previewer. -[Default is changed to "start" on MS-WINDOWS; under more recent versions of +The command to invoke a pdf\-previewer. @@ -1056,8 +1206,8 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 Windows, this will cause to be run whatever command the system has associated with .pdf files.] --Potential problem under MS-Windows: -+Potential problem under MS\-Windows: +-\fBWARNING\fR: Potential problem under MS-Windows: ++\fBWARNING\fR: Potential problem under MS\-Windows: if acroread is used as the pdf previewer, and it is actually viewing a pdf file, the pdf file cannot be updated. Thus makes acroread a bad choice of previewer if you use \fIlatexmk\fR's @@ -1076,36 +1226,55 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 +.TP +.B $pdf_update_method [1 under UNIX, 3 under MS\-Windows] How the pdf viewer updates its display when the pdf file has - changed. See $dvi_update_method for the codes, with the change that - for the value 4, to run a command to do the update, the command is - specified by the variable $pdf_update_command. + changed. See the information on the variable \fI$dvi_update_method\fR + for the codes. (Note that information needs be changed slightly so +@@ -1034,95 +1034,95 @@ + value 2, to specify update by signal, the signal is specified by + \fI$pdf_update_signal\fR.) -Note that acroread under MS-Windows (but not UNIX) locks the pdf file, so +Note that acroread under MS\-Windows (but not UNIX) locks the pdf file, so the default value is then 3. + + Arranging to use a command to get a previewer explicitly updated + requires three variables to be set. For example: + +- $pdf_previewer = 'start xpdf -remote %R %O %S'; ++ $pdf_previewer = 'start xpdf \-remote %R %O %S'; + $pdf_update_method = 4; +- $pdf_update_command = 'xpdf -remote %R -reload'; ++ $pdf_update_command = 'xpdf \-remote %R \-reload'; + + The first setting arranges for the xpdf program to be used in its + 'remote server mode', with the server name specified as the rootname + of the TeX file. The second setting arranges for updating to be done + in response to a command, and the third setting sets the update command. + -.TP -.B $pdf_update_signal [Under UNIX: SIGHUP, which is a system-dependent value] +.TP +.B $pdf_update_signal [Under UNIX: SIGHUP, which is a system\-dependent value] The number of the signal that is sent to the pdf viewer when it is --updated by sending a signal -- see $pdf_update_method. The default -+updated by sending a signal \-\- see $pdf_update_method. The default - value is the one appropriate for gv on a UNIX system. +-updated by sending a signal -- see the information on the variable ++updated by sending a signal \-\- see the information on the variable + \fI$pdf_update_method\fR. The default value is the one appropriate + for gv on a UNIX system. -.TP -.B $pid_position = [1 under UNIX, -1 under MS-Windows] +.TP +.B $pid_position = [1 under UNIX, \-1 under MS\-Windows] - Command used to get all the processes currently run by the user. --The -pvc option uses the command specified by the variable $pscmd to -+The \-pvc option uses the command specified by the variable $pscmd to + Command used to get all the processes currently run by the user. The +--pvc option uses the command specified by the variable \fI$pscmd\fR to ++\-pvc option uses the command specified by the variable \fI$pscmd\fR to determine if there is an already running previewer, and to find the - process ID (needed if \fIlatexmk\fR needs to signal the previewer about - file changes). The variable $pid_position is used to specify which word - in lines of the output from $pscmd corresponds to the process ID. The - first word in the line is numbered 0. The default value of 1 (2nd word in --line) is correct for Solaris 2.6 and Linux. Setting the variable to -1 is -+line) is correct for Solaris 2.6 and Linux. Setting the variable to \-1 is - used to indicate that $pscmd is not to be used. + process ID (needed if \fIlatexmk\fR needs to signal the previewer + about file changes). The variable \fI$pid_position\fR is used to + specify which word in lines of the output from \fI$pscmd\fR + corresponds to the process ID. The first word in the line is numbered + 0. The default value of 1 (2nd word in line) is correct for Solaris +-2.6 and Linux. Setting the variable to -1 is used to indicate that ++2.6 and Linux. Setting the variable to \-1 is used to indicate that + \fI$pscmd\fR is not to be used. -.TP +.TP .B $postscript_mode [0] @@ -1153,7 +1322,8 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 +[On UNIX, the default is "ps \-f \-u $ENV{USER}", with changes for Linux +and OS\-X. +On MS\-WINDOWS the default in "NONE pscmd".] - Command used to get all the processes currently run by the user. This + + Command used to get a list all the processes currently run by the user. This -is used by the -pvc option to determine if there is an already running +is used by the \-pvc option to determine if there is an already running previewer. @@ -1164,7 +1334,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 NOTE: The variable \fI$pid_position\fR must also be set; see its description. -.TP +.TP - .B $ps2pdf ["ps2pdf"] + .B $ps2pdf ["ps2pdf %O %S %D"] Command to convert ps to pdf file. -.TP +.TP @@ -1174,25 +1344,30 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 +file before other processing. Equivalent to specifying the \fB\-pF\fR option. -.TP --.B $ps_previewer ["start gv -watch"] ++.TP + .B $ps_previewer ["start gv %O %S"] -The command to invoke a ps-previewer. -[Default is "start" on MS-WINDOWS; under more recent versions of -+.TP -+.B $ps_previewer ["start gv \-watch"] +The command to invoke a ps\-previewer. +[Default is "start" on MS\-WINDOWS; under more recent versions of Windows, this will cause to be run whatever command the system has associated with .ps files.] --Note that gv with the -watch option updates its display whenever the -+Note that gv with the \-watch option updates its display whenever the - postscript file changes, whereas ghostview does not. --.TP --.B $ps_previewer_landscape ["start gv -swap -watch"] +-Note that gv could be used with the -watch option updates its display ++Note that gv could be used with the \-watch option updates its display + whenever the postscript file changes, whereas ghostview does not. + However, different versions of gv have slightly different ways of + writing this option. Moreover, you can always configure gv to do this +@@ -1131,19 +1131,19 @@ + \fBWARNING\fR: Linux systems may have installed one (or more) versions + of gv under different names, e.g., ggv, kghostview, etc, but perhaps + not one called gv. +-.TP +-.B $ps_previewer_landscape ["start gv -swap %O %S"] -The command to invoke a ps-previewer in landscape mode. -[Default is "start" on MS-WINDOWS; under more recent versions of +.TP -+.B $ps_previewer_landscape ["start gv \-swap \-watch"] ++.B $ps_previewer_landscape ["start gv \-swap %O %S"] +The command to invoke a ps\-previewer in landscape mode. +[Default is "start" on MS\-WINDOWS; under more recent versions of Windows, this will cause to be run whatever command the system has @@ -1208,17 +1383,20 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 +.TP +.B $ps_update_method [0 under UNIX, 1 under MS\-Windows] How the postscript viewer updates its display when the ps file has - changed. See $dvi_update_method for the codes, with the change that - for the value 4, to run a command to do the update, the command is - specified by the variable $ps_update_command. + changed. See the information on the variable \fI$dvi_update_method\fR + for the codes. (Note that information needs be changed slightly so +@@ -1152,25 +1152,25 @@ + value 2, to specify update by signal, the signal is specified by + \fI$ps_update_signal\fR.) + -.TP -.B $ps_update_signal [Under UNIX: SIGHUP, which is a system-dependent value] +.TP +.B $ps_update_signal [Under UNIX: SIGHUP, which is a system\-dependent value] The number of the signal that is sent to the pdf viewer when it is --updated by sending a signal -- see $ps_update_method. The default -+updated by sending a signal \-\- see $ps_update_method. The default - value is the one appropriate for gv on a UNIX system. +-updated by sending a signal -- see \fI$ps_update_method\fR. The ++updated by sending a signal \-\- see \fI$ps_update_method\fR. The + default value is the one appropriate for gv on a UNIX system. -.TP +.TP .B $sleep_time [2] @@ -1241,13 +1419,13 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 .B $tmpdir [See below for default] Directory to store temporary files that \fIlatexmk\fR may generate while running. -@@ -986,62 +987,62 @@ +@@ -1179,54 +1179,54 @@ \fI$tmpdir\fR to the value of the first of whichever of the system environment variables TMPDIR or TEMP exists, otherwise to the current directory. Under other operating systems (expected to be UNIX/Linux, -including OS-X), the default is the value of the system environment +including OS\-X), the default is the value of the system environment - variable TMPDIR if it exists, otherwise to "/tmp". + variable TMPDIR if it exists, otherwise "/tmp". -.TP +.TP .B $view ["default"] @@ -1278,8 +1456,8 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 -.TP +.TP .B must: --If non-zero, the file we are converting from \fBmust\fR exist, if it -+If non\-zero, the file we are converting from \fBmust\fR exist, if it +-If non-zero, the file from which we are converting \fBmust\fR exist, if it ++If non\-zero, the file from which we are converting \fBmust\fR exist, if it doesn't exist \fIlatexmk\fR will give an error message and exit unless -the \fB-f\fR option is specified. If \fImust\fR is zero and the file +the \fB\-f\fR option is specified. If \fImust\fR is zero and the file @@ -1290,39 +1468,49 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 The name of the subroutine that \fIlatexmk\fR should call to perform the file conversion. The first argument to the subroutine is the base name of the file to be converted without any extension. The subroutines are - declared in the syntax of \fIperl\fR. The function should return 0 if + declared in the syntax of \fIPerl\fR. The function should return 0 if it was successful and a nonzero number if it failed. -.PP --Example in an RC file to convert a \fI.fig\fR file to a \fI.eps\fR file: +-Example in an RC file to ensure automatic conversion of \fI.fig\fR +.PP -+Example in an RC file to convert a \fI.fi g\fR file to a \fI.eps\fR file: - - @cus_dep_list = (@cus_dep_list, "fig eps 0 fig2eps"); - - sub fig2eps - { -- system("fig2dev -Lps $_[0].fig $_[0].eps"); -+ system("fig2dev \-Lps $_[0].fi g $_[0].eps"); - } - --The subroutine \fIfig2eps\fR will only be called if the \fI.fig\fR file -+The subroutine \fIfig2eps\fR will only be called if the \fI.fi g\fR file - was modified more recently then the \fI.eps\fR file, or the \fI.eps\fR - file does not exist. ++Example in an RC file to ensure automatic conversion of \fI.fi g\fR + files to \fI.eps\fR files: + + push @cus_dep_list, "fig eps 0 fig2eps"; + + sub fig2eps { +- system("fig2dev -Lps $_[0].fig $_[0].eps"); ++ system("fig2dev \-Lps $_[0].fi g $_[0].eps"); + } + + The first line specifies the custom dependency, which specifies that +-the subroutine \fIfig2eps\fR will be called if the \fI.fig\fR file has ++the subroutine \fIfig2eps\fR will be called if the \fI.fi g\fR file has + changed since the \fI.eps\fR file was last made, or if the \fI.eps\fR + file does not exist. The remaining lines define this subroutine. + When it is called, this subroutine will have one argument which is the +@@ -1236,7 +1236,7 @@ + \fIPerl\fR idiom that signify that each string of the form of a variable + name, $_[0] in this case, is to be substituted by its value. -If the return value of the subroutine is non-zero, then \fIlatexmk\fR +If the return value of the subroutine is non\-zero, then \fIlatexmk\fR will assume an error occurred during the execution of the subroutine. + In the above example, no explicit return value is given, and instead + the return value is the value returned by the last (and only) +@@ -1244,9 +1244,9 @@ + on success. + -.SH SEE ALSO +.SH "SEE ALSO" latex(1), bibtex(1). -.SH BUGS +.SH "BUGS" - Search for .bib files is not correct if they are not in the current - directory; the problem is that the log file generated by bibtex does not - give the full path to the .bib files. The easiest fix at the moment is to -@@ -1062,29 +1063,29 @@ + Sometimes a viewer (gv) tries to read an updated .ps or .pdf file + after its creation is started but before the file is complete. Work + around: manually refresh (or reopen) display. Or use one of the other +@@ -1258,32 +1258,32 @@ Gv on UNIX/LINUX works for both postscript and pdf. Ghostview on UNIX/LINUX needs a manual update (reopen); it views postscript and pdf. @@ -1340,7 +1528,8 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 Authors of previous versions. Many users with their feedback, and especially David Coppit (username david at node coppit.org) who made many useful - suggestions that contributed to version 3. (Please note that the + suggestions that contributed to version 3. + (Please note that the -e-mail addresses are not written in their standard form to avoid being +e\-mail addresses are not written in their standard form to avoid being harvested by worms and viruses.) @@ -1348,7 +1537,7 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 +.SH "AUTHOR" Current version, with substantial modifications, enhancements and bug fixes by John Collins (username collins at node phys.psu.edu). - (Version 3.09). + (Version 4.00). It can be obtained from CTAN: -, and from the @@ -1360,10 +1549,12 @@ diff -dur latexmk-3.20.ORIG/latexmk.1 latexmk-3.20/latexmk.1 -.br +.br Original script called "go" by David J. Musliner (RCS Version 3.2) -diff -dur latexmk-3.20.ORIG/latexmk.pl latexmk-3.20/latexmk.pl ---- latexmk-3.20.ORIG/latexmk.pl 2007-08-31 21:46:47.000000000 -0600 -+++ latexmk-3.20/latexmk.pl 2007-08-31 21:45:50.000000000 -0600 -@@ -584,10 +584,8 @@ + + \" LocalWords: fR fIlatexmk dvi ps fILatexmk pdflatex bibtex makeindex fB pv +diff -dur latexmk-4.00e.ORIG/latexmk.pl latexmk-4.00e/latexmk.pl +--- latexmk-4.00e.ORIG/latexmk.pl 2008-09-22 16:45:08.000000000 -0600 ++++ latexmk-4.00e/latexmk.pl 2008-09-24 10:06:40.000000000 -0600 +@@ -777,10 +777,8 @@ ## /usr/local/share, depending on the local conventions. ## /usr/local/lib/latexmk/LatexMk is put in the list for ## compatibility with older versions of latexmk. diff --git a/latexmk-perl.patch b/latexmk-perl.patch deleted file mode 100644 index 3ac3b5b..0000000 --- a/latexmk-perl.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- latexmk.pl.ORIG 2007-08-17 12:21:57.000000000 -0600 -+++ latexmk.pl 2007-08-31 21:38:25.000000000 -0600 -@@ -1,23 +1,4 @@ --eval '(exit $?0)' && eval 'exec perl -x -S "$0" ${1+"$@"}' && --eval 'exec perl -x -S "$0" $argv:q' --if 0; - #!/usr/bin/perl -w --#!/opt/local/bin/perl -w --#!/usr/local/bin/perl -w --# The above code allows this script to be run under UNIX/LINUX without --# the need to adjust the path to the perl program in a "shebang" line. --# (The location of perl changes between different installations, and --# may even be different when several computers running different --# flavors of UNIX/LINUX share a copy of latex or other scripts.) The --# script is started under the default command interpreter sh, and the --# evals in the first two lines restart the script under perl, and work --# under various flavors of sh. The -x switch tells perl to start the --# script at the first #! line containing "perl". The "if 0;" on the --# 3rd line converts the first two lines into a valid perl statement --# that does nothing. --# --# Source of the above: manpage for perlrun -- - - # Delete #??!! when working - diff --git a/latexmk.conf b/latexmk.conf index 02b2e2f..8a24362 100644 --- a/latexmk.conf +++ b/latexmk.conf @@ -4,6 +4,10 @@ # The following options are given their default values. # Uncomment them and change the values if the defaults do not suit your needs. +# When previewing, whether to make the viewer read from the generated file or +# from a temporary copy +# $always_view_file_via_temporary = 0; + # If nonzero, DVI-to-postscript conversion adds a banner message on each page # $banner = 0; @@ -14,55 +18,75 @@ # $banner_message = 'DRAFT'; # The size of the banner message (about 1100 divided by the message length) -# $banner_scale = 220.0; +# $banner_scale = 220; # An array of directory names where BibTeX should look for .bib files. # @BIBINPUTS = $ENV('BIBINPUTS') converted to an array of strings # The name of the BibTeX executable -# $bibtex = 'bibtex'; +# $bibtex = 'bibtex %O %B'; # The switch that puts BibTeX in silent mode # $bibtex_silent_switch = '-terse'; -# How much cleaning to do: 0 specifies normal operation (no cleaning), -# 1 specifies a full cleanup, 2 specifies a cleanup that leaves DVI, -# PostScript, and PDF files, and 3 specifies a cleanup that also leaves dep -# and aux files. You probably should not set this option. -# $cleanup_mode = 0; - # Extra file extensions to remove when cleaning # $clean_ext = ""; # Extra file extensions to remove when doing a full clean # $clean_full_ext = ""; +# Whether to just cleanup, or also generate files +# $cleanup_only = 0; + +# Whether to clean latexmk's file database too +# $cleanup_fdb = 0; + +# How much cleaning to do: 0 specifies normal operation (no cleaning), +# 1 specifies a full cleanup, 2 specifies a cleanup that leaves DVI, +# PostScript, and PDF files, and 3 specifies a cleanup that also leaves dep +# and aux files. You probably should not set this option. +# $cleanup_mode = 0; + # A custom dependency list; see the man page for details # @cus_dep_list = (); +# The default list of files to not be processed; see the man page for details +# @default_excluded_files = ( ); + # The default list of files to be processed; see the man page for details # @default_files = ('*.tex'); +# Whether to display lists of dependencies +# $dependents_list = 0; + +# Whether to get diagnostic output from latexmk +# $diagnostics = 0; + +# Whether to change to the directory of the source file +# $do_cd = 0; + # The DVI file filter to be run on newly produced DVI files # $dvi_filter = ''; +# Always make a DVI file +# $dvi_mode = 0; + # The command to start a DVI previewer -# $dvi_previewer = 'start xdvi'; -$dvi_previewer = 'xdg-open'; +# $dvi_previewer = 'start xdvi %O %S'; +$dvi_previewer = 'xdg-open %O %S'; # The command to start a DVI previewer in landscape mode -# $dvi_previewer_landscape = 'start xdvi -paper usr'; -$dvi_previewer_landscape = 'xdg-open'; +# $dvi_previewer_landscape = 'start xdvi -paper usr %O %S'; +$dvi_previewer_landscape = 'xdg-open %O %S'; # The command to convert a DVI file into a PDF file. # See the warnings on the man page -# $dvipdf = 'dvipdf'; - +# $dvipdf = 'dvipdf %O %S %D'; # The command to convert a DVI file into a PostScript file -# $dvips = 'dvips'; +# $dvips = 'dvips %O -o %D %S'; # The command to convert a DVI file into a PostScript file in landscape mode -# $dvips_landscape = 'dvips -tlandscape'; +# $dvips_landscape = 'dvips -tlandscape %O -o %D %S'; # Command line switch for dvips when a PDF file is to be generated # $dvips_pdf_switch = '-P pdf'; @@ -79,43 +103,55 @@ $dvi_previewer_landscape = 'xdg-open'; $dvi_update_method = 1; # When DVI update method 2 is used, the number of the Unix signal to send -# $dvi_update_signal = SIGUSR1 +# $dvi_update_signal = $signo{USR1} + +# Which treatment of default extension and filenames with multiple extensions +# is used. The possibilities are: +# - miktex_old, for Miktex version 1.20d or earlier +# - unix, for web2c 7.3.1 or later +# $extension_treatment = 'unix'; # The extension of the file which latexmk generates to contain a database # of information on source files. -# $fdb_ext = 'fdb_latex'; +# $fdb_ext = 'fdb_latexmk'; -# If nonzero, continue processing past minor LaTeX errors -# This option is made nonzero if the -pvs command line option is used. -# $force_mode = 0; +# Version number for kind of fdb_file +# $fdb_ver = 2; # If nonzero, force latexmk to include files that don't exist when generating # dependency files. # $force_include_mode = 0; +# If nonzero, continue processing past minor LaTeX errors +# This option is made nonzero if the -pvc command line option is used. +# $force_mode = 0; + # The list of extensions for files that are generated in one run and consumed # by later runs of one of the LaTeX tools. The 'aux' and 'bbl' extensions are -# treated specially, and hence are not in this list. -# @generated_exts = ( 'ind', 'lof', 'lot', 'out', 'toc', $fdb_ext ); +# treated specially. +# @generated_exts = ( 'aux', 'bbl', 'idx', 'ind', 'lof', 'lot', 'out', 'toc' ); -# If nonzero, process files regardless of timestamps +# 1 = process files regardless of timestamps +# 2 = do a full cleanup first # $go_mode = 0; -# If nonzero, run makeindex to produce a document index. Normally, latexmk -# should be able to figure out when this is necessary. -# $index_mode = 0; +# The basename of generated files +# $jobname = ""; + +# The command to search for tex-related files +# $kpsewhich = 'kpsewhich %S'; -# If nonzero, run in landscape mode +# If nonzero, run in landscape mode; otherwise in portrait mode # $landscape_mode = 0; # The name of the LaTeX program -# $latex = 'latex'; +# $latex = 'latex %O %S'; # The command line switch to make LaTeX run in silent mode # $latex_silent_switch = '-interaction=batchmode'; # The program that prints PostScript files -# $lpr = 'lpr'; +# $lpr = 'lpr %O %S'; # The program that prints DVI files # $lpr_dvi = 'NONE $lpr_dvi variable is not configured to allow printing of dvi files'; @@ -124,30 +160,35 @@ $dvi_update_method = 1; # $lpr_pdf = 'NONE $lpr_pdf variable is not configured to allow printing of pdf files'; # The name of the makeindex program -# $makeindex = 'makeindex'; +# $makeindex = 'makeindex %O -o %D %S'; # The command line switch to make makeindex run in silent mode # $makeindex_silent_switch = '-q'; +# The maximum number of times latex will be invoked in an effort to fix up +# references. +# $max_repeat = 5; + # This variable is used only when running in continuous-preview mode. If zero, # check for a previously running previewer on the same file and update it. If # nonzero, always start a new previewer. # $new_viewer_always = 0; -# If zero, generate a DVI file. If 1, generate a PDF file using pdflatex. -# If 2, generate a PostScript file, then convert it using ps2pdf. -# If 3, generate a DVI file, then convert it using dvipdf. +# 0 = do not create a PDF file +# 1 = Create a PDF file with pdflatex +# 2 = Create a PDF file with ps2pdf +# 3 = Create a PDF file with dvipdf # $pdf_mode = 0; # The name of the LaTeX program that produces PDF files by default -# $pdflatex = 'pdflatex'; +# $pdflatex = 'pdflatex %O %S'; # The command line switch to make pdflatex run in silent mode # $pdflatex_silent_switch = '-interaction=batchmode'; # The command to invoke a PDF previewer -# $pdf_previewer = 'start acroread'; -$pdf_previewer = 'xdg-open'; +# $pdf_previewer = 'start acroread %O %S'; +$pdf_previewer = 'xdg-open %O %S'; # The command to run when the PDF viewer is set to be updated by a command # $pdf_update_command = ''; @@ -157,12 +198,12 @@ $pdf_previewer = 'xdg-open'; # $pdf_update_method = 1; # When PDF update method 2 is used, the number of the Unix signal to send -# $pdf_update_signal = SIGHUP +# $pdf_update_signal = $signo{HUP} # Where the pid is in the output of $pscmd; see the man page # $pid_position = 1; -# If zero, generate a DVI file. If nonzero, generate a PostScript file +# Always make a PostScript file # $postscript_mode = 0; # If nonzero, run a previewer to view the document and keep the DVI file up @@ -179,21 +220,21 @@ $pdf_previewer = 'xdg-open'; # $print_type = 'ps'; # Command used to list all the processes currently run by the user -# $pscmd = "ps -f -u $ENV{USER}"; +# $pscmd = "ps --width 200 -f -u $ENV{USER}"; # Command to convert a PostScript file to a PDF file -# $ps2pdf = 'ps2pdf'; +# $ps2pdf = 'ps2pdf %O %S %D'; # Filter to run on newly created PostScript files # $ps_filter = ''; # The command to invoke a PostScript previewer -# $ps_previewer = 'start gv -watch'; -$ps_previewer = 'xdg-open'; +# $ps_previewer = 'start gv %O %S'; +$ps_previewer = 'xdg-open %O %S'; # The command to invoke a PostScript previewer in landscape mode -# $ps_previewer_landscape = 'start gv -swap -watch'; -$ps_previewer_landscape = 'xdg-open'; +# $ps_previewer_landscape = 'start gv -swap %O %S'; +$ps_previewer_landscape = 'xdg-open %O %S'; # The command to run when the PostScript viewer is set to be updated by a # command @@ -206,14 +247,33 @@ $ps_update_method = 1; # When PostScript update method 2 is used, the number of the Unix signal to # send -# $ps_update_signal = SIGHUP +# $ps_update_signal = $signo{HUP} + +# When previewing in -pvc mode, whether to make the viewer read from the +# generated file or from a temporary copy +# $pvc_view_file_via_temporary = 1; + +# Quote filenames in external commands. This is essential for filenames +# containing spaces. +# $quote_filenames = 1; + +# The character that separates paths in a list of paths +# $search_path_separator = ':'; + +# Whether to suppress latex messages +# $silent = 0; # The time to sleep in seconds between checking for source file changes when # running in continuous update mode # $sleep_time = 2; +# Space-separated list of extra files to search for when no files are specified +# on the command line and the @default_files list is empty. Wildcards are +# allowed. These files are in addition to *.tex in the current directory. +# $texfile_search = ""; + # The directory to store temporary files; omit the trailing '/' -# $tmpdir = '/tmp'; +# $tmpdir = $ENV{TMPDIR} || '/tmp'; # Which kind of file is to be previewed if a previewer is used. The possible # values are 'default', 'dvi', 'ps', and 'pdf'. The value of 'default' means diff --git a/latexmk.spec b/latexmk.spec index 8e7dd69..d5cd9f4 100644 --- a/latexmk.spec +++ b/latexmk.spec @@ -1,20 +1,23 @@ Name: latexmk -Version: 3.20 +Version: 4.00e Release: 1%{?dist} Summary: A make-like utility for LaTeX files Group: Applications/Publishing License: GPLv2+ URL: http://www.phys.psu.edu/~collins/software/latexmk-jcc/ -Source0: http://www.phys.psu.edu/~collins/software/latexmk-jcc/latexmk-320.zip +Source0: http://www.phys.psu.edu/~collins/software/latexmk-jcc/latexmk-400e.zip Source1: latexmk.conf Source2: latexmk-README.fedora -Patch0: latexmk-perl.patch -Patch1: latexmk-conf.patch +# Change the system-wide configuration file to /etc/latexmk.conf and fix the +# man page accordingly. This patch has not been submitted upstream, as +# upstream needs to be backwards compatible with previous versions of latexmk. +# Fedora has only ever used /etc/latexmk.conf. +Patch0: latexmk-conf.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -Requires: tetex, tetex-latex, ghostscript, xdg-utils +Requires: texlive, texlive-latex, ghostscript, xdg-utils %description Latexmk is a perl script for running LaTeX the correct number of times to @@ -30,15 +33,9 @@ Before using a previewer, read the file README.fedora. %prep %setup -q -c +%patch0 -p1 cp %{SOURCE2} README.fedora -# Remove the path searching facility; we know where the perl binary is located -%patch0 - -# Change the system-wide configuration file to /etc/latexmk.conf and fix -# the man page accordingly. -%patch1 -p1 - %build %install @@ -61,6 +58,10 @@ rm -rf $RPM_BUILD_ROOT %doc CHANGES COPYING INSTALL README README.fedora extra-scripts %changelog +* Wed Sep 24 2008 Jerry James - 4.00e-1 +- New version 4.00e. +- Drop the perl patch; the script finds it just fine + * Fri Aug 31 2007 Jerry James - 3.20-1 - New version 3.20. - Texlive isn't as near as I thought; require the tetex packages for now. diff --git a/sources b/sources index 1148b16..b190629 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -fba0740fd6e5b9001c1300b3425cb659 latexmk-320.zip +1914293f3c903bad3a543ce948c0157f latexmk-400e.zip