@@ -9,38 +9,41 @@ func showHelp() {
99 fmt .Fprintln (os .Stderr , "kvlang — KV language VM interpreter" )
1010 fmt .Fprintln (os .Stderr )
1111 fmt .Fprintln (os .Stderr , "usage:" )
12- fmt .Fprintln (os .Stderr , " kvlang [<file.kv|dir>] 加载并执行(文件/目录)" )
13- fmt .Fprintln (os .Stderr , " kvlang -c \" code\" 加载并执行内联代码" )
14- fmt .Fprintln (os .Stderr , " echo \" code\" | kvlang 加载并执行管道代码" )
15- fmt .Fprintln (os .Stderr , " kvlang serve 启动 VM daemon" )
16- fmt .Fprintln (os .Stderr , " kvlang load <file.kv|dir> 只加载到 kvspace,不执行" )
17- fmt .Fprintln (os .Stderr , " kvlang vet <file.kv> 语法检查" )
18- fmt .Fprintln (os .Stderr , " kvlang format <file.kv> 格式化源文件" )
19- fmt .Fprintln (os .Stderr , " kvlang kvspace <cmd> [args] KV 空间操作" )
20- fmt .Fprintln (os .Stderr , " kvlang help 显示此帮助" )
12+ fmt .Fprintln (os .Stderr , " kvlang <file.kv|dir> [--debug] 加载并执行(目录递归收集 *.kv)" )
13+ fmt .Fprintln (os .Stderr , " kvlang -c \" code\" [--debug] 加载并执行内联代码" )
14+ fmt .Fprintln (os .Stderr , " echo \" code\" | kvlang 执行管道代码(stdin 非终端时)" )
15+ fmt .Fprintln (os .Stderr , " kvlang 无参数且 stdin 为终端 → 等价 kvlang serve" )
16+ fmt .Fprintln (os .Stderr , " kvlang serve 启动 VM daemon" )
17+ fmt .Fprintln (os .Stderr , " kvlang load <file.kv|dir> 只加载到 kvspace,不执行" )
18+ fmt .Fprintln (os .Stderr , " kvlang vet [--dump] [--lower] [-c code | <file.kv>] 语法检查" )
19+ fmt .Fprintln (os .Stderr , " kvlang format [-w] [-c code | <file.kv>] 格式化(别名 fmt;默认打印,-w 原地写回)" )
20+ fmt .Fprintln (os .Stderr , " kvlang kvspace <cmd> [args] KV 空间操作" )
21+ fmt .Fprintln (os .Stderr , " kvlang help 显示此帮助" )
2122 fmt .Fprintln (os .Stderr )
2223 fmt .Fprintln (os .Stderr , "kvspace 子命令:" )
2324 fmt .Fprintln (os .Stderr , " get <key> 读取单个 key" )
2425 fmt .Fprintln (os .Stderr , " mget <key1> <key2> ... 批量读取" )
25- fmt .Fprintln (os .Stderr , " set <key> <value> 写入 key" )
26+ fmt .Fprintln (os .Stderr , " set <key> <value> 写入 key;value 为 kind:repr 格式" )
27+ fmt .Fprintln (os .Stderr , " (int:42、float:3.14、bool:true、string:hi;无冒号视为字符串)" )
2628 fmt .Fprintln (os .Stderr , " del <key1> [key2 ...] 删除 key" )
2729 fmt .Fprintln (os .Stderr , " list <prefix> 列出直接子项" )
2830 fmt .Fprintln (os .Stderr , " tree <prefix> 递归树形结构" )
2931 fmt .Fprintln (os .Stderr , " dump <prefix> 递归 key=value" )
30- fmt .Fprintln (os .Stderr , " watch < key> [ --timeout 5s] 阻塞等待通知 " )
32+ fmt .Fprintln (os .Stderr , " watch [--timeout <dur>] < key> 阻塞等待通知(如 --timeout 5s;0 永久,flag 须在 key 前) " )
3133 fmt .Fprintln (os .Stderr , " notify <key> <value> 推送通知" )
3234 fmt .Fprintln (os .Stderr , " clear 清空所有 kvspace 数据" )
3335 fmt .Fprintln (os .Stderr , " trace <vtid> 追踪 vthread 单步执行,输出 NDJSON" )
3436 fmt .Fprintln (os .Stderr )
35- fmt .Fprintln (os .Stderr , "全局选项:" )
36- fmt .Fprintln (os .Stderr , " --addr host:port Redis 地址(默认 127.0.0.1:6379)" )
37+ fmt .Fprintln (os .Stderr , "选项:" )
38+ fmt .Fprintln (os .Stderr , " --kvspace <dsn> kvspace 地址(默认 redis://127.0.0.1:6379,KVLANG_KVSPACE 可覆盖默认;" )
39+ fmt .Fprintln (os .Stderr , " 裸 host:port 视为 redis;run/serve/load/kvspace 支持)" )
40+ fmt .Fprintln (os .Stderr , " --debug 单步调试模式(run 模式,交互式逐指令暂停)" )
3741 fmt .Fprintln (os .Stderr )
3842 fmt .Fprintln (os .Stderr , "示例:" )
39- fmt .Fprintln (os .Stderr , " kvlang file.kv 执行文件" )
40- fmt .Fprintln (os .Stderr , " kvlang -c 'print(\" hi\" )' 内联执行" )
41- fmt .Fprintln (os .Stderr , " echo 'print(\" hi\" )' | kvlang 管道执行" )
42- fmt .Fprintln (os .Stderr , " kvlang load file.kv 加载不执行" )
43- fmt .Fprintln (os .Stderr , " kvlang serve 启动 daemon" )
44- fmt .Fprintln (os .Stderr , " kvlang kvspace dump /src 查看已加载函数源码" )
43+ fmt .Fprintln (os .Stderr , " kvlang file.kv 执行文件" )
44+ fmt .Fprintln (os .Stderr , " kvlang -c 'x = 40 + 2; print(x)' 内联执行(= 等价于 <-)" )
45+ fmt .Fprintln (os .Stderr , " echo 'print(\" hi\" )' | kvlang 管道执行" )
46+ fmt .Fprintln (os .Stderr , " kvlang vet -c 'a = { k=1 }' 语法检查内联代码" )
47+ fmt .Fprintln (os .Stderr , " kvlang kvspace dump /src 查看已加载函数源码" )
4548 os .Exit (0 )
4649}
0 commit comments