为键=值定义开关

Define switch for key=value

在 nim 中,你可以通过 -d:value 定义一个符号并测试它是否是用 defined(value) 定义的。但是可以定义一个键并检索它的值吗?我正在寻找与 --colors:on 类似但用户定义的东西。

我也找过这个,但没有找到适合我的 nim-small-coreutils 的任何东西。我最终将环境变量用作 hack 并以不可移植的方式阅读它们:

const colors = staticExec "echo \"$colors\""

when colors == "on":
  echo "It's on!"
else:
  echo "I guess it's off? The value is: ", colors

这在编译时获取环境变量,所以你可以这样使用它:

colors=on nim c example

或者:

nim c --putEnv:colors=on c example