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

Compare commits

..

1 Commits

29 changed files with 116 additions and 201 deletions

3
.gitmodules vendored
View File

@ -7,6 +7,3 @@
[submodule "modules/completion/external"]
path = modules/completion/external
url = https://github.com/zsh-users/zsh-completions.git
[submodule "modules/opp/external"]
path = modules/opp/external
url = https://github.com/hchbaw/opp.zsh.git

View File

@ -22,7 +22,11 @@ Aliases
-------
- `d` prints the contents of the directory stack.
- `1 ... 9` changes the directory to the **n** previous one.
Functions
---------
- `command_not_found_handler` changes the directory to the **n** previous one.
Authors
-------

View File

@ -0,0 +1,13 @@
#
# Changes the directory to the n previous one.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
if [[ "$1" == [[:digit:]]## ]]; then
builtin cd "+$1"
else
return 127
fi

View File

@ -27,5 +27,4 @@ unsetopt CLOBBER # Do not overwrite existing files with > and >>.
#
alias d='dirs -v'
for index ({1..9}) alias "$index"="cd +${index}"; unset index

View File

@ -348,13 +348,13 @@ function git-info {
# Format added.
if (( added > 0 )); then
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
# Format deleted.
if (( deleted > 0 )); then
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
# Format modified.

View File

@ -1,19 +0,0 @@
VIM text objects
========================
Integrates [opp][1] into Prezto, which implements [vim text objects][2] right into vim mode of prezto.
Due to some conflicts with prezto loading, opp will get compiled during initial run.
Authors
-------
*The authors of this module should be contacted via the [issue tracker][3].*
- [Takeshi Banse](https://github.com/hchbaw)
[1]: https://github.com/hchbaw/opp.zsh
[2]: http://blog.carbonfive.com/2011/10/17/vim-text-objects-the-definitive-guide/
[3]: https://github.com/hchbaw/opp.zsh/issues?state=open

View File

@ -1,20 +0,0 @@
# Vim's text-objects-ish for zsh.
# Author: Takeshi Banse <takebi@laafc.net>
# License: Public Domain
# Thank you very much, Bram Moolenaar!
# I want to use the Vim's text-objects in zsh.
if [[ ! -f ${0:h}/functions/opp.zwc ]] ||
[[ ! -f ${0:h}/functions/opp-install.zwc ]]; then
(
. "${0:h}/external/opp.zsh"
. "${0:h}/external/opp/surround.zsh"
. "${0:h}/external/opp/textobj-between.zsh"
opp-zcompile "${0:h}/external/opp.zsh" ${0:h}/functions > /dev/null
)
fpath+=${0:h}/functions > /dev/null
. ${0:h}/functions/opp-install
autoload opp
fi
opp-install

View File

@ -9,20 +9,17 @@ Aliases
- `cdf` changes the current working director to the current _Finder_
directory.
- `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
---------
- `mand` opens _man_ pages in [_Dash.app_][2].
- `manb` opens _man_ pages in [_Bwana.app_][2].
- `manp` opens _man_ pages in _Preview.app_.
- `pfd` prints the current _Finder_ directory.
- `pfs` prints the current _Finder_ selection.
- `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
-------
@ -32,6 +29,7 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: http://www.apple.com/macosx/
[2]: http://kapeli.com/dash
[2]: http://bruji.com/bwana/
[3]: http://www.iterm2.com/
[4]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -1,8 +1,8 @@
#compdef mand manp
#compdef manb manp
#autoload
#
# Completes mand and manp.
# Completes manb and manp.
#
# Authors:
# 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
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
EOF

View File

@ -5,11 +5,14 @@
# 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
if the_selection is not {}
repeat with an_item in the_selection
log POSIX path of (an_item as text)
end repeat
end if
set item_count to count the_selection
repeat with item_index from 1 to count the_selection
if item_index is less than item_count then set the_delimiter to "\n"
if item_index is item_count then set the_delimiter to ""
set output to output & ((item item_index of the_selection as alias)'s POSIX path) & the_delimiter
end repeat
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
#
# Changes directory to the current Finder directory.
# Change directory to the current Finder directory.
alias cdf='cd "$(pfd)"'
# Pushes directory to the current Finder directory.
# Push directory to the current Finder directory.
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

@ -28,7 +28,6 @@ if (( $+commands[$_pacman_frontend] )); then
source "${0:h}/${_pacman_frontend}.zsh"
fi
else
_pacman_frontend='pacman'
_pacman_sudo='sudo '
fi
@ -37,7 +36,7 @@ fi
#
# Pacman.
alias pac="${_pacman_frontend}"
alias pac= "${_pacman_frontend}"
# Installs packages from repositories.
alias paci="${_pacman_sudo}${_pacman_frontend} --sync"

View File

@ -16,12 +16,9 @@ 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
# path can be overridden using PYTHONUSERBASE.
# ~/Library/Python on Mac OS X and ~/.local elsewhere, to PATH.
else
if [[ -n "$PYTHONUSERBASE" ]]; then
path=($PYTHONUSERBASE/bin $path)
elif [[ "$OSTYPE" == darwin* ]]; then
if [[ "$OSTYPE" == darwin* ]]; then
path=($HOME/Library/Python/*/bin(N) $path)
else
# 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
*~/.gems*; otherwise, they are installed according to the manager.
*~/Library/Ruby/Gems/1.8* on Mac OS X.
RVM
---
@ -20,33 +20,15 @@ home directory.
Since RVM is loaded into the shell and is known to override shell commands, it
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
-----
An alternative RVM is to use [rbenv][3], which allows for switching between
multiple, isolated Ruby installations in the home directory.
An alternative RVM is to use [rbenv][3], which allows for switching between multiple,
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
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
-------
@ -105,4 +87,4 @@ Authors
[3]: https://github.com/sstephenson/rbenv
[4]: http://gembundler.com
[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)"
elif (( $+commands[rbenv] )); then
version="$(rbenv version-name)"
elif (( $+commands[ruby] )); then
version="${${$(ruby --version)[(w)1,(w)2]}/ /-}"
fi
# Format version.

View File

@ -23,13 +23,6 @@ elif [[ -s "$HOME/.rbenv/bin/rbenv" ]]; then
elif (( $+commands[rbenv] )); then
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.
else
path=($HOME/.gem/ruby/*/bin(N) $path)

View File

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

View File

@ -20,15 +20,12 @@ 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, it will create a background session named _#Prezto_ and attach
every new shell to it.
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*:
set-option -g destroy-unattached [on | off]
To avoid keeping open sessions, this module sets `destroy-unattached off` on
the background session and `destroy-unattached on` on every other session
(global setting).
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
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
about this and Prezto has already been [opened][2].
@ -57,7 +54,6 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
- [Colin Hebert](https://github.com/ColinHebert)
- [Georges Discry](https://github.com/gdiscry)
- [Xavier Cambar](https://github.com/xcambar)
[1]: http://tmux.sourceforge.net
[2]: https://github.com/sorin-ionescu/prezto/issues/62

View File

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

View File

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

View File

@ -34,7 +34,6 @@ alias mysql='nocorrect mysql'
alias rm='nocorrect rm'
# Disable globbing.
alias bower='noglob bower'
alias fc='noglob fc'
alias find='noglob find'
alias ftp='noglob ftp'

View File

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