hzDocs
hzDocs
文章 / 文档hedzr.com首页

cmdr series

介绍 cmdr

Guide

你的首个 CLI app更适合工程实践的版本
循序渐进
基本概念
命令命令:执行外部程序命令:预设参数命令:重定向命令:动态命令清单命令:在配置文件中定义别名清单命令:事件响应函数标志标志:必须项标志:可翻转组标志:枚举值标志:`Head -1` 风格标志:调用外部工具获得输入标志:自动否定标志:加号 `+` 前缀标志:事件响应函数解析结果内建命令和标志帮助子系统可共享共存的 app 实例辨析顶级函数WithOptsBackstage
如何……
Auto-close the ClosersRead config into structUsing is DetectorsUsing Store

References

What's New
Packages

Others

Examples
Blueprint
产品发布
产品发布之前
介绍 cmdr-cxx

Guide

cmdr supports

Intro

Guide

More features

References

Others

evendeep(-go)

Guide

Usagesdeepcopydeepdiffdeepequal
logg/slog(-go)

Guide

Guide

others

Components
trie-cxx

Guide

Guide

links

On Github

标志:事件响应函数

OnXXX event handlers...

关联标志的 Event Handlers

标准的事件响应函数有:

  • .OnParseValue(...OnParseValueHandler)
  • .OnMatched(...OnMatchedHandler)
  • .OnChanging(...OnChangingHandler)
  • .OnChanged(...OnChangedHandler)
  • .OnSet(...OnSetHandler)

它们分别对应着一个子命令将要被解析(OnParseValue),解析成功(OnMatched),或者一个标志解析成功(OnMatched),将要接受用户输入的新值(OnChanging),接受用户值(OnChanged),和接受编程修改值(OnSet)。

OnSet 和 OnChanged 的区别是,前者会在 cmd.Store().Set("some.key", newval) 的过程中被触发,代表编程方式修改值,而后者通常代表着命令行中的一个标志被解析正确并赋值。

cmdr-loaders 与 cmdr 的协作被集成管理,因此在 cmdr-loaders loading 外部源的过程中,OnSet 并不会被触发,这个过程被视为初始化加载过程。

而当加载完毕,程序运行期的变更将被自动记录,从而产生一个变更集。这个变更集将被自动回写到 Alternative 类别的外部配置文件中。具体特性详见 外部源回写。

额外的话题

Required

Toggle Group

Valid Args

Head Like

External Tool

Plus Sign

Event Handlers

What is Next?

Components

Components

On Github

How is this guide?

最后更新于

目录

关联标志的 Event Handlers
额外的话题