diff options
-rwxr-xr-x | Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl | 32 | ||||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/CHANGES | 5 | ||||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/INSTALL | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/README | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/latexmk.pdf | bin | 95803 -> 99317 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/latexmk.txt | 763 | ||||
-rwxr-xr-x | Master/texmf-dist/scripts/latexmk/latexmk.pl | 32 | ||||
-rw-r--r-- | Master/texmf/doc/man/man1/latexmk.1 | 4 | ||||
-rw-r--r-- | Master/texmf/doc/man/man1/latexmk.man1.pdf | bin | 108193 -> 108396 bytes |
9 files changed, 453 insertions, 391 deletions
diff --git a/Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl b/Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl index c5deb79cfac..3a3303e3322 100755 --- a/Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl +++ b/Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl @@ -107,8 +107,8 @@ use warnings; $my_name = 'latexmk'; $My_name = 'Latexmk'; -$version_num = '4.23a'; -$version_details = "$My_name, John Collins, 24 March 2011"; +$version_num = '4.24'; +$version_details = "$My_name, John Collins, 7 May 2011"; use Config; @@ -141,7 +141,7 @@ else { warn "Something wrong with the perl configuration: No signals?\n"; } -## Copyright John Collins 1998-2010 +## Copyright John Collins 1998-2011 ## (username collins at node phys.psu.edu) ## (and thanks to David Coppit (username david at node coppit.org) ## for suggestions) @@ -177,10 +177,13 @@ else { ## ## Modification log from 1 Jan 2011 onwards in detail ## +## 7 May 2011, John Collins With biber, use kpsewhich to find source +## files (e.g., .bib) ## 24 Mar 2011, John Collins Correct bug in detection of source files ## listed in .fls ## 21 Mar 2011, John Collins Add 'bcf' to list of generated extensions -## Deal with case that fls files are latex.fls and pdflatex.fls +## Deal with case that fls files are latex.fls +## and pdflatex.fls ## 19--21 Mar 2011, John Collins -deps and -rules options ## $use_make_for_missing_files ## -recorder option @@ -2940,6 +2943,27 @@ sub check_biber_log { } } close $log_file; + my $bibret = &find_file_list1( $Pbiber_source, $Pbiber_source, + '', \@BIBINPUTS ); + @$Pbiber_source = uniqs( @$Pbiber_source ); + if ($bibret == 0) { + warn "$My_name: Found biber source file(s) [@$Pbiber_source]\n" + unless $silent; + } + else { + warn "$My_name: Failed to find one or more biber source files ", + "in [@$Pbiber_source]\n"; + if ($force_mode) { + warn "==== Force_mode is on, so I will continue. ", + "But there may be problems ===\n"; + } + else { + #$failure = -1; + #$failure_msg = 'Failed to find one or more biber source files'; + #warn "$My_name: Failed to find one or more biber source files\n"; + } + return 3; + } # print "$My_name: #Biber errors = $error_count, warning messages = $warning_count,\n ", # "missing citation messages = $missing_citations, no_citations = $no_citations\n"; if ( ! $have_error && $no_citations ) { diff --git a/Master/texmf-dist/doc/support/latexmk/CHANGES b/Master/texmf-dist/doc/support/latexmk/CHANGES index 9a5e3776db5..c6f7da7eb78 100644 --- a/Master/texmf-dist/doc/support/latexmk/CHANGES +++ b/Master/texmf-dist/doc/support/latexmk/CHANGES @@ -252,3 +252,8 @@ From v. 4.22e to v. 4.23 From v. 4.23 to v. 4.23a Correct bug in detection of source files listed in .fls file +From v. 4.23a to v. 4.24 + When running biber, find locations of source files when they + aren't in the current directory (by use of kpsewhich). This was + previously done for bibtex but not biber. + diff --git a/Master/texmf-dist/doc/support/latexmk/INSTALL b/Master/texmf-dist/doc/support/latexmk/INSTALL index 0835c9d19c5..24f1f01835a 100644 --- a/Master/texmf-dist/doc/support/latexmk/INSTALL +++ b/Master/texmf-dist/doc/support/latexmk/INSTALL @@ -1,6 +1,6 @@ INSTALLING latexmk ================== - (Version 4.23a, 24 March 2011) + (Version 4.24, 7 May 2011) John Collins Physics Department diff --git a/Master/texmf-dist/doc/support/latexmk/README b/Master/texmf-dist/doc/support/latexmk/README index 11c987b4ac7..d2564586f64 100644 --- a/Master/texmf-dist/doc/support/latexmk/README +++ b/Master/texmf-dist/doc/support/latexmk/README @@ -1,5 +1,5 @@ -Latexmk, version 4.23a, 24 Mar. 2011 ------------------------------------- +Latexmk, version 4.24, 7 May 2011 +--------------------------------- Latexmk completely automates the process of generating a LaTeX document. Essentially, it is a highly specialized cousin of the @@ -92,7 +92,7 @@ NOTES:- John Collins ---------------------------- "latexmk -h" ---------------------------- -Latexmk 4.23a: Automatic LaTeX document generation routine +Latexmk 4.24: Automatic LaTeX document generation routine Usage: latexmk [latexmk_options] [filename ...] diff --git a/Master/texmf-dist/doc/support/latexmk/latexmk.pdf b/Master/texmf-dist/doc/support/latexmk/latexmk.pdf Binary files differindex a852b80a29c..64212561924 100644 --- a/Master/texmf-dist/doc/support/latexmk/latexmk.pdf +++ b/Master/texmf-dist/doc/support/latexmk/latexmk.pdf diff --git a/Master/texmf-dist/doc/support/latexmk/latexmk.txt b/Master/texmf-dist/doc/support/latexmk/latexmk.txt index f0205d3f8e0..2c2cef7471c 100644 --- a/Master/texmf-dist/doc/support/latexmk/latexmk.txt +++ b/Master/texmf-dist/doc/support/latexmk/latexmk.txt @@ -1,4 +1,9 @@ + + +LATEXMK(1L) LATEXMK(1L) + + NAME latexmk - generate LaTeX document @@ -53,15 +58,10 @@ DESCRIPTION ply edit a file and, when the changes are written to disk, latexmk com- pletely automates the cycle of updating the .dvi (and possibly the .ps and .pdf) file, and refreshing the previewer's display. It's not quite - WYSIWYG, but usefully close. - For other previewers, the user may have to manually make the previewer - update its display, which can be (some versions of xdvi and gsview) as - simple as forcing a redraw of its display. - - 1 + 7 May 2011 1 @@ -70,6 +70,12 @@ DESCRIPTION LATEXMK(1L) LATEXMK(1L) + WYSIWYG, but usefully close. + + For other previewers, the user may have to manually make the previewer + update its display, which can be (some versions of xdvi and gsview) as + simple as forcing a redraw of its display. + Latexmk has the ability to print a banner in gray diagonally across each page when making the postscript file. It can also, if needed, call an external program to do other postprocessing on the generated @@ -119,23 +125,22 @@ LATEXMK OPTIONS AND ARGUMENTS ON COMMAND LINE When the source file uses bbl files for bibliography, run bibtex or biber as needed to regenerate the bbl files. - This property can also be configured by setting the $bibtex_use - variable to 2 in a configuration file - - -bibtex- - Never run bibtex or biber. + 7 May 2011 2 - 24 March 2011 2 +LATEXMK(1L) LATEXMK(1L) -LATEXMK(1L) LATEXMK(1L) + This property can also be configured by setting the $bibtex_use + variable to 2 in a configuration file + -bibtex- + Never run bibtex or biber. A common use for this option is when a document comes from an external source, complete with its bbl file(s), and the user @@ -165,8 +170,8 @@ LATEXMK(1L) LATEXMK(1L) -bm <message> A banner message to print diagonally across each page when con- verting the dvi file to postscript. The message must be a sin- - gle argument on the command line so be careful with quoting - spaces and such. + gle argument on the command line so be careful with quoting spa- + ces and such. Note that if the -bm option is specified, the -ps option is assumed. @@ -184,18 +189,11 @@ LATEXMK(1L) LATEXMK(1L) message. The default is 220.0 which is just right for 5 charac- ter messages. - -commands - List the commands used by latexmk for processing files, and then - exit. - -c Clean up (remove) all regeneratable files generated by latex and - bibtex or biber except dvi, postscript and pdf. These files are - a combination of log files, aux files, latexmk's database file - of source file information, and those with extensions specified - 24 March 2011 3 + 7 May 2011 3 @@ -204,6 +202,14 @@ LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) + -commands + List the commands used by latexmk for processing files, and then + exit. + + -c Clean up (remove) all regeneratable files generated by latex and + bibtex or biber except dvi, postscript and pdf. These files are + a combination of log files, aux files, latexmk's database file + of source file information, and those with extensions specified in the @generated_exts configuration variable. In addition, files with extensions by the $clean_ext configuration variable are removed. @@ -250,27 +256,27 @@ LATEXMK(1L) LATEXMK(1L) latexmk -bm DRAFT Note that if the -d option is specified, the -ps option is - assumed. - -deps Show a list of dependent files after processing. This is in the - form of a dependency list of the form used by the make program, - and it is therefore suitable for use in a Makefile. It gives an - overall view of the files without listing intermediate files, as - well as latexmk can determine them. - By default the list of dependent files is sent to stdout (i.e., + 7 May 2011 4 - 24 March 2011 4 +LATEXMK(1L) LATEXMK(1L) -LATEXMK(1L) LATEXMK(1L) + assumed. + -deps Show a list of dependent files after processing. This is in the + form of a dependency list of the form used by the make program, + and it is therefore suitable for use in a Makefile. It gives an + overall view of the files without listing intermediate files, as + well as latexmk can determine them. + By default the list of dependent files is sent to stdout (i.e., normally to the screen unless you've redirected latexmk's out- put). But you can set the filename where the list is sent by the -deps-out= option. @@ -317,19 +323,9 @@ LATEXMK(1L) LATEXMK(1L) -dvi Generate dvi version of document. - -dvi- Turn off generation of dvi version of document. (This may get - 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.) - - -e <code> - Execute the specified initialization code before processing. - The code is Perl code of the same form as is used in latexmk's - initialization files -- for more details, see the information on - - 24 March 2011 5 + 7 May 2011 5 @@ -338,6 +334,15 @@ LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) + -dvi- Turn off generation of dvi version of document. (This may get + 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.) + + -e <code> + Execute the specified initialization code before processing. + The code is Perl code of the same form as is used in latexmk's + initialization files -- for more details, see the information on the -r option, and the section about "Configuration/initializa- tion (RC) files". The code is typically a sequence of assign- ment statements separated by semicolons. @@ -383,28 +388,28 @@ LATEXMK(1L) LATEXMK(1L) no further processing is carried out. -f- Turn off the forced processing-past-errors such as is set by the - -f option. This could be used to override a setting in a con- - figuration file. - -g Force latexmk to process document fully, even under situations - where latexmk would normally decide that no changes in the - 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. - -g- Turn off -g. + 7 May 2011 6 - 24 March 2011 6 +LATEXMK(1L) LATEXMK(1L) + -f option. This could be used to override a setting in a con- + figuration file. -LATEXMK(1L) LATEXMK(1L) + -g Force latexmk to process document fully, even under situations + where latexmk would normally decide that no changes in the + 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. + -g- Turn off -g. -gg "Super go mode" or "clean make": clean out generated files as if -C had been given, and then do a regular make. @@ -444,12 +449,23 @@ LATEXMK(1L) LATEXMK(1L) trying to run bibtex or biber, which would result in overwriting of the bbl files. - -p Print out the document. By default it is the generated - postscript file that is printed. But you can use the -print=... + -p Print out the document. By default it is the generated post- + script file that is printed. But you can use the -print=... option to print the dvi or pdf files instead, and you can con- figure this in a start up file (by setting the $print_type vari- able). + + + 7 May 2011 7 + + + + + +LATEXMK(1L) LATEXMK(1L) + + However, printing is enabled by default only under UNIX/LINUX systems, where the default is to use the lpr command. In gen- eral, the correct behavior for printing very much depends on @@ -463,17 +479,6 @@ LATEXMK(1L) LATEXMK(1L) This option is incompatible with the -pv and -pvc options, so it turns them off. - - - 24 March 2011 7 - - - - - -LATEXMK(1L) LATEXMK(1L) - - -pdf Generate pdf version of document using pdflatex. -pdfdvi @@ -515,6 +520,18 @@ LATEXMK(1L) LATEXMK(1L) Whether to use single or double quotes round the "psnup -2" will depend on your command interpreter, as used by the particular + + + + 7 May 2011 8 + + + + + +LATEXMK(1L) LATEXMK(1L) + + version of perl and the operating system on your computer. -pv Run file previewer. If the -view option is used, this will @@ -530,18 +547,6 @@ LATEXMK(1L) LATEXMK(1L) -pvc Run a file previewer and continually update the .dvi, .ps, and/or .pdf files whenever changes are made to source files (see the Description above). Which of these files is generated and - - - - 24 March 2011 8 - - - - - -LATEXMK(1L) LATEXMK(1L) - - which is viewed is governed by the other options, and is the same as for the -pv option. The preview-continuous option -pvc can only work with one file. So in this case you will normally @@ -581,6 +586,18 @@ LATEXMK(1L) LATEXMK(1L) -pvc- Turn off -pvc. + + + + 7 May 2011 9 + + + + + +LATEXMK(1L) LATEXMK(1L) + + -quiet Same as -silent -r <rcfile> @@ -598,18 +615,6 @@ LATEXMK(1L) LATEXMK(1L) overridden by later options. The contents of the RC file just comprise a piece of code in the - - - - 24 March 2011 9 - - - - - -LATEXMK(1L) LATEXMK(1L) - - Perl programming language (typically a sequence of assignment statements); they are executed when the -r option is encountered during latexmk's parsing of its command line. See the -e option @@ -647,6 +652,18 @@ LATEXMK(1L) LATEXMK(1L) Also reduce the number of informational messages that latexmk generates. + + + + 7 May 2011 10 + + + + + +LATEXMK(1L) LATEXMK(1L) + + To change the options used to make the commands run silently, you need to configure latexmk with changed values of its config- uration variables, the relevant ones being $bib- @@ -666,18 +683,6 @@ LATEXMK(1L) LATEXMK(1L) e.g., by \includegraphics{drawing} in a LaTeX file. In that case, latexmk will try making drawing.ext with ext set in turn to the possible extensions that are relevant for latex (or as - - - - 24 March 2011 10 - - - - - -LATEXMK(1L) LATEXMK(1L) - - appropriate pdflatex). See also the documentation for the $use_make_for_missing_files @@ -713,6 +718,18 @@ EXAMPLES % latexmk -pvc -ps thesis# run latex enough times to resolve cross-references, make a postscript file, start a previewer. Then + + + + 7 May 2011 11 + + + + + +LATEXMK(1L) LATEXMK(1L) + + watch for changes in the source file thesis.tex and any files it uses. After any changes rerun latex @@ -734,18 +751,6 @@ CONFIGURATION/INITIALIZATION (RC) FILES 1) The system RC file, if it exists. On a UNIX system, latexmk searches for following places for its sys- tem RC file, in the following order, and reads the first it finds: - - - - 24 March 2011 11 - - - - - -LATEXMK(1L) LATEXMK(1L) - - "/opt/local/share/latexmk/LatexMk", "/usr/local/share/latexmk/LatexMk", "/usr/local/lib/latexmk/LatexMk". @@ -779,6 +784,18 @@ LATEXMK(1L) LATEXMK(1L) are written; thus any RC file specified on the command line with the -r option can override previous options but can be itself overridden by later options on the command line. There is also the -e option, which + + + + 7 May 2011 12 + + + + + +LATEXMK(1L) LATEXMK(1L) + + allows initialization code to be specified in latexmk's command line. @@ -802,18 +819,6 @@ HOW TO SET VARIABLES IN INITIALIZATION FILES push @default_files, 'paper2'; - - - - 24 March 2011 12 - - - - - -LATEXMK(1L) LATEXMK(1L) - - Note that simple "scalar" variables have names that begin with a $ character and array variables have names that begin with a @ character. Each statement ends with a semicolon. @@ -845,6 +850,18 @@ FORMAT OF COMMAND SPECIFICATIONS The two items starting with the % character are placeholders. These are substituted by appropriate values before the command is run. Thus + + + + 7 May 2011 13 + + + + + +LATEXMK(1L) LATEXMK(1L) + + %S will be replaced by the source file that elatex will be applied to, and %O will be replaced by any options that latexmk has decided to use for this command. (E.g., if you used the -silent option it would @@ -870,18 +887,6 @@ FORMAT OF COMMAND SPECIFICATIONS If for some reason you need a literal % character in your string not subject to the above rules, use a pair of these characters. Thus with - - - - 24 March 2011 13 - - - - - -LATEXMK(1L) LATEXMK(1L) - - the command specification $ps_previewer = 'latex -ad=%%Sfile.ad %S', the %%S will become %S when the command is executed, but the %S will be replaced by the source filename, which in this case would be the name @@ -912,6 +917,17 @@ LATEXMK(1L) LATEXMK(1L) usable in initialization files" for what is normally the most appropri- ate usage. + + + 7 May 2011 14 + + + + + +LATEXMK(1L) LATEXMK(1L) + + If you omit to supply any placeholders whatever in the specification of a command, latexmk will supply what its author thinks are appropriate defaults. This gives compatibility with configuration files for previ- @@ -938,18 +954,6 @@ LATEXMK(1L) LATEXMK(1L) string, that is equivalent to having just one. (4) Under cygwin, some complications happen, since cygwin amounts to a complicated merging of UNIX and MS-Windows. See the source code for how I've handled the - - - - 24 March 2011 14 - - - - - -LATEXMK(1L) LATEXMK(1L) - - problem. Command names containing spaces: Under MS-Windows it is common that the @@ -978,6 +982,18 @@ LATEXMK(1L) LATEXMK(1L) for a postscript viewer and a pdf viewer.) Not using a certain command: If a command is not to be run, the command + + + + 7 May 2011 15 + + + + + +LATEXMK(1L) LATEXMK(1L) + + name NONE is used, as in $lpr = 'NONE lpr'; @@ -1006,18 +1022,6 @@ LATEXMK(1L) LATEXMK(1L) extra processing, you could do something like: $pdflatex = 'pdflatex --shell-escape %O %S; pst2pdf_for_latexmk - - - - 24 March 2011 15 - - - - - -LATEXMK(1L) LATEXMK(1L) - - %B'; This definition assumes you are using a UNIX-like system, so that the @@ -1044,6 +1048,18 @@ LIST OF CONFIGURATION VARIABLES USABLE IN INITIALIZATION FILES See the $pvc_view_file_via_temporary variable for a setting that applies only if preview-continuous mode (-pvc option) is used. + + + + 7 May 2011 16 + + + + + +LATEXMK(1L) LATEXMK(1L) + + See $tmpdir for the setting of the directory where the temporary file is created. @@ -1074,18 +1090,6 @@ LIST OF CONFIGURATION VARIABLES USABLE IN INITIALIZATION FILES scale for your message, as a rule of thumb the scale should be about equal to 1100 divided by the number of characters in the message. The Default is just right for 5 character messages. - - - - 24 March 2011 16 - - - - - -LATEXMK(1L) LATEXMK(1L) - - This is equivalent to the -bs option. @BIBINPUTS @@ -1110,6 +1114,18 @@ LATEXMK(1L) LATEXMK(1L) Perl's rules for writing strings. Important note: This variable is now mostly obsolete in the current + + + + 7 May 2011 17 + + + + + +LATEXMK(1L) LATEXMK(1L) + + version of latexmk, 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 @BIBIN- @@ -1142,18 +1158,6 @@ LATEXMK(1L) LATEXMK(1L) in incorrect overwriting of the precious bbl files. The vari- able $bibtex_use controls whether this happens. Its possible values are: 0: never use BibTeX or biber. 1: only use BibTeX or - - - - 24 March 2011 17 - - - - - -LATEXMK(1L) LATEXMK(1L) - - biber if the bib files exist. 2: run BibTeX or biber whenever it appears necessary to update the bbl files, without testing for the existence of the bib files. @@ -1177,14 +1181,25 @@ LATEXMK(1L) LATEXMK(1L) fied by the $clean_ext, $clean_full_ext and @generated_exts variables.) + + + 7 May 2011 18 + + + + + +LATEXMK(1L) LATEXMK(1L) + + This variable is equivalent to specifying one of the -c or -C options. But there should be no need to set this variable from an RC file. $clean_ext [""] Extra extensions of files for latexmk to remove when any of the clean-up options (-c or -C) is selected. The value of this - variable is a string containing the extensions separated by - spaces. + variable is a string containing the extensions separated by spa- + ces. It is also possible to specify a more general pattern of file to be deleted, by using the place holder %R, as in commands. Thus @@ -1210,18 +1225,6 @@ LATEXMK(1L) LATEXMK(1L) @default_files [("*.tex")] Default list of files to be processed. - - - - 24 March 2011 18 - - - - - -LATEXMK(1L) LATEXMK(1L) - - Normally, if no filenames are specified on the command line, latexmk processes all tex files specified in the @default_files variable, which by default is set to all tex files ("*.tex") in @@ -1243,6 +1246,18 @@ LATEXMK(1L) LATEXMK(1L) Note that more than file may be given, and that the default extension is ".tex". Wild cards are allowed. The parentheses + + + + 7 May 2011 19 + + + + + +LATEXMK(1L) LATEXMK(1L) + + are because @default_files is an array variable, i.e., a sequence of filename specifications is possible. @@ -1278,20 +1293,8 @@ LATEXMK(1L) LATEXMK(1L) $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 - - - - 24 March 2011 19 - - - - - -LATEXMK(1L) LATEXMK(1L) - - - different order: + to use the dvipdfm command, which needs its arguments in a dif- + ferent order: $dvipdf = "dvipdfm %O -o %D %S"; @@ -1310,6 +1313,17 @@ LATEXMK(1L) LATEXMK(1L) The program to used as a filter to convert a .dvi file to a .ps file in landscape mode. + + + 7 May 2011 20 + + + + + +LATEXMK(1L) LATEXMK(1L) + + $dvips_pdf_switch ["-P pdf"] Switch(es) for dvips program when pdf file is to be generated from ps file. @@ -1349,17 +1363,6 @@ LATEXMK(1L) LATEXMK(1L) variable $dvi_update_method. The default value is the one appropriate for xdvi on a UNIX system. - - - 24 March 2011 20 - - - - - -LATEXMK(1L) LATEXMK(1L) - - $fdb_ext ["fdb_latexmk"] The extension of the file which latexmk generates to contain a database of information on source files. You will not normally @@ -1376,6 +1379,17 @@ LATEXMK(1L) LATEXMK(1L) during a LaTeX run and that are read in by LaTeX in later runs, either directly or indirectly. + + + 7 May 2011 21 + + + + + +LATEXMK(1L) LATEXMK(1L) + + This list has two uses: (a) to set the kinds of file to be deleted in a cleanup operation (with the -c, -C, -CA, -g and -gg options), and (b) in the determination of whether a rerun of @@ -1417,18 +1431,6 @@ LATEXMK(1L) LATEXMK(1L) time changes, latex sees that the eps file has changed, and therefore reruns latex. This causes an infinite loop, that is only terminated becaues latexmk has a limit on the number of - - - - 24 March 2011 21 - - - - - -LATEXMK(1L) LATEXMK(1L) - - runs to guard against pathological situations. But the changing line has no real effect, since it is a comment. @@ -1442,6 +1444,18 @@ LATEXMK(1L) LATEXMK(1L) period. The value, on the right-hand side, is a string contain- ing a regular expresssion. (See documentation on Perl for how they are to be specified in general.) This particular regular + + + + 7 May 2011 22 + + + + + +LATEXMK(1L) LATEXMK(1L) + + expression specifies that lines beginning with "%%CreationDate: " are to be ignored in deciding whether a file of the given extension .eps has changed. @@ -1487,27 +1501,27 @@ LATEXMK(1L) LATEXMK(1L) $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., + $latex = "latex --src-specials"; + %latex_input_extensions + This variable specifies the extensions tried by latexmk when it + finds that a LaTeX run resulted in an error that a file has not + been found, and the file is given without an extension. This + typically happens when LaTeX commands of the form \input{file} - 24 March 2011 22 + 7 May 2011 23 -LATEXMK(1L) LATEXMK(1L) - program used, but also specify options to the program. E.g., +LATEXMK(1L) LATEXMK(1L) - $latex = "latex --src-specials"; - %latex_input_extensions - This variable specifies the extensions tried by latexmk when it - finds that a LaTeX run resulted in an error that a file has not - been found, and the file is given without an extension. This - typically happens when LaTeX commands of the form \input{file} or \includegraphics{figure}, when the relevant source file does not exist. @@ -1557,10 +1571,15 @@ LATEXMK(1L) LATEXMK(1L) example, if you have gsview installed, you could use it with the option "/p": + $lpr = '"c:/Program Files/Ghostgum/gsview/gsview32.exe" /p'; + + If gsview is installed in a different directory, you will need + to make the appropriate change. Note the combination of single + and double quotes around the name. The single quotes specify - 24 March 2011 23 + 7 May 2011 24 @@ -1569,11 +1588,6 @@ LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) - $lpr = '"c:/Program Files/Ghostgum/gsview/gsview32.exe" /p'; - - If gsview is installed in a different directory, you will need - to make the appropriate change. Note the combination of single - and double quotes around the name. The single quotes specify that this is a string to be assigned to the configuration vari- able $lpr. The double quotes are part of the string passed to the operating system to get the command obeyed; this is neces- @@ -1627,10 +1641,11 @@ LATEXMK(1L) LATEXMK(1L) If zero, do NOT generate a pdf version of the document. If equal to 1, generate a pdf version of the document using pdfla- tex. If equal to 2, generate a pdf version of the document from + the ps file, by using the command specified by the $ps2pdf - 24 March 2011 24 + 7 May 2011 25 @@ -1639,8 +1654,7 @@ LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) - the ps file, by using the command specified by the $ps2pdf vari- - able. If equal to 3, generate a pdf version of the document + variable. If equal to 3, generate a pdf version of the document from the dvi file, by using the command specified by the $dvipdf variable. @@ -1696,13 +1710,8 @@ LATEXMK(1L) LATEXMK(1L) errors"; - $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 Windows, - - - 24 March 2011 25 + 7 May 2011 26 @@ -1711,6 +1720,9 @@ LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) + $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 Windows, this will cause to be run whatever command the system has asso- ciated with .pdf files.] @@ -1762,26 +1774,26 @@ LATEXMK(1L) LATEXMK(1L) $pid_position[1 under UNIX, -1 under MS-Windows] 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. Set- - ting the variable to -1 is used to indicate that $pscmd is not - to be used. - $postscript_mode [0] - If nonzero, generate a postscript version of the document. - Equivalent to the -ps option. + 7 May 2011 27 - 24 March 2011 26 +LATEXMK(1L) LATEXMK(1L) -LATEXMK(1L) LATEXMK(1L) + 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. Set- + ting the variable to -1 is used to indicate that $pscmd is not + to be used. + $postscript_mode [0] + If nonzero, generate a postscript version of the document. + Equivalent to the -ps option. If some other request is made for which a postscript file is needed, then $postscript_mode will be set to 1. @@ -1814,8 +1826,8 @@ LATEXMK(1L) LATEXMK(1L) the previewer about file changes). Each line of the output of this command is assumed to correspond - to one process. See the $pid_position variable for how the pro- - cess number is determined. + to one process. See the $pid_position variable for how the + process number is determined. The default for pscmd is "NONE" under MS-Windows and cygwin (i.e., the command is not used), "ps --width 200 -f -u @@ -1827,33 +1839,34 @@ LATEXMK(1L) LATEXMK(1L) $ps2pdf ["ps2pdf %O %S %D"] Command to convert ps to pdf file. - $ps_filter [empty] - The postscript file filter to be run on the newly produced - postscript file before other processing. Equivalent to specify- - ing the -pF option. - $ps_previewer ["start gv %O %S", but "start %O %S" under MS-WINDOWS] - The command to invoke a ps-previewer. (The default under MS- - WINDOWS will cause to be run whatever command the system has - associated with .ps files.) - 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 dif- - ferent ways of writing this option. You can configure this - variable apppropriately. + 7 May 2011 28 - 24 March 2011 27 +LATEXMK(1L) LATEXMK(1L) -LATEXMK(1L) LATEXMK(1L) + $ps_filter [empty] + The postscript file filter to be run on the newly produced post- + script file before other processing. Equivalent to specifying + the -pF option. + + $ps_previewer ["start gv %O %S", but "start %O %S" under MS-WINDOWS] + The command to invoke a ps-previewer. (The default under MS- + WINDOWS will cause to be run whatever command the system has + associated with .ps files.) + 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 dif- + ferent ways of writing this option. You can configure this + variable apppropriately. WARNING: Linux systems may have installed one (or more) versions of gv under different names, e.g., ggv, kghostview, etc, but @@ -1893,13 +1906,25 @@ LATEXMK(1L) LATEXMK(1L) $quote_filenames [1] This specifies whether substitutions for placeholders in command specifications (as in $pdflatex) are surrounded by double + + + + 7 May 2011 29 + + + + + +LATEXMK(1L) LATEXMK(1L) + + quotes. If this variable is 1 (or any other value Perl regards as true), then quoting is done. Otherwise quoting is omitted. The quoting method used by latexmk is tested to work correctly under UNIX systems (including Linux and Mac OS-X) and under MS-Windows. It - allows the use of filenames containing special characters, notably - spaces. (But note that many versions of LaTeX and PdfLaTeX cannot cor- + allows the use of filenames containing special characters, notably spa- + ces. (But note that many versions of LaTeX and PdfLaTeX cannot cor- rectly deal with TeX files whose names contain spaces. Latexmk's quot- ing only ensures that such filenames are correctly treated by the oper- ating system in passing arguments to programs.) @@ -1915,18 +1940,6 @@ LATEXMK(1L) LATEXMK(1L) It is generally recommended to use this option (or to configure the $recorder variable to be on.) But it only works if (pdf)latex supports the -recorder option, which is true for most - - - - 24 March 2011 28 - - - - - -LATEXMK(1L) LATEXMK(1L) - - current implementations Note about the name of the .fls file: Most implementations of @@ -1960,6 +1973,17 @@ LATEXMK(1L) LATEXMK(1L) Directory to store temporary files that latexmk may generate while running. + + + 7 May 2011 30 + + + + + +LATEXMK(1L) LATEXMK(1L) + + The default under MSWindows (including cygwin), is to set $tmpdir to the value of the first of whichever of the system environment variables TMPDIR or TEMP exists, otherwise to the @@ -1989,16 +2013,6 @@ LATEXMK(1L) LATEXMK(1L) generated is to be used (among dvi, ps and pdf). - - 24 March 2011 29 - - - - - -LATEXMK(1L) LATEXMK(1L) - - CUSTOM DEPENDENCIES In any RC file a set of custom dependencies can be set up to convert a file with one extension to a file with another. An example use of this @@ -2024,6 +2038,18 @@ CUSTOM DEPENDENCIES to extension: The extension of the file we are converting to (e.g. "eps"). It + + + + 7 May 2011 31 + + + + + +LATEXMK(1L) LATEXMK(1L) + + is specified without a period. must: If non-zero, the file from which we are converting must exist, @@ -2060,17 +2086,6 @@ CUSTOM DEPENDENCIES A simple and typical example of code in an initialization rcfile is - - - 24 March 2011 30 - - - - - -LATEXMK(1L) LATEXMK(1L) - - add_cus_dep( 'fig', 'eps', 0, 'fig2eps' ); sub fig2eps { system("fig2dev -Leps $_[0].fig $_[0].eps"); @@ -2089,6 +2104,18 @@ LATEXMK(1L) LATEXMK(1L) the above code with a single argument "figure", which is the basename of each of the files (possibly with a path component). This argument is referred to by Perl as $_[0]. In the example above, the subroutine + + + + 7 May 2011 32 + + + + + +LATEXMK(1L) LATEXMK(1L) + + uses the Perl command system to invoke the program fig2dev. The double quotes around the string are a Perl idiom that signify that each string of the form of a variable name, $_[0] in this case, is to be substi- @@ -2112,10 +2139,10 @@ LATEXMK(1L) LATEXMK(1L) This causes the invocation of the fig2dev program to have quoted file- names; it should therefore work with filenames containing spaces. How- - ever, not all software deals correctly with filenames that contain - spaces. Moreover, the rules, if any, for quoting filenames vary - between operating systems, command shells and individual pieces of - software, so this code may not always work. + ever, not all software deals correctly with filenames that contain spa- + ces. Moreover, the rules, if any, for quoting filenames vary between + operating systems, command shells and individual pieces of software, so + this code may not always work. If you use pdflatex instead of latex, then you will probably prefer to convert your graphics files to pdf format, in which case you would @@ -2131,30 +2158,30 @@ LATEXMK(1L) LATEXMK(1L) they are undesirable. So you might want to delete the unneeded ones. For example, you remove any "fig" to "eps" rule by the line + remove_cus_dep( 'fig', 'eps' ); + If you have complicated sets of custom dependencies, you may want to + get a listing of the custom dependencies. This is done by using the + line + show_cus_dep(); - 24 March 2011 31 + in an initialization file. + Another example of a custom dependency overcomes a limitation of + latexmk concerning index files. The only index-file conversion built- + 7 May 2011 33 -LATEXMK(1L) LATEXMK(1L) - remove_cus_dep( 'fig', 'eps' ); - If you have complicated sets of custom dependencies, you may want to - get a listing of the custom dependencies. This is done by using the - line - show_cus_dep(); +LATEXMK(1L) LATEXMK(1L) - in an initialization file. - Another example of a custom dependency overcomes a limitation of - latexmk concerning index files. The only index-file conversion built- in to latexmk is from an ".idx" file written on one run of latex/pdfla- tex to an ".ind" file to be read in on a subsequent run. But with the index.sty package you can create extra indexes with extensions that you @@ -2203,10 +2230,16 @@ OLD METHOD OF DEFINING CUSTOM DEPENDENCIES lows. It is the code in an RC file to ensure automatic conversion of .fig files to .eps files: + push @cus_dep_list, "fig eps 0 fig2eps"; + sub fig2eps { + system("fig2dev -Lps $_[0].fig $_[0].eps"); + } + + This method still works, and is equivalent to the earlier code using - 24 March 2011 32 + 7 May 2011 34 @@ -2215,12 +2248,6 @@ OLD METHOD OF DEFINING CUSTOM DEPENDENCIES LATEXMK(1L) LATEXMK(1L) - push @cus_dep_list, "fig eps 0 fig2eps"; - sub fig2eps { - system("fig2dev -Lps $_[0].fig $_[0].eps"); - } - - This method still works, and is equivalent to the earlier code using the add_cus_dep subroutine, except that it doesn't delete any previous custom-dependency for the same conversion. So the new method is preferable. @@ -2278,7 +2305,7 @@ USING latexmk WITH make - 24 March 2011 33 + 7 May 2011 35 @@ -2341,16 +2368,10 @@ LATEXMK(1L) LATEXMK(1L) dency files are .deps/document1.pdfP and .deps/document2.pdfP. There is now no need for the phony prerequisite for the rule to make - .pdf files from .tex files. But I have added a rule to make .pdf files - from .fig files produced by the xfig program; these are commonly used - for graphics insertions in LaTeX documents. Latexmk is arranged to - output a dependency file after each run. It is given the -recorder - option, which improves its detection of files generated during a run of - pdflatex; such files should not be in the dependency list. The -e - 24 March 2011 34 + 7 May 2011 36 @@ -2359,6 +2380,12 @@ LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) LATEXMK(1L) + .pdf files from .tex files. But I have added a rule to make .pdf files + from .fig files produced by the xfig program; these are commonly used + for graphics insertions in LaTeX documents. Latexmk is arranged to + output a dependency file after each run. It is given the -recorder + option, which improves its detection of files generated during a run of + pdflatex; such files should not be in the dependency list. The -e options are used to turn off all custom dependencies, and to document this. Instead the -use-make is used to delegate the making of missing files to make itself. @@ -2405,24 +2432,12 @@ THANKS TO AUTHOR Current version, by John Collins (username collins at node - phys.psu.edu). (Version 4.23a). - - Released version can be obtained from CTAN: <http://www.tug.org/tex- - archive/support/latexmk/>, and from the author's website - <http://www.phys.psu.edu/~collins/software/latexmk/>. - Modifications and enhancements by Evan McLean (Version 2.0) - Original script called "go" by David J. Musliner (RCS Version 3.2) + phys.psu.edu). (Version 4.24). - - - - - - - 24 March 2011 35 + 7 May 2011 37 @@ -2431,6 +2446,11 @@ AUTHOR LATEXMK(1L) LATEXMK(1L) + Released version can be obtained from CTAN: <http://www.tug.org/tex-ar- + chive/support/latexmk/>, and from the author's website + <http://www.phys.psu.edu/~collins/software/latexmk/>. + Modifications and enhancements by Evan McLean (Version 2.0) + Original script called "go" by David J. Musliner (RCS Version 3.2) @@ -2483,17 +2503,6 @@ LATEXMK(1L) LATEXMK(1L) - - - - - - - - - - - - 24 March 2011 36 + 7 May 2011 38 diff --git a/Master/texmf-dist/scripts/latexmk/latexmk.pl b/Master/texmf-dist/scripts/latexmk/latexmk.pl index c5deb79cfac..3a3303e3322 100755 --- a/Master/texmf-dist/scripts/latexmk/latexmk.pl +++ b/Master/texmf-dist/scripts/latexmk/latexmk.pl @@ -107,8 +107,8 @@ use warnings; $my_name = 'latexmk'; $My_name = 'Latexmk'; -$version_num = '4.23a'; -$version_details = "$My_name, John Collins, 24 March 2011"; +$version_num = '4.24'; +$version_details = "$My_name, John Collins, 7 May 2011"; use Config; @@ -141,7 +141,7 @@ else { warn "Something wrong with the perl configuration: No signals?\n"; } -## Copyright John Collins 1998-2010 +## Copyright John Collins 1998-2011 ## (username collins at node phys.psu.edu) ## (and thanks to David Coppit (username david at node coppit.org) ## for suggestions) @@ -177,10 +177,13 @@ else { ## ## Modification log from 1 Jan 2011 onwards in detail ## +## 7 May 2011, John Collins With biber, use kpsewhich to find source +## files (e.g., .bib) ## 24 Mar 2011, John Collins Correct bug in detection of source files ## listed in .fls ## 21 Mar 2011, John Collins Add 'bcf' to list of generated extensions -## Deal with case that fls files are latex.fls and pdflatex.fls +## Deal with case that fls files are latex.fls +## and pdflatex.fls ## 19--21 Mar 2011, John Collins -deps and -rules options ## $use_make_for_missing_files ## -recorder option @@ -2940,6 +2943,27 @@ sub check_biber_log { } } close $log_file; + my $bibret = &find_file_list1( $Pbiber_source, $Pbiber_source, + '', \@BIBINPUTS ); + @$Pbiber_source = uniqs( @$Pbiber_source ); + if ($bibret == 0) { + warn "$My_name: Found biber source file(s) [@$Pbiber_source]\n" + unless $silent; + } + else { + warn "$My_name: Failed to find one or more biber source files ", + "in [@$Pbiber_source]\n"; + if ($force_mode) { + warn "==== Force_mode is on, so I will continue. ", + "But there may be problems ===\n"; + } + else { + #$failure = -1; + #$failure_msg = 'Failed to find one or more biber source files'; + #warn "$My_name: Failed to find one or more biber source files\n"; + } + return 3; + } # print "$My_name: #Biber errors = $error_count, warning messages = $warning_count,\n ", # "missing citation messages = $missing_citations, no_citations = $no_citations\n"; if ( ! $have_error && $no_citations ) { diff --git a/Master/texmf/doc/man/man1/latexmk.1 b/Master/texmf/doc/man/man1/latexmk.1 index 7bbcb62d7ff..768cb1ff6c8 100644 --- a/Master/texmf/doc/man/man1/latexmk.1 +++ b/Master/texmf/doc/man/man1/latexmk.1 @@ -1,4 +1,4 @@ -.TH LATEXMK 1L "24 March 2011" "" +.TH LATEXMK 1L "7 May 2011" "" .SH NAME latexmk \- generate LaTeX document .SH SYNOPSIS @@ -2027,7 +2027,7 @@ e-mail addresses are not written in their standard form to avoid being harvested by worms and viruses.) .SH AUTHOR Current version, by John Collins (username collins at node phys.psu.edu). -(Version 4.23a). +(Version 4.24). Released version can be obtained from CTAN: <http://www.tug.org/tex-archive/support/latexmk/>, and from the diff --git a/Master/texmf/doc/man/man1/latexmk.man1.pdf b/Master/texmf/doc/man/man1/latexmk.man1.pdf Binary files differindex 0c5ee2018eb..0ee497e47cb 100644 --- a/Master/texmf/doc/man/man1/latexmk.man1.pdf +++ b/Master/texmf/doc/man/man1/latexmk.man1.pdf |