/nech 命令
基本信息
| 属性 | 值 |
|---|---|
| 类型 | 客户端指令 |
| 命令名 | nech |
| 实现类 | net.vfyjxf.nechar.NechCommand(继承 CommandBase) |
| 注册时机 | NotEnoughCharacters#init(FMLInitializationEvent) → ClientCommandHandler.instance.registerCommand(...) |
| 所需权限等级 | 1(getRequiredPermissionLevel()) |
| 实际可用性 | canCommandSenderUseCommand 无条件返回 true,且注册在客户端命令处理器上,因此服务端无需安装、任何客户端玩家均可使用 |
| 用法字符串 | ""(getCommandUsage 返回空串,不提供用法提示) |
子命令
| 参数 | 参数个数 | 行为 | 成功反馈 | 失败反馈 |
|---|---|---|---|---|
profile |
1 | 启动一条 MIN_PRIORITY 优先级线程执行 Profiler.run(),把结果以 Gson 缩进 JSON 写入 logs/necharacters-profiler.txt |
chat.start(开始)、chat.saved(已保存) |
chat.save_error(写文件抛 IOException 时) |
verbose <true|false> |
2 | 直接改写静态字段 NechConfig.enableVerbose |
无 | 其他取值 → command.unknown |
keyboard <方案名> |
2 | 调用 NechConfig.setKeyboard(Spell) 切换拼音方案,该方法会再调用 NotEnoughCharacters.onConfigChange() 提交到 PinIn |
无 | 其他取值 → command.unknown |
任何不匹配的参数组合(包括无参数、参数过多、args[0] 不是这三个关键字)都走 else 分支输出 command.unknown(本地化键)。
verbose 取值
args[1].toLowerCase() 后匹配:
| 取值 | 结果 |
|---|---|
true |
NechConfig.enableVerbose = true |
false |
NechConfig.enableVerbose = false |
| 其他 | command.unknown |
注意 enableVerbose 不是配置文件项,仅由本指令在运行期修改,初始值为 false(见 配置系统)。profile 子命令结束后不会自动还原该开关。
keyboard 取值(9 个)
args[1].toLowerCase() 后映射到 NechConfig.Spell 枚举,注意指令参数名与枚举常量名并不一一同名:
| 指令参数 | 目标 Spell 枚举 |
对应 me.towdium.pinin.Keyboard |
|---|---|---|
quanpin |
QUANPIN |
Keyboard.QUANPIN |
daqian |
DAQIAN |
Keyboard.DAQIAN |
xiaohe |
XIAOHE |
Keyboard.XIAOHE |
ziranma |
ZIRANMA |
Keyboard.ZIRANMA |
sougou |
SOUGOU |
Keyboard.SOUGOU |
guobiao |
GUOBIAO |
Keyboard.GUOBIAO |
microsoft |
MICROSOFT |
Keyboard.MICROSOFT |
pinyinjiajia |
PINYINPP |
Keyboard.PINYINPP(⚠️ 参数名与常量名不同) |
ziguang |
ZIGUANG |
Keyboard.ZIGUANG |
Tab 补全(addTabCompletionOptions)
| 条件 | 补全候选 |
|---|---|
args.length == 1 |
profile、verbose、keyboard |
args.length == 2 && args[0] == "verbose" |
true、false |
args.length == 2 && args[0] == "keyboard" |
quanpin、daqian、xiaohe、ziranma、sougou、guobiao、microsoft、pinyinjiajia、ziguang |
| 其他 | null(不补全) |
补全列表与实际可用参数完全一致。
与配置文件的关系
/nech keyboard 只改运行期状态并提交给 PinIn,不写回 KeyboardType 配置项;下次游戏启动时仍按配置文件的值生效。
相关条目
- 配置系统 -
KeyboardType配置项与enableVerbose的来源 - 性能分析器 Profiler -
profile子命令的产出物 - 拼音词典扩展 -
keyboard切换所影响的 PinIn 配置 - Coremod 引导 ClassTransformer - 与本指令并列的另外两处客户端挂载点