modernc.org/knuth@v0.0.4/web/testdata/ctan.org/tex-archive/systems/knuth/dist/tex/tex.ch (about) 1 @x tex.web:287: 2 start_of_TEX@t\hskip-2pt@>, end_of_TEX@t\hskip-2pt@>,@,final_end; 3 @y 4 start_of_TEX; 5 @z 6 7 @x tex.web:378: 8 @d othercases == others: {default for cases not listed explicitly} 9 @y 10 @d othercases == else {default for cases not listed explicitly} 11 @d write_ln(#)==writeln(#) 12 @d read_ln(#)==readln(#) 13 @z 14 15 @x tex.web:948: 16 @p function input_ln(var f:alpha_file;@!bypass_eoln:boolean):boolean; 17 {inputs the next line or returns |false|} 18 var last_nonblank:0..buf_size; {|last| with trailing blanks removed} 19 begin if bypass_eoln then if not eof(f) then get(f); 20 @y 21 @p function input_ln(var f:alpha_file;@!bypass_eoln:boolean):boolean; 22 {inputs the next line or returns |false|} 23 var last_nonblank:0..buf_size; {|last| with trailing blanks removed} 24 begin if bypass_eoln then if not eof(f) and eoln(f) then get(f); 25 @z 26 27 @x tex.web:1002: 28 @d update_terminal == break(term_out) {empty the terminal output buffer} 29 @d clear_terminal == break_in(term_in,true) {clear the terminal input buffer} 30 @d wake_up_terminal == do_nothing {cancel the user's cancellation of output} 31 @y 32 @d update_terminal == {empty the terminal output buffer} 33 @d clear_terminal == {clear the terminal input buffer} 34 @d wake_up_terminal == do_nothing {cancel the user's cancellation of output} 35 @z 36 37 @x tex.web:1035: 38 if format_ident=0 then 39 begin write_ln(term_out,'Buffer size exceeded!'); goto final_end; 40 @y 41 if format_ident=0 then 42 begin write_ln(term_out,'Buffer size exceeded!'); panic(final_end); 43 @z 44 45 @x tex.web:1255: 46 @p @!init function get_strings_started:boolean; {initializes the string pool, 47 but returns |false| if something goes wrong} 48 label done,exit; 49 var k,@!l:0..255; {small indices or counters} 50 @!m,@!n:text_char; {characters input from |pool_file|} 51 @!g:str_number; {garbage} 52 @!a:integer; {accumulator for check sum} 53 @!c:boolean; {check sum has been checked} 54 begin pool_ptr:=0; str_ptr:=0; str_start[0]:=0; 55 @y 56 @p @!init function get_strings_started:boolean; {initializes the string pool, 57 but returns |false| if something goes wrong} 58 label done,exit; 59 var k,@!l:0..255; {small indices or counters} 60 @!m,@!n:text_char; {characters input from |pool_file|} 61 @!g:str_number; {garbage} 62 @!a:integer; {accumulator for check sum} 63 @!c:boolean; {check sum has been checked} 64 begin 65 if g=0 then; 66 pool_ptr:=0; str_ptr:=0; str_start[0]:=0; 67 @z 68 69 @x tex.web:1871: 70 procedure jump_out; 71 begin goto end_of_TEX; 72 end; 73 @y 74 procedure jump_out; 75 begin panic(end_of_TEX); 76 end; 77 @z 78 79 @x tex.web:10431: 80 @!tfm_file:byte_file; 81 @y 82 @!tfm_file:byte_file; 83 buf:eight_bits; { tfm_file buffer } 84 @z 85 86 @x tex.web:16389: 87 @ @<Other local variables for |try_break|@>= 88 @!prev_prev_r:pointer; {a step behind |prev_r|, if |type(prev_r)=delta_node|} 89 @!s:pointer; {runs through nodes ahead of |cur_p|} 90 @!q:pointer; {points to a new node being created} 91 @!v:pointer; {points to a glue specification or a node ahead of |cur_p|} 92 @!t:integer; {node count, if |cur_p| is a discretionary node} 93 @!f:internal_font_number; {used in character width calculation} 94 @!l:halfword; {line number of current active node} 95 @!node_r_stays_active:boolean; {should node |r| remain in the active list?} 96 @!line_width:scaled; {the current line will be justified to this width} 97 @!fit_class:very_loose_fit..tight_fit; {possible fitness class of test line} 98 @!b:halfword; {badness of test line} 99 @!d:integer; {demerits of test line} 100 @!artificial_demerits:boolean; {has |d| been forced to zero?} 101 @!save_link:pointer; {temporarily holds value of |link(cur_p)|} 102 @!shortfall:scaled; {used in badness calculations} 103 @y 104 @ @<Other local variables for |try_break|@>= 105 @!prev_prev_r:pointer; {a step behind |prev_r|, if |type(prev_r)=delta_node|} 106 @!s:pointer; {runs through nodes ahead of |cur_p|} 107 @!q:pointer; {points to a new node being created} 108 @!v:pointer; {points to a glue specification or a node ahead of |cur_p|} 109 @!t:integer; {node count, if |cur_p| is a discretionary node} 110 @!f:internal_font_number; {used in character width calculation} 111 @!l:halfword; {line number of current active node} 112 @!node_r_stays_active:boolean; {should node |r| remain in the active list?} 113 @!line_width:scaled; {the current line will be justified to this width} 114 @!fit_class:very_loose_fit..tight_fit; {possible fitness class of test line} 115 @!b:halfword; {badness of test line} 116 @!d:integer; {demerits of test line} 117 @!artificial_demerits:boolean; {has |d| been forced to zero?} 118 @!shortfall:scaled; {used in badness calculations} 119 @z 120 121 122 @x tex.web:23663: 123 @ @<Declare act...@>= 124 procedure show_whatever; 125 label common_ending; 126 var p:pointer; {tail of a token list to show} 127 begin case cur_chr of 128 @y 129 @ @<Declare act...@>= 130 procedure show_whatever; 131 label common_ending; 132 var p:pointer; {tail of a token list to show} 133 begin 134 if p=0 then; 135 case cur_chr of 136 @z 137 138 @x tex.web:24303: 139 main_control; {come to life} 140 final_cleanup; {prepare for death} 141 end_of_TEX: close_files_and_terminate; 142 final_end: ready_already:=0; 143 end. 144 @y 145 main_control; {come to life} 146 final_cleanup; {prepare for death} 147 close_files_and_terminate; 148 final_end: ready_already:=0; 149 end. 150 @z 151 152 @x tex.web:24656: 153 procedure do_extension; 154 var i,@!j,@!k:integer; {all-purpose integers} 155 @!p,@!q,@!r:pointer; {all-purpose pointers} 156 begin case cur_chr of 157 @y 158 procedure do_extension; 159 var k:integer; {all-purpose integers} 160 @!p:pointer; {all-purpose pointers} 161 begin case cur_chr of 162 @z