Allow user to set and unset path property of variables

This adds flags --path and --unpath to builtin set, analogous to
--export and --unexport. These flags change whether a variable is
marked as a path variable.

Universal variables cannot yet be path variables.
This commit is contained in:
ridiculousfish
2018-10-06 20:22:35 -07:00
parent 5947aa0171
commit f4d666f56c
4 changed files with 47 additions and 6 deletions

View File

@@ -127,7 +127,17 @@ unlink $tmpdir/linkhome
rmdir $tmpdir/realhome
rmdir $tmpdir
logmsg Test delimiters
logmsg Test path variables
set TEST_DELIMITER one two three
set TEST_DELIMITER_PATH one two three
echo "$TEST_DELIMITER" "$TEST_DELIMITER_PATH"
echo TEST_DELIMITER: $TEST_DELIMITER "$TEST_DELIMITER"
echo TEST_DELIMITER_PATH: $TEST_DELIMITER_PATH "$TEST_DELIMITER_PATH"
set testvar ONE:TWO:THREE
echo "Not a path: $testvar" (count $testvar)
set --path testvar $testvar
echo "As a path: $testvar" (count $testvar)
set testvar "$testvar:FOUR"
echo "Appended path: $testvar" (count $testvar)
set --unpath testvar $testvar
echo "Back to normal variable: $testvar" (count $testvar)