Clojure 命令行应用与 Vim 开发环境
命令行应用中的标志位
在命令行应用中,标志位(flags)是非常重要的配置元素。以 -p
标志位为例,当执行 integralist
命令且未定义该标志位时, -p
( --port
)标志位会被赋予默认值 80。这是因为在配置中设置了 :default
属性为 80。例如,执行 integralist -p 123
时,命令输出中该标志位的值将为 123,这展示了通过定义默认值可以使某些标志位成为可选参数。
若执行 integralist -p abc
,命令会输出错误信息:
[Error while parsing option "-p abc": java.lang.NumberFormatException: For input string: "abc"]
这是因为 -p
标志位配置了 :parse-fn
属性,该属性用于将输入转换为另一种格式的值,这里是尝试将输入转换为整数。
此外,还有 :validate
属性,用于验证输入的值是否符合预期。例如,对于 -p
标志位,要求输入的数字必须在 0 到 65536 之间。若传入 99999,会出现如下错误:
[Failed to validate