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

Compare commits

..

1 Commits

Author SHA1 Message Date
36e24eeb08 git-hub-shorten-url: Slug support 2014-02-20 13:03:18 -06:00
43 changed files with 150 additions and 215 deletions

View File

@ -8,8 +8,8 @@ and prompt themes.
Installation Installation
------------ ------------
Prezto will work with any recent release of Zsh, but the minimum required Prezto will work with any recent release of Zsh, but the minimum recommended
version is 4.3.17. version is 4.3.11.
1. Launch Zsh: 1. Launch Zsh:

View File

@ -10,7 +10,7 @@
# #
# Check for the minimum supported version. # 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 if ! autoload -Uz is-at-least || ! is-at-least "$min_zsh_version"; then
print "prezto: old shell detected, minimum required: $min_zsh_version" >&2 print "prezto: old shell detected, minimum required: $min_zsh_version" >&2
return 1 return 1

View File

@ -102,10 +102,10 @@ Node.js
Provides utility functions for Node.js and loads npm completion. Provides utility functions for Node.js and loads npm completion.
OCaml Ocaml
----- -----
Initializes OCaml package management. Initializes Ocaml package management.
OSX OSX
--- ---

View File

@ -54,8 +54,8 @@ while (( $# > 0 )); do
(*.Z) uncompress "$1" ;; (*.Z) uncompress "$1" ;;
(*.zip) unzip "$1" -d $extract_dir ;; (*.zip) unzip "$1" -d $extract_dir ;;
(*.rar) unrar &> /dev/null \ (*.rar) unrar &> /dev/null \
&& unrar x -ad "$1" \ && unrar e -ad "$1" \
|| rar x -ad "$1" ;; || rar e -ad "$1" ;;
(*.7z) 7za x "$1" ;; (*.7z) 7za x "$1" ;;
(*.deb) (*.deb)
mkdir -p "$extract_dir/control" mkdir -p "$extract_dir/control"

View File

@ -116,7 +116,7 @@ zstyle ':completion:*:(rm|kill|diff):*' ignore-line other
zstyle ':completion:*:rm:*' file-patterns '*:all-files' zstyle ':completion:*:rm:*' file-patterns '*:all-files'
# Kill # 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:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;36=0=01'
zstyle ':completion:*:*:kill:*' menu yes select zstyle ':completion:*:*:kill:*' menu yes select
zstyle ':completion:*:*:kill:*' force-list always zstyle ':completion:*:*:kill:*' force-list always

View File

@ -49,7 +49,8 @@ To indicate when the editor is completing, add the following to your
zstyle ':prezto:module:editor:info:completing' format '...' zstyle ':prezto:module:editor:info:completing' format '...'
Then add `$editor_info[context]`, where context is *keymap*, *insert*, or 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 Authors
------- -------

View File

@ -57,22 +57,11 @@ key_info=(
'BackTab' "$terminfo[kcbt]" 'BackTab' "$terminfo[kcbt]"
) )
# Escape sequences from Debian's inputrc.
key_info+=(
'ControlLeft' '\e[1;5D \e[5D \e\e[D \eOd'
'ControlRight' '\e[1;5C \e[5C \e\e[C \eOc'
)
# if [[ "$TERM" == rxvt* ]]; then
# key_info[ControlLeft]+=' \eOd'
# key_info[ControlRight]+=' \eOc'
# fi
# Set empty $key_info values to an invalid UTF-8 sequence to induce silent # Set empty $key_info values to an invalid UTF-8 sequence to induce silent
# bindkey failure. # bindkey failure.
for key in "${(k)key_info[@]}"; do for key in "${(k)key_info[@]}"; do
if [[ -z "$key_info[$key]" ]]; then if [[ -z "$key_info[$key]" ]]; then
key_info[$key]='<27>' key_info["$key"]='<27>'
fi fi
done done
@ -217,10 +206,10 @@ bindkey -d
# Emacs Key Bindings # Emacs Key Bindings
# #
for key in "$key_info[Escape]"{B,b} "${(s: :)key_info[ControlLeft]}" for key ("$key_info[Escape]"{B,b}) bindkey -M emacs "$key" emacs-backward-word
bindkey -M emacs "$key" emacs-backward-word for key ("$key_info[Escape]"{F,f}) bindkey -M emacs "$key" emacs-forward-word
for key in "$key_info[Escape]"{F,f} "${(s: :)key_info[ControlRight]}" bindkey -M emacs "$key_info[Escape]$key_info[Left]" emacs-backward-word
bindkey -M emacs "$key" emacs-forward-word bindkey -M emacs "$key_info[Escape]$key_info[Right]" emacs-forward-word
# Kill to the beginning of the line. # Kill to the beginning of the line.
for key in "$key_info[Escape]"{K,k} for key in "$key_info[Escape]"{K,k}

View File

@ -5,8 +5,11 @@
# Completes git-hub-shorten-url. # Completes git-hub-shorten-url.
# #
# Authors: # Authors:
# Joel Kuzmarski <leoj3n@gmail.com>
# Sorin Ionescu <sorin.ionescu@gmail.com> # Sorin Ionescu <sorin.ionescu@gmail.com>
# #
_arguments '1:url:' && return 0 _arguments \
'1:url:' \
'2:slug:' && return 0

View File

@ -2,21 +2,29 @@
# Shortens GitHub URLs. # Shortens GitHub URLs.
# #
# Authors: # Authors:
# Joel Kuzmarski <leoj3n@gmail.com>
# Sorin Ionescu <sorin.ionescu@gmail.com> # Sorin Ionescu <sorin.ionescu@gmail.com>
# #
local url="$1" local url="$1"
if [[ "$url" == '-' ]]; then
read url <&0
fi
if [[ -z "$url" ]]; then if [[ -z "$url" ]]; then
print "usage: $0 [ url | - ]" >&2 print "usage: $0 [ url | - ] [slug]" >&2
return 1
elif [[ "$url" == '-' ]]; then
read url <&0
elif [[ "$url" != *github.com* ]]; then
url="https://github.com/$url"
fi fi
if (( $+commands[curl] )); then if (( $+commands[curl] )); then
curl -s -i 'http://git.io' -F "url=$url" | grep 'Location:' | sed 's/Location: //' local result="$(curl -s -i 'http://git.io' -F "url=$url" -F "code=$2")"
if [[ $result == *Unprocessable* ]]; then
print "$0: the slug '$2' is already taken!" >&2
else
print $result | grep 'Location:' | sed 's/Location: //'
fi
else else
print "$0: command not found: curl" >&2 print "$0: command not found: curl" >&2
fi fi

View File

@ -348,13 +348,13 @@ function git-info {
# Format added. # Format added.
if (( added > 0 )); then if (( added > 0 )); then
zstyle -s ':prezto:module:git:info:added' format 'added_format' zstyle -s ':prezto:module:git:info:added' format 'added_format'
zformat -f added_formatted "$added_format" "a:$added" zformat -f added_formatted "$added_format" "a:$added_format"
fi fi
# Format deleted. # Format deleted.
if (( deleted > 0 )); then if (( deleted > 0 )); then
zstyle -s ':prezto:module:git:info:deleted' format 'deleted_format' zstyle -s ':prezto:module:git:info:deleted' format 'deleted_format'
zformat -f deleted_formatted "$deleted_format" "d:$deleted" zformat -f deleted_formatted "$deleted_format" "d:$deleted_format"
fi fi
# Format modified. # Format modified.

View File

@ -15,14 +15,11 @@ _gpg_agent_conf="$HOME/.gnupg/gpg-agent.conf"
_gpg_agent_env="${TMPDIR:-/tmp}/gpg-agent.env" _gpg_agent_env="${TMPDIR:-/tmp}/gpg-agent.env"
# Start gpg-agent if not started. # 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. # Export environment variables.
source "$_gpg_agent_env" 2> /dev/null 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 fi
# Inform gpg-agent of the current TTY for user prompts. # Inform gpg-agent of the current TTY for user prompts.

View File

@ -5,11 +5,6 @@
# Sorin Ionescu <sorin.ionescu@gmail.com> # 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. # 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}"

View File

@ -17,7 +17,7 @@ if (( $+functions[nvm_version] )); then
version="${$(nvm_version)#v}" version="${$(nvm_version)#v}"
fi fi
if [[ "$version" == (none|) ]]; then if [[ -n "$version" ]]; then
zstyle -s ':prezto:module:node:info:version' format 'version_format' zstyle -s ':prezto:module:node:info:version' format 'version_format'
zformat -f version_formatted "$version_format" "v:$version" zformat -f version_formatted "$version_format" "v:$version"
node_info[version]="$version_formatted" node_info[version]="$version_formatted"

View File

@ -1,15 +1,15 @@
OCaml Ocaml
===== =====
Initializes [OCaml][1] package management. Initializes [Ocaml][1] package management.
OPAM 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 This module enables local package installation with OPAM by extending the
relevant path and OCaml variables. relevant path and Ocaml variables.
### Usage ### Usage

View File

@ -1,5 +1,5 @@
# #
# Initializes OCaml package management. # Initializes Ocaml package management.
# #
# Authors: # Authors:
# Sebastian Wiesner <lunaryorn@gmail.com> # Sebastian Wiesner <lunaryorn@gmail.com>

View File

@ -9,20 +9,17 @@ Aliases
- `cdf` changes the current working director to the current _Finder_ - `cdf` changes the current working director to the current _Finder_
directory. directory.
- `pushdf` pushes the current working directory onto the directory queue and - `pushdf` pushes the current working directory onto the directory queue and
changes the current working director to the current _Finder_ directory. - `ql` quick looks at files.
- `rm-osx-cruft` deletes .DS\_Store, \_\_MACOSX cruft.
Functions Functions
--------- ---------
- `mand` opens _man_ pages in [_Dash.app_][2]. - `manb` opens _man_ pages in [_Bwana.app_][2].
- `manp` opens _man_ pages in _Preview.app_. - `manp` opens _man_ pages in _Preview.app_.
- `pfd` prints the current _Finder_ directory. - `pfd` prints the current _Finder_ directory.
- `pfs` prints the current _Finder_ selection. - `pfs` prints the current _Finder_ selection.
- `tab` creates a new tab (works in both _Terminal_ and [_iTerm_][3]). - `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.
Authors Authors
------- -------
@ -32,6 +29,7 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu) - [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: http://www.apple.com/macosx/ [1]: http://www.apple.com/macosx/
[2]: http://kapeli.com/dash [2]: http://bruji.com/bwana/
[3]: http://www.iterm2.com/ [3]: http://www.iterm2.com/
[4]: https://github.com/sorin-ionescu/prezto/issues [4]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -1,8 +1,8 @@
#compdef mand manp #compdef manb manp
#autoload #autoload
# #
# Completes mand and manp. # Completes manb and manp.
# #
# Authors: # Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com> # Sorin Ionescu <sorin.ionescu@gmail.com>

View File

@ -0,0 +1,24 @@
#
# Opens man pages in Bwana.app.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
function manb {
local page
if (( $# > 0 )); then
for page in "$@"; do
open "man:$page" 2>/dev/null
if (( $? != 0 )); then
print "$0: Bwana is not installed" >&2
break
fi
done
else
print 'What manual page do you want?' >&2
fi
}
manb "$@"

View File

@ -1,21 +0,0 @@
#
# Opens man pages in Dash.app.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
function mand {
if (( $# > 0 )); then
open "dash://manpages:$1" 2>/dev/null
if (( $? != 0 )); then
print "$0: Dash is not installed" >&2
break
fi
else
print 'What manual page do you want?' >&2
fi
}
mand "$@"

View File

@ -1,13 +0,0 @@
#
# Displays the Mac OS X download history.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
local db
for db in ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV*; do
if grep -q 'LSQuarantineEvent' < <(sqlite3 "$db" .tables); then
sqlite3 "$db" 'SELECT LSQuarantineDataURLString FROM LSQuarantineEvent'
fi
done

View File

@ -1,11 +0,0 @@
#
# Deletes .DS_Store and __MACOSX directories.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
find "${@:-$PWD}" \( \
-type f -name '.DS_Store' -o \
-type d -name '__MACOSX' \
\) -print0 | xargs -0 rm -rf

View File

@ -1,13 +0,0 @@
#
# Deletes the Mac OS X download history.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
local db
for db in ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV*; do
if grep -q 'LSQuarantineEvent' < <(sqlite3 "$db" .tables); then
sqlite3 "$db" 'DELETE FROM LSQuarantineEvent; VACUUM'
fi
done

View File

@ -7,6 +7,7 @@
osascript 2>/dev/null <<EOF osascript 2>/dev/null <<EOF
tell application "Finder" tell application "Finder"
return POSIX path of (target of first window as text) return POSIX path of (target of window 1 as alias)
end tell end tell
EOF EOF

View File

@ -5,11 +5,14 @@
# Sorin Ionescu <sorin.ionescu@gmail.com> # Sorin Ionescu <sorin.ionescu@gmail.com>
# #
osascript 2>&1 <<EOF osascript 2>/dev/null <<EOF
set output to ""
tell application "Finder" to set the_selection to selection tell application "Finder" to set the_selection to selection
if the_selection is not {} set item_count to count the_selection
repeat with an_item in the_selection repeat with item_index from 1 to count the_selection
log POSIX path of (an_item as text) if item_index is less than item_count then set the_delimiter to "\n"
end repeat if item_index is item_count then set the_delimiter to ""
end if set output to output & ((item item_index of the_selection as alias)'s POSIX path) & the_delimiter
end repeat
EOF EOF

View File

@ -1,10 +0,0 @@
#
# Previews files in Quick Look.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
if (( $# > 0 )); then
qlmanage -p "$@" &> /dev/null
fi

View File

@ -14,8 +14,26 @@ fi
# Aliases # Aliases
# #
# Changes directory to the current Finder directory. # Change directory to the current Finder directory.
alias cdf='cd "$(pfd)"' alias cdf='cd "$(pfd)"'
# Pushes directory to the current Finder directory. # Push directory to the current Finder directory.
alias pushdf='pushd "$(pfd)"' alias pushdf='pushd "$(pfd)"'
#
# Functions
#
# Open files in Quick Look.
function ql {
(( $# > 0 )) && qlmanage -p "$@" &> /dev/null
}
# Delete .DS_Store and __MACOSX directories.
function rm-osx-cruft {
find "${@:-$PWD}" \( \
-type f -name '.DS_Store' -o \
-type d -name '__MACOSX' \
\) -print0 | xargs -0 rm -rf
}

View File

@ -18,7 +18,7 @@ function prompt_sorin_pwd {
_prompt_sorin_pwd="$MATCH" _prompt_sorin_pwd="$MATCH"
unset MATCH unset MATCH
else else
_prompt_sorin_pwd="${${${${(@j:/:M)${(@s:/:)pwd}##.#?}:h}%/}//\%/%%}/${${pwd:t}//\%/%%}" _prompt_sorin_pwd="${${${(@j:/:M)${(@s:/:)pwd}##.#?}:h}%/}/${pwd:t}"
fi fi
} }

View File

@ -16,12 +16,9 @@ elif (( $+commands[pyenv] )); then
eval "$(pyenv init -)" eval "$(pyenv init -)"
# Prepend PEP 370 per user site packages directory, which defaults to # 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 Mac OS X and ~/.local elsewhere, to PATH.
# path can be overridden using PYTHONUSERBASE.
else else
if [[ -n "$PYTHONUSERBASE" ]]; then if [[ "$OSTYPE" == darwin* ]]; then
path=($PYTHONUSERBASE/bin $path)
elif [[ "$OSTYPE" == darwin* ]]; then
path=($HOME/Library/Python/*/bin(N) $path) path=($HOME/Library/Python/*/bin(N) $path)
else else
# This is subject to change. # This is subject to change.

View File

@ -8,7 +8,7 @@ Local Gem Installation
---------------------- ----------------------
When a Ruby version manager is not detected, local gems are installed in When a Ruby version manager is not detected, local gems are installed in
*~/.gems*; otherwise, they are installed according to the manager. *~/Library/Ruby/Gems/1.8* on Mac OS X.
RVM RVM
--- ---
@ -20,33 +20,15 @@ home directory.
Since RVM is loaded into the shell and is known to override shell commands, it Since RVM is loaded into the shell and is known to override shell commands, it
may conflict with shell scripts. may conflict with shell scripts.
Load this module as late as possible when using RVM since RVM will complain if
it is not first in `$PATH`.
rbenv rbenv
----- -----
An alternative RVM is to use [rbenv][3], which allows for switching between An alternative RVM is to use [rbenv][3], which allows for switching between multiple,
multiple, isolated Ruby installations in the home directory. isolated Ruby installations in the home directory.
While it is not as feature rich as RVM, it is not loaded into the shell and is While it is not as feature rich as RVM, it is not loaded into the shell and is
not known to cause conflicts with shell scripts. not known to cause conflicts with shell scripts.
chruby
------
Yet another alternative is [chruby][6], which is simpler than both RVM and
rbenv.
### Settings
#### Auto-Switch
To enable auto switching the Ruby version on directory change based on the
.ruby-version file, add the following line to *zpreztorc*:
zstyle ':prezto:module:ruby:chruby' auto-switch 'yes'
Bundler Bundler
------- -------
@ -105,4 +87,4 @@ Authors
[3]: https://github.com/sstephenson/rbenv [3]: https://github.com/sstephenson/rbenv
[4]: http://gembundler.com [4]: http://gembundler.com
[5]: https://github.com/sorin-ionescu/prezto/issues [5]: https://github.com/sorin-ionescu/prezto/issues
[6]: https://github.com/postmodern/chruby

View File

@ -18,8 +18,6 @@ if (( $+commands[rvm-prompt] )); then
version="$(rvm-prompt)" version="$(rvm-prompt)"
elif (( $+commands[rbenv] )); then elif (( $+commands[rbenv] )); then
version="$(rbenv version-name)" version="$(rbenv version-name)"
elif (( $+commands[ruby] )); then
version="${${$(ruby --version)[(w)1,(w)2]}/ /-}"
fi fi
# Format version. # Format version.

View File

@ -23,13 +23,6 @@ elif [[ -s "$HOME/.rbenv/bin/rbenv" ]]; then
elif (( $+commands[rbenv] )); then elif (( $+commands[rbenv] )); then
eval "$(rbenv init - --no-rehash zsh)" eval "$(rbenv init - --no-rehash zsh)"
# 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 zstyle -t ':prezto:module:ruby:chruby' auto-switch; then
source "${commands[chruby-exec]:h:h}/share/chruby/auto.sh"
fi
# Prepend local gems bin directories to PATH. # Prepend local gems bin directories to PATH.
else else
path=($HOME/.gem/ruby/*/bin(N) $path) path=($HOME/.gem/ruby/*/bin(N) $path)

View File

@ -15,7 +15,7 @@ fi
# Auto Start # Auto Start
# #
if [[ -z "$STY" && -z "$EMACS" && -z "$VIM" ]] && ( \ if [[ -z "$STY" ]] && ( \
( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:screen:auto-start' remote ) || ( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:screen:auto-start' remote ) ||
( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:screen:auto-start' local ) \ ( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:screen:auto-start' local ) \
); then ); then

View File

@ -3,7 +3,7 @@ Spectrum
Provides for easier use of 256 colors and effects. 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 Variables
--------- ---------
@ -87,6 +87,6 @@ Authors
- [P.C. Shyamshankar](https://github.com/sykora) - [P.C. Shyamshankar](https://github.com/sykora)
- [Sorin Ionescu](https://github.com/sorin-ionescu) - [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 [2]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -25,7 +25,7 @@ if [[ ! -S "$SSH_AUTH_SOCK" ]]; then
source "$_ssh_agent_env" 2> /dev/null source "$_ssh_agent_env" 2> /dev/null
# Start ssh-agent if not started. # 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")" eval "$(ssh-agent | sed '/^echo /d' | tee "$_ssh_agent_env")"
fi fi
fi fi

View File

@ -27,7 +27,7 @@ To enable highlighting for this module only, add the following line to
### Highlighters ### Highlighters
Syntax highlighting is accomplished by pluggable [highlighters][2]. This module 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*: To enable all highlighters, add the following to *zpreztorc*:

View File

@ -20,15 +20,12 @@ following line to *zpreztorc*:
zstyle ':prezto:module:tmux:auto-start' remote 'yes' zstyle ':prezto:module:tmux:auto-start' remote 'yes'
In both cases, it will create a background session named _prezto_ if the tmux In both cases, it will create a background session named _#Prezto_ and attach
server is not started. every new shell to it.
With `auto-start` enabled, you may want to control how multiple sessions are To avoid keeping open sessions, this module sets `destroy-unattached off` on
managed. The `destroy-unattached` option of tmux controls if the unattached the background session and `destroy-unattached on` on every other session
sessions must be kept alive, making sessions available for later use, configured (global setting).
in *tmux.conf*:
set-option -g destroy-unattached [on | off]
Aliases Aliases
------- -------
@ -44,7 +41,7 @@ connected** to be displayed, which can be fixed by installing
[reattach-to-user-namespace][3], available in [Homebrew][4], and adding the [reattach-to-user-namespace][3], available in [Homebrew][4], and adding the
following to *tmux.conf*: following to *tmux.conf*:
set-option -g default-command "reattach-to-user-namespace -l $SHELL -l" 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 Mac OS X. A discussion
about this and Prezto has already been [opened][2]. about this and Prezto has already been [opened][2].
@ -57,7 +54,6 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu) - [Sorin Ionescu](https://github.com/sorin-ionescu)
- [Colin Hebert](https://github.com/ColinHebert) - [Colin Hebert](https://github.com/ColinHebert)
- [Georges Discry](https://github.com/gdiscry) - [Georges Discry](https://github.com/gdiscry)
- [Xavier Cambar](https://github.com/xcambar)
[1]: http://tmux.sourceforge.net [1]: http://tmux.sourceforge.net
[2]: https://github.com/sorin-ionescu/prezto/issues/62 [2]: https://github.com/sorin-ionescu/prezto/issues/62

View File

@ -5,7 +5,6 @@
# Sorin Ionescu <sorin.ionescu@gmail.com> # Sorin Ionescu <sorin.ionescu@gmail.com>
# Colin Hebert <hebert.colin@gmail.com> # Colin Hebert <hebert.colin@gmail.com>
# Georges Discry <georges@discry.be> # Georges Discry <georges@discry.be>
# Xavier Cambar <xcambar@gmail.com>
# #
# Return if requirements are not found. # Return if requirements are not found.
@ -17,22 +16,31 @@ fi
# Auto Start # Auto Start
# #
if [[ -z "$TMUX" && -z "$EMACS" && -z "$VIM" ]] && ( \ if [[ -z "$TMUX" ]] && ( \
( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' remote ) || ( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' remote ) ||
( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' local ) \ ( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' local ) \
); then ); then
tmux start-server tmux_session='#Prezto'
# Create a 'prezto' session if no session has been defined in tmux.conf. if ! tmux has-session -t "$tmux_session" 2> /dev/null; then
if ! tmux has-session 2> /dev/null; then # Ensure that tmux server is started.
tmux_session='prezto' tmux start-server
tmux \
new-session -d -s "$tmux_session" \; \ # Disable the destruction of unattached sessions globally.
set-option -t "$tmux_session" destroy-unattached off &> /dev/null tmux set-option -g destroy-unattached off &> /dev/null
# Create a new session.
tmux new-session -d -s "$tmux_session"
# Disable the destruction of the new, unattached session.
tmux set-option -t "$tmux_session" destroy-unattached off &> /dev/null
# Enable the destruction of unattached sessions globally to prevent
# an abundance of open, detached sessions.
tmux set-option -g destroy-unattached on &> /dev/null
fi fi
# Attach to the 'prezto' session or to the last session used. exec tmux new-session -t "$tmux_session"
exec tmux attach-session
fi fi
# #

View File

@ -50,7 +50,6 @@ Aliases
### Disabled File Globbing ### Disabled File Globbing
- `bower`
- `fc` - `fc`
- `find` - `find`
- `ftp` - `ftp`

View File

@ -34,7 +34,6 @@ alias mysql='nocorrect mysql'
alias rm='nocorrect rm' alias rm='nocorrect rm'
# Disable globbing. # Disable globbing.
alias bower='noglob bower'
alias fc='noglob fc' alias fc='noglob fc'
alias find='noglob find' alias find='noglob find'
alias ftp='noglob ftp' alias ftp='noglob ftp'
@ -66,9 +65,9 @@ if is-callable 'dircolors'; then
if zstyle -t ':prezto:module:utility:ls' color; then if zstyle -t ':prezto:module:utility:ls' color; then
if [[ -s "$HOME/.dir_colors" ]]; then if [[ -s "$HOME/.dir_colors" ]]; then
eval "$(dircolors --sh "$HOME/.dir_colors")" eval "$(dircolors "$HOME/.dir_colors")"
else else
eval "$(dircolors --sh)" eval "$(dircolors)"
fi fi
alias ls="$aliases[ls] --color=auto" alias ls="$aliases[ls] --color=auto"

View File

@ -87,13 +87,6 @@ zstyle ':prezto:module:editor' key-bindings 'emacs'
# Auto set to 'off' on dumb terminals. # Auto set to 'off' on dumb terminals.
zstyle ':prezto:module:prompt' theme 'sorin' zstyle ':prezto:module:prompt' theme 'sorin'
#
# Ruby
#
# Auto switch the Ruby version on directory change.
# zstyle ':prezto:module:ruby:chruby' auto-switch 'yes'
# #
# Screen # Screen
# #
@ -152,3 +145,4 @@ zstyle ':prezto:module:prompt' theme 'sorin'
# Auto start a session when Zsh is launched in a SSH connection. # Auto start a session when Zsh is launched in a SSH connection.
# zstyle ':prezto:module:tmux:auto-start' remote 'yes' # zstyle ':prezto:module:tmux:auto-start' remote 'yes'