1 个不稳定版本
0.1.0 | 2022 年 8 月 16 日 |
---|
#1534 in 文本处理
17KB
264 行
这个包可以将简单的基于文本的对话格式解析为可工作的格式。对话格式受到了 Markdown 的启发。
文本格式
标题
每个线性对话序列由以 #
开头的标题定义。子标题以多个 #
开头。
标题可以比前一个标题多一个 #
。标题是最后一个标题的子标题,其 #
少一个。
每个标题的内容都应被解释为顺序对话。
空标题将被忽略。
示例
# Header 1
## Subheader 1
Dialog 1
## Subheader 2
Dialog 2
# Header 2
Dialog 3
## Subheader 1
Dialog 4
## Subheader 2
Dialog 5
通用格式
对话由多个通过换行符分隔的文本块组成。
文本块旨在一次显示在一个文本框中。
这里有三个不同大小的文本块
Textblock 1, Line 1
Textblock 1, Line 2
Textblock 1, Line 3
Textblock 2
Textblock 3, Line 1
Textblock 3, Line 2
说话者
可以在文本块前添加说话者,用冒号 (:
) 分隔。说话者名称可能包含空格。名称会被截断。
说话者名称可能与文本在同一行,也可能在下一行。如果没有指定说话者,则文本块被视为不属于任何说话者。它可能是叙述者的文本。
这是 Alice 和 Bob 之间一个简单的对话
Alice: Hi!
Bob: Hi, how are you doing today?
Is everything fine?
Bob seems concerend, while waiting for an answer.
Alice:
Yeah, everything is fine today.
Nice to see you again.
事件
也可以在文本中添加事件。以减号 (-
) 开头的行代表事件。
这为特定参数设置值
- Parameter1 Value1
- Parameter2 Value2
这将参数恢复到默认值
- Parameter1!
- Parameter2!
可用的确切参数和值名称必须通过实现此库的特性行指定。
要指定相关参数,可以使用参数路径,由冒号分隔。参数路径可以使用缩进来表示层次结构。每行的缩进必须是 2 的倍数,并且比前一行多两个空格。
平面表示
- Path:To:Parameter Value
层次结构表示
- Path:
-To:
- Parameter Value
以冒号 (:
) 结尾的行本身不会触发事件。它们就像被忽略了一样,除了路径。
这允许在类似路径中设置多个参数,如下所示
- Long:Path:To:
- Parameter1 Value1
- Parameter2 Value2
这等价于以下内容
- Long:Path:To:Parameter1 Value1
- Long:Path:To:Parameter2 Value2
默认值也可以与层次结构路径一起使用。