32 lines
701 B
Nim
32 lines
701 B
Nim
|
import os
|
||
|
|
||
|
import argparse
|
||
|
|
||
|
import common
|
||
|
|
||
|
proc parseArgs*() =
|
||
|
let params = commandLineParams()
|
||
|
var p = newParser:
|
||
|
help("WMTools : a set of tools to output option to your program of choice i.e. Rofi")
|
||
|
arg("input")
|
||
|
flag("-l","--loop")
|
||
|
option("-r","--run")
|
||
|
try:
|
||
|
var opts = p.parse(params)
|
||
|
case opts.input
|
||
|
of "furrytime", "fuzzytime", "time":
|
||
|
myConfig.run = FurryTime
|
||
|
of "pingclock", "pingclurrk", "ping":
|
||
|
myConfig.run = PingClock
|
||
|
else:
|
||
|
echo p.help
|
||
|
quit(1)
|
||
|
except ShortCircuit as err:
|
||
|
if err.flag == "argparse_help":
|
||
|
echo err.help
|
||
|
quit(1)
|
||
|
except UsageError:
|
||
|
stderr.writeLine getCurrentExceptionMsg()
|
||
|
quit(1)
|
||
|
|