1
0
mirror of https://github.com/dcarrillo/prezto.git synced 2025-07-01 18:39:26 +00:00

Compare commits

..

1 Commits

Author SHA1 Message Date
5ecbb49630 Add update module 2013-08-19 11:08:27 -04:00
10 changed files with 118 additions and 33 deletions

View File

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

View File

@ -31,7 +31,7 @@ function pmodload {
pmodules=("$argv[@]")
# Add functions to $fpath.
fpath=(${pmodules:+$PREZTO/modules/${^pmodules}/functions(/FN)} $fpath)
fpath=(${pmodules:+${ZDOTDIR:-$HOME}/.zprezto/modules/${^pmodules}/functions(/FN)} $fpath)
function {
local pfunction
@ -40,7 +40,7 @@ function pmodload {
setopt LOCAL_OPTIONS EXTENDED_GLOB
# Load Prezto functions.
for pfunction in $PREZTO/modules/${^pmodules}/functions/$~pfunction_glob; do
for pfunction in ${ZDOTDIR:-$HOME}/.zprezto/modules/${^pmodules}/functions/$~pfunction_glob; do
autoload -Uz "$pfunction"
done
}
@ -49,19 +49,19 @@ function pmodload {
for pmodule in "$pmodules[@]"; do
if zstyle -t ":prezto:module:$pmodule" loaded 'yes' 'no'; then
continue
elif [[ ! -d "$PREZTO/modules/$pmodule" ]]; then
elif [[ ! -d "${ZDOTDIR:-$HOME}/.zprezto/modules/$pmodule" ]]; then
print "$0: no such module: $pmodule" >&2
continue
else
if [[ -s "$PREZTO/modules/$pmodule/init.zsh" ]]; then
source "$PREZTO/modules/$pmodule/init.zsh"
if [[ -s "${ZDOTDIR:-$HOME}/.zprezto/modules/$pmodule/init.zsh" ]]; then
source "${ZDOTDIR:-$HOME}/.zprezto/modules/$pmodule/init.zsh"
fi
if (( $? == 0 )); then
zstyle ":prezto:module:$pmodule" loaded 'yes'
else
# Remove the $fpath entry.
fpath[(r)$PREZTO/modules/${pmodule}/functions]=()
fpath[(r)${ZDOTDIR:-$HOME}/.zprezto/modules/${pmodule}/functions]=()
function {
local pfunction
@ -71,7 +71,7 @@ function pmodload {
setopt LOCAL_OPTIONS EXTENDED_GLOB
# Unload Prezto functions.
for pfunction in $PREZTO/modules/$pmodule/functions/$~pfunction_glob; do
for pfunction in ${ZDOTDIR:-$HOME}/.zprezto/modules/$pmodule/functions/$~pfunction_glob; do
unfunction "$pfunction"
done
}
@ -87,8 +87,8 @@ function pmodload {
#
# Source the Prezto configuration file.
if [[ -s "$ZDOTDIR/.zpreztorc" ]]; then
source "$ZDOTDIR/.zpreztorc"
if [[ -s "${ZDOTDIR:-$HOME}/.zpreztorc" ]]; then
source "${ZDOTDIR:-$HOME}/.zpreztorc"
fi
# 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.
zstyle ':completion::complete:*' use-cache on
zstyle ':completion::complete:*' cache-path "$ZDOTDIR/.zcompcache"
zstyle ':completion::complete:*' cache-path "${ZDOTDIR:-$HOME}/.zcompcache"
# Case-insensitive (all), partial-word, and then substring completion.
if zstyle -t ':prezto:module:completion:*' case-sensitive; then

View File

@ -10,7 +10,7 @@
# Variables
#
HISTFILE="$ZDOTDIR/.zhistory" # The path to the history file.
HISTFILE="${ZDOTDIR:-$HOME}/.zhistory" # The path to the history file.
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.

View File

@ -0,0 +1,54 @@
#
# Updates Prezto to the latest version.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
local remote_name
local remote_branch
local auto_commit
local use_color
zstyle -s ':prezto:module:update:remote' name 'remote_name'
zstyle -s ':prezto:module:update:remote' branch 'remote_branch'
zstyle -t ':prezto:module:update' auto-commit && auto_commit='yes'
zstyle -t ':prezto:module:update:*' color && use_color='yes'
if ! git \
--git-dir="$(cd "${ZDOTDIR:-$HOME}/.zprezto" && git-root)" \
--work-tree="${ZDOTDIR:-$HOME}/.zprezto" \
pull \
$(! is-true "$auto_commit" && print '--no-commit') \
--strategy=recursive \
-X ours \
"${remote_name:-origin}" \
"${remote_branch:-master}" 2> /dev/null
then
is-true "$use_color" && printf "$FG[red]"
print 'There was an error updating. Try again later?'
is-true "$use_color" && printf "$FG[none]"
return 1
fi
is-true "$use_color" && printf "$FG[green]"
printf '%s' \
'________ _____
___ __ \___________________ /______
__ /_/ /_ ___/ _ \__ /_ __/ __ \
_ ____/_ / / __/_ /_/ /_ / /_/ /
/_/ /_/ \___/_____/\__/ \____/
'
is-true "$use_color" && printf "$FG[cyan]"
print
print 'Prezto has been updated to the latest version.'
print 'Follow me on GitHub at https://github.com/sorin-ionescu/prezto.'
if ! is-true "$auto_commit"; then
is-true "$use_color" && printf "$FG[yellow]"
print
print 'Updates must be manually commited.'
fi
print
is-true "$use_color" && printf "$FG[none]"
return 0

24
modules/update/init.zsh Normal file
View File

@ -0,0 +1,24 @@
#
# Updates Prezto periodically.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
_updater_date_file="$HOME/.zupdate"
if zstyle -t ':prezto:module:update' auto-update; then
zstyle -s ':prezto:module:update' frequency '_updater_check_frequency'
# Initialize the update reminder.
if [[ ! -f "$_updater_date_file" ]]; then
touch "$_updater_date_file"
fi
# Check for update every 7 days.
if [[ "$_updater_date_file"(Nm+$_updater_check_frequency) ]]; then
pupdate && touch "$_updater_date_file"
fi
fi
unset _updater_{date_file,check_frequency}

View File

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

View File

@ -141,3 +141,22 @@ zstyle ':prezto:module:terminal' auto-title 'yes'
# Auto start a session when Zsh is launched in a SSH connection.
# zstyle ':prezto:module:tmux:auto-start' remote 'yes'
#
# Update
#
# Auto update to the latest version.
zstyle ':prezto:module:update' auto-update 'no'
# Auto commit updated files without review.
zstyle ':prezto:module:update' auto-commit 'no'
# Set the update frequency in days.
zstyle ':prezto:module:update' check-frequency '7'
# Set the name of the update remote.
zstyle ':prezto:module:update:remote' name 'origin'
# Set the branch of the update remote.
zstyle ':prezto:module:update:remote' branch 'master'

View File

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

View File

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