From c3dec27c4819b3b825423e5774dc044412d29222 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 8 Nov 2017 14:12:45 -0500 Subject: config-path: use %q to avoid complexity --- .local/bin/config-path | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/.local/bin/config-path b/.local/bin/config-path index cbecc95..eb88092 100755 --- a/.local/bin/config-path +++ b/.local/bin/config-path @@ -40,15 +40,14 @@ var_add() { } var_done() { - eval "$1=\"\${ary_$1[*]}\"" - declare -p $1 + local var=$1 + local valref="ary_${var}[*]" + printf '%s=%q\n' "${var}" "${!valref}" } main() { - export LC_ALL=C # Work around brokenly slow Unicode handling - # in Bash - IFS=: + # Import existing values var_init PATH var_init LD_LIBRARY_PATH @@ -66,12 +65,9 @@ main() { done # Finally, print the values - lines=() for var in PATH LD_LIBRARY_PATH PKG_CONFIG_PATH RUBYLIB PERL5LIB; do - lines+=("$(var_done "$var")") + var_done "$var" done - shopt -s extglob - printf -- '%s\n' "${lines[@]##declare *(-+([[:graph:]]) )}" } main "$@" -- cgit v1.2.3