diff options
author | Takuji Tanaka <ttk@t-lab.opal.ne.jp> | 2023-01-15 05:08:58 +0000 |
---|---|---|
committer | Takuji Tanaka <ttk@t-lab.opal.ne.jp> | 2023-01-15 05:08:58 +0000 |
commit | 6ddf7cd5b4795c5aa2144521fe1387dc9146362a (patch) | |
tree | 175d6105882e9d09452aeddc0a080a66d32c118e /Build/source/texk/web2c/ptexdir/pbibtex.ch | |
parent | 1f146ab3918a5579c1056691ce3b60ea574a3fbe (diff) |
ptex: remove unsued tests & change files
git-svn-id: svn://tug.org/texlive/trunk@65541 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/ptexdir/pbibtex.ch')
-rw-r--r-- | Build/source/texk/web2c/ptexdir/pbibtex.ch | 731 |
1 files changed, 0 insertions, 731 deletions
diff --git a/Build/source/texk/web2c/ptexdir/pbibtex.ch b/Build/source/texk/web2c/ptexdir/pbibtex.ch deleted file mode 100644 index 48df5c67ee2..00000000000 --- a/Build/source/texk/web2c/ptexdir/pbibtex.ch +++ /dev/null @@ -1,731 +0,0 @@ -% Change file for BibTeX in C, originally by Howard Trickey. -% -% 05/28/84 Initial implementation, version 0.41 of BibTeX -% 07/01/84 Version 0.41a of BibTeX. -% 12/17/84 Version 0.97c of BibTeX. -% 02/12/85 Version 0.98c of BibTeX. -% 02/25/85 Newer version 0.98c of BibTeX. -% 03/25/85 Version 0.98f of BibTeX -% 05/23/85 Version 0.98i of BibTeX -% 02/11/88 Version 0.99b of BibTeX -% 04/04/88 Version 0.99c; converted for use with web2c (ETM). -% 11/30/89 Use FILENAMESIZE instead of 1024 (KB). -% 03/09/90 `int' is a bad variable name for C. -% (more recent changes in the ChangeLog) -% -% 5/ 2/89 Version 0.20 of JBiBTeX by Shouichi Matsui -% 12/25/90 Version 0.30 of JBibTeX by Shouichi Matsui -% 1/ 1/91 last update for JBibTeX 0.30 by Shouichi Matsui -% 10/30/92 last update for JBibTeX 0.31 for bug fix by Shouichi Matsui -% 11/02/94 Version 0.32 for use with web2c 6.1, by Takafumi Sakurai -% -% 2002 Version 0.33 add kanji option by ASCII Corporation -% -% 2009 pTeXenc, pbibtex N. Tsuchimura -% 2010 Version 0.99d of BibTeX for TeX Live -% -% 2022-02-08 Version 0.34 by H. Yamashita -% * Avoid breaking BBL lines at white space after a Japanese character, to -% preserve spacing within BIB entry for subsequent pTeX line-end operations. -% 2022-02-20 Still version 0.34 by H. Yamashita (-> TL'22 version) -% * Improve substring$ to truncate at least one character when trying to -% start counting from the middle byte of the first or last Japanese character. -% 2022-05-15 Version 0.35 by Takuji Tanaka (-> TL'23 version) -% * Accept multibyte characters by int.to.chr$ and chr.to.int$. - -@x [0] only print chnages -\def\title{\BibTeX\ } -@y -\let\maybe=\iffalse -\def\title{J\BibTeX\ 0.35 Changes for C Version \BibTeX\ } -@z - -@x - \def\titlepage{F} - \centerline{\:\titlefont The {\:\ttitlefont \BibTeX} preprocessor} - \vskip 15pt \centerline{(Version 0.99d---\today)} \vfill} -@y - \def\titlepage{F} - \centerline{\:\titlefont The {\:\ttitlefont J\BibTeX} preprocessor} - \vskip 15pt \centerline{(Version 0.99d-j0.35---\today)} \vfill} -@z - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% [1] banner -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -@x -@d my_name=='bibtex' -@d banner=='This is BibTeX, Version 0.99d' {printed when the program starts} -@y -@d my_name=='pbibtex' -@d banner=='This is pBibTeX, Version 0.99d-j0.35' - {printed when the program starts} -@z - -@x - print (banner); -@y - print (banner); - print (' (', conststringcast(get_enc_string), ')'); -@z - -@x Changes for JBibTeX by Shouichi Matsui [27] -for i:=0 to @'37 do xchr[i]:=chr(i); -for i:=@'177 to @'377 do xchr[i]:=chr(i); -@y -for i:=1 to @'37 do xchr[i]:=' '; -xchr[tab]:=chr(tab); -for i:=@'200 to @'237 do xchr[i]:=chr(i-@'200); -for i:=@'240 to 255 do xchr[i]:=chr(i); -xchr[@'33]:=chr(@'33); {escape char} -@z - -@x Changes for JBibTeX by Shouichi Matsui [28] -for i:=first_text_char to last_text_char do xord[xchr[i]]:=i; -@y -for i:=first_text_char to last_text_char do xord[i]:=invalid_code; -for i:=1 to @'176 do xord[i]:= i; -for i:=@'200 to @'237 do xord[i]:= i-@'200; -for i:=@'240 to 255 do xord[i]:=i; -@z - - -@x Changes for JBibTeX by Shouichi Matsui for ver. 0.30 -@d period = "." {these are three} -@d question_mark = "?" {string-ending characters} -@d exclamation_mark = "!" {of interest in \.{add.period\$}} -@y -@d period = "." {these are three} -@d question_mark = "?" {string-ending characters} -@d exclamation_mark = "!" {of interest in \.{add.period\$}} -@d zen_pun_first = 161 {Zenkaku punctuation first byte; in EUC} -@d zen_space = 161 {Zenkaku space first, second byte; in EUC} -@d zen_kuten = 162 {Zenkaku kuten second byte; in EUC} -@d zen_ten = 163 {Zenkaku ten second byte; in EUC} -@d zen_comma = 164 {Zenkaku comman second byte; in EUC} -@d zen_period = 165 {Zenkaku period second byte; in EUC} -@d zen_question = 169 {Zenkaku question mark second byte; in EUC} -@d zen_exclamation = 170 {Zenkaku exclamation mark second byte; in EUC} -@z - -% [32] Make RET a `white_space' character, so we won't choke on DOS -% files, which use CR/LF for line endings. -@x Changes for JBibTeX by Shouichi Matsui [32] -@<Set initial values of key variables@>= -for i:=0 to @'177 do lex_class[i] := other_lex; -for i:=@'200 to @'377 do lex_class[i] := alpha; -for i:=0 to @'37 do lex_class[i] := illegal; -lex_class[invalid_code] := illegal; -lex_class[tab] := white_space; -lex_class[13] := white_space; -lex_class[space] := white_space; -lex_class[tie] := sep_char; -lex_class[hyphen] := sep_char; -for i:=@'60 to @'71 do lex_class[i] := numeric; -for i:=@'101 to @'132 do lex_class[i] := alpha; -for i:=@'141 to @'172 do lex_class[i] := alpha; -@y -@<Set initial values of key variables@>= -for i:=0 to @'377 do lex_class[i] := other_lex; -for i:=0 to @'37 do lex_class[i] := illegal; -lex_class[invalid_code] := illegal; -lex_class[tab] := white_space; -lex_class[13] := white_space; -lex_class[space] := white_space; -lex_class[tie] := sep_char; -lex_class[hyphen] := sep_char; -for i:=@'60 to @'71 do lex_class[i] := numeric; -for i:=@'101 to @'132 do lex_class[i] := alpha; -for i:=@'141 to @'172 do lex_class[i] := alpha; -for i:=@'200 to @'237 do lex_class[i] := illegal; -for i:=@'240 to 255 do lex_class[i] := alpha; -lex_class[@'33]:=alpha; -@z - -@x Changes for JBibTeX by Shouichi Matsui [33] -@<Set initial values of key variables@>= -for i:=0 to @'377 do id_class[i] := legal_id_char; -for i:=0 to @'37 do id_class[i] := illegal_id_char; -id_class[space] := illegal_id_char; -id_class[tab] := illegal_id_char; -id_class[double_quote] := illegal_id_char; -id_class[number_sign] := illegal_id_char; -id_class[comment] := illegal_id_char; -id_class[single_quote] := illegal_id_char; -id_class[left_paren] := illegal_id_char; -id_class[right_paren] := illegal_id_char; -id_class[comma] := illegal_id_char; -id_class[equals_sign] := illegal_id_char; -id_class[left_brace] := illegal_id_char; -id_class[right_brace] := illegal_id_char; -@y -@<Set initial values of key variables@>= -for i:=0 to @'377 do id_class[i] := legal_id_char; -for i:=0 to @'37 do id_class[i] := illegal_id_char; -for i:=@'200 to @'237 do id_class[i] := illegal_id_char; -id_class[@'33] := legal_id_char; -id_class[space] := illegal_id_char; -id_class[tab] := illegal_id_char; -id_class[double_quote] := illegal_id_char; -id_class[number_sign] := illegal_id_char; -id_class[comment] := illegal_id_char; -id_class[single_quote] := illegal_id_char; -id_class[left_paren] := illegal_id_char; -id_class[right_paren] := illegal_id_char; -id_class[comma] := illegal_id_char; -id_class[equals_sign] := illegal_id_char; -id_class[left_brace] := illegal_id_char; -id_class[right_brace] := illegal_id_char; -@z - -@x Changes for JBibTeX by Shouichi Matsui [35] -char_width[@'167] := 722; -char_width[@'170] := 528; -char_width[@'171] := 528; -char_width[@'172] := 444; -char_width[@'173] := 500; -char_width[@'174] :=1000; -char_width[@'175] := 500; -char_width[@'176] := 500; -@y -char_width[@'167] := 722; -char_width[@'170] := 528; -char_width[@'171] := 528; -char_width[@'172] := 444; -char_width[@'173] := 500; -char_width[@'174] :=1000; -char_width[@'175] := 500; -char_width[@'176] := 500; -for i:=@'240 to 254 do char_width[i]:=514; -@z - -@x [48] JBibTeX and dynamic buf_size. -label loop_exit; -@y -label loop_exit; -var i:c_int_type; -@z -@x [still 48] JBibTeX and dynamic buf_size. - while (not eoln(f)) do - begin - if (last >= buf_size) then - buffer_overflow; - buffer[last] := xord[getc (f)]; - incr (last); - end; - vgetc (f); {skip the eol} -@y - last := input_line2(f,ustringcast(buffer),last,buf_size,address_of(i)); - while (not eof(f)) and (last > 0) and (i <> 10) and (i <> 13) do - begin - buffer_overflow; - last := input_line2(f,ustringcast(buffer),last,buf_size,address_of(i)); - end; -@z - -@x -@<Procedures and functions for the reading and processing of input files@>= -procedure get_the_top_level_aux_file_name; -label aux_found,@!aux_not_found; -begin -@y -@<Procedures and functions for the reading and processing of input files@>= -procedure get_the_top_level_aux_file_name; -label aux_found,@!aux_not_found; -begin - if (not set_enc_string (nil,'EUC')) then uexit(1); -@z - -@x -parse_arguments; -@y -init_kanji; -parse_arguments; -@z - -% pBibTeX: do not break at |white_space| after Japanese characters (2022-02-08 j0.34) -@x "Break that line" -while ((lex_class[out_buf[out_buf_ptr]] <> white_space) and - (out_buf_ptr >= min_print_line)) do - decr(out_buf_ptr); -@y -while (((lex_class[out_buf[out_buf_ptr]] <> white_space) or - (out_buf[out_buf_ptr-1] > 127)) and (out_buf_ptr >= min_print_line)) do - decr(out_buf_ptr); -@z -@x "Break that unbreakably long line" - if (lex_class[out_buf[out_buf_ptr]] <> white_space) then - incr(out_buf_ptr) -@y - if (lex_class[out_buf[out_buf_ptr]] <> white_space) or - (out_buf[out_buf_ptr-1] > 127) then - incr(out_buf_ptr) -@z - -@x Changes for JBibTeX by Shouichi Matsui [332] -@!b_write : hash_loc; {\.{write\$}} -@!b_default : hash_loc; {either \.{skip\$} or \.{default.type}} -@y -@!b_write : hash_loc; {\.{write\$}} -@!b_is_kanji_str : hash_loc; {\.{is.kanji.str\$}} -@!b_default : hash_loc; {either \.{skip\$} or \.{default.type}} -@z - -@x Changes for JBibTeX by Shouichi Matsui [334] -@d n_write = 36 {\.{write\$}} - -@<Constants in the outer block@>= -@!num_blt_in_fns = 37; {one more than the previous number} -@y -@d n_write = 36 {\.{write\$}} -@d n_is_kanji_str = 37 {\.{is.kanji.str\$}} - -@<Constants in the outer block@>= -@!num_blt_in_fns = 38; {one more than the previous number} -@z - -@x Changes for JBibTeX by Shouichi Matsui [335] -build_in('write$ ',6,b_write,n_write); -@y -build_in('write$ ',6,b_write,n_write); -build_in('is.kanji.str$',13,b_is_kanji_str,n_is_kanji_str); -@z - -@x Changes for JBibTeX by Shouichi Matsui [342] - n_write : x_write; - othercases confusion ('Unknown built-in function') -endcases; -end -@y - n_write : x_write; - n_is_kanji_str: x_is_kanji_str; - othercases confusion ('Unknown built-in function') -endcases; -end -@z - -@x Changes for JBibTeX by Shouichi Matsui [343] -@<|execute_fn|({\.{write\$}})@>@; -@<|execute_fn| itself@> -@y -@<|execute_fn|({\.{write\$}})@>@; -@<|execute_fn|({\.{is.kanji.str\$}})@>@; -@<|execute_fn| itself@> -@z - -@x Changes for JBibTeX by Shouichi Matsui --- add.period$ for ver. 0.30 -case (str_pool[sp_ptr]) of - period, - question_mark, - exclamation_mark : - repush_string; - othercases - @<Add the |period| (it's necessary) and push@> -@y -case (str_pool[sp_ptr]) of - period, - question_mark, - exclamation_mark : - repush_string; - zen_ten, - zen_period, - zen_question, - zen_exclamation: - if( str_pool[sp_ptr-1] = zen_pun_first ) then - repush_string - else - @<Add the |period| (it's necessary) and push@>; - othercases - @<Add the |period| (it's necessary) and push@> -@z - -@x x_chr_to_int -else if (length(pop_lit1) <> 1) then - begin - print ('"'); - print_pool_str (pop_lit1); - bst_ex_warn ('" isn''t a single character'); - push_lit_stk (0, stk_int); - end -else - push_lit_stk (str_pool[str_start[pop_lit1]], stk_int); - {push the (|ASCII_code|) integer} -@y -else if (length(pop_lit1) = multibytelen(str_pool[str_start[pop_lit1]])) then - begin - if (length(pop_lit1) = 1) then - push_lit_stk(str_pool[str_start[pop_lit1]],stk_int) - {push the (|ASCII_code|) integer} - else - push_lit_stk(toDVI(fromBUFF(str_pool, str_start[pop_lit1]+2, str_start[pop_lit1])),stk_int) - { a KANJI char is 2byte long } - end -else - begin - print ('"'); - print_pool_str (pop_lit1); - bst_ex_warn ('" isn''t a single character'); - push_lit_stk (0, stk_int); - end -@z - -@x by Shouichi Matsui for Zenkaku comma -if (ex_buf_ptr < ex_buf_length) then {remove the ``and''} - ex_buf_ptr := ex_buf_ptr - 4; -@y -if (ex_buf_ptr < ex_buf_length) then {remove the ``and'', or Zenkau comma} - begin - if( (ex_buf[ex_buf_ptr-1]=zen_comma) or (ex_buf[ex_buf_ptr-1]=zen_kuten) ) - then ex_buf_ptr := ex_buf_ptr - 2 - else ex_buf_ptr := ex_buf_ptr - 4; - end; -@z - -@x Changes for JBibTeX by Shouichi Matsui for Zenkaku comma - "a", "A" : - begin - incr(ex_buf_ptr); - if (preceding_white) then - @<See if we have an ``and''@>; {if so, |and_found := true|} - preceding_white := false; - end; -@y - "a", "A" : - begin - incr(ex_buf_ptr); - if (preceding_white) then - @<See if we have an ``and''@>; {if so, |and_found := true|} - preceding_white := false; - end; - zen_pun_first: - begin - if((ex_buf[ex_buf_ptr+1]=zen_comma) or - (ex_buf[ex_buf_ptr+1]=zen_kuten) ) then - begin - preceding_white := false; - and_found := true - end - else if(ex_buf[ex_buf_ptr+1]=zen_space) then - begin - ex_buf[ex_buf_ptr] := space; - ex_buf[ex_buf_ptr+1] := space; - preceding_white := true; - end; - ex_buf_ptr := ex_buf_ptr + 2; - end; -@z - -@x Changes for JBibTeX by Shouichi Matsui for Zenkaku comma[385] - othercases - if (lex_class[ex_buf[ex_buf_ptr]] = white_space) then - begin - incr(ex_buf_ptr); - preceding_white := true; - end - else - begin - incr(ex_buf_ptr); - preceding_white := false; - end - endcases; -check_brace_level (pop_lit_var); -end; -@y - othercases - if (lex_class[ex_buf[ex_buf_ptr]] = white_space) then - begin - incr(ex_buf_ptr); - preceding_white := true; - end - else - begin - if( ex_buf[ex_buf_ptr] > 127 ) then - ex_buf_ptr := ex_buf_ptr +2 - else - incr(ex_buf_ptr); - preceding_white := false; - end - endcases; -check_brace_level (pop_lit_var); -end; -@z - -@x Changes for JBibTeX by Shouichi Matsui [415] - if (lex_class[name_buf[name_bf_ptr]] = alpha) then - begin - append_ex_buf_char_and_check (name_buf[name_bf_ptr]); - goto loop_exit; - end - else if ((name_buf[name_bf_ptr] = left_brace) and -@y - if (lex_class[name_buf[name_bf_ptr]] = alpha) then - begin - if name_buf[name_bf_ptr]>127 then begin - append_ex_buf_char_and_check (name_buf[name_bf_ptr]); - incr(name_bf_ptr); - append_ex_buf_char_and_check (name_buf[name_bf_ptr]); - end - else - append_ex_buf_char_and_check (name_buf[name_bf_ptr]); - goto loop_exit; - end - else if ((name_buf[name_bf_ptr] = left_brace) and -@z - -@x x_int_to_chr -procedure x_int_to_chr; -begin -pop_lit_stk (pop_lit1,pop_typ1); -if (pop_typ1 <> stk_int) then - begin - print_wrong_stk_lit (pop_lit1,pop_typ1,stk_int); - push_lit_stk (s_null, stk_str); - end -else if ((pop_lit1 < 0) or (pop_lit1 > 127)) then - begin - bst_ex_warn (pop_lit1:0,' isn''t valid ASCII'); - push_lit_stk (s_null, stk_str); - end -else - begin - str_room(1); - append_char (pop_lit1); - push_lit_stk (make_string, stk_str); - end; -end; -@y -procedure x_int_to_chr; -var k:integer; -begin -pop_lit_stk (pop_lit1,pop_typ1); -if (pop_typ1 <> stk_int) then - begin - print_wrong_stk_lit (pop_lit1,pop_typ1,stk_int); - push_lit_stk (s_null, stk_str); - end -else begin -k:=pop_lit1; -if (pop_lit1 > 127) then k:=fromDVI(pop_lit1); -if ((pop_lit1 < 0) or ((pop_lit1 > 127) and (k = 0))) then - begin - bst_ex_warn (pop_lit1:0,' isn''t valid character code'); - push_lit_stk (s_null, stk_str); - end -else - begin - str_room(2); - if (pop_lit1>127) then begin - append_char (Hi(k)); - append_char (Lo(k)); - end - else - append_char (pop_lit1); - push_lit_stk (make_string, stk_str); - end; -end; -end; -@z - -@x Changes for JBibTeX by Shouichi Matsui [437] -@<|execute_fn|({\.{substring\$}})@>= -procedure x_substring; -label exit; -begin -@y -@<|execute_fn|({\.{substring\$}})@>= -procedure x_substring; -label exit; -var tps,tpe:pool_pointer; {temporary pointer} -@!pop_lit2_saved: integer; -begin -@z - -@x -@<Form the appropriate substring@>= -begin -@y -@<Form the appropriate substring@>= -begin -pop_lit2_saved := pop_lit2; {save before negate} -@z - -@x Changes for JBibTeX by Shouichi Matsui [438] + fix (2022-02-20 j0.34) -str_room(sp_end - sp_ptr); -while (sp_ptr < sp_end) do {shift the substring} - begin - append_char (str_pool[sp_ptr]); - incr(sp_ptr); - end; -@y -{ 2 bytes Kanji code break check } -tps:=str_start[pop_lit3]; -tpe:=tps; -while tpe < str_start[pop_lit3+1] do begin - if str_pool[tpe] > 127 then begin - if str_start[pop_lit3+1] < tpe+2 then - break; - tpe := tpe + 2; - end - else begin - if str_start[pop_lit3+1] < tpe+1 then - break; - tpe := tpe + 1; - end; - if tpe<=sp_ptr then - tps := tpe; - if sp_end<=tpe then break; -end; -if (pop_lit2_saved > 1) and (tps = str_start[pop_lit3]) - then tps := tps + 2; {truncate at least one} -if (pop_lit2_saved < -1) and (tpe = str_start[pop_lit3+1]) - then tpe := tpe - 2; {truncate at least one} -if tps > tpe then tpe := tps; -sp_ptr := tps; -sp_end := tpe; - -str_room(sp_end - sp_ptr); -while (sp_ptr < sp_end) do {shift the substring} - begin - if str_pool[sp_ptr] >127 then begin - append_char (str_pool[sp_ptr]); incr(sp_ptr); - append_char (str_pool[sp_ptr]); incr(sp_ptr); - end - else begin - append_char (str_pool[sp_ptr]); incr(sp_ptr); - end; - end; -@z - -@x Changes for JBibTeX by Shouichi Matsui [445] - else if (str_pool[sp_xptr1-1] = right_brace) then - begin - if (sp_brace_level > 0) then - decr(sp_brace_level); - end - else - incr(num_text_chars); - end; -@y - else if (str_pool[sp_xptr1-1] = right_brace) then - begin - if (sp_brace_level > 0) then - decr(sp_brace_level); - end - else if (str_pool[sp_xptr1-1]>127) then - begin {kanji char} - incr(sp_xptr1); num_text_chars:=num_text_chars+2; - end - else - incr(num_text_chars); - end; -@z - -@x -const n_options = 4; {Pascal won't count array lengths for us.} -@y -const n_options = 8; {Pascal won't count array lengths for us.} -@z - -@x - usage_help (BIBTEX_HELP, nil); -@y - usage_help (PBIBTEX_HELP, 'issue@@texjp.org'); -@z - -@x - end; {Else it was a flag; |getopt| has already done the assignment.} -@y - end else if argument_is ('kanji') then begin - if (not set_enc_string(optarg, nil)) then - write_ln('Bad kanji encoding "', stringcast(optarg), '".'); - - end else if argument_is ('guess-input-enc') then begin - enable_guess_file_enc; - - end else if argument_is ('no-guess-input-enc') then begin - disable_guess_file_enc; - - end; {Else it was a flag; |getopt| has already done the assignment.} -@z - -@x -long_options[current_option].name := 'version'; -long_options[current_option].has_arg := 0; -long_options[current_option].flag := 0; -long_options[current_option].val := 0; -incr (current_option); -@y -long_options[current_option].name := 'version'; -long_options[current_option].has_arg := 0; -long_options[current_option].flag := 0; -long_options[current_option].val := 0; -incr (current_option); - -@ Kanji option. -@.-kanji@> - -@<Define the option...@> = -long_options[current_option].name := 'kanji'; -long_options[current_option].has_arg := 1; -long_options[current_option].flag := 0; -long_options[current_option].val := 0; -incr(current_option); -long_options[current_option].name := 'guess-input-enc'; -long_options[current_option].has_arg := 0; -long_options[current_option].flag := 0; -long_options[current_option].val := 0; -incr(current_option); -long_options[current_option].name := 'no-guess-input-enc'; -long_options[current_option].has_arg := 0; -long_options[current_option].flag := 0; -long_options[current_option].val := 0; -incr(current_option); -@z - -@x -begin kpse_set_program_name (argv[0], 'bibtex'); -@y -begin kpse_set_program_name (argv[0], 'pbibtex'); -@z - -@x - until j_prime; - incr (k); - hash_prime := j; - primes[k] := hash_prime; - end; -end; - -@y - until j_prime; - incr (k); - hash_prime := j; - primes[k] := hash_prime; - end; -end; - -@ modules for JBibTeX - -@<|execute_fn|({\.{is.kanji.str\$}})@>= -procedure x_is_kanji_str; -label exit; -begin - pop_lit_stk(pop_lit1, pop_typ1); - if pop_typ1<> stk_str then - begin print_wrong_stk_lit(pop_lit1,pop_typ1,stk_str); - push_lit_stk(0,stk_int); - end else begin - sp_ptr := str_start[pop_lit1]; - sp_end := str_start[pop_lit1+1]; - while sp_ptr<sp_end do begin - if str_pool[sp_ptr]>127 then begin - push_lit_stk(1,stk_int); - return; - end else begin - incr(sp_ptr); - end; - end; - push_lit_stk(0,stk_int); - end; -exit:end; -@z |