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
5f675b0c67 [WIP] Add more completion settings 2013-11-29 20:48:38 -05:00
14 changed files with 96 additions and 76 deletions

View File

@ -9,7 +9,8 @@ Installation
------------
Prezto will work with any recent release of Zsh, but the minimum recommended
version is 4.3.11.
version is 4.3.11. Unfortunately, [Cygwin][9] is not supported due to
non-standard core utilities.
1. Launch Zsh:
@ -36,7 +37,7 @@ version is 4.3.11.
### Troubleshooting
If you are not able to find certain commands after switching to *Prezto*,
modify the `PATH` variable in *~/.zprofile* then open a new Zsh terminal
modify the `PATH` variable in *~/.zshenv* then open a new Zsh terminal
window or tab.
Updating
@ -85,8 +86,7 @@ License
(The MIT License)
Copyright (c) 2009-2011 Robby Russell and contributors.
Copyright (c) 2011-2014 Sorin Ionescu and contributors.
Copyright (c) 2009-2014 Sorin Ionescu and contributors.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
@ -114,4 +114,5 @@ SOFTWARE.
[6]: http://gitref.org
[7]: http://www.bash2zsh.com/zsh_refcard/refcard.pdf
[8]: http://grml.org/zsh/zsh-lovers.html
[9]: http://www.cygwin.com

View File

@ -25,7 +25,7 @@ unset min_zsh_version
function pmodload {
local -a pmodules
local pmodule
local pfunction_glob='^([_.]*|prompt_*_setup|README*)(-.N:t)'
local pfunction_glob='^([_.]*|prompt_*_setup|README*)(.N:t)'
# $argv is overridden in the anonymous function.
pmodules=("$argv[@]")

View File

@ -61,6 +61,44 @@ zstyle ':completion:*' format ' %F{yellow}-- %d --%f'
zstyle ':completion:*' group-name ''
zstyle ':completion:*' verbose yes
# Don't autoexpand until nothing else has changed on line
zstyle ':completion:*' keep-prefix true
zstyle ':completion:*' expand prefix suffix
# zstyle ':completion:*' suffix true
# Complete ..
zstyle ':completion:*' special-dirs ..
# Do not select the current directory when executing cd ../<tab>.
zstyle ':completion:*:cd:*' ignore-parents parent pwd
# Do not perform completion on pastes containing tabs.
zstyle ':completion:*' insert-tab pending
# Some completion settings
# zstyle ':completion:*:match:*' match-original only
zstyle ':completion:*' insert-unambiguous true
# Expand partial paths.
# zstyle ':completion:*' squeeze-slashes true
# Rehash when failing to find the executable.
zstyle ':completion:*' rehash true
# Add a recent director listing completion using the cdr command
autoload -Uz chpwd_recent_dirs cdr add-zsh-hook
add-zsh-hook chpwd chpwd_recent_dirs
zstyle ':completion:*:*:cdr:*:*' menu selection
zstyle ':chpwd:*' recent-dirs-default true
zstyle ':completion:*' recent-dirs-insert both
zstyle ':chpwd:*' recent-dirs-prune parent
# Fuzzy match mistyped completions.
zstyle ':completion:*' completer _complete _match _approximate
zstyle ':completion:*:match:*' original only

View File

@ -107,39 +107,30 @@ function editor-info {
}
zle -N editor-info
# Updates editor information when the keymap changes.
function zle-keymap-select {
# Ensures that $terminfo values are valid and updates editor information when
# the keymap changes.
function zle-keymap-select zle-line-init zle-line-finish {
# The terminal must be in application mode when ZLE is active for $terminfo
# values to be valid.
if (( $+terminfo[smkx] && $+terminfo[rmkx] )); then
case "$0" in
(zle-line-init)
# Enable terminal application mode.
echoti smkx
;;
(zle-line-finish)
# Disable terminal application mode.
echoti rmkx
;;
esac
fi
# Update editor information.
zle editor-info
}
zle -N zle-keymap-select
# Enables terminal application mode and updates editor information.
function zle-line-init {
# The terminal must be in application mode when ZLE is active for $terminfo
# values to be valid.
if (( $+terminfo[smkx] )); then
# Enable terminal application mode.
echoti smkx
fi
# Update editor information.
zle editor-info
}
zle -N zle-line-init
# Disables terminal application mode and updates editor information.
function zle-line-finish {
# The terminal must be in application mode when ZLE is active for $terminfo
# values to be valid.
if (( $+terminfo[rmkx] )); then
# Disable terminal application mode.
echoti rmkx
fi
# Update editor information.
zle editor-info
}
zle -N zle-line-finish
zle -N zle-line-init
# Toggles emacs overwrite mode and updates editor information.
function overwrite-mode {

View File

@ -12,7 +12,7 @@ fi
# Set the default paths to gpg-agent files.
_gpg_agent_conf="$HOME/.gnupg/gpg-agent.conf"
_gpg_agent_env="${TMPDIR:-/tmp}/gpg-agent.env"
_gpg_agent_env="$TMPDIR/gpg-agent.env"
# Start gpg-agent if not started.
if ! ps -U "$USER" -o ucomm | grep -q gpg-agent; then

View File

@ -6,7 +6,7 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
local tmp="${TMPDIR:-/tmp}/pacman-disowned-$UID-$$"
local tmp="$TMPDIR/pacman-disowned-$UID-$$"
local db="$tmp/db"
local fs="$tmp/fs"

View File

@ -12,10 +12,7 @@ pacman --query --explicit --info \
FS=":"
}
/^Name/ {
printf "\033[0;01m" $2 "\033[0m"
}
/^Version/ {
print " \033[1;32m" $2 "\033[0m"
print $2
}
/^Description/ {
print $2

View File

@ -27,9 +27,6 @@ if (( $+commands[$_pacman_frontend] )); then
if [[ -s "${0:h}/${_pacman_frontend}.zsh" ]]; then
source "${0:h}/${_pacman_frontend}.zsh"
fi
else
_pacman_frontend='pacman'
_pacman_sudo='sudo '
fi
#
@ -37,49 +34,49 @@ fi
#
# Pacman.
alias pac="${_pacman_frontend}"
alias pac='pacman'
# Installs packages from repositories.
alias paci="${_pacman_sudo}${_pacman_frontend} --sync"
alias paci='sudo pacman --sync'
# Installs packages from files.
alias pacI="${_pacman_sudo}${_pacman_frontend} --upgrade"
alias pacI='sudo pacman --upgrade'
# Removes packages and unneeded dependencies.
alias pacx="${_pacman_sudo}${_pacman_frontend} --remove"
alias pacx='sudo pacman --remove'
# Removes packages, their configuration, and unneeded dependencies.
alias pacX="${_pacman_sudo}${_pacman_frontend} --remove --nosave --recursive"
alias pacX='sudo pacman --remove --nosave --recursive'
# Displays information about a package from the repositories.
alias pacq="${_pacman_frontend} --sync --info"
alias pacq='pacman --sync --info'
# Displays information about a package from the local database.
alias pacQ="${_pacman_frontend} --query --info"
alias pacQ='pacman --query --info'
# Searches for packages in the repositories.
alias pacs="${_pacman_frontend} --sync --search"
alias pacs='pacman --sync --search'
# Searches for packages in the local database.
alias pacS="${_pacman_frontend} --query --search"
alias pacS='pacman --query --search'
# Lists orphan packages.
alias pacman-list-orphans="${_pacman_frontend} --query --deps --unrequired"
alias pacman-list-orphans='sudo pacman --query --deps --unrequired'
# Removes orphan packages.
alias pacman-remove-orphans="${_pacman_sudo}${_pacman_frontend} --remove --recursive \$(${_pacman_frontend} --quiet --query --deps --unrequired)"
alias pacman-remove-orphans='sudo pacman --remove --recursive $(pacman --quiet --query --deps --unrequired)'
# Synchronizes the local package and Arch Build System databases against the
# repositories.
if (( $+commands[abs] )); then
alias pacu="${_pacman_sudo}${_pacman_frontend} --sync --refresh && ${_pacman_sudo}abs"
alias pacu='sudo pacman --sync --refresh && sudo abs'
else
alias pacu="${_pacman_sudo}${_pacman_frontend} --sync --refresh"
alias pacu='sudo pacman --sync --refresh'
fi
# Synchronizes the local package database against the repositories then
# upgrades outdated packages.
alias pacU="${_pacman_sudo}${_pacman_frontend} --sync --refresh --sysupgrade"
alias pacU='sudo pacman --sync --refresh --sysupgrade'
unset _pacman_{frontend,sudo}
unset _pacman_frontend

View File

@ -11,9 +11,9 @@
# Disable color.
if ! zstyle -t ':prezto:module:pacman:yaourt' color; then
alias pacman='yaourt --nocolor'
alias pacman='pacman --nocolor'
fi
# Manages .pac* files.
alias pacc='yaourt -C'
alias pacc='pacman -C'

View File

@ -43,14 +43,14 @@ alias rb='ruby'
# Bundler
if (( $+commands[bundle] )); then
alias rbb='bundle'
alias rbbe='bundle exec'
alias rbbi='bundle install --path vendor/bundle'
alias rbbl='bundle list'
alias rbbo='bundle open'
alias rbbp='bundle package'
alias rbbu='bundle update'
alias rbbe='rbb exec'
alias rbbi='rbb install'
alias rbbl='rbb list'
alias rbbo='rbb open'
alias rbbp='rbb package'
alias rbbu='rbb update'
alias rbbI='rbbi \
&& bundle package \
&& rbb package \
&& print .bundle >>! .gitignore \
&& print vendor/assets >>! .gitignore \
&& print vendor/bundle >>! .gitignore \

View File

@ -14,10 +14,10 @@ fi
_ssh_dir="$HOME/.ssh"
# Set the path to the environment file if not set by another module.
_ssh_agent_env="${_ssh_agent_env:-${TMPDIR:-/tmp}/ssh-agent.env}"
_ssh_agent_env="${_ssh_agent_env:-$TMPDIR/ssh-agent.env}"
# Set the path to the persistent authentication socket.
_ssh_agent_sock="${TMPDIR:-/tmp}/ssh-agent.sock"
_ssh_agent_sock="$TMPDIR/ssh-agent.sock"
# Start ssh-agent if not started.
if [[ ! -S "$SSH_AUTH_SOCK" ]]; then

View File

@ -6,7 +6,7 @@
#
# Return if requirements are not found.
if [[ "$TERM" == (dumb|linux|*bsd*) ]]; then
if [[ "$TERM" == 'dumb' ]]; then
return 1
fi

View File

@ -104,10 +104,6 @@ alias sl='ls' # I often screw this up.
# Mac OS X Everywhere
if [[ "$OSTYPE" == darwin* ]]; then
alias o='open'
elif [[ "$OSTYPE" == cygwin* ]]; then
alias o='cygstart'
alias pbcopy='tee > /dev/clipboard'
alias pbpaste='cat /dev/clipboard'
else
alias o='xdg-open'

View File

@ -6,7 +6,7 @@
#
# Ensure that a non-login, non-interactive shell has a defined environment.
if [[ "$SHLVL" -eq 1 && ! -o LOGIN && -s "${ZDOTDIR:-$HOME}/.zprofile" ]]; then
if [[ "$SHLVL" -eq 1 && ! -o LOGIN ]]; then
source "${ZDOTDIR:-$HOME}/.zprofile"
fi