From 147a7b66554b2b13bcbf6fec1204e0cc0a1790bf Mon Sep 17 00:00:00 2001 From: Mike Burns and Eric Collins Date: Fri, 23 Dec 2016 16:18:40 -0500 Subject: Handle spaces in dotfile name In mkrc, separate the list of files with newlines instead of spaces. Change the `$IFS` when iterating to handle this. We hand the file off to rcup, which encodes the file name by replacing spaces with the bell character (`\a`). rcup then sends the file name off to lsrc, which decodes the bell back into a space. The test makes sure an `a` character is in the filename, in case some encoding goes wrong. We use tr(1) instead of sed(1) because tr(1) handles `\a`. Shoutout to Sublime Text 3 for forcing this issue. --- bin/rcup.in | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'bin/rcup.in') diff --git a/bin/rcup.in b/bin/rcup.in index de11751..932ac56 100755 --- a/bin/rcup.in +++ b/bin/rcup.in @@ -260,7 +260,10 @@ handle_command_line() { tags="${arg_tags:-$TAGS}" DOTFILES_DIRS="${dotfiles_dirs:-$DOTFILES_DIRS}" RUN_HOOKS=$run_hooks - files="$@" + files= + for file; do + files="$files $(encode "$file")" + done for tag in $tags; do LS_ARGS="$LS_ARGS -t $tag" -- cgit v1.2.3