TeX in C
Explore TeX with modern c compiler.
PART 29: File names

宏定义

#define FORMAT_DEFAULT_LENGTH   20
 [#520] length of the TEX format default string. 更多...
 
#define formatarealength   11
 
#define formatextlength   4
 
#define formatextension   S(256)
 [p190#520] .fmt, the extension, as a constant. 更多...
 

函数

void fname_init ()
 [ #511. File names. ] 更多...
 
void begin_name (void)
 [#515] 更多...
 
Boolean more_name (ASCIICode c)
 [#516] 更多...
 
void end_name (void)
 [#517] 更多...
 
void print_file_name (StrNumber n, StrNumber a, StrNumber e)
 [#518] 更多...
 
void append_to_name (ASCIICode x)
 [#519] 更多...
 
void pack_file_name (StrNumber fname, StrNumber prefix, StrNumber ext)
 [#519] 打包文件名. 更多...
 
Static StrNumber make_name_string ()
 [#525] 更多...
 
StrNumber a_make_name_string ()
 
StrNumber b_make_name_string ()
 
StrNumber w_make_name_string ()
 
void scan_file_name (void)
 [#526] 更多...
 
void pack_job_name (StrNumber s)
 [#529] s = ".log" , ".dvi" , or format extension. 更多...
 
void prompt_file_name (StrNumber s, StrNumber e)
 [#530] 更多...
 
void open_log_file (void)
 [#534] 更多...
 
void start_input (void)
 [#p195#537] TeX will \input something. 更多...
 

变量

StrNumber cur_name
 [#512] name of file just scanned. 更多...
 
StrNumber cur_area
 [#512] file area just scanned, or "". 更多...
 
StrNumber cur_ext
 [#512] file extension just scanned, or "". 更多...
 
StrNumber area_delimiter
 [#513] the most recent ‘>’ or ‘:’, if any. 更多...
 
StrNumber ext_delimiter
 [#513] the relevant ‘.’, if any. 更多...
 
Char TEX_format_default [FORMAT_DEFAULT_LENGTH]
 [#520] not_use 更多...
 
Boolean name_in_progress
 [#527] is a file name being scanned? xref: scan_file_name, newfont, expand 更多...
 
StrNumber job_name
 [#527] principal file name. 更多...
 
Boolean log_opened
 [#527] has the transcript file been opened? 更多...
 
StrNumber output_file_name
 [#532] full name of the output file. 更多...
 
StrNumber log_name
 [#532] full name of the log file. 更多...
 
Static Integer _tmp_fname_len
 

详细描述

宏定义说明

◆ FORMAT_DEFAULT_LENGTH

#define FORMAT_DEFAULT_LENGTH   20

[#520] length of the TEX format default string.

+1 for string end \0.

◆ formatarealength

#define formatarealength   11

◆ formatextension

#define formatextension   S(256)

[p190#520] .fmt, the extension, as a constant.

◆ formatextlength

#define formatextlength   4

函数说明

◆ a_make_name_string()

StrNumber a_make_name_string ( )

◆ append_to_name()

void append_to_name ( ASCIICode  x)

[#519]

◆ b_make_name_string()

StrNumber b_make_name_string ( )

◆ begin_name()

void begin_name ( void  )

[#515]

◆ end_name()

void end_name ( void  )

[#517]

TODO: check

◆ fname_init()

void fname_init ( )

[ #511. File names. ]

[#521]

◆ make_name_string()

Static StrNumber make_name_string ( )

[#525]

◆ more_name()

Boolean more_name ( ASCIICode  c)

[#516]

◆ open_log_file()

void open_log_file ( void  )

[#534]

◆ pack_file_name()

void pack_file_name ( StrNumber  fname,
StrNumber  prefix,
StrNumber  ext 
)

[#519] 打包文件名.

参数
[in]fname文件名
[in]prefix前缀
[in]ext后缀

TODO: 让 str_map 返回打印的字符个数。消除 _tmp_fname_len

MOD: 直接中止字符串

◆ pack_job_name()

void pack_job_name ( StrNumber  s)

[#529] s = ".log" , ".dvi" , or format extension.

◆ print_file_name()

void print_file_name ( StrNumber  n,
StrNumber  a,
StrNumber  e 
)

[#518]

◆ prompt_file_name()

void prompt_file_name ( StrNumber  s,
StrNumber  e 
)

[#530]

< index into buffer.

[#531] Scan file name in the buffer.

◆ scan_file_name()

void scan_file_name ( void  )

[#526]

◆ start_input()

void start_input ( void  )

[#p195#537] TeX will \input something.

[#538] Read the first line of the new file.

◆ w_make_name_string()

StrNumber w_make_name_string ( )

变量说明

◆ _tmp_fname_len

Static Integer _tmp_fname_len

◆ area_delimiter

StrNumber area_delimiter

[#513] the most recent ‘>’ or ‘:’, if any.

◆ cur_area

StrNumber cur_area

[#512] file area just scanned, or "".

◆ cur_ext

StrNumber cur_ext

[#512] file extension just scanned, or "".

◆ cur_name

StrNumber cur_name

[#512] name of file just scanned.

◆ ext_delimiter

StrNumber ext_delimiter

[#513] the relevant ‘.’, if any.

◆ job_name

StrNumber job_name

[#527] principal file name.

contains the file name that was first \\input by the user. This name is extended by .log and .dvi and .fmt in the names of TEX’s output files.

◆ log_name

StrNumber log_name

[#532] full name of the log file.

◆ log_opened

Boolean log_opened

[#527] has the transcript file been opened?

◆ name_in_progress

Boolean name_in_progress

[#527] is a file name being scanned? xref: scan_file_name, newfont, expand

◆ output_file_name

StrNumber output_file_name

[#532] full name of the output file.

◆ TEX_format_default

Char TEX_format_default[FORMAT_DEFAULT_LENGTH]

[#520] not_use