chore: 规范标点
This commit is contained in:
1 parent
e54390a9f8
commit
15e79887fa
84 files changed
+5439
-5398
No files matched your search
+31
-31
@@ -1,7 +1,7 @@
|
||||
/* md_demo.c - Markdown 渲染效果演示
|
||||
*
|
||||
* 一个独立的小程序:把内置示例(或你指定的文件 / stdin)喂进 ligent 的
|
||||
* 流式 Markdown 渲染器,直观看到每种语法的渲染结果。
|
||||
* 一个独立的小程序:把内置示例 (或你指定的文件 / stdin)喂进 ligent 的
|
||||
* 流式 Markdown 渲染器, 直观看到每种语法的渲染结果.
|
||||
*
|
||||
* 编译: make md_demo
|
||||
* 运行: ./build/md_demo
|
||||
@@ -24,9 +24,9 @@ static const char *SAMPLE =
|
||||
"\n"
|
||||
"## 行内样式\n"
|
||||
"\n"
|
||||
"这是 **粗体**、*斜体*、_下划线斜体_ 和 `行内代码` 的混排效果。\n"
|
||||
"标识符不会被误伤:foo_bar_baz、__init__、arr[i]、a_b_c 都保持原样。\n"
|
||||
"链接只高亮方括号:[官方文档](https://example.com/doc) 后面还有普通文字。\n"
|
||||
"这是 **粗体**、*斜体*、_下划线斜体_ 和 `行内代码` 的混排效果. \n"
|
||||
"标识符不会被误伤:foo_bar_baz、__init__、arr[i]、a_b_c 都保持原样. \n"
|
||||
"链接只高亮方括号:[官方文档](https://example.com/doc) 后面还有普通文字. \n"
|
||||
"图片保留原文:\n"
|
||||
"\n"
|
||||
"## 列表与引用\n"
|
||||
@@ -36,23 +36,23 @@ static const char *SAMPLE =
|
||||
"* 星号也能当列表\n"
|
||||
"+ 加号也可以\n"
|
||||
"\n"
|
||||
"> 这是一段引用,前缀是暗色的竖线。\n"
|
||||
"> 引用可以有多行。\n"
|
||||
"> 这是一段引用, 前缀是暗色的竖线. \n"
|
||||
"> 引用可以有多行. \n"
|
||||
"\n"
|
||||
"---\n"
|
||||
"\n"
|
||||
"## 代码块(整块不渲染)\n"
|
||||
"## 代码块 (整块不渲染)\n"
|
||||
"\n"
|
||||
"```c\n"
|
||||
"#include <stdio.h>\n"
|
||||
"int main(void) {\n"
|
||||
" // **这里不会加粗**,[方括号] 也不会高亮\n"
|
||||
" // **这里不会加粗**, [方括号] 也不会高亮\n"
|
||||
" printf(\"hello %s\\n\", \"world\");\n"
|
||||
" return 0;\n"
|
||||
"}\n"
|
||||
"```\n"
|
||||
"\n"
|
||||
"行内代码同理:`a ** b` 里的星号不会被当成粗体标记。\n"
|
||||
"行内代码同理:`a ** b` 里的星号不会被当成粗体标记. \n"
|
||||
"\n"
|
||||
"## 表格\n"
|
||||
"\n"
|
||||
@@ -76,7 +76,7 @@ static const char *SAMPLE =
|
||||
"\n";
|
||||
|
||||
/* ------------------------------------------------------------------ */
|
||||
/* 渲染到内存(用于 --compare 自检) */
|
||||
/* 渲染到内存 (用于 --compare 自检) */
|
||||
/* ------------------------------------------------------------------ */
|
||||
|
||||
static char *render_to_mem(const char *src, int enabled, size_t chunk)
|
||||
@@ -107,7 +107,7 @@ static char *render_to_mem(const char *src, int enabled, size_t chunk)
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------ */
|
||||
/* 渲染到终端(可带分片与延时,模拟 SSE 流式) */
|
||||
/* 渲染到终端 (可带分片与延时, 模拟 SSE 流式) */
|
||||
/* ------------------------------------------------------------------ */
|
||||
|
||||
static void render_to_tty(const char *src, int enabled,
|
||||
@@ -146,21 +146,21 @@ static void usage(FILE *out)
|
||||
"\n"
|
||||
"用法: md_demo [选项] [文件...]\n"
|
||||
"\n"
|
||||
"不指定文件时使用内置示例;文件名为 - 或 stdin 不是终端时从标准输入读取。\n"
|
||||
"不指定文件时使用内置示例; 文件名为 - 或 stdin 不是终端时从标准输入读取. \n"
|
||||
"\n"
|
||||
"选项:\n"
|
||||
" -p, --plain 关闭渲染,输出原始 Markdown(对照用)\n"
|
||||
" --color 强制开启渲染(默认仅在输出到终端时开启)\n"
|
||||
" -c, --chunk N 按每 N 字节一片喂入(默认 0 = 一次性喂完)\n"
|
||||
" -d, --delay MS 每片之间延时毫秒(默认 0)\n"
|
||||
" -p, --plain 关闭渲染, 输出原始 Markdown (对照用)\n"
|
||||
" --color 强制开启渲染 (默认仅在输出到终端时开启)\n"
|
||||
" -c, --chunk N 按每 N 字节一片喂入 (默认 0 = 一次性喂完)\n"
|
||||
" -d, --delay MS 每片之间延时毫秒 (默认 0)\n"
|
||||
" -s, --stream 流式预设:等价于 -c 5 -d 12\n"
|
||||
" --compare 自检:把同一段文本按多种分片方式渲染,比对结果是否一致\n"
|
||||
" --compare 自检:把同一段文本按多种分片方式渲染, 比对结果是否一致\n"
|
||||
" -h, --help 显示本帮助\n"
|
||||
"\n"
|
||||
"例子:\n"
|
||||
" md_demo 看渲染效果\n"
|
||||
" md_demo --plain 看原始 Markdown,对照差异\n"
|
||||
" md_demo -c 5 -d 12 模拟 SSE 流式(标记会被随机切断)\n"
|
||||
" md_demo --plain 看原始 Markdown, 对照差异\n"
|
||||
" md_demo -c 5 -d 12 模拟 SSE 流式 (标记会被随机切断)\n"
|
||||
" md_demo --compare 验证分片不变性\n"
|
||||
" md_demo README.md 渲染任意 Markdown 文件\n"
|
||||
" echo '# hi **there**' | md_demo\n",
|
||||
@@ -206,7 +206,7 @@ int main(int argc, char **argv)
|
||||
} else if (strcmp(a, "--compare") == 0) {
|
||||
compare = 1;
|
||||
} else if (a[0] == '-' && a[1] != '\0' && strcmp(a, "-") != 0) {
|
||||
fprintf(stderr, "未知选项 %s(--help 查看用法)\n", a);
|
||||
fprintf(stderr, "未知选项 %s (--help 查看用法)\n", a);
|
||||
return 2;
|
||||
} else {
|
||||
file = a;
|
||||
@@ -228,10 +228,10 @@ int main(int argc, char **argv)
|
||||
src = read_stream(stdin);
|
||||
source_name = "标准输入";
|
||||
if (src[0] == '\0') {
|
||||
/* stdin 是空管道(例如被 CI / make 调用)时退回内置示例 */
|
||||
/* stdin 是空管道 (例如被 CI / make 调用)时退回内置示例 */
|
||||
free(src);
|
||||
src = xstrdup(SAMPLE);
|
||||
source_name = "内置示例(stdin 为空)";
|
||||
source_name = "内置示例 (stdin 为空)";
|
||||
}
|
||||
} else {
|
||||
src = xstrdup(SAMPLE);
|
||||
@@ -241,8 +241,8 @@ int main(int argc, char **argv)
|
||||
|
||||
if (compare) {
|
||||
/* 分片不变性自检:不同分片大小必须得到完全相同的结果 */
|
||||
puts("分片不变性自检(同一段文本,不同分片方式,输出必须逐字节一致)");
|
||||
printf("输入:%s(%zu 字节)\n\n", source_name, strlen(src));
|
||||
puts("分片不变性自检 (同一段文本, 不同分片方式, 输出必须逐字节一致)");
|
||||
printf("输入:%s (%zu 字节)\n\n", source_name, strlen(src));
|
||||
|
||||
char *whole = render_to_mem(src, 1, 0);
|
||||
size_t sizes[] = { 1, 2, 3, 5, 7, 13, 64 };
|
||||
@@ -254,7 +254,7 @@ int main(int argc, char **argv)
|
||||
if (!ok) all_ok = 0;
|
||||
free(part);
|
||||
}
|
||||
/* 随机分片(模拟真实 SSE 的抖动) */
|
||||
/* 随机分片 (模拟真实 SSE 的抖动) */
|
||||
srand(12345);
|
||||
char *buf = NULL;
|
||||
size_t bsize = 0;
|
||||
@@ -279,8 +279,8 @@ int main(int argc, char **argv)
|
||||
free(buf);
|
||||
free(whole);
|
||||
|
||||
printf("\n结论:%s\n", all_ok ? "全部一致,标记跨分片处理正确。"
|
||||
: "存在不一致,渲染器有 bug。");
|
||||
printf("\n结论:%s\n", all_ok ? "全部一致, 标记跨分片处理正确. "
|
||||
: "存在不一致, 渲染器有 bug. ");
|
||||
free(src);
|
||||
return all_ok ? 0 : 1;
|
||||
}
|
||||
@@ -288,7 +288,7 @@ int main(int argc, char **argv)
|
||||
if (isatty(fileno(stdout))) {
|
||||
fprintf(stderr, "── 输入:%s 渲染:%s%s ──\n\n",
|
||||
source_name, enabled ? "开" : "关",
|
||||
chunk ? "(分片模式)" : "");
|
||||
chunk ? " (分片模式)" : "");
|
||||
}
|
||||
|
||||
render_to_tty(src, enabled, chunk, delay_ms);
|
||||
@@ -296,8 +296,8 @@ int main(int argc, char **argv)
|
||||
if (isatty(fileno(stdout))) {
|
||||
fprintf(stderr, "\n── 演示结束 ──\n");
|
||||
if (enabled && chunk == 0)
|
||||
fprintf(stderr, "试试 `md_demo -s` 看流式分片下标记被切断时的表现,"
|
||||
"或 `md_demo -p` 对照原始 Markdown。\n");
|
||||
fprintf(stderr, "试试 `md_demo -s` 看流式分片下标记被切断时的表现, "
|
||||
"或 `md_demo -p` 对照原始 Markdown. \n");
|
||||
}
|
||||
|
||||
free(src);
|
||||
|
||||
Reference in new issue
Block a user