Simplify the use of ZDOTDIR

This commit is contained in:
Sorin Ionescu 2013-05-20 14:50:34 -04:00
parent 773ca7ee50
commit 5c7bd2009c
7 changed files with 33 additions and 21 deletions

View file

@ -15,23 +15,28 @@ version is 4.3.10.
zsh zsh
2. Clone the repository: 2. Set the path to the Prezto installation directory:
git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto" ZDOTDIR="${ZDOTDIR:-$HOME}"
PREZTO="$ZDOTDIR/.zprezto"
3. Create a new Zsh configuration by copying the Zsh configuration files 3. Clone the repository:
git clone --recursive https://github.com/sorin-ionescu/prezto.git "$PREZTO"
4. Create a new Zsh configuration by copying the Zsh configuration files
provided: provided:
setopt EXTENDED_GLOB setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do for rcfile in "$PREZTO/runcoms/^README.md(.N); do
ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}" ln -s "$rcfile" "${ZDOTDIR}/.${rcfile:t}"
done done
4. Set Zsh as your default shell: 5. Set Zsh as your default shell:
chsh -s /bin/zsh chsh -s /bin/zsh
5. Open a new Zsh terminal window or tab. 6. Open a new Zsh terminal window or tab.
### Troubleshooting ### Troubleshooting

View file

@ -31,7 +31,7 @@ function pmodload {
pmodules=("$argv[@]") pmodules=("$argv[@]")
# Add functions to $fpath. # Add functions to $fpath.
fpath=(${pmodules:+${ZDOTDIR:-$HOME}/.zprezto/modules/${^pmodules}/functions(/FN)} $fpath) fpath=(${pmodules:+$PREZTO/modules/${^pmodules}/functions(/FN)} $fpath)
function { function {
local pfunction local pfunction
@ -40,7 +40,7 @@ function pmodload {
setopt LOCAL_OPTIONS EXTENDED_GLOB setopt LOCAL_OPTIONS EXTENDED_GLOB
# Load Prezto functions. # Load Prezto functions.
for pfunction in ${ZDOTDIR:-$HOME}/.zprezto/modules/${^pmodules}/functions/$~pfunction_glob; do for pfunction in $PREZTO/modules/${^pmodules}/functions/$~pfunction_glob; do
autoload -Uz "$pfunction" autoload -Uz "$pfunction"
done done
} }
@ -49,19 +49,19 @@ function pmodload {
for pmodule in "$pmodules[@]"; do for pmodule in "$pmodules[@]"; do
if zstyle -t ":prezto:module:$pmodule" loaded 'yes' 'no'; then if zstyle -t ":prezto:module:$pmodule" loaded 'yes' 'no'; then
continue continue
elif [[ ! -d "${ZDOTDIR:-$HOME}/.zprezto/modules/$pmodule" ]]; then elif [[ ! -d "$PREZTO/modules/$pmodule" ]]; then
print "$0: no such module: $pmodule" >&2 print "$0: no such module: $pmodule" >&2
continue continue
else else
if [[ -s "${ZDOTDIR:-$HOME}/.zprezto/modules/$pmodule/init.zsh" ]]; then if [[ -s "$PREZTO/modules/$pmodule/init.zsh" ]]; then
source "${ZDOTDIR:-$HOME}/.zprezto/modules/$pmodule/init.zsh" source "$PREZTO/modules/$pmodule/init.zsh"
fi fi
if (( $? == 0 )); then if (( $? == 0 )); then
zstyle ":prezto:module:$pmodule" loaded 'yes' zstyle ":prezto:module:$pmodule" loaded 'yes'
else else
# Remove the $fpath entry. # Remove the $fpath entry.
fpath[(r)${ZDOTDIR:-$HOME}/.zprezto/modules/${pmodule}/functions]=() fpath[(r)$PREZTO/modules/${pmodule}/functions]=()
function { function {
local pfunction local pfunction
@ -71,7 +71,7 @@ function pmodload {
setopt LOCAL_OPTIONS EXTENDED_GLOB setopt LOCAL_OPTIONS EXTENDED_GLOB
# Unload Prezto functions. # Unload Prezto functions.
for pfunction in ${ZDOTDIR:-$HOME}/.zprezto/modules/$pmodule/functions/$~pfunction_glob; do for pfunction in $PREZTO/modules/$pmodule/functions/$~pfunction_glob; do
unfunction "$pfunction" unfunction "$pfunction"
done done
} }
@ -87,8 +87,8 @@ function pmodload {
# #
# Source the Prezto configuration file. # Source the Prezto configuration file.
if [[ -s "${ZDOTDIR:-$HOME}/.zpreztorc" ]]; then if [[ -s "$ZDOTDIR/.zpreztorc" ]]; then
source "${ZDOTDIR:-$HOME}/.zpreztorc" source "$ZDOTDIR/.zpreztorc"
fi fi
# Disable color and theme in dumb terminals. # Disable color and theme in dumb terminals.

View file

@ -36,7 +36,7 @@ unsetopt FLOW_CONTROL # Disable start/stop characters in shell editor.
# Use caching to make completion for cammands such as dpkg and apt usable. # Use caching to make completion for cammands such as dpkg and apt usable.
zstyle ':completion::complete:*' use-cache on zstyle ':completion::complete:*' use-cache on
zstyle ':completion::complete:*' cache-path "${ZDOTDIR:-$HOME}/.zcompcache" zstyle ':completion::complete:*' cache-path "$ZDOTDIR/.zcompcache"
# Case-insensitive (all), partial-word, and then substring completion. # Case-insensitive (all), partial-word, and then substring completion.
if zstyle -t ':prezto:module:completion:*' case-sensitive; then if zstyle -t ':prezto:module:completion:*' case-sensitive; then

View file

@ -10,7 +10,7 @@
# Variables # Variables
# #
HISTFILE="${ZDOTDIR:-$HOME}/.zhistory" # The path to the history file. HISTFILE="$ZDOTDIR/.zhistory" # The path to the history file.
HISTSIZE=10000 # The maximum number of events to save in the internal history. HISTSIZE=10000 # The maximum number of events to save in the internal history.
SAVEHIST=10000 # The maximum number of events to save in the history file. SAVEHIST=10000 # The maximum number of events to save in the history file.

View file

@ -8,7 +8,7 @@
# Execute code that does not affect the current session in the background. # Execute code that does not affect the current session in the background.
{ {
# Compile the completion dump to increase startup speed. # Compile the completion dump to increase startup speed.
zcompdump="${ZDOTDIR:-$HOME}/.zcompdump" zcompdump="$ZDOTDIR/.zcompdump"
if [[ -s "$zcompdump" && (! -s "${zcompdump}.zwc" || "$zcompdump" -nt "${zcompdump}.zwc") ]]; then if [[ -s "$zcompdump" && (! -s "${zcompdump}.zwc" || "$zcompdump" -nt "${zcompdump}.zwc") ]]; then
zcompile "$zcompdump" zcompile "$zcompdump"
fi fi

View file

@ -74,3 +74,10 @@ if [[ ! -d "$TMPPREFIX" ]]; then
mkdir -p "$TMPPREFIX" mkdir -p "$TMPPREFIX"
fi fi
#
# Zsh
#
ZDOTDIR="${ZDOTDIR:-$HOME}"
PREZTO="$ZDOTDIR/.zprezto"

View file

@ -6,8 +6,8 @@
# #
# Source Prezto. # Source Prezto.
if [[ -s "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" ]]; then if [[ -s "$PREZTO/init.zsh" ]]; then
source "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" source "$PREZTO/init.zsh"
fi fi
# Customize to your needs... # Customize to your needs...