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