Skip to content

Latest commit

 

History

History
73 lines (50 loc) · 4.13 KB

reference.md

File metadata and controls

73 lines (50 loc) · 4.13 KB

项目文件夹结构

一本小说放入一个文件夹处理。文件夹有以下内容:

  • *.atxt / *.txt / *.xhtml 文本文件。主要内容物。具体格式见下文。
  • Images 文件夹
    • cover.jpg 必须。
    • *.jpg / *.png 其他图片资源
  • toc.txt 必须。目录
  • meta.txt 或 meta3.txt 必须。EPUB 元数据。请优先使用 meta3.txt。
  • style.css 可选。定义样式。
  • macros.txt 可选。自定义宏
  • web_images.txt 或 web_images.md 可选。用于在部分输出中将图片引用替换为外部图片链接。
  • config.txt 项目设置
  • patch_t2s 文件夹。可选。用于繁体转换的特殊规则(此功能年久失修)。
    • Images 文件夹。可选。内容为替换用的图片。
    • patch.csv 可选。内容为特殊情况的替换文本。

文本文件

文件名必须以两位数字开头,作为文件的顺序索引。数字后面如果有文本,将作为章节标题。章节特殊字符可以用 URL 转码表示。需要注意 toc.txt 的章节标题定义优先级更高。

文件拓展名是.atxt.txt时,实际内容没有差别。 VSCode 插件识别文档格式需要个拓展名,就随便改了个.atxt。 内容的具体格式可以参考 ATXT 格式解释

文件拓展名是.xhtml时,此文件用于直接放入 EPUB,不会做任何处理。仅供骚操作使用,需要了解本工具和 EPUB 的原理。

标题为info的文档可以在生成 EPUB 时自动加入生成信息、日期。每行包含靠前的冒号时添加atxt_keyvalue类。

标题为infoEOB的文档内容会自动被atxt_info类包裹,默认效果是字体变小、无段首缩进。

标题以SVG开头的文档会被标记为 SVG,用于堵 epub-check 的警告。

目录 toc.txt

该文件将会用于生成 EPUB 的目录。一行一个目录项,使用两位数字即可表示链接目标。

如果数字后面跟着文本,该文本会称为此章节的标题,在目录中显示。

需要层级表示时,以[名称]章节索引为标题开始添加子层级项目。比如[正文]10;以[/]单独一行返回上一级。/后面写点别的也不影响,比如[/正文]便于编辑。

EPUB 元数据 meta.txt 或 meta3.txt

对应 EPUB 中 .OPF 文件对应的 metadata 标签内容(包括该标签)。meta.txt 对应 EPUB2.0,meta3.txt 对应 EPUB3.0。请使用meta3.txt。现在已经不对旧版做维护。

提供了一些模板,生成时替换成对应的内容。

  • {urn:uuid}生成一个uuid
  • {date}生成标准格式的日期

自定义宏 macros.txt

使用正则表达式定义宏。一行定义一条规则,分别写搜索模式、用于 EPUB 的替换、用于 bbcode 的替换(可选)、用于 inlinehtml 的替换(可选),使用 tab 隔开。可选项缺失时将使用用于 EPUB 的替换。

直接使用 C# 自带的正则引擎,具体写法请参考微软的文档。

宏处理先于正常规则运行。可以在宏处理中使用正常规则。比如: 小标题:(.*) #center:[b]$1[/b] 这样可以不专门写后面的两种替换。

另外注意不要写出死循环。

项目设置 config.txt

项目:值 一行一个。 布尔值支持写成yes/no 1/0 等等。想起来再补。

目前的设置项目:

  • join 字符串值。内容为一条命令。可以设置多次。该合并是输出功能的预处理,不会合并源文件。例如join:11-15chapter4表示将 11 至 15 号文件的内容合并,设置标题为"chapter4"。
  • join_blank_line 整数值。合并时的添加的空行数。
  • indent_adjust 布尔值。是否对于以「『等字符开头的行进行行首缩进调整。默认开启。
  • add_info 布尔值。是否尝试对标题为info的文档添加生成时间等信息。默认开启。
  • auto_space 布尔值。是否开启 Auto Space。默认关闭。
  • inlinehtml_wrapper_style 字符串值。inlinehtml 输出会有个 div 包裹所有内容,可以用这个设置替换那个 div 默认的style值。