1
0
Fork 0

Merge pull request from sorin-ionescu/master

merge head
This commit is contained in:
Alex Seeholzer 2018-06-01 10:22:04 +02:00 committed by GitHub
commit d92738b310
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
40 changed files with 148 additions and 109 deletions

View file

@ -32,7 +32,7 @@ there are a number of additional things to keep in mind.
- Prefer `zstyle` over environment variables for configuration.
- Prefer (( ... )) over [[ ... ]] for arithmetic expression.
- Use the function keyword to define functions.
- The 80 character hard limit can be waved for readability.
- The 80 character hard limit can be waived for readability.
#### Using an Alternative zprezto Directory

View file

@ -20,7 +20,7 @@ Integrates zsh-autosuggestions into Prezto.
Command-Not-Found
-----------------
Loads the command-not-found tool on Debian-based distributions.
Loads the command-not-found tool on macOS or Debian-based distributions.
Completion
----------
@ -122,7 +122,7 @@ Initializes OCaml package management.
OSX
---
Defines Mac OS X aliases and functions.
Defines macOS aliases and functions.
Pacman
------
@ -132,7 +132,7 @@ Provides aliases and functions for the Pacman package manager and frontends.
Perl
----
Enables local Perl module installation on Mac OS X and defines alises.
Enables local Perl module installation on macOS and defines alises.
Prompt
------

View file

@ -46,6 +46,14 @@ To set the query found color, add the following line to *zpreztorc*:
zstyle ':prezto:module:autosuggestions:color' found ''
```
Troubleshooting
---------------
### Autosuggestions from previous sessions don't show up
For autosuggestions from previous shell sessions to work, please make sure you
also have the `history` module enabled.
Authors
-------

View file

@ -12,9 +12,9 @@ if [[ -s '/etc/zsh_command_not_found' ]]; then
# Load command-not-found on Arch Linux-based distributions.
elif [[ -s '/usr/share/doc/pkgfile/command-not-found.zsh' ]]; then
source '/usr/share/doc/pkgfile/command-not-found.zsh'
# Load command-not-found on Mac OS X when homebrew tap is configured.
elif (( $+commands[brew] )) && brew command command-not-found-init > /dev/null 2>&1; then
eval "$(brew command-not-found-init)"
# Load command-not-found on macOS when homebrew tap is configured.
elif [[ -s '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-command-not-found/handler.sh' ]]; then
source '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-command-not-found/handler.sh'
# Return if requirements are not found.
else
return 1

View file

@ -20,7 +20,9 @@ fi
#
cache_file="${TMPDIR:-/tmp}/prezto-fasd-cache.$UID.zsh"
if [[ "${commands[fasd]}" -nt "$cache_file" || ! -s "$cache_file" ]]; then
if [[ "${commands[fasd]}" -nt "$cache_file" \
|| "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" \
|| ! -s "$cache_file" ]]; then
# Set the base init arguments.
init_args=(zsh-hook)

View file

@ -82,6 +82,8 @@ zstyle ':prezto:module:git:alias' skip 'yes'
- `gcR` removes the *HEAD* commit.
- `gcs` displays various types of objects.
- `gcl` lists lost commits.
- `gcy` displays commits yet to be applied to upstream in the short format.
- `gcY` displays commits yet to be applied to upstream.
### Conflict
@ -231,7 +233,8 @@ zstyle ':prezto:module:git:alias' skip 'yes'
### Push
- `gp` updates remote refs along with associated objects.
- `gpf` forcefully updates remote refs along with associated objects.
- `gpf` forcefully updates remote refs along with associated objects using the safer `--force-with-lease` option.
- `gpF` forcefully updates remote refs along with associated objects using the riskier `--force` option.
- `gpa` updates remote branches along with associated objects.
- `gpA` updates remote branches and tags along with associated objects.
- `gpt` updates remote tags along with associated objects.
@ -288,6 +291,11 @@ zstyle ':prezto:module:git:alias' skip 'yes'
- `gSu` fetches and merges the latest changes for all submodule.
- `gSx` removes a submodule.
### Tag
- `gt` lists tags or creates tag.
- `gtl` lists tags matching pattern.
### Working directory
- `gws` displays working-tree status in the short format.
@ -307,9 +315,10 @@ zstyle ':prezto:module:git:alias' skip 'yes'
The following aliases may shadow system commands:
- `gpt` shadows the [GUID partition table maintenance utility][4].
- `gs` shadows the [Ghostscript][5].
- `gb` shadows the [GB][9].
- `gm` shadows the [Graphics Magick image processor][11].
- `gpt` shadows the [GUID partition table maintenance utility][4].
- `gs` shadows the [Ghostscript interpreter and previewer][5].
If you frequently use the above commands, you may wish to remove said aliases
from this module or to disable them at the bottom of the zshrc with `unalias`.
@ -434,9 +443,10 @@ Authors
[2]: https://github.com/defunkt/hub
[3]: https://www.github.com
[4]: http://www.manpagez.com/man/8/gpt/
[5]: http://linux.die.net/man/1/gs
[5]: http://www.manpagez.com/man/1/gs/
[6]: https://github.com/sorin-ionescu/prezto/issues
[7]: https://github.com/sorin-ionescu/prezto/issues/219
[8]: http://www.kernel.org/pub/software/scm/git/docs/git-log.html
[9]: https://getgb.io/
[10]: https://github.com/blog/985-git-io-github-url-shortener
[11]: http://www.manpagez.com/man/1/gm/

View file

@ -69,6 +69,8 @@ if ! zstyle -t ':prezto:module:git:alias' skip 'yes'; then
alias gcR='git reset "HEAD^"'
alias gcs='git show'
alias gcl='git-commit-lost'
alias gcy='git cherry -v --abbrev'
alias gcY='git cherry -v'
# Conflict (C)
alias gCl='git --no-pager diff --name-only --diff-filter=U'
@ -250,6 +252,10 @@ if ! zstyle -t ':prezto:module:git:alias' skip 'yes'; then
alias gSu='git submodule foreach git pull origin master'
alias gSx='git-submodule-remove'
# Tag (t)
alias gt='git tag'
alias gtl='git tag -l'
# Working Copy (w)
alias gws='git status --ignore-submodules=${_git_status_ignore_submodules} --short'
alias gwS='git status --ignore-submodules=${_git_status_ignore_submodules}'

View file

@ -8,7 +8,7 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
return 1
fi
@ -21,7 +21,7 @@ _arguments -C -s -S \
case "$state" in
(remote)
remotes=($(git config --get-regexp 'remote.*.url' | cut -d. -f2))
remotes=($(command git config --get-regexp 'remote.*.url' | cut -d. -f2))
_describe -t branch 'remotes' remotes && ret=0
;;
@ -29,7 +29,7 @@ case "$state" in
remote="$words[(($CURRENT - 1))]"
branches_or_tags=($(
git ls-remote --heads --tags "$remote" 2> /dev/null | cut -f2
command git ls-remote --heads --tags "$remote" 2> /dev/null | cut -f2
))
branches=(HEAD ${${(M)branches_or_tags[@]##refs/heads/?##}##refs/heads/})
@ -39,7 +39,7 @@ case "$state" in
_describe -t tag 'tags' tags && ret=0
;;
(file)
files=(${(0)"$(_call_program files git ls-files -z --exclude-standard 2> /dev/null)"})
files=(${(0)"$(_call_program files command git ls-files -z --exclude-standard 2> /dev/null)"})
_wanted file expl 'file' _multi_parts - / files && ret=0
;;
esac

View file

@ -8,7 +8,7 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
return 1
fi

View file

@ -8,7 +8,7 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
return 1
fi
@ -25,7 +25,7 @@ case "$state" in
while IFS=$'\n' read submodule; do
submodules+=("$submodule")
done < <(
git config --file "$(git-root)/.gitmodules" --list \
command git config --file "$(git-root)/.gitmodules" --list \
| grep '.path=' \
| cut -d= -f2-
)

View file

@ -8,7 +8,7 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
return 1
fi
@ -18,7 +18,7 @@ local submodule
while IFS=$'\n' read submodule; do
submodules+=("$submodule")
done < <(
git config --file "$(git-root)/.gitmodules" --list \
command git config --file "$(git-root)/.gitmodules" --list \
| grep '.path=' \
| cut -d= -f2-
)

View file

@ -7,12 +7,12 @@
# function git-branch-current {
if ! git rev-parse 2> /dev/null; then
if ! command git rev-parse 2> /dev/null; then
print "$0: not a repository: $PWD" >&2
return 1
fi
local ref="$(git symbolic-ref HEAD 2> /dev/null)"
local ref="$(command git symbolic-ref HEAD 2> /dev/null)"
if [[ -n "$ref" ]]; then
print "${ref#refs/heads/}"

View file

@ -7,15 +7,15 @@
# function git-commit-lost {
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
print "$0: not a repository work tree: $PWD" >&2
return 1
fi
git fsck 2> /dev/null \
command git fsck 2> /dev/null \
| grep "^dangling commit" \
| awk '{print $3}' \
| git log \
| command git log \
--date-order \
--no-walk \
--stdin \

View file

@ -7,7 +7,7 @@
# function git-dir {
local git_dir="${$(git rev-parse --git-dir):A}"
local git_dir="${$(command git rev-parse --git-dir):A}"
if [[ -n "$git_dir" ]]; then
print "$git_dir"

View file

@ -7,7 +7,7 @@
# function git-hub-browse {
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
print "$0: not a repository work tree: $PWD" >&2
return 1
fi
@ -15,7 +15,7 @@ fi
local remotes remote references reference file url
remote="${1:-origin}"
remotes=($(git config --get-regexp 'remote.*.url' | cut -d. -f2))
remotes=($(command git config --get-regexp 'remote.*.url' | cut -d. -f2))
if (( $remotes[(i)$remote] == $#remotes + 1 )); then
print "$0: remote not found: $remote" >&2
@ -23,14 +23,14 @@ if (( $remotes[(i)$remote] == $#remotes + 1 )); then
fi
url=$(
git config --get "remote.${remote}.url" \
command git config --get "remote.${remote}.url" \
| sed -En "s/(git|https?)(@|:\/\/)github.com(:|\/)(.+)\/(.+).git/https:\/\/github.com\/\4\/\5/p"
)
reference="${${2:-$(git-branch-current)}:-HEAD}"
references=(
HEAD
${$(git ls-remote --heads --tags "$remote" | awk '{print $2}')##refs/(heads|tags)/}
${$(command git ls-remote --heads --tags "$remote" | awk '{print $2}')##refs/(heads|tags)/}
)
if (( $references[(i)$reference] == $#references + 1 )); then
@ -39,7 +39,7 @@ if (( $references[(i)$reference] == $#references + 1 )); then
fi
if [[ "$reference" == 'HEAD' ]]; then
reference="$(git rev-parse HEAD 2> /dev/null)"
reference="$(command git rev-parse HEAD 2> /dev/null)"
fi
file="$3"

View file

@ -178,15 +178,15 @@ function git-info {
typeset -gA git_info
# Return if not inside a Git repository work tree.
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
return 1
fi
if (( $# > 0 )); then
if [[ "$1" == [Oo][Nn] ]]; then
git config --bool prompt.showinfo true
command git config --bool prompt.showinfo true
elif [[ "$1" == [Oo][Ff][Ff] ]]; then
git config --bool prompt.showinfo false
command git config --bool prompt.showinfo false
else
print "usage: $0 [ on | off ]" >&2
fi
@ -194,7 +194,7 @@ function git-info {
fi
# Return if git-info is disabled.
if ! is-true "${$(git config --bool prompt.showinfo):-true}"; then
if ! is-true "${$(command git config --bool prompt.showinfo):-true}"; then
return 1
fi
@ -204,7 +204,7 @@ function git-info {
# Format commit.
zstyle -s ':prezto:module:git:info:commit' format 'commit_format'
if [[ -n "$commit_format" ]]; then
commit="$(git rev-parse HEAD 2> /dev/null)"
commit="$(command git rev-parse HEAD 2> /dev/null)"
if [[ -n "$commit" ]]; then
zformat -f commit_formatted "$commit_format" "c:$commit"
fi
@ -213,7 +213,7 @@ function git-info {
# Format stashed.
zstyle -s ':prezto:module:git:info:stashed' format 'stashed_format'
if [[ -n "$stashed_format" && -f "$(git-dir)/refs/stash" ]]; then
stashed="$(git stash list 2> /dev/null | wc -l | awk '{print $1}')"
stashed="$(command git stash list 2> /dev/null | wc -l | awk '{print $1}')"
if [[ -n "$stashed" ]]; then
zformat -f stashed_formatted "$stashed_format" "S:$stashed"
fi
@ -229,7 +229,7 @@ function git-info {
fi
# Get the branch.
branch="${$(git symbolic-ref HEAD 2> /dev/null)#refs/heads/}"
branch="${$(command git symbolic-ref HEAD 2> /dev/null)#refs/heads/}"
# Format branch.
zstyle -s ':prezto:module:git:info:branch' format 'branch_format'
@ -240,7 +240,7 @@ function git-info {
# Format position.
zstyle -s ':prezto:module:git:info:position' format 'position_format'
if [[ -z "$branch" && -n "$position_format" ]]; then
position="$(git describe --contains --all HEAD 2> /dev/null)"
position="$(command git describe --contains --all HEAD 2> /dev/null)"
if [[ -n "$position" ]]; then
zformat -f position_formatted "$position_format" "p:$position"
fi
@ -250,7 +250,7 @@ function git-info {
zstyle -s ':prezto:module:git:info:remote' format 'remote_format'
if [[ -n "$branch" && -n "$remote_format" ]]; then
# Gets the remote name.
remote_cmd='git rev-parse --symbolic-full-name --verify HEAD@{upstream}'
remote_cmd='command git rev-parse --symbolic-full-name --verify HEAD@{upstream}'
remote="${$(${(z)remote_cmd} 2> /dev/null)##refs/remotes/}"
if [[ -n "$remote" ]]; then
zformat -f remote_formatted "$remote_format" "R:$remote"
@ -261,7 +261,7 @@ function git-info {
zstyle -s ':prezto:module:git:info:behind' format 'behind_format'
if [[ -n "$branch" && ( -n "$ahead_format" || -n "$behind_format" ) ]]; then
# Gets the commit difference counts between local and remote.
ahead_and_behind_cmd='git rev-list --count --left-right HEAD...@{upstream}'
ahead_and_behind_cmd='command git rev-list --count --left-right HEAD...@{upstream}'
# Get ahead and behind counts.
ahead_and_behind="$(${(z)ahead_and_behind_cmd} 2> /dev/null)"
@ -290,7 +290,7 @@ function git-info {
if [[ -n "$indexed_format" ]]; then
((
indexed+=$(
git diff-index \
command git diff-index \
--no-ext-diff \
--name-only \
--cached \
@ -310,7 +310,7 @@ function git-info {
if [[ -n "$unindexed_format" ]]; then
((
unindexed+=$(
git diff-files \
command git diff-files \
--no-ext-diff \
--name-only \
--ignore-submodules=${ignore_submodules:-none} \
@ -328,7 +328,7 @@ function git-info {
if [[ -n "$untracked_format" ]]; then
((
untracked+=$(
git ls-files \
command git ls-files \
--other \
--exclude-standard \
2> /dev/null \
@ -343,7 +343,7 @@ function git-info {
(( dirty = indexed + unindexed + untracked ))
else
# Use porcelain status for easy parsing.
status_cmd="git status --porcelain --ignore-submodules=${ignore_submodules:-none}"
status_cmd="command git status --porcelain --ignore-submodules=${ignore_submodules:-none}"
# Get current status.
while IFS=$'\n' read line; do

View file

@ -7,7 +7,7 @@
# function git-root {
local root="$(git rev-parse --show-toplevel 2> /dev/null)"
local root="$(command git rev-parse --show-toplevel 2> /dev/null)"
if [[ -n "$root" ]]; then
print "$root"

View file

@ -7,7 +7,7 @@
# function git-stash-clear-interactive {
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
print "$0: not a repository work tree: $PWD" >&2
return 1
fi
@ -15,10 +15,10 @@ fi
local stashed
if [[ -f "$(git-dir)/refs/stash" ]]; then
stashed="$(git stash list 2> /dev/null | wc -l | awk '{print $1}')"
stashed="$(command git stash list 2> /dev/null | wc -l | awk '{print $1}')"
if (( $stashed > 0 )); then
if read -q "?Clear $stashed stashed state(s) [y/N]? "; then
git stash clear
command git stash clear
fi
fi
fi

View file

@ -7,15 +7,15 @@
# function git-stash-dropped {
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
print "$0: not a repository work tree: $PWD" >&2
return 1
fi
git fsck --unreachable 2> /dev/null \
command git fsck --unreachable 2> /dev/null \
| grep 'commit' \
| awk '{print $3}' \
| git log \
| command git log \
--pretty=format:${_git_log_oneline_format} \
--extended-regexp \
--grep="${1:-(WIP )?[Oo]n [^:]+:}" \

View file

@ -7,7 +7,7 @@
# function git-stash-recover {
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
print "$0: not a repository work tree: $PWD" >&2
return 1
fi
@ -15,8 +15,8 @@ fi
local commit
for commit in "$@"; do
git update-ref \
-m "$(git log -1 --pretty="format:%s" "$commit")" refs/stash "$commit"
command git update-ref \
-m "$(command git log -1 --pretty="format:%s" "$commit")" refs/stash "$commit"
done
# }

View file

@ -7,7 +7,7 @@
# function git-submodule-move {
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
print "$0: not a repository work tree: $PWD" >&2
return 1
elif [[ "$PWD" != "$(git-root)" ]]; then
@ -19,7 +19,7 @@ local src="$1"
local dst="$2"
local url
url="$(git config --file "$(git-root)/.gitmodules" --get "submodule.${src}.url")"
url="$(command git config --file "$(git-root)/.gitmodules" --get "submodule.${src}.url")"
if [[ -z "$url" ]]; then
print "$0: submodule not found: $src" >&2
@ -29,7 +29,7 @@ fi
mkdir -p "${dst:h}"
git-submodule-remove "$src"
git submodule add "$url" "$dst"
command git submodule add "$url" "$dst"
return 0

View file

@ -7,22 +7,22 @@
# function git-submodule-remove {
if ! is-true "$(git rev-parse --is-inside-work-tree 2> /dev/null)"; then
if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then
print "$0: not a repository work tree: $PWD" >&2
return 1
elif [[ "$PWD" != "$(git-root)" ]]; then
print "$0: must be run from the root of the work tree" >&2
return 1
elif ! git config --file .gitmodules --get "submodule.${1}.path" &>/dev/null; then
elif ! command git config --file .gitmodules --get "submodule.${1}.path" &> /dev/null; then
print "$0: submodule not found: $1" >&2
return 1
fi
git config --file "$(git-dir)/config" --remove-section "submodule.${1}" &>/dev/null
git config --file "$(git-root)/.gitmodules" --remove-section "submodule.${1}" &>/dev/null
git add .gitmodules
command git config --file "$(git-dir)/config" --remove-section "submodule.${1}" &> /dev/null
command git config --file "$(git-root)/.gitmodules" --remove-section "submodule.${1}" &> /dev/null
command git add .gitmodules
git rm --cached -rf "${1}"
command git rm --cached -rf "${1}"
rm -rf "${1}"
rm -rf "$(git-dir)/modules/${1}"

View file

@ -32,7 +32,9 @@ fi
if (( $+commands[npm] )); then
cache_file="${TMPDIR:-/tmp}/prezto-node-cache.$UID.zsh"
if [[ "$commands[npm]" -nt "$cache_file" || ! -s "$cache_file" ]]; then
if [[ "$commands[npm]" -nt "$cache_file" \
|| "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" \
|| ! -s "$cache_file" ]]; then
# npm is slow; cache its output.
npm completion >! "$cache_file" 2> /dev/null
fi

View file

@ -1,7 +1,7 @@
OSX
===
Defines [Mac OS X][1] aliases and functions.
Defines [macOS][1] aliases and functions.
Settings
--------
@ -34,8 +34,8 @@ Functions
- `tab` creates a new tab (works in both _Terminal_ and [_iTerm_][3]).
- `ql` previews files in Quick Look.
- `osx-rm-dir-metadata` deletes .DS\_Store, \_\_MACOSX cruft.
- `osx-ls-download-history` displays the Mac OS X download history.
- `osx-rm-download-history` deletes the Mac OS X download history.
- `osx-ls-download-history` displays the macOS download history.
- `osx-rm-download-history` deletes the macOS download history.
Authors
-------

View file

@ -1,5 +1,5 @@
#
# Displays the Mac OS X download history.
# Displays the macOS download history.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>

View file

@ -1,5 +1,5 @@
#
# Deletes the Mac OS X download history.
# Deletes the macOS download history.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>

View file

@ -1,5 +1,5 @@
#
# Defines Mac OS X aliases and functions.
# Defines macOS aliases and functions.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>

View file

@ -1,14 +1,14 @@
Perl
====
Enables local [Perl][1] module installation on Mac OS X and defines aliases.
Enables local [Perl][1] module installation on macOS and defines aliases.
Local Module Installation
-------------------------
Perl versions older than 5.14 do not support the local installation of Perl
modules natively. This module allows for local installation of Perl modules on
Mac OS X in *~/Library/Perl/5.12* by altering the environment.
macOS in *~/Library/Perl/5.12* by altering the environment.
### Usage

View file

@ -1,5 +1,5 @@
#
# Enables local Perl module installation on Mac OS X and defines aliases.
# Enables local Perl module installation on macOS and defines aliases.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
@ -43,7 +43,7 @@ if [[ "$OSTYPE" == darwin* ]]; then
perl_path="$HOME/Library/Perl/5.12"
if [[ -f "$perl_path/lib/perl5/local/lib.pm" ]]; then
if [[ ! -s "$cache_file" ]]; then
if [[ "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" || ! -s "$cache_file" ]]; then
perl -I$perl_path/lib/perl5 -Mlocal::lib=$perl_path >! "$cache_file"
fi

View file

@ -36,7 +36,7 @@ function prompt_smiley_precmd {
function prompt_smiley_setup {
unsetopt XTRACE KSH_ARRAYS
prompt_opts=(percent subst)
prompt_opts=(cr percent sp subst)
# Add hook for calling git-info before each command.
add-zsh-hook precmd prompt_smiley_precmd

View file

@ -19,7 +19,7 @@ elif (( $+commands[pyenv] )); then
eval "$(pyenv init -)"
# Prepend PEP 370 per user site packages directory, which defaults to
# ~/Library/Python on Mac OS X and ~/.local elsewhere, to PATH. The
# ~/Library/Python on macOS and ~/.local elsewhere, to PATH. The
# path can be overridden using PYTHONUSERBASE.
else
if [[ -n "$PYTHONUSERBASE" ]]; then
@ -82,6 +82,7 @@ function _python-workon-cwd {
# Load auto workon cwd hook
if zstyle -t ':prezto:module:python:virtualenv' auto-switch 'yes'; then
# Auto workon when changing directory
autoload -Uz add-zsh-hook
add-zsh-hook chpwd _python-workon-cwd
fi
@ -93,7 +94,7 @@ if (( $+VIRTUALENVWRAPPER_VIRTUALENV || $+commands[virtualenv] )) && \
export WORKON_HOME="${WORKON_HOME:-$HOME/.virtualenvs}"
# Disable the virtualenv prompt.
VIRTUAL_ENV_DISABLE_PROMPT=1
export VIRTUAL_ENV_DISABLE_PROMPT=1
# Create a sorted array of available virtualenv related 'pyenv' commands to
# look for plugins of interest. Scanning shell '$path' isn't enough as they
@ -148,7 +149,9 @@ if (( $#commands[(i)pip(|[23])] )); then
# Detect and use one available from among 'pip', 'pip2', 'pip3' variants
pip_command="$commands[(i)pip(|[23])]"
if [[ "$pip_command" -nt "$cache_file" || ! -s "$cache_file" ]]; then
if [[ "$pip_command" -nt "$cache_file" \
|| "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" \
|| ! -s "$cache_file" ]]; then
# pip is slow; cache its output. And also support 'pip2', 'pip3' variants
$pip_command completion --zsh \
| sed -e "s|compctl -K [-_[:alnum:]]* pip|& pip2 pip3|" >! "$cache_file" 2> /dev/null

View file

@ -3,7 +3,7 @@ Rsync
Defines [rsync][1] aliases.
Mac OS X users are encouraged to use [Bombich's rsync][2], which has HFS+
macOS users are encouraged to use [Bombich's rsync][2], which has HFS+
enhancements.
Aliases

View file

@ -20,7 +20,7 @@ if grep -q 'xattrs' <(rsync --help 2>&1); then
_rsync_cmd="${_rsync_cmd} --acls --xattrs"
fi
# Mac OS X and HFS+ Enhancements
# macOS and HFS+ Enhancements
# http://help.bombich.com/kb/overview/credits#opensource
if [[ "$OSTYPE" == darwin* ]] && grep -q 'file-flags' <(rsync --help 2>&1); then
_rsync_cmd="${_rsync_cmd} --crtimes --fileflags --protect-decmpfs --force-change"

View file

@ -25,9 +25,14 @@ elif (( $+commands[rbenv] )); then
# Load package manager installed chruby into the shell session.
elif (( $+commands[chruby-exec] )); then
source "${commands[chruby-exec]:h:h}/share/chruby/chruby.sh"
if (( ! $+functions[chruby] )); then
source "${commands[chruby-exec]:h:h}/share/chruby/chruby.sh"
fi
if zstyle -t ':prezto:module:ruby:chruby' auto-switch; then
source "${commands[chruby-exec]:h:h}/share/chruby/auto.sh"
if (( ! $+functions[chruby_auto] )); then
source "${commands[chruby-exec]:h:h}/share/chruby/auto.sh"
fi
# If a default Ruby is set, switch to it.
chruby_auto

View file

@ -62,7 +62,7 @@ Aliases
Caveats
-------
On Mac OS X, launching tmux can cause the error **launch_msg(...): Socket is not
On macOS, launching tmux can cause the error **launch_msg(...): Socket is not
connected** to be displayed, which can be fixed by installing
[reattach-to-user-namespace][3], available in [Homebrew][4], and adding the
following to *tmux.conf*:
@ -71,7 +71,7 @@ following to *tmux.conf*:
set-option -g default-command "reattach-to-user-namespace -l $SHELL -l"
```
Furthermore, tmux is known to cause **kernel panics** on Mac OS X. A discussion
Furthermore, tmux is known to cause **kernel panics** on macOS. A discussion
about this and Prezto has already been [opened][2].
Authors

View file

@ -23,7 +23,7 @@ if ([[ "$TERM_PROGRAM" = 'iTerm.app' ]] && \
_tmux_iterm_integration='-CC'
fi
if [[ -z "$TMUX" && -z "$EMACS" && -z "$VIM" && -z "$INSIDE_EMACS" ]] && ( \
if [[ -z "$TMUX" && -z "$EMACS" && -z "$VIM" && -z "$INSIDE_EMACS" && -z "$VSCODE_PID" ]] && ( \
( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' remote ) ||
( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' local ) \
); then

View file

@ -17,7 +17,7 @@ function wdiff {
"$@" \
| sed 's/^\(@@\( [+-][[:digit:]]*,[[:digit:]]*\)\{2\} @@\)$/;5;6m\10m/g'
elif (( $+commands[git] )); then
git --no-pager diff --color=auto --no-ext-diff --no-index --color-words "$@"
command git --no-pager diff --color=auto --no-ext-diff --no-index --color-words "$@"
else
command wdiff "$@"
fi

View file

@ -76,10 +76,13 @@ if is-callable 'dircolors'; then
alias ls='ls --group-directories-first'
if zstyle -t ':prezto:module:utility:ls' color; then
if [[ -s "$HOME/.dir_colors" ]]; then
eval "$(dircolors --sh "$HOME/.dir_colors")"
else
eval "$(dircolors --sh)"
# Call dircolors to define colors if they're missing
if [[ -z "$LS_COLORS" ]]; then
if [[ -s "$HOME/.dir_colors" ]]; then
eval "$(dircolors --sh "$HOME/.dir_colors")"
else
eval "$(dircolors --sh)"
fi
fi
alias ls="${aliases[ls]:-ls} --color=auto"
@ -89,11 +92,15 @@ if is-callable 'dircolors'; then
else
# BSD Core Utilities
if zstyle -t ':prezto:module:utility:ls' color; then
# Define colors for BSD ls.
export LSCOLORS='exfxcxdxbxGxDxabagacad'
# Define colors for BSD ls if they're not already defined
if [[ -z "$LSCOLORS" ]]; then
export LSCOLORS='exfxcxdxbxGxDxabagacad'
fi
# Define colors for the completion system.
export LS_COLORS='di=34:ln=35:so=32:pi=33:ex=31:bd=36;01:cd=33;01:su=31;40;07:sg=36;40;07:tw=32;40;07:ow=33;40;07:'
# Define colors for the completion system if they're not already defined
if [[ -z "$LS_COLORS" ]]; then
export LS_COLORS='di=34:ln=35:so=32:pi=33:ex=31:bd=36;01:cd=33;01:su=31;40;07:sg=36;40;07:tw=32;40;07:ow=33;40;07:'
fi
alias ls="${aliases[ls]:-ls} -G"
else
@ -121,7 +128,7 @@ if zstyle -t ':prezto:module:utility:grep' color; then
alias grep="${aliases[grep]:-grep} --color=auto"
fi
# Mac OS X Everywhere
# macOS Everywhere
if [[ "$OSTYPE" == darwin* ]]; then
alias o='open'
elif [[ "$OSTYPE" == cygwin* ]]; then
@ -151,12 +158,7 @@ elif (( $+commands[wget] )); then
fi
# Resource Usage
if (( $+commands[pydf] )); then
alias df=pydf
else
alias df='df -kh'
fi
alias df='df -kh'
alias du='du -kh'
if [[ "$OSTYPE" == (darwin*|*bsd*) ]]; then

View file

@ -8,11 +8,12 @@
# Execute code only if STDERR is bound to a TTY.
[[ -o INTERACTIVE && -t 2 ]] && {
# Print the message.
cat <<-EOF
SAYINGS=(
"So long and thanks for all the fish.\n -- Douglas Adams"
"Good morning! And in case I don't see ya, good afternoon, good evening and goodnight.\n --Truman Burbank"
)
Thank you. Come again!
-- Dr. Apu Nahasapeemapetilon
EOF
# Print a randomly-chosen message:
echo $SAYINGS[$(($RANDOM % ${#SAYINGS} + 1))]
} >&2

View file

@ -97,7 +97,7 @@ zstyle ':prezto:module:editor' key-bindings 'vi'
# zstyle ':prezto:module:history-substring-search' globbing-flags ''
#
# OS X
# macOS
#
# Set the keyword used by `mand` to open man pages in Dash.app