Files
nim-cli-utils/cliutils.nim

33 lines
806 B
Nim

import std/[strtabs, strutils, tables]
import ./cliutils/ansiterm
import ./cliutils/config
import ./cliutils/daemonize
import ./cliutils/procutil
import ./cliutils/queue_logger
export ansiterm
export config
export daemonize
export procutil
export queue_logger
proc doParseQueryParams[T](queryParams: T): seq[string] =
result = @[]
for k,v in queryParams:
# support ?arg1=val1&arg2=val2 -> cmd val1 val2
if k.startsWith("arg"): result.add(v)
else :
result.add("--" & k)
if v != "true": result.add(v) # support things like ?verbose=true -> cmd --verbose
proc queryParamsToCliArgs*(queryParams: Table[string, string]): seq[string] =
doParseQueryParams(queryParams)
proc queryParamsToCliArgs*(queryParams: StringTableRef): seq[string] =
doParseQueryParams(queryParams)