I imagine this will only ever pop up when developing on worm for most users, but when working on #70 I spent a while attempting to debug why the new config options weren't working, and it was due to my rcfile using my system wormc, rather than ~/devel/worm/wormc.
That said, it would also be of benefit to reduce down configuration to a "single source of truth" -- currently to add a configuration option you:
- add a new IPC atom in
src/atoms.nim
- add it to the Config type in
src/types.nim
- implement boilerplate for the option in
src/wormc.nim
- implement the setter for the option in
src/events/clientmessage.nim
- and finally, you can actually use the configuration option in your code
You could get rid of 1 and 3 in a single step (as well as what I mention above, avoiding errors from an easy-to-make mistake) by simply having wormc take its input and send it directly to worm which handles it in its entirety.
I imagine this will only ever pop up when developing on worm for most users, but when working on #70 I spent a while attempting to debug why the new config options weren't working, and it was due to my rcfile using my system
wormc, rather than~/devel/worm/wormc.That said, it would also be of benefit to reduce down configuration to a "single source of truth" -- currently to add a configuration option you:
src/atoms.nimsrc/types.nimsrc/wormc.nimsrc/events/clientmessage.nimYou could get rid of 1 and 3 in a single step (as well as what I mention above, avoiding errors from an easy-to-make mistake) by simply having wormc take its input and send it directly to worm which handles it in its entirety.