From 734f67e388264251251e71cb29c2506f7d386cce Mon Sep 17 00:00:00 2001 From: Ashlynn Anderson Date: Mon, 28 Mar 2022 00:13:59 -0400 Subject: [PATCH] Allow setting rcfile path via flag Also moves rcfile loading to worm.nim rather than events.nim, which feels more sensible. --- src/events.nim | 6 ------ src/worm.nim | 24 +++++++++++++++++++++++- 2 files changed, 23 insertions(+), 7 deletions(-) diff --git a/src/events.nim b/src/events.nim index b29a2a4..6f509a9 100644 --- a/src/events.nim +++ b/src/events.nim @@ -1,8 +1,6 @@ import - std/[os, osproc], x11/[x, xlib], wm, - log, events/[ buttonpress, buttonrelease, @@ -33,10 +31,6 @@ proc dispatchEvent*(self: var Wm; ev: XEvent) = else: discard proc eventLoop*(self: var Wm) = - if fileExists expandTilde "~/.config/worm/rc": - log "config file found, loading..." - discard startProcess expandTilde "~/.config/worm/rc" - log "config file loaded!" while true: discard self.dpy.XNextEvent(unsafeAddr self.currEv) self.dispatchEvent self.currEv diff --git a/src/worm.nim b/src/worm.nim index f37b092..14efaf9 100644 --- a/src/worm.nim +++ b/src/worm.nim @@ -1,7 +1,29 @@ import + std/[os, osproc, parseopt], wm, - events + events, + log when isMainModule: var instance = initWm() + + var rcFile = "~/.config/worm/rc" + + var p = initOptParser("") + while true: + p.next() + case p.kind + of cmdEnd: break + of cmdLongOption: + case p.key + of "rcfile": + rcFile = p.val + else: discard + else: discard + + if fileExists expandTilde rcFile: + log "config file found, loading..." + discard startProcess expandTilde rcFile + log "config file loaded!" + instance.eventLoop()