Quote path names in init.zsh
to properly handle path names with spaces. Fixes #497
This commit is contained in:
parent
d10d7c627c
commit
f71bff5418
5 changed files with 20 additions and 18 deletions
|
@ -7,7 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
_No unreleased changes._
|
### Fixed
|
||||||
|
|
||||||
|
- Quote path names in init.zsh to properly handle path names with spaces.
|
||||||
|
|
||||||
## [1.11.1] - 2023-02-04
|
## [1.11.1] - 2023-02-04
|
||||||
|
|
||||||
|
|
|
@ -5,8 +5,8 @@ _zimfw_build_init() {
|
||||||
command mv -f ${ztarget}{,.old} || return 1
|
command mv -f ${ztarget}{,.old} || return 1
|
||||||
fi
|
fi
|
||||||
_zimfw_mv =(
|
_zimfw_mv =(
|
||||||
print -R "zimfw() { source ${ZIM_HOME}/zimfw.zsh \"\${@}\" }"
|
print -R "zimfw() { source ${(q-)ZIM_HOME}/zimfw.zsh \"\${@}\" }"
|
||||||
print -R "zmodule() { source ${ZIM_HOME}/zimfw.zsh \"\${@}\" }"
|
print -R "zmodule() { source ${(q-)ZIM_HOME}/zimfw.zsh \"\${@}\" }"
|
||||||
local zroot_dir zpre
|
local zroot_dir zpre
|
||||||
local -a zif_functions zif_cmds zroot_functions zroot_cmds
|
local -a zif_functions zif_cmds zroot_functions zroot_cmds
|
||||||
local -a zfunctions=(${_zfunctions}) zcmds=(${_zcmds})
|
local -a zfunctions=(${_zfunctions}) zcmds=(${_zcmds})
|
||||||
|
@ -22,7 +22,7 @@ _zimfw_build_init() {
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
zpre=$'*\0'
|
zpre=$'*\0'
|
||||||
if (( ${#_zfpaths} )) print 'fpath=('${${_zfpaths#${~zpre}}:A}' ${fpath})'
|
if (( ${#_zfpaths} )) print 'fpath=('${(q-)${_zfpaths#${~zpre}}:A}' ${fpath})'
|
||||||
if (( ${#zfunctions} )) print -R 'autoload -Uz -- '${zfunctions#${~zpre}}
|
if (( ${#zfunctions} )) print -R 'autoload -Uz -- '${zfunctions#${~zpre}}
|
||||||
for zroot_dir in ${_zroot_dirs}; do
|
for zroot_dir in ${_zroot_dirs}; do
|
||||||
zpre=${zroot_dir}$'\0'
|
zpre=${zroot_dir}$'\0'
|
||||||
|
|
|
@ -179,11 +179,11 @@ Per-call initialization options:
|
||||||
shift
|
shift
|
||||||
zarg=${1}
|
zarg=${1}
|
||||||
if [[ ${zarg} != /* ]] zarg=${zroot_dir}/${zarg}
|
if [[ ${zarg} != /* ]] zarg=${zroot_dir}/${zarg}
|
||||||
zcmds+=("source ${zarg:A}")
|
zcmds+=("source ${(q-)zarg:A}")
|
||||||
;;
|
;;
|
||||||
-c|--cmd)
|
-c|--cmd)
|
||||||
shift
|
shift
|
||||||
zcmds+=(${1//{}/${zroot_dir:A}})
|
zcmds+=(${1//{}/${(q-)zroot_dir:A}})
|
||||||
;;
|
;;
|
||||||
-d|--disabled) _zdisabled_root_dirs+=(${zroot_dir}) ;;
|
-d|--disabled) _zdisabled_root_dirs+=(${zroot_dir}) ;;
|
||||||
*)
|
*)
|
||||||
|
@ -211,11 +211,11 @@ Per-call initialization options:
|
||||||
local -ra prezto_scripts=(${zroot_dir}/init.zsh(N))
|
local -ra prezto_scripts=(${zroot_dir}/init.zsh(N))
|
||||||
if (( ${#zfpaths} && ${#prezto_scripts} )); then
|
if (( ${#zfpaths} && ${#prezto_scripts} )); then
|
||||||
# this follows the prezto module format, no need to check for other scripts
|
# this follows the prezto module format, no need to check for other scripts
|
||||||
zcmds=('source '${^prezto_scripts:A})
|
zcmds=('source '${(q-)^prezto_scripts:A})
|
||||||
else
|
else
|
||||||
# get script with largest size (descending `O`rder by `L`ength, and return only `[1]` first)
|
# get script with largest size (descending `O`rder by `L`ength, and return only `[1]` first)
|
||||||
local -ra zscripts=(${zroot_dir}/(init.zsh|(${zname:t}|${zroot_dir:t}).(zsh|plugin.zsh|zsh-theme|sh))(NOL[1]))
|
local -ra zscripts=(${zroot_dir}/(init.zsh|(${zname:t}|${zroot_dir:t}).(zsh|plugin.zsh|zsh-theme|sh))(NOL[1]))
|
||||||
zcmds=('source '${^zscripts:A})
|
zcmds=('source '${(q-)^zscripts:A})
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if (( ! ${#zfpaths} && ! ${#zfunctions} && ! ${#zcmds} )); then
|
if (( ! ${#zfpaths} && ! ${#zfunctions} && ! ${#zcmds} )); then
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# This runs in a new shell
|
# This runs in a new shell
|
||||||
builtin emulate -L zsh -o EXTENDED_GLOB
|
builtin emulate -L zsh -o EXTENDED_GLOB
|
||||||
readonly -i PRINTLEVEL=${1} SUBMODULES=${8}
|
readonly -i PRINTLEVEL=${1} SUBMODULES=${8}
|
||||||
readonly ACTION=${2} MODULE=${3} DIR=${4} URL=${5} REV=${7} ONPULL=${9} TEMP=.zdegit_${RANDOM}
|
readonly ACTION=${2} MODULE=${3} DIR=${4} URL=${5} REV=${7} ONPULL=${9} TEMP=.zdegit_${sysparams[pid]}
|
||||||
readonly TARBALL_TARGET=${DIR}/${TEMP}_tarball.tar.gz INFO_TARGET=${DIR}/.zdegit
|
readonly TARBALL_TARGET=${DIR}/${TEMP}_tarball.tar.gz INFO_TARGET=${DIR}/.zdegit
|
||||||
|
|
||||||
print_error() {
|
print_error() {
|
||||||
|
|
18
zimfw.zsh
18
zimfw.zsh
|
@ -57,8 +57,8 @@ _zimfw_build_init() {
|
||||||
command mv -f ${ztarget}{,.old} || return 1
|
command mv -f ${ztarget}{,.old} || return 1
|
||||||
fi
|
fi
|
||||||
_zimfw_mv =(
|
_zimfw_mv =(
|
||||||
print -R "zimfw() { source ${ZIM_HOME}/zimfw.zsh \"\${@}\" }"
|
print -R "zimfw() { source ${(q-)ZIM_HOME}/zimfw.zsh \"\${@}\" }"
|
||||||
print -R "zmodule() { source ${ZIM_HOME}/zimfw.zsh \"\${@}\" }"
|
print -R "zmodule() { source ${(q-)ZIM_HOME}/zimfw.zsh \"\${@}\" }"
|
||||||
local zroot_dir zpre
|
local zroot_dir zpre
|
||||||
local -a zif_functions zif_cmds zroot_functions zroot_cmds
|
local -a zif_functions zif_cmds zroot_functions zroot_cmds
|
||||||
local -a zfunctions=(${_zfunctions}) zcmds=(${_zcmds})
|
local -a zfunctions=(${_zfunctions}) zcmds=(${_zcmds})
|
||||||
|
@ -74,7 +74,7 @@ _zimfw_build_init() {
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
zpre=$'*\0'
|
zpre=$'*\0'
|
||||||
if (( ${#_zfpaths} )) print 'fpath=('${${_zfpaths#${~zpre}}:A}' ${fpath})'
|
if (( ${#_zfpaths} )) print 'fpath=('${(q-)${_zfpaths#${~zpre}}:A}' ${fpath})'
|
||||||
if (( ${#zfunctions} )) print -R 'autoload -Uz -- '${zfunctions#${~zpre}}
|
if (( ${#zfunctions} )) print -R 'autoload -Uz -- '${zfunctions#${~zpre}}
|
||||||
for zroot_dir in ${_zroot_dirs}; do
|
for zroot_dir in ${_zroot_dirs}; do
|
||||||
zpre=${zroot_dir}$'\0'
|
zpre=${zroot_dir}$'\0'
|
||||||
|
@ -292,11 +292,11 @@ Per-call initialization options:
|
||||||
shift
|
shift
|
||||||
zarg=${1}
|
zarg=${1}
|
||||||
if [[ ${zarg} != /* ]] zarg=${zroot_dir}/${zarg}
|
if [[ ${zarg} != /* ]] zarg=${zroot_dir}/${zarg}
|
||||||
zcmds+=("source ${zarg:A}")
|
zcmds+=("source ${(q-)zarg:A}")
|
||||||
;;
|
;;
|
||||||
-c|--cmd)
|
-c|--cmd)
|
||||||
shift
|
shift
|
||||||
zcmds+=(${1//{}/${zroot_dir:A}})
|
zcmds+=(${1//{}/${(q-)zroot_dir:A}})
|
||||||
;;
|
;;
|
||||||
-d|--disabled) _zdisabled_root_dirs+=(${zroot_dir}) ;;
|
-d|--disabled) _zdisabled_root_dirs+=(${zroot_dir}) ;;
|
||||||
*)
|
*)
|
||||||
|
@ -324,11 +324,11 @@ Per-call initialization options:
|
||||||
local -ra prezto_scripts=(${zroot_dir}/init.zsh(N))
|
local -ra prezto_scripts=(${zroot_dir}/init.zsh(N))
|
||||||
if (( ${#zfpaths} && ${#prezto_scripts} )); then
|
if (( ${#zfpaths} && ${#prezto_scripts} )); then
|
||||||
# this follows the prezto module format, no need to check for other scripts
|
# this follows the prezto module format, no need to check for other scripts
|
||||||
zcmds=('source '${^prezto_scripts:A})
|
zcmds=('source '${(q-)^prezto_scripts:A})
|
||||||
else
|
else
|
||||||
# get script with largest size (descending `O`rder by `L`ength, and return only `[1]` first)
|
# get script with largest size (descending `O`rder by `L`ength, and return only `[1]` first)
|
||||||
local -ra zscripts=(${zroot_dir}/(init.zsh|(${zname:t}|${zroot_dir:t}).(zsh|plugin.zsh|zsh-theme|sh))(NOL[1]))
|
local -ra zscripts=(${zroot_dir}/(init.zsh|(${zname:t}|${zroot_dir:t}).(zsh|plugin.zsh|zsh-theme|sh))(NOL[1]))
|
||||||
zcmds=('source '${^zscripts:A})
|
zcmds=('source '${(q-)^zscripts:A})
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if (( ! ${#zfpaths} && ! ${#zfunctions} && ! ${#zcmds} )); then
|
if (( ! ${#zfpaths} && ! ${#zfunctions} && ! ${#zcmds} )); then
|
||||||
|
@ -454,7 +454,7 @@ _zimfw_compile() {
|
||||||
}
|
}
|
||||||
|
|
||||||
_zimfw_info() {
|
_zimfw_info() {
|
||||||
print -R 'zimfw version: '${_zversion}' (built at 2023-02-04 14:46:47 UTC, previous commit is 7778e97)'
|
print -R 'zimfw version: '${_zversion}' (built at 2023-02-16 12:44:26 UTC, previous commit is fae0a7e)'
|
||||||
print -R 'OSTYPE: '${OSTYPE}
|
print -R 'OSTYPE: '${OSTYPE}
|
||||||
print -R 'TERM: '${TERM}
|
print -R 'TERM: '${TERM}
|
||||||
print -R 'TERM_PROGRAM: '${TERM_PROGRAM}
|
print -R 'TERM_PROGRAM: '${TERM_PROGRAM}
|
||||||
|
@ -584,7 +584,7 @@ _zimfw_run_tool() {
|
||||||
degit) zcmd="# This runs in a new shell
|
degit) zcmd="# This runs in a new shell
|
||||||
builtin emulate -L zsh -o EXTENDED_GLOB
|
builtin emulate -L zsh -o EXTENDED_GLOB
|
||||||
readonly -i PRINTLEVEL=\${1} SUBMODULES=\${8}
|
readonly -i PRINTLEVEL=\${1} SUBMODULES=\${8}
|
||||||
readonly ACTION=\${2} MODULE=\${3} DIR=\${4} URL=\${5} REV=\${7} ONPULL=\${9} TEMP=.zdegit_\${RANDOM}
|
readonly ACTION=\${2} MODULE=\${3} DIR=\${4} URL=\${5} REV=\${7} ONPULL=\${9} TEMP=.zdegit_\${sysparams[pid]}
|
||||||
readonly TARBALL_TARGET=\${DIR}/\${TEMP}_tarball.tar.gz INFO_TARGET=\${DIR}/.zdegit
|
readonly TARBALL_TARGET=\${DIR}/\${TEMP}_tarball.tar.gz INFO_TARGET=\${DIR}/.zdegit
|
||||||
|
|
||||||
print_error() {
|
print_error() {
|
||||||
|
|
Loading…
Reference in a new issue