mirror of
https://github.com/dcarrillo/prezto.git
synced 2025-07-01 20:59:26 +00:00
Compare commits
1 Commits
issue/656-
...
pull/582-t
Author | SHA1 | Date | |
---|---|---|---|
5e6adf89b9 |
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -7,6 +7,3 @@
|
||||
[submodule "modules/completion/external"]
|
||||
path = modules/completion/external
|
||||
url = https://github.com/zsh-users/zsh-completions.git
|
||||
[submodule "modules/z/external"]
|
||||
path = modules/z/external
|
||||
url = https://github.com/rupa/z.git
|
||||
|
@ -8,8 +8,8 @@ and prompt themes.
|
||||
Installation
|
||||
------------
|
||||
|
||||
Prezto will work with any recent release of Zsh, but the minimum required
|
||||
version is 4.3.17.
|
||||
Prezto will work with any recent release of Zsh, but the minimum recommended
|
||||
version is 4.3.11.
|
||||
|
||||
1. Launch Zsh:
|
||||
|
||||
|
2
init.zsh
2
init.zsh
@ -10,7 +10,7 @@
|
||||
#
|
||||
|
||||
# Check for the minimum supported version.
|
||||
min_zsh_version='4.3.17'
|
||||
min_zsh_version='4.3.11'
|
||||
if ! autoload -Uz is-at-least || ! is-at-least "$min_zsh_version"; then
|
||||
print "prezto: old shell detected, minimum required: $min_zsh_version" >&2
|
||||
return 1
|
||||
|
@ -102,10 +102,10 @@ Node.js
|
||||
|
||||
Provides utility functions for Node.js and loads npm completion.
|
||||
|
||||
OCaml
|
||||
Ocaml
|
||||
-----
|
||||
|
||||
Initializes OCaml package management.
|
||||
Initializes Ocaml package management.
|
||||
|
||||
OSX
|
||||
---
|
||||
|
@ -54,8 +54,8 @@ while (( $# > 0 )); do
|
||||
(*.Z) uncompress "$1" ;;
|
||||
(*.zip) unzip "$1" -d $extract_dir ;;
|
||||
(*.rar) unrar &> /dev/null \
|
||||
&& unrar x -ad "$1" \
|
||||
|| rar x -ad "$1" ;;
|
||||
&& unrar e -ad "$1" \
|
||||
|| rar e -ad "$1" ;;
|
||||
(*.7z) 7za x "$1" ;;
|
||||
(*.deb)
|
||||
mkdir -p "$extract_dir/control"
|
||||
|
Submodule modules/completion/external updated: 08afea0e23...1d6a2aa024
@ -116,7 +116,7 @@ zstyle ':completion:*:(rm|kill|diff):*' ignore-line other
|
||||
zstyle ':completion:*:rm:*' file-patterns '*:all-files'
|
||||
|
||||
# Kill
|
||||
zstyle ':completion:*:*:*:*:processes' command 'ps -u $USER -o pid,user,command -w'
|
||||
zstyle ':completion:*:*:*:*:processes' command 'ps -u $USER -o pid,user,comm -w'
|
||||
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;36=0=01'
|
||||
zstyle ':completion:*:*:kill:*' menu yes select
|
||||
zstyle ':completion:*:*:kill:*' force-list always
|
||||
|
@ -49,7 +49,8 @@ To indicate when the editor is completing, add the following to your
|
||||
zstyle ':prezto:module:editor:info:completing' format '...'
|
||||
|
||||
Then add `$editor_info[context]`, where context is *keymap*, *insert*, or
|
||||
*overwrite*, to `$PROMPT` or `$RPROMPT`.
|
||||
*overwrite*, to `$PROMPT` or `$RPROMPT` and call `editor-info` in the
|
||||
`prompt_name_preexec` hook function.
|
||||
|
||||
Authors
|
||||
-------
|
||||
|
@ -61,7 +61,7 @@ key_info=(
|
||||
# bindkey failure.
|
||||
for key in "${(k)key_info[@]}"; do
|
||||
if [[ -z "$key_info[$key]" ]]; then
|
||||
key_info[$key]='<27>'
|
||||
key_info["$key"]='<27>'
|
||||
fi
|
||||
done
|
||||
|
||||
|
39
modules/fasd/README.md
Normal file
39
modules/fasd/README.md
Normal file
@ -0,0 +1,39 @@
|
||||
Fasd
|
||||
====
|
||||
|
||||
[Fasd][1] is a command-line productivity booster, inspired by tools like
|
||||
[autojump][2], [z][3] and [v][4], it offers quick access to files and
|
||||
directories by keeping track of files and directories that were previously
|
||||
accessed.
|
||||
|
||||
For completion to work, this module must be loaded **after** the *completion*
|
||||
module.
|
||||
|
||||
The Prezto Fasd configuration differs from the default. The default aliases have
|
||||
been disabled.
|
||||
|
||||
Aliases
|
||||
-------
|
||||
|
||||
- `j` changes the current working directory interactively.
|
||||
|
||||
Completion
|
||||
----------
|
||||
|
||||
Type `,`, `f,`, `d,` in front of a comma-separated query or type `,,`, `,,f`,
|
||||
`,,d` at the end of a comma-separated query then hit <kbd>tab</kbd>.
|
||||
|
||||
Authors
|
||||
-------
|
||||
|
||||
*The authors of this module should be contacted via the [issue tracker][5].*
|
||||
|
||||
- [Wei Dai](https://github.com/clvv)
|
||||
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
||||
|
||||
[1]: https://github.com/clvv/fasd
|
||||
[2]: https://github.com/joelthelion/autojump
|
||||
[3]: https://github.com/rupa/z
|
||||
[4]: https://github.com/rupa/v
|
||||
[5]: https://github.com/sorin-ionescu/prezto/issues
|
||||
|
54
modules/fasd/init.zsh
Normal file
54
modules/fasd/init.zsh
Normal file
@ -0,0 +1,54 @@
|
||||
#
|
||||
# Maintains a frequently used file and directory list for fast access.
|
||||
#
|
||||
# Authors:
|
||||
# Wei Dai <x@wei23.net>
|
||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||
#
|
||||
|
||||
# Load dependencies.
|
||||
pmodload 'editor'
|
||||
|
||||
# Return if requirements are not found.
|
||||
if (( ! $+commands[fasd] )); then
|
||||
return 1
|
||||
fi
|
||||
|
||||
#
|
||||
# Initialization
|
||||
#
|
||||
|
||||
cache_file="${0:h}/cache.zsh"
|
||||
if [[ "${commands[fasd]}" -nt "$cache_file" || ! -s "$cache_file" ]]; then
|
||||
# Set the base init arguments.
|
||||
init_args=(zsh-hook)
|
||||
|
||||
# Set fasd completion init arguments, if applicable.
|
||||
if zstyle -t ':prezto:module:completion' loaded; then
|
||||
init_args+=(zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcomp-install)
|
||||
fi
|
||||
|
||||
# Cache init code.
|
||||
fasd --init "$init_args[@]" >! "$cache_file" 2> /dev/null
|
||||
fi
|
||||
|
||||
source "$cache_file"
|
||||
|
||||
unset cache_file init_args
|
||||
|
||||
function fasd_cd {
|
||||
local fasd_ret="$(fasd -d "$@")"
|
||||
if [[ -d "$fasd_ret" ]]; then
|
||||
cd "$fasd_ret"
|
||||
else
|
||||
print "$fasd_ret"
|
||||
fi
|
||||
}
|
||||
|
||||
#
|
||||
# Aliases
|
||||
#
|
||||
|
||||
# Changes the current working directory interactively.
|
||||
alias j='fasd_cd -i'
|
||||
|
@ -15,14 +15,11 @@ _gpg_agent_conf="$HOME/.gnupg/gpg-agent.conf"
|
||||
_gpg_agent_env="${TMPDIR:-/tmp}/gpg-agent.env"
|
||||
|
||||
# Start gpg-agent if not started.
|
||||
if [[ -z "$GPG_AGENT_INFO" ]]; then
|
||||
if ! ps -U "$USER" -o ucomm | grep -q gpg-agent; then
|
||||
eval "$(gpg-agent --daemon | tee "$_gpg_agent_env")"
|
||||
else
|
||||
# Export environment variables.
|
||||
source "$_gpg_agent_env" 2> /dev/null
|
||||
|
||||
# Start gpg-agent if not started.
|
||||
if ! ps -U "$USER" -o pid,ucomm | grep -q -- "${${${(s.:.)GPG_AGENT_INFO}[2]}:--1} gpg-agent"; then
|
||||
eval "$(gpg-agent --daemon | tee "$_gpg_agent_env")"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Inform gpg-agent of the current TTY for user prompts.
|
||||
|
Submodule modules/history-substring-search/external updated: 9f9fc7d550...1e76804052
@ -5,11 +5,6 @@
|
||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||
#
|
||||
|
||||
if [[ -z "$BROWSER" ]]; then
|
||||
print "$0: no web browser defined" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
# TODO: Make the sections easier to use.
|
||||
"$BROWSER" "http://nodejs.org/docs/$(node --version | sed 's/-.*//')/api/all.html#${1}"
|
||||
open "http://nodejs.org/docs/$(node --version | sed 's/-.*//')/api/all.html#${1}"
|
||||
|
||||
|
@ -17,7 +17,7 @@ if (( $+functions[nvm_version] )); then
|
||||
version="${$(nvm_version)#v}"
|
||||
fi
|
||||
|
||||
if [[ "$version" == (none|) ]]; then
|
||||
if [[ -n "$version" ]]; then
|
||||
zstyle -s ':prezto:module:node:info:version' format 'version_format'
|
||||
zformat -f version_formatted "$version_format" "v:$version"
|
||||
node_info[version]="$version_formatted"
|
||||
|
@ -1,15 +1,15 @@
|
||||
OCaml
|
||||
Ocaml
|
||||
=====
|
||||
|
||||
Initializes [OCaml][1] package management.
|
||||
Initializes [Ocaml][1] package management.
|
||||
|
||||
OPAM
|
||||
----
|
||||
|
||||
[OPAM][2] is a package manager for OCaml.
|
||||
[OPAM][2] is a package manager for Ocaml.
|
||||
|
||||
This module enables local package installation with OPAM by extending the
|
||||
relevant path and OCaml variables.
|
||||
relevant path and Ocaml variables.
|
||||
|
||||
### Usage
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Initializes OCaml package management.
|
||||
# Initializes Ocaml package management.
|
||||
#
|
||||
# Authors:
|
||||
# Sebastian Wiesner <lunaryorn@gmail.com>
|
||||
|
@ -18,7 +18,7 @@ function prompt_sorin_pwd {
|
||||
_prompt_sorin_pwd="$MATCH"
|
||||
unset MATCH
|
||||
else
|
||||
_prompt_sorin_pwd="${${${${(@j:/:M)${(@s:/:)pwd}##.#?}:h}%/}//\%/%%}/${${pwd:t}//\%/%%}"
|
||||
_prompt_sorin_pwd="${${${(@j:/:M)${(@s:/:)pwd}##.#?}:h}%/}/${pwd:t}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -3,7 +3,7 @@ Spectrum
|
||||
|
||||
Provides for easier use of 256 colors and effects.
|
||||
|
||||
To learn more about text formatting, read [A Guide to 256 Color Codes][1].
|
||||
To learn more about text formatting, read [That 256 Color Thing][1].
|
||||
|
||||
Variables
|
||||
---------
|
||||
@ -87,6 +87,6 @@ Authors
|
||||
- [P.C. Shyamshankar](https://github.com/sykora)
|
||||
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
||||
|
||||
[1]: http://lucentbeing.com/writing/archives/a-guide-to-256-color-codes/
|
||||
[1]: http://lucentbeing.com/blog/that-256-color-thing/
|
||||
[2]: https://github.com/sorin-ionescu/prezto/issues
|
||||
|
||||
|
@ -25,7 +25,7 @@ if [[ ! -S "$SSH_AUTH_SOCK" ]]; then
|
||||
source "$_ssh_agent_env" 2> /dev/null
|
||||
|
||||
# Start ssh-agent if not started.
|
||||
if ! ps -U "$USER" -o pid,ucomm | grep -q -- "${SSH_AGENT_PID:--1} ssh-agent"; then
|
||||
if ! ps -U "$USER" -o pid,ucomm | grep -q "${SSH_AGENT_PID} ssh-agent"; then
|
||||
eval "$(ssh-agent | sed '/^echo /d' | tee "$_ssh_agent_env")"
|
||||
fi
|
||||
fi
|
||||
|
@ -27,7 +27,7 @@ To enable highlighting for this module only, add the following line to
|
||||
### Highlighters
|
||||
|
||||
Syntax highlighting is accomplished by pluggable [highlighters][2]. This module
|
||||
only enables the *main* highlighter by default.
|
||||
enables the *main*, *brackets*, and *cursor* highlighters by default.
|
||||
|
||||
To enable all highlighters, add the following to *zpreztorc*:
|
||||
|
||||
|
Submodule modules/syntax-highlighting/external updated: 3dc5741900...f289a9f8e7
@ -20,15 +20,25 @@ following line to *zpreztorc*:
|
||||
|
||||
zstyle ':prezto:module:tmux:auto-start' remote 'yes'
|
||||
|
||||
In both cases, it will create a background session named _prezto_ if the tmux
|
||||
server is not started.
|
||||
In both cases the tmux server will be started and a background session
|
||||
named _prezto_ will be created if a session doesn't already exist.
|
||||
|
||||
With `auto-start` enabled, you may want to control how multiple sessions are
|
||||
managed. The `destroy-unattached` option of tmux controls if the unattached
|
||||
sessions must be kept alive, making sessions available for later use, configured
|
||||
in *tmux.conf*:
|
||||
By default every shell shares a set of windows but has an independent
|
||||
view. Detaching from one of these sessions removes the view but the
|
||||
open windows persist. This is accomplished by setting the
|
||||
`destroy-unattached` option to `on` for each session.
|
||||
|
||||
Some users prefer that all new shells share the same session so that
|
||||
the view for each shell is in sync. This useful for advanced users
|
||||
that create multiple sessions and want to manually navigate between
|
||||
them. To accomplish this behavior set the `mode` option to `shared` in
|
||||
*zpreztorc*,
|
||||
|
||||
zstyle ':prezto:module:tmux:auto-start' mode shared
|
||||
|
||||
You can customize the background session by creating a new session in
|
||||
your `.tmux.conf` file.
|
||||
|
||||
set-option -g destroy-unattached [on | off]
|
||||
|
||||
Aliases
|
||||
-------
|
||||
|
@ -25,14 +25,21 @@ if [[ -z "$TMUX" && -z "$EMACS" && -z "$VIM" ]] && ( \
|
||||
|
||||
# Create a 'prezto' session if no session has been defined in tmux.conf.
|
||||
if ! tmux has-session 2> /dev/null; then
|
||||
tmux_session='prezto'
|
||||
tmux \
|
||||
new-session -d -s "$tmux_session" \; \
|
||||
set-option -t "$tmux_session" destroy-unattached off &> /dev/null
|
||||
new-session -d -s prezto \; \
|
||||
set-option -t prezto destroy-unattached off &> /dev/null
|
||||
else
|
||||
tmux_session
|
||||
fi
|
||||
|
||||
# Attach to the 'prezto' session or to the last session used.
|
||||
exec tmux attach-session
|
||||
if zstyle -t ':prezto:module:tmux:auto-start' mode shared; then
|
||||
# Attach to the 'prezto' session or to the last session used.
|
||||
exec tmux attach
|
||||
else
|
||||
# Find a session to share windows with.
|
||||
tmux_session=`tmux list-sessions -F '#S' | head -n 1`
|
||||
exec tmux new-session -t "$tmux_session"\; set-option destroy-unattached on
|
||||
fi
|
||||
fi
|
||||
|
||||
#
|
||||
|
@ -66,9 +66,9 @@ if is-callable 'dircolors'; then
|
||||
|
||||
if zstyle -t ':prezto:module:utility:ls' color; then
|
||||
if [[ -s "$HOME/.dir_colors" ]]; then
|
||||
eval "$(dircolors --sh "$HOME/.dir_colors")"
|
||||
eval "$(dircolors "$HOME/.dir_colors")"
|
||||
else
|
||||
eval "$(dircolors --sh)"
|
||||
eval "$(dircolors)"
|
||||
fi
|
||||
|
||||
alias ls="$aliases[ls] --color=auto"
|
||||
|
@ -1,21 +0,0 @@
|
||||
Z
|
||||
=
|
||||
|
||||
Integrates [z][1] into Prezto, which maintains a frequently used directory
|
||||
list for fast directory changes.
|
||||
|
||||
Aliases
|
||||
-------
|
||||
|
||||
- `j` changes the current working directory to the most *frecent* match.
|
||||
|
||||
Authors
|
||||
-------
|
||||
|
||||
*The authors of this module should be contacted via the [issue tracker][2].*
|
||||
|
||||
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
||||
|
||||
[1]: https://github.com/rupa/z
|
||||
[2]: https://github.com/sorin-ionescu/prezto/issues
|
||||
|
Submodule modules/z/external deleted from 9bf5feb86a
@ -1,19 +0,0 @@
|
||||
#
|
||||
# Maintains a frequently used directory list for fast directory changes.
|
||||
#
|
||||
# Authors:
|
||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||
#
|
||||
|
||||
# Set the directory changing command.
|
||||
_Z_CMD='j'
|
||||
|
||||
# Prevent symbolic link resolution.
|
||||
_Z_NO_RESOLVE_SYMLINKS=1
|
||||
|
||||
# Source module files.
|
||||
source "${0:h}/external/z.sh"
|
||||
|
||||
# Cleanup.
|
||||
unset _Z_{CMD,NO_RESOLVE_SYMLINKS}
|
||||
|
Reference in New Issue
Block a user