dotfiles/herbstluftwm/fish_functions/set_default.fish

26 lines
590 B
Fish
Executable File

#!/usr/bin/env fish
# set_default sets a variable with
# global scope (-g), if it is not already set
#
# Examples:
#
# set EXAMPLE_1 "hello"
# set_default EXAMPLE_1 "world"
# echo $EXAMPLE_1 # "hello"
#
# set_default EXAMPLE_2 "world"
# echo $EXAMPLE_2 # "world"
function set_default
argparse -i 'u/universal' -- $argv
if not set -q $argv[1];
if set _flag_universal
echo "set -U $argv[1] $argv[2..]"
set -U $argv[1] $argv[2..]
else
echo "set -g $argv[1] $argv[2..]"
set -g $argv[1] $argv[2..]
end
end
end