[PATCH] WIP: dim: introduce XDG_CONFIG_HOME support

Emil Velikov emil.l.velikov at gmail.com
Tue Oct 23 15:33:09 UTC 2018


From: Emil Velikov <emil.velikov at collabora.com>

Currently we check for $DIM_CONFIG, falling back to $HOME/.dimrc.

Instead of always setting DIM_CONFIG, add support for XDG_CONFIG_HOME
aka ~/.config.

Now we get $DIM_CONFIG > $XDG_CONFIG_HOME/dim/config > $HOME/.dimrc

Ideally in the future we'll:
 a) warn and kill off the last one
 b) print an warning message each time DIM_CONFIG is set
 c) error out if XDG_CONFIG_HOME is not set ...
or fallback to ~/.config ourselves

Reason being, managing dotfiles with XDG is an order of magnitude
easier and DIM_CONFIG should only be set as a temporary workaround.

TODO: better sales pitch, update docs

Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
---
As the WIP/TODO suggests, this is not the final version of the patch.
Sending it out to get some feedback on the idea and a/b/c thinking.

Thanks
Emil
---
 dim | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/dim b/dim
index 21e1e0d6ed45..93e90a4f96d0 100755
--- a/dim
+++ b/dim
@@ -36,7 +36,8 @@ set -e
 #
 
 # dim configuration file
-DIM_CONFIG=${DIM_CONFIG:-$HOME/.dimrc}
+XDG_DIM_CONFIG=${XDG_CONFIG_HOME:+$XDG_CONFIG_HOME/dim/config}
+DIM_CONFIG=${DIM_CONFIG:-${XDG_DIM_CONFIG:-$HOME/.dimrc}}
 if [ -r $DIM_CONFIG ]; then
 	# shellcheck source=/dev/null
 	. $DIM_CONFIG
-- 
2.19.1



More information about the dim-tools mailing list