diff options
author | Karl Berry <karl@freefriends.org> | 2010-12-14 18:02:02 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-12-14 18:02:02 +0000 |
commit | d622a20d410976b6adcbe3cafba952be8ab3dd65 (patch) | |
tree | d3732958de5fd230a31d6a873e28ec75d0df5146 /Build | |
parent | dc9db3b0bed0e7ca4d6c1fd5b159ca0b62494c3a (diff) |
commit bibtex.web 0.99d, released March 2010
git-svn-id: svn://tug.org/texlive/trunk@20738 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r-- | Build/source/extra/bibtex/README.file-listing | 28 | ||||
-rw-r--r-- | Build/source/extra/bibtex/bibtex.web | 77 | ||||
-rw-r--r-- | Build/source/extra/bibtex/ftp.cs.stanford.edu/pub/tex/.listing | 54 |
3 files changed, 49 insertions, 110 deletions
diff --git a/Build/source/extra/bibtex/README.file-listing b/Build/source/extra/bibtex/README.file-listing deleted file mode 100644 index 469b4f2f164..00000000000 --- a/Build/source/extra/bibtex/README.file-listing +++ /dev/null @@ -1,28 +0,0 @@ -Listing of ftp.cs.stanford.edu:pub/tex/bibtex, with dates: - --rw-r--r-- 1 karl root 20285 Dec 5 1989 abbrv.bst --rw-r--r-- 1 karl root 19367 Dec 12 1990 acm.bst --rw-r--r-- 1 karl root 23863 Dec 5 1989 alpha.bst --rw-r--r-- 1 karl root 21794 Dec 12 1990 apalike.bst --rw-r--r-- 1 karl root 2303 Dec 12 1990 apalike.doc --rw-r--r-- 1 karl root 1084 Dec 12 1990 apalike.sty --rw-r--r-- 1 karl root 5370 Feb 29 1992 apalike.tex --rw-r--r-- 1 karl root 1840 Jan 30 1992 bibtex.1 --rw-r--r-- 1 karl root 6799 Jun 11 1988 bibtex.cms-changes --rw-r--r-- 1 karl root 2435 Dec 5 1989 bibtex.ins --rw-r--r-- 1 karl root 4037 Dec 5 1989 bibtex.tops20-changes --rw-r--r-- 1 karl root 8616 Dec 5 1989 bibtex.vms-changes --rw-r--r-- 1 karl root 383409 Dec 5 1989 bibtex.web --rw-r--r-- 1 karl root 73045 Dec 5 1989 btxbst.doc --rw-r--r-- 1 karl root 1508 Jan 31 1988 btxdoc.aux --rw-r--r-- 1 karl root 596 Feb 8 1988 btxdoc.bbl --rw-r--r-- 1 karl root 2594 Dec 5 1989 btxdoc.bib --rw-r--r-- 1 karl root 41569 Feb 8 1988 btxdoc.tex --rw-r--r-- 1 karl root 1398 Jan 31 1988 btxdoc.xua --rw-r--r-- 1 karl root 25616 Dec 5 1989 btxhak.tex --rw-r--r-- 1 karl root 33524 Nov 13 1995 btxmac.tex --rw-r--r-- 1 karl root 16932 Dec 12 1990 ieeetr.bst --rw-r--r-- 1 karl root 20569 Dec 5 1989 plain.bst --rw-r--r-- 1 karl root 17956 Dec 12 1990 siam.bst --rw-r--r-- 1 karl root 17986 Dec 5 1989 unsrt.bst --rw-r--r-- 1 karl root 9894 Dec 5 1989 xampl.bib diff --git a/Build/source/extra/bibtex/bibtex.web b/Build/source/extra/bibtex/bibtex.web index e465a33c48d..3dec37a90d9 100644 --- a/Build/source/extra/bibtex/bibtex.web +++ b/Build/source/extra/bibtex/bibtex.web @@ -1,4 +1,5 @@ -% This program is copyright (C) 1985 by Oren Patashnik; all rights reserved. +% This program is copyright (C) 1985, 1988, 2010 by Oren Patashnik; +% all rights reserved. % Copying of this file is authorized only if (1) you are Oren Patashnik, or if % (2) you make absolutely no changes to your copy. (The WEB system provides % for alterations via an auxiliary file; the master file should stay intact.) @@ -32,8 +33,11 @@ % Version 0.99c was released in February 1988. It removed two begin-end pairs % that, for convention only, surrounded entire modules, but that elicited % label-related complaints from some compilers. +% Version 0.99d was released in March 2010. It made output lines breakable +% only at white_space (so that, for example, URLs would not be broken). +% Other known bugs (all minor) will be fixed in a subsequent release. -% Please report any bugs to Oren Patashnik (PATASHNIK@@SCORE.STANFORD.EDU) +% Please report any bugs to biblio@@tug.org % Although considerable effort has been expended to make the BibTeX program % correct and reliable, no warranty is implied; the author disclaims any @@ -131,7 +135,7 @@ style writers would be eternally grateful, if only they knew. The |banner| string defined here should be changed whenever \BibTeX\ gets modified. -@d banner=='This is BibTeX, Version 0.99c' {printed when the program starts} +@d banner=='This is BibTeX, Version 0.99d' {printed when the program starts} @ @@ -7573,14 +7577,16 @@ This procedure adds to the output buffer the given string in length of the current string in |out_buf|, and thus also gives the location for the next character. If there are enough characters present in the output buffer, it writes one or more lines out to the -\.{.bbl} file. It may break a line at any |white_space| character it -likes, but if it does, it will add two |space|s to the next output -line. +\.{.bbl} file. It breaks a line only at a |white_space| character, +and when it does, it adds two |space|s to the next output line. @<Procedures and functions for style-file function execution@>= procedure add_out_pool (@!p_str : str_number); +label loop1_exit,loop2_exit; var break_ptr : buf_pointer; {the first character following the line break} @!end_ptr : buf_pointer; {temporary end-of-buffer pointer} +break_pt_found : boolean; {a suitable |white_space| character} +unbreakable_tail : boolean; {as it contains no |white_space| character} begin p_ptr1 := str_start[p_str]; p_ptr2 := str_start[p_str+1]; @@ -7594,7 +7600,8 @@ while (p_ptr1 < p_ptr2) do incr(out_buf_ptr); end; out_buf_length := out_buf_ptr; -while (out_buf_length > max_print_line) do +unbreakable_tail := false; +while ((out_buf_length > max_print_line) and (not unbreakable_tail)) do @<Break that line@>; end; @@ -7604,19 +7611,25 @@ Here we break the line by looking for a |white_space| character, backwards from |out_buf[max_print_line]| until |out_buf[min_print_line]|; we break at the |white_space| and indent the next line two |space|s. The next module handles things when -there's no |white_space| character to break at. +there's no |white_space| character to break at. (It seems that the +annoyances to the average user of a warning message when there's an +output line longer than |max_print_line| outweigh the benefits, so we +don't issue such warnings in the current code.) @<Break that line@>= begin end_ptr := out_buf_length; out_buf_ptr := max_print_line; +break_pt_found := false; while ((lex_class[out_buf[out_buf_ptr]] <> white_space) and (out_buf_ptr >= min_print_line)) do decr(out_buf_ptr); if (out_buf_ptr = min_print_line-1) then {no |white_space| character} - @<Break that unbreakable line@> + @<Break that unbreakably long line@> {(if |white_space| follows)} else - begin {hit a |white_space| character} + break_pt_found := true; {hit a |white_space| character} +if (break_pt_found) then + begin out_buf_length := out_buf_ptr; break_ptr := out_buf_length + 1; output_bbl_line; {output what we can} @@ -7636,27 +7649,35 @@ end @ -If there's no |white_space| character to break the line at, we break -it at |out_buf[max_print_line-1]|, append a |comment| character, and -don't indent the next line. +If there's no |white_space| character up through +|out_buf[max_print_line]|, we instead break the line at the first +following |white_space| character, if one exists. And if, starting +with that |white_space| character, there are multiple consecutive +|white_space| characters, |out_buf_ptr| points to the last of them. +If no |white_space| character exists, we haven't found a viable break +point, so we don't break the line (yet). -@<Break that unbreakable line@>= +@<Break that unbreakably long line@>= begin -out_buf[end_ptr] := out_buf[max_print_line-1]; {save this character} -out_buf[max_print_line-1] := comment; {so \TeX\ does the thing right} -out_buf_length := max_print_line; -break_ptr := out_buf_length - 1; {the `|-1|' allows for the restoration} -output_bbl_line; {output what we can,} -out_buf[max_print_line-1] := out_buf[end_ptr]; {restore this character} -out_buf_ptr := 0; -tmp_ptr := break_ptr; -while (tmp_ptr < end_ptr) do {and slide the rest down} - begin - out_buf[out_buf_ptr] := out_buf[tmp_ptr]; - incr(out_buf_ptr); - incr(tmp_ptr); +out_buf_ptr := max_print_line + 1; {|break_pt_found| is still |false|} +while (out_buf_ptr < end_ptr) do + if (lex_class[out_buf[out_buf_ptr]] <> white_space) then + incr(out_buf_ptr) + else + goto loop1_exit; +loop1_exit: +if (out_buf_ptr = end_ptr) then + unbreakable_tail := true {because no |white_space| character} +else {at |white_space|, and |out_buf_ptr < end_ptr|} + begin + break_pt_found := true; + while (out_buf_ptr+1 < end_ptr) do {look for more |white_space|} + if (lex_class[out_buf[out_buf_ptr+1]] = white_space) then + incr(out_buf_ptr) {which then points to |white_space|} + else + goto loop2_exit; +loop2_exit: end; -out_buf_length := end_ptr - break_ptr; end diff --git a/Build/source/extra/bibtex/ftp.cs.stanford.edu/pub/tex/.listing b/Build/source/extra/bibtex/ftp.cs.stanford.edu/pub/tex/.listing deleted file mode 100644 index a2ddb6d0c11..00000000000 --- a/Build/source/extra/bibtex/ftp.cs.stanford.edu/pub/tex/.listing +++ /dev/null @@ -1,54 +0,0 @@ -drwxr-xr-x 29 ftp users 4096 Mar 18 2008 .
-drwxr-xr-x 49 500 500 4096 Dec 11 2008 ..
-drwxr-xr-x 7 ftp users 2048 Feb 5 1992 ams
-drwxr-xr-x 2 ftp users 2048 Oct 30 1989 archive
-drwxr-xr-x 2 ftp users 2048 May 2 1991 bibtex
--rw-r--r-- 1 ftp users 15030 Jun 18 1993 bst-files.shar.gz
--rw-r--r-- 1 ftp users 1444 Jan 9 1990 CHANGES.Jan90
--rw-r--r-- 1 ftp users 928 Mar 26 1990 CHANGES.Mar90
--rw-r--r-- 1 ftp users 11188 Jun 18 1993 chart.tar.gz
-drwxr-xr-x 2 ftp users 6144 Feb 12 2009 cm
-drwxr-xr-x 4 ftp users 2048 Apr 8 1991 contrib
-drwxr-xr-x 2 ftp users 2048 Apr 1 1992 cweb
--rwxr--r-- 1 ftp users 491970 Jun 23 2003 DIFFS.june03
--rw-r--r-- 1 ftp users 85271 Jun 13 1995 DIFFS.june95
--rw-r--r-- 1 ftp users 86847 Mar 27 1991 DIFFS.Mar91
--rw-r--r-- 1 ftp users 402618 Mar 26 1992 DIFFS.Mar92
--rw-r--r-- 1 ftp users 159439 Sep 21 1990 DIFFS.Sept90
--rw-r--r-- 1 ftp users 32037 Jun 18 1993 diss.shar.gz
-drwxr-xr-x 11 ftp users 2048 Nov 19 1989 dist
-drwxr-xr-x 2 ftp users 2048 Jun 23 1993 eplain
-drwxr-xr-x 2 ftp users 2048 Aug 19 2003 errata
-drwxr-xr-x 2 ftp users 2048 Aug 19 2003 etc
--rw-r--r-- 1 ftp users 31165 Jun 18 1993 font-hints.txt
-drwxr-xr-x 2 ftp users 6144 Sep 25 1990 fonts
-drwxr-xr-x 2 ftp users 20480 Mar 19 1990 gf
--rw-r--r-- 1 ftp users 7349 Jun 18 1993 grapher.tar.gz
-drwxr-xr-x 2 ftp users 2048 Nov 3 1992 icons
-drwxr-xr-x 2 ftp users 8192 Sep 19 1989 imagen
--rw-r--r-- 1 ftp users 379963 Jun 18 1993 imaketex202a.tar.gz
--rw-r--r-- 1 ftp users 269 Jun 18 1993 imaketex.README
--rw-r--r-- 1 ftp users 570 Jul 18 1996 latex.README
-drwxr-xr-x 2 ftp users 2048 Aug 19 2003 lib
-drwxr-xr-x 2 ftp users 2048 Oct 1 1989 ln03
-drwxr-xr-x 17 ftp users 2048 Mar 18 2008 local
-drwxr-xr-x 2 ftp users 2048 Aug 19 2003 mf
-drwxr-xr-x 2 ftp users 2048 Aug 19 2003 mfware
-drwxr-xr-x 3 ftp users 2048 Feb 13 1991 patches
-drwxr-xr-x 2 ftp users 2048 Jun 23 1993 ptc
--rw-r--r-- 1 ftp users 3670 Jul 18 1996 README
--rw-r--r-- 1 ftp users 1297 Dec 14 2007 README.KNUTH
--rw-r--r-- 1 ftp users 138 Dec 7 1993 README.UNIX_TEX
-drwxr-xr-x 2 ftp users 2048 Aug 19 2003 tex
--rw-r--r-- 1 ftp users 3097368 Jun 23 2003 tex03.tar.gz
--rw-r--r-- 1 3732 man 3230185 Mar 24 2008 tex08.tar.gz
--rw-r--r-- 1 ftp users 2813883 Aug 11 1998 tex98.tar.gz
-drwxr-xr-x 2 ftp users 16384 Jul 22 1990 texhax
--rw-r--r-- 1 ftp users 498283 Jun 18 1993 texinc.tar.gz
--rw-r--r-- 1 ftp users 0 Mar 13 1991 tex.log
--rw-r--r-- 1 ftp users 515 Jun 17 2000 texmf.cnf
-drwxr-xr-x 2 ftp users 2048 Aug 19 2003 texware
-drwxr-xr-x 2 ftp users 2048 Sep 7 1993 tugboat
-drwxr-xr-x 7 ftp users 2048 Oct 27 1989 unsupported
-drwxr-xr-x 2 ftp users 2048 Aug 19 2003 web
--rw-r--r-- 1 ftp users 570 Jul 18 1996 web2c.README
|