mirror of
https://github.com/dcarrillo/prezto.git
synced 2025-07-01 20:59:26 +00:00
Compare commits
1 Commits
pull/651-g
...
module/upd
Author | SHA1 | Date | |
---|---|---|---|
5ecbb49630 |
14
README.md
14
README.md
@ -9,7 +9,7 @@ Installation
|
|||||||
------------
|
------------
|
||||||
|
|
||||||
Prezto will work with any recent release of Zsh, but the minimum recommended
|
Prezto will work with any recent release of Zsh, but the minimum recommended
|
||||||
version is 4.3.11.
|
version is 4.3.10.
|
||||||
|
|
||||||
1. Launch Zsh:
|
1. Launch Zsh:
|
||||||
|
|
||||||
@ -36,16 +36,9 @@ version is 4.3.11.
|
|||||||
### Troubleshooting
|
### Troubleshooting
|
||||||
|
|
||||||
If you are not able to find certain commands after switching to *Prezto*,
|
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.
|
window or tab.
|
||||||
|
|
||||||
Updating
|
|
||||||
--------
|
|
||||||
|
|
||||||
Pull the latest changes and update submodules.
|
|
||||||
|
|
||||||
git pull && git submodule update --init --recursive
|
|
||||||
|
|
||||||
Usage
|
Usage
|
||||||
-----
|
-----
|
||||||
|
|
||||||
@ -85,8 +78,7 @@ License
|
|||||||
|
|
||||||
(The MIT License)
|
(The MIT License)
|
||||||
|
|
||||||
Copyright (c) 2009-2011 Robby Russell and contributors.
|
Copyright (c) 2009-2012 Robby Russell, Sorin Ionescu, and contributors.
|
||||||
Copyright (c) 2011-2014 Sorin Ionescu and contributors.
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
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
|
this software and associated documentation files (the "Software"), to deal in
|
||||||
|
4
init.zsh
4
init.zsh
@ -10,7 +10,7 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
# Check for the minimum supported version.
|
# Check for the minimum supported version.
|
||||||
min_zsh_version='4.3.11'
|
min_zsh_version='4.3.10'
|
||||||
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
|
||||||
@ -25,7 +25,7 @@ unset min_zsh_version
|
|||||||
function pmodload {
|
function pmodload {
|
||||||
local -a pmodules
|
local -a pmodules
|
||||||
local pmodule
|
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.
|
# $argv is overridden in the anonymous function.
|
||||||
pmodules=("$argv[@]")
|
pmodules=("$argv[@]")
|
||||||
|
@ -31,16 +31,6 @@ Dpkg
|
|||||||
|
|
||||||
Defines dpkg aliases and functions.
|
Defines dpkg aliases and functions.
|
||||||
|
|
||||||
Editor
|
|
||||||
------
|
|
||||||
|
|
||||||
Sets key bindings.
|
|
||||||
|
|
||||||
Emacs
|
|
||||||
-----
|
|
||||||
|
|
||||||
Enables Emacs dependency management.
|
|
||||||
|
|
||||||
Environment
|
Environment
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
@ -51,19 +41,13 @@ Fasd
|
|||||||
|
|
||||||
Maintains a frequently used file and directory list for fast access.
|
Maintains a frequently used file and directory list for fast access.
|
||||||
|
|
||||||
Git
|
|
||||||
---
|
|
||||||
|
|
||||||
Enhances the Git distributed version control system by providing aliases,
|
|
||||||
functions and by exposing repository status information to prompts.
|
|
||||||
|
|
||||||
GNU Utility
|
GNU Utility
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
Provides for the interactive use of GNU utilities on non-GNU systems.
|
Provides for the interactive use of GNU utilities on non-GNU systems.
|
||||||
|
|
||||||
GPG
|
GPG
|
||||||
---
|
---------
|
||||||
|
|
||||||
Provides for an easier use of GPG by setting up gpg-agent.
|
Provides for an easier use of GPG by setting up gpg-agent.
|
||||||
|
|
||||||
@ -77,16 +61,16 @@ Helper
|
|||||||
|
|
||||||
Provides helper functions for developing modules.
|
Provides helper functions for developing modules.
|
||||||
|
|
||||||
History
|
|
||||||
-------
|
|
||||||
|
|
||||||
Sets history options and defines history aliases.
|
|
||||||
|
|
||||||
History Substring Search
|
History Substring Search
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
Integrates zsh-history-substring-search into Prezto.
|
Integrates zsh-history-substring-search into Prezto.
|
||||||
|
|
||||||
|
History
|
||||||
|
-------
|
||||||
|
|
||||||
|
Sets history options and defines history aliases.
|
||||||
|
|
||||||
Homebrew
|
Homebrew
|
||||||
--------
|
--------
|
||||||
|
|
||||||
@ -102,11 +86,6 @@ Node.js
|
|||||||
|
|
||||||
Provides utility functions for Node.js and loads npm completion.
|
Provides utility functions for Node.js and loads npm completion.
|
||||||
|
|
||||||
Ocaml
|
|
||||||
-----
|
|
||||||
|
|
||||||
Initializes Ocaml package management.
|
|
||||||
|
|
||||||
OSX
|
OSX
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -158,10 +137,10 @@ Spectrum
|
|||||||
|
|
||||||
Provides for easier use of 256 colors and effects.
|
Provides for easier use of 256 colors and effects.
|
||||||
|
|
||||||
SSH
|
SSH-Agent
|
||||||
---
|
---------
|
||||||
|
|
||||||
Provides for an easier use of SSH by setting up ssh-agent.
|
Provides for an easier use of ssh-agent.
|
||||||
|
|
||||||
Syntax Highlighting
|
Syntax Highlighting
|
||||||
-------------------
|
-------------------
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
Command-Not-Found
|
Command-Not-Found
|
||||||
=================
|
=================
|
||||||
|
|
||||||
Displays installation information for not found commands by loading the
|
Loads the [command-not-found][1] tool on Debian-based distributions.
|
||||||
[command-not-found][1] tool on Debian-based and Arch Linux-based distributions.
|
|
||||||
|
|
||||||
Authors
|
Authors
|
||||||
-------
|
-------
|
||||||
|
@ -5,14 +5,10 @@
|
|||||||
# Joseph Jon Booker <joe@neoturbine.net>
|
# Joseph Jon Booker <joe@neoturbine.net>
|
||||||
#
|
#
|
||||||
|
|
||||||
# Load command-not-found on Debian-based distributions.
|
|
||||||
if [[ -s '/etc/zsh_command_not_found' ]]; then
|
|
||||||
source '/etc/zsh_command_not_found'
|
|
||||||
# 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'
|
|
||||||
# Return if requirements are not found.
|
# Return if requirements are not found.
|
||||||
else
|
if [[ ! -s '/etc/zsh_command_not_found' ]]; then
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
source '/etc/zsh_command_not_found'
|
||||||
|
|
||||||
|
Submodule modules/completion/external updated: 1d6a2aa024...662229f6f0
@ -107,39 +107,30 @@ function editor-info {
|
|||||||
}
|
}
|
||||||
zle -N editor-info
|
zle -N editor-info
|
||||||
|
|
||||||
# Updates editor information when the keymap changes.
|
# Ensures that $terminfo values are valid and updates editor information when
|
||||||
function zle-keymap-select {
|
# 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 editor-info
|
||||||
}
|
}
|
||||||
zle -N zle-keymap-select
|
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-finish
|
||||||
|
zle -N zle-line-init
|
||||||
|
|
||||||
# Toggles emacs overwrite mode and updates editor information.
|
# Toggles emacs overwrite mode and updates editor information.
|
||||||
function overwrite-mode {
|
function overwrite-mode {
|
||||||
|
@ -55,8 +55,6 @@ alias gcr='git revert'
|
|||||||
alias gcR='git reset "HEAD^"'
|
alias gcR='git reset "HEAD^"'
|
||||||
alias gcs='git show'
|
alias gcs='git show'
|
||||||
alias gcl='git-commit-lost'
|
alias gcl='git-commit-lost'
|
||||||
alias gcS='git commit -S'
|
|
||||||
alias gpS='git show --pretty=short --show-signature'
|
|
||||||
|
|
||||||
# Conflict (C)
|
# Conflict (C)
|
||||||
alias gCl='git status | sed -n "s/^.*both [a-z]*ed: *//p"'
|
alias gCl='git status | sed -n "s/^.*both [a-z]*ed: *//p"'
|
||||||
@ -109,7 +107,6 @@ alias glo='git log --topo-order --pretty=format:${_git_log_oneline_format}'
|
|||||||
alias glg='git log --topo-order --all --graph --pretty=format:${_git_log_oneline_format}'
|
alias glg='git log --topo-order --all --graph --pretty=format:${_git_log_oneline_format}'
|
||||||
alias glb='git log --topo-order --pretty=format:${_git_log_brief_format}'
|
alias glb='git log --topo-order --pretty=format:${_git_log_brief_format}'
|
||||||
alias glc='git shortlog --summary --numbered'
|
alias glc='git shortlog --summary --numbered'
|
||||||
alias glS='git log --show-signature'
|
|
||||||
|
|
||||||
# Merge (m)
|
# Merge (m)
|
||||||
alias gm='git merge'
|
alias gm='git merge'
|
||||||
@ -171,10 +168,6 @@ alias gSs='git submodule sync'
|
|||||||
alias gSu='git submodule foreach git pull origin master'
|
alias gSu='git submodule foreach git pull origin master'
|
||||||
alias gSx='git-submodule-remove'
|
alias gSx='git-submodule-remove'
|
||||||
|
|
||||||
# Tag (t)
|
|
||||||
alias gts='git tag -s'
|
|
||||||
alias gtv='git verify-tag'
|
|
||||||
|
|
||||||
# Working Copy (w)
|
# Working Copy (w)
|
||||||
alias gws='git status --ignore-submodules=${_git_status_ignore_submodules} --short'
|
alias gws='git status --ignore-submodules=${_git_status_ignore_submodules} --short'
|
||||||
alias gwS='git status --ignore-submodules=${_git_status_ignore_submodules}'
|
alias gwS='git status --ignore-submodules=${_git_status_ignore_submodules}'
|
||||||
|
@ -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.
|
||||||
|
@ -12,7 +12,7 @@ fi
|
|||||||
|
|
||||||
# Set the default paths to gpg-agent files.
|
# Set the default paths to gpg-agent files.
|
||||||
_gpg_agent_conf="$HOME/.gnupg/gpg-agent.conf"
|
_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.
|
# Start gpg-agent if not started.
|
||||||
if ! ps -U "$USER" -o ucomm | grep -q gpg-agent; then
|
if ! ps -U "$USER" -o ucomm | grep -q gpg-agent; then
|
||||||
|
Submodule modules/history-substring-search/external updated: 1e76804052...d9b28ed7f9
@ -10,7 +10,7 @@
|
|||||||
pmodload 'editor'
|
pmodload 'editor'
|
||||||
|
|
||||||
# Source module files.
|
# Source module files.
|
||||||
source "${0:h}/external/zsh-history-substring-search.zsh" || return 1
|
source "${0:h}/external/zsh-history-substring-search.zsh"
|
||||||
|
|
||||||
#
|
#
|
||||||
# Search
|
# Search
|
||||||
|
@ -1,28 +0,0 @@
|
|||||||
Ocaml
|
|
||||||
=====
|
|
||||||
|
|
||||||
Initializes [Ocaml][1] package management.
|
|
||||||
|
|
||||||
OPAM
|
|
||||||
----
|
|
||||||
|
|
||||||
[OPAM][2] is a package manager for Ocaml.
|
|
||||||
|
|
||||||
This module enables local package installation with OPAM by extending the
|
|
||||||
relevant path and Ocaml variables.
|
|
||||||
|
|
||||||
### Usage
|
|
||||||
|
|
||||||
Install packages to your local package directory with `opam install`.
|
|
||||||
|
|
||||||
Authors
|
|
||||||
-------
|
|
||||||
|
|
||||||
*The authors of this module should be contacted via the [issue tracker][3].*
|
|
||||||
|
|
||||||
- [Sebastian Wiesner](https://github.com/lunaryorn)
|
|
||||||
|
|
||||||
[1]: http://ocaml.org/
|
|
||||||
[2]: http://opam.ocamlpro.com/
|
|
||||||
[3]: https://github.com/sorin-ionescu/prezto/issues
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
|||||||
#
|
|
||||||
# Initializes Ocaml package management.
|
|
||||||
#
|
|
||||||
# Authors:
|
|
||||||
# Sebastian Wiesner <lunaryorn@gmail.com>
|
|
||||||
#
|
|
||||||
|
|
||||||
# Return if requirements are not found.
|
|
||||||
if (( ! $+commands[opam] )); then
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Initialize OPAM.
|
|
||||||
eval "$(opam config env)"
|
|
||||||
|
|
@ -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
|
||||||
|
|
||||||
|
@ -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>
|
24
modules/osx/functions/manb
Normal file
24
modules/osx/functions/manb
Normal 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 "$@"
|
||||||
|
|
@ -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 "$@"
|
|
||||||
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
#
|
|
||||||
# Previews files in Quick Look.
|
|
||||||
#
|
|
||||||
# Authors:
|
|
||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
|
||||||
#
|
|
||||||
|
|
||||||
if (( $# > 0 )); then
|
|
||||||
qlmanage -p "$@" &> /dev/null
|
|
||||||
fi
|
|
@ -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
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
#
|
#
|
||||||
|
|
||||||
local tmp="${TMPDIR:-/tmp}/pacman-disowned-$UID-$$"
|
local tmp="$TMPDIR/pacman-disowned-$UID-$$"
|
||||||
local db="$tmp/db"
|
local db="$tmp/db"
|
||||||
local fs="$tmp/fs"
|
local fs="$tmp/fs"
|
||||||
|
|
||||||
|
@ -27,9 +27,6 @@ if (( $+commands[$_pacman_frontend] )); then
|
|||||||
if [[ -s "${0:h}/${_pacman_frontend}.zsh" ]]; then
|
if [[ -s "${0:h}/${_pacman_frontend}.zsh" ]]; then
|
||||||
source "${0:h}/${_pacman_frontend}.zsh"
|
source "${0:h}/${_pacman_frontend}.zsh"
|
||||||
fi
|
fi
|
||||||
else
|
|
||||||
_pacman_frontend='pacman'
|
|
||||||
_pacman_sudo='sudo '
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -37,49 +34,49 @@ fi
|
|||||||
#
|
#
|
||||||
|
|
||||||
# Pacman.
|
# Pacman.
|
||||||
alias pac="${_pacman_frontend}"
|
alias pac='pacman'
|
||||||
|
|
||||||
# Installs packages from repositories.
|
# Installs packages from repositories.
|
||||||
alias paci="${_pacman_sudo}${_pacman_frontend} --sync"
|
alias paci='sudo pacman --sync'
|
||||||
|
|
||||||
# Installs packages from files.
|
# Installs packages from files.
|
||||||
alias pacI="${_pacman_sudo}${_pacman_frontend} --upgrade"
|
alias pacI='sudo pacman --upgrade'
|
||||||
|
|
||||||
# Removes packages and unneeded dependencies.
|
# Removes packages and unneeded dependencies.
|
||||||
alias pacx="${_pacman_sudo}${_pacman_frontend} --remove"
|
alias pacx='sudo pacman --remove'
|
||||||
|
|
||||||
# Removes packages, their configuration, and unneeded dependencies.
|
# 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.
|
# 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.
|
# 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.
|
# Searches for packages in the repositories.
|
||||||
alias pacs="${_pacman_frontend} --sync --search"
|
alias pacs='pacman --sync --recursive'
|
||||||
|
|
||||||
# Searches for packages in the local database.
|
# Searches for packages in the local database.
|
||||||
alias pacS="${_pacman_frontend} --query --search"
|
alias pacS='pacman --query --recursive'
|
||||||
|
|
||||||
# Lists orphan packages.
|
# Lists orphan packages.
|
||||||
alias pacman-list-orphans="${_pacman_sudo}${_pacman_frontend} --query --deps --unrequired"
|
alias pacman-list-orphans='sudo pacman --query --deps --unrequired'
|
||||||
|
|
||||||
# Removes orphan packages.
|
# 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
|
# Synchronizes the local package and Arch Build System databases against the
|
||||||
# repositories.
|
# repositories.
|
||||||
if (( $+commands[abs] )); then
|
if (( $+commands[abs] )); then
|
||||||
alias pacu="${_pacman_sudo}${_pacman_frontend} --sync --refresh && ${_pacman_sudo}abs"
|
alias pacu='sudo pacman --sync --refresh && sudo abs'
|
||||||
else
|
else
|
||||||
alias pacu="${_pacman_sudo}${_pacman_frontend} --sync --refresh"
|
alias pacu='sudo pacman --sync --refresh'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Synchronizes the local package database against the repositories then
|
# Synchronizes the local package database against the repositories then
|
||||||
# upgrades outdated packages.
|
# 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
|
||||||
|
|
||||||
|
@ -11,9 +11,9 @@
|
|||||||
|
|
||||||
# Disable color.
|
# Disable color.
|
||||||
if ! zstyle -t ':prezto:module:pacman:yaourt' color; then
|
if ! zstyle -t ':prezto:module:pacman:yaourt' color; then
|
||||||
alias pacman='yaourt --nocolor'
|
alias pacman='pacman --nocolor'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Manages .pac* files.
|
# Manages .pac* files.
|
||||||
alias pacc='yaourt -C'
|
alias pacc='pacman -C'
|
||||||
|
|
||||||
|
@ -6,15 +6,15 @@ Enables local Python and local Python package installation.
|
|||||||
Local Python Installation
|
Local Python Installation
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
[pyenv][4] builds and installs multiple Python versions locally in the home
|
[pythonz][4] builds and installs multiple Python versions locally in the home
|
||||||
directory.
|
directory.
|
||||||
|
|
||||||
This module prepends the pyenv directory to the path variable to enable the
|
This module prepends the pythonz directory to the path variable to enable the
|
||||||
execution of `pyenv`.
|
execution of `pythonz`.
|
||||||
|
|
||||||
### Usage
|
### Usage
|
||||||
|
|
||||||
Install Python versions with `pyenv install` into *~/.pyenv/versions*.
|
Install Python versions with `pythonz install` into *~/.pythonz/pythons*.
|
||||||
|
|
||||||
Local Package Installation
|
Local Package Installation
|
||||||
--------------------------
|
--------------------------
|
||||||
@ -66,6 +66,16 @@ Aliases
|
|||||||
|
|
||||||
- `py` is short for `python`.
|
- `py` is short for `python`.
|
||||||
|
|
||||||
|
### Pythonz
|
||||||
|
|
||||||
|
- `pyz` is short for `pythonz`.
|
||||||
|
- `pyzc` removes stale source folders and archives.
|
||||||
|
- `pyzi` installs Python versions.
|
||||||
|
- `pyzl` lists installed Python versions.
|
||||||
|
- `pyzL` lists available Python versions.
|
||||||
|
- `pyzu` updates itself to the latest version.
|
||||||
|
- `pyzx` uninstalls Python versions.
|
||||||
|
|
||||||
Functions
|
Functions
|
||||||
---------
|
---------
|
||||||
|
|
||||||
@ -95,6 +105,6 @@ Authors
|
|||||||
[1]: http://www.python.org/dev/peps/pep-0370/
|
[1]: http://www.python.org/dev/peps/pep-0370/
|
||||||
[2]: http://www.doughellmann.com/projects/virtualenvwrapper/
|
[2]: http://www.doughellmann.com/projects/virtualenvwrapper/
|
||||||
[3]: http://pypi.python.org/pypi/virtualenv
|
[3]: http://pypi.python.org/pypi/virtualenv
|
||||||
[4]: https://github.com/yyuu/pyenv
|
[4]: http://saghul.github.com/pythonz/
|
||||||
[5]: https://github.com/sorin-ionescu/prezto/issues
|
[5]: https://github.com/sorin-ionescu/prezto/issues
|
||||||
|
|
||||||
|
@ -6,38 +6,29 @@
|
|||||||
# Sebastian Wiesner <lunaryorn@googlemail.com>
|
# Sebastian Wiesner <lunaryorn@googlemail.com>
|
||||||
#
|
#
|
||||||
|
|
||||||
# Load manually installed pyenv into the shell session.
|
# Load pythonz into the shell session.
|
||||||
if [[ -s "$HOME/.pyenv/bin/pyenv" ]]; then
|
if [[ -s $HOME/.pythonz/bin/pythonz ]]; then
|
||||||
path=("$HOME/.pyenv/bin" $path)
|
path=($HOME/.pythonz/bin $path)
|
||||||
eval "$(pyenv init -)"
|
|
||||||
|
|
||||||
# Load package manager installed pyenv into the shell session.
|
|
||||||
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.
|
|
||||||
else
|
|
||||||
if [[ -n "$PYTHONUSERBASE" ]]; then
|
|
||||||
path=($PYTHONUSERBASE/bin $path)
|
|
||||||
elif [[ "$OSTYPE" == darwin* ]]; then
|
|
||||||
path=($HOME/Library/Python/*/bin(N) $path)
|
|
||||||
else
|
|
||||||
# This is subject to change.
|
|
||||||
path=($HOME/.local/bin $path)
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Return if requirements are not found.
|
# Return if requirements are not found.
|
||||||
if (( ! $+commands[python] && ! $+commands[pyenv] )); then
|
if (( ! $+commands[python] && ! $+commands[pythonz] )); then
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Prepend PEP 370 per user site packages directory, which defaults to
|
||||||
|
# ~/Library/Python on Mac OS X and ~/.local elsewhere, to PATH.
|
||||||
|
if [[ "$OSTYPE" == darwin* ]]; then
|
||||||
|
path=($HOME/Library/Python/*/bin(N) $path)
|
||||||
|
else
|
||||||
|
# This is subject to change.
|
||||||
|
path=($HOME/.local/bin $path)
|
||||||
|
fi
|
||||||
|
|
||||||
# Load virtualenvwrapper into the shell session.
|
# Load virtualenvwrapper into the shell session.
|
||||||
if (( $+commands[virtualenvwrapper_lazy.sh] )); then
|
if (( $+commands[virtualenvwrapper_lazy.sh] )); then
|
||||||
# Set the directory where virtual environments are stored.
|
# Set the directory where virtual environments are stored.
|
||||||
export WORKON_HOME="$HOME/.virtualenvs"
|
export WORKON_HOME=$HOME/.virtualenvs
|
||||||
|
|
||||||
# Disable the virtualenv prompt.
|
# Disable the virtualenv prompt.
|
||||||
VIRTUAL_ENV_DISABLE_PROMPT=1
|
VIRTUAL_ENV_DISABLE_PROMPT=1
|
||||||
@ -51,3 +42,14 @@ fi
|
|||||||
|
|
||||||
alias py='python'
|
alias py='python'
|
||||||
|
|
||||||
|
# pythonz
|
||||||
|
if (( $+commands[pythonz] )); then
|
||||||
|
alias pyz='pythonz'
|
||||||
|
alias pyzc='pythonz cleanup'
|
||||||
|
alias pyzi='pythonz install'
|
||||||
|
alias pyzl='pythonz list'
|
||||||
|
alias pyzL='pythonz list -a'
|
||||||
|
alias pyzu='pythonz update'
|
||||||
|
alias pyzx='pythonz uninstall'
|
||||||
|
fi
|
||||||
|
|
||||||
|
@ -7,30 +7,39 @@
|
|||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
#
|
#
|
||||||
|
|
||||||
# Load dependencies.
|
|
||||||
pmodload 'ruby'
|
|
||||||
|
|
||||||
# Return if requirements are not found.
|
# Return if requirements are not found.
|
||||||
if (( ! $+commands[bundle] )); then
|
if (( ! $+commands[rails] )); then
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
#
|
||||||
# Aliases
|
# Aliases (Compatible with Rails 2)
|
||||||
#
|
#
|
||||||
|
|
||||||
alias ror='bundle exec rails'
|
alias ror='rails'
|
||||||
alias rorc='bundle exec rails console'
|
alias rorc='_rails-command console'
|
||||||
alias rordc='bundle exec rails dbconsole'
|
alias rordc='_rails-command dbconsole'
|
||||||
alias rordm='bundle exec rake db:migrate'
|
alias rordm='rake db:migrate'
|
||||||
alias rordM='bundle exec rake db:migrate db:test:clone'
|
alias rordM='rake db:migrate db:test:clone'
|
||||||
alias rordr='bundle exec rake db:rollback'
|
alias rordr='rake db:rollback'
|
||||||
alias rorg='bundle exec rails generate'
|
alias rorg='_rails-command generate'
|
||||||
alias rorl='tail -f "$(ruby-app-root)/log/development.log"'
|
alias rorl='tail -f log/development.log'
|
||||||
alias rorlc='bundle exec rake log:clear'
|
alias rorlc='rake log:clear'
|
||||||
alias rorp='bundle exec rails plugin'
|
alias rorp='_rails-command plugin'
|
||||||
alias rorr='bundle exec rails runner'
|
alias rorr='_rails-command runner'
|
||||||
alias rors='bundle exec rails server'
|
alias rors='_rails-command server'
|
||||||
alias rorsd='bundle exec rails server --debugger'
|
alias rorsd='_rails-command server --debugger'
|
||||||
alias rorx='bundle exec rails destroy'
|
alias rorx='_rails-command destroy'
|
||||||
|
|
||||||
|
#
|
||||||
|
# Functions
|
||||||
|
#
|
||||||
|
|
||||||
|
function _rails-command {
|
||||||
|
if [[ -e "script/server" ]]; then
|
||||||
|
ruby script/"$@"
|
||||||
|
else
|
||||||
|
ruby script/rails "$@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -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
|
||||||
-------
|
-------
|
||||||
|
|
||||||
@ -77,7 +59,6 @@ Aliases
|
|||||||
Functions
|
Functions
|
||||||
---------
|
---------
|
||||||
|
|
||||||
- `ruby-app-root` displays the path to the Ruby application root directory.
|
|
||||||
- `ruby-info` exposes information about the Ruby environment via the
|
- `ruby-info` exposes information about the Ruby environment via the
|
||||||
`$ruby_info` associative array.
|
`$ruby_info` associative array.
|
||||||
|
|
||||||
@ -105,4 +86,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
|
|
||||||
|
@ -1,19 +0,0 @@
|
|||||||
#
|
|
||||||
# Displays the path to the Ruby application root directory.
|
|
||||||
#
|
|
||||||
# Authors:
|
|
||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
|
||||||
#
|
|
||||||
|
|
||||||
local root_dir="$PWD"
|
|
||||||
|
|
||||||
while [[ "$root_dir" != '/' ]]; do
|
|
||||||
if [[ -f "$root_dir/Gemfile" ]]; then
|
|
||||||
print "$root_dir"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
root_dir="$root_dir:h"
|
|
||||||
done
|
|
||||||
|
|
||||||
return 1
|
|
||||||
|
|
@ -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.
|
||||||
|
@ -23,16 +23,14 @@ 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.
|
# Install local gems according to operating system conventions.
|
||||||
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
|
else
|
||||||
path=($HOME/.gem/ruby/*/bin(N) $path)
|
if [[ "$OSTYPE" == darwin* ]]; then
|
||||||
|
export GEM_HOME="$HOME/Library/Ruby/Gems/1.8"
|
||||||
|
path=("$GEM_HOME/bin" $path)
|
||||||
|
else
|
||||||
|
path=($HOME/.gem/ruby/*/bin(N) $path)
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Return if requirements are not found.
|
# Return if requirements are not found.
|
||||||
@ -50,17 +48,15 @@ alias rb='ruby'
|
|||||||
# Bundler
|
# Bundler
|
||||||
if (( $+commands[bundle] )); then
|
if (( $+commands[bundle] )); then
|
||||||
alias rbb='bundle'
|
alias rbb='bundle'
|
||||||
alias rbbe='bundle exec'
|
alias rbbe='rbb exec'
|
||||||
alias rbbi='bundle install --path vendor/bundle'
|
alias rbbi='rbb install --path vendor/bundle'
|
||||||
alias rbbl='bundle list'
|
alias rbbl='rbb list'
|
||||||
alias rbbo='bundle open'
|
alias rbbo='rbb open'
|
||||||
alias rbbp='bundle package'
|
alias rbbp='rbb package'
|
||||||
alias rbbu='bundle update'
|
alias rbbu='rbb update'
|
||||||
alias rbbI='rbbi \
|
alias rbbI='rbbi \
|
||||||
&& bundle package \
|
&& rbb package \
|
||||||
&& print .bundle >>! .gitignore \
|
&& print .bundle >>! .gitignore \
|
||||||
&& print vendor/assets >>! .gitignore \
|
|
||||||
&& print vendor/bundle >>! .gitignore \
|
&& print vendor/bundle >>! .gitignore \
|
||||||
&& print vendor/cache >>! .gitignore'
|
&& print vendor/cache >>! .gitignore'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
@ -14,20 +14,17 @@ fi
|
|||||||
_ssh_dir="$HOME/.ssh"
|
_ssh_dir="$HOME/.ssh"
|
||||||
|
|
||||||
# Set the path to the environment file if not set by another module.
|
# 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.
|
# 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.
|
# Start ssh-agent if not started.
|
||||||
if [[ ! -S "$SSH_AUTH_SOCK" ]]; then
|
if [[ ! -S "$SSH_AUTH_SOCK" ]]; then
|
||||||
|
eval "$(ssh-agent | sed '/^echo /d' | tee "$_ssh_agent_env")"
|
||||||
|
else
|
||||||
# Export environment variables.
|
# Export environment variables.
|
||||||
source "$_ssh_agent_env" 2> /dev/null
|
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} ssh-agent"; then
|
|
||||||
eval "$(ssh-agent | sed '/^echo /d' | tee "$_ssh_agent_env")"
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Create a persistent SSH authentication socket.
|
# Create a persistent SSH authentication socket.
|
||||||
|
Submodule modules/syntax-highlighting/external updated: f289a9f8e7...dbd27cb30a
@ -11,7 +11,7 @@ if ! zstyle -t ':prezto:module:syntax-highlighting' color; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Source module files.
|
# Source module files.
|
||||||
source "${0:h}/external/zsh-syntax-highlighting.zsh" || return 1
|
source "${0:h}/external/zsh-syntax-highlighting.zsh"
|
||||||
|
|
||||||
# Set highlighters.
|
# Set highlighters.
|
||||||
zstyle -a ':prezto:module:syntax-highlighting' highlighters 'ZSH_HIGHLIGHT_HIGHLIGHTERS'
|
zstyle -a ':prezto:module:syntax-highlighting' highlighters 'ZSH_HIGHLIGHT_HIGHLIGHTERS'
|
||||||
|
@ -13,33 +13,23 @@ directory, add the following to *zpreztorc*:
|
|||||||
|
|
||||||
zstyle ':prezto:module:terminal' auto-title 'yes'
|
zstyle ':prezto:module:terminal' auto-title 'yes'
|
||||||
|
|
||||||
Auto titling is disabled inside terminal multiplexers, except inside dvtm, since
|
|
||||||
it interferes with window names defined in configuration files and profile
|
|
||||||
managers.
|
|
||||||
|
|
||||||
To format terminal window and tab titles, add the following to *zpreztorc*:
|
|
||||||
|
|
||||||
zstyle ':prezto:module:terminal:window-title' format '%n@%m: %s'
|
|
||||||
zstyle ':prezto:module:terminal:tab-title' format '%m: %s'
|
|
||||||
|
|
||||||
`%s` will be replaced with the current working directory path or the currently
|
|
||||||
executing program name.
|
|
||||||
|
|
||||||
For a list of sequences, see [Expansion of Prompt Sequences][1].
|
|
||||||
|
|
||||||
Functions
|
Functions
|
||||||
---------
|
---------
|
||||||
|
|
||||||
- `set-tab-title` sets the terminal tab title.
|
- `set-screen-window-title` sets the screen title.
|
||||||
- `set-window-title` sets the terminal or terminal multiplexer window title.
|
- `set-terminal-tab-title` sets the terminal tab title.
|
||||||
|
- `set-terminal-window-title` sets the terminal window title.
|
||||||
|
- `set-titles-with-command` sets the screen and terminal titles with
|
||||||
|
a given command.
|
||||||
|
- `set-titles-with-path` sets the screen and terminal titles with a given path.
|
||||||
|
|
||||||
Authors
|
Authors
|
||||||
-------
|
-------
|
||||||
|
|
||||||
*The authors of this module should be contacted via the [issue tracker][2].*
|
*The authors of this module should be contacted via the [issue tracker][1].*
|
||||||
|
|
||||||
|
- [James Cox](https://github.com/imajes)
|
||||||
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
||||||
|
|
||||||
[1]: http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html#Expansion-of-Prompt-Sequences
|
[1]: https://github.com/sorin-ionescu/prezto/issues
|
||||||
[2]: https://github.com/sorin-ionescu/prezto/issues
|
|
||||||
|
|
||||||
|
@ -2,123 +2,122 @@
|
|||||||
# Sets terminal window and tab titles.
|
# Sets terminal window and tab titles.
|
||||||
#
|
#
|
||||||
# Authors:
|
# Authors:
|
||||||
|
# James Cox <james@imaj.es>
|
||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
#
|
#
|
||||||
|
|
||||||
# Return if requirements are not found.
|
# Return if requirements are not found.
|
||||||
if [[ "$TERM" == (dumb|linux|*bsd*) ]]; then
|
if [[ "$TERM" == 'dumb' ]]; then
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Sets the terminal or terminal multiplexer window title.
|
# Set the GNU Screen window number.
|
||||||
function set-window-title {
|
if [[ -n "$WINDOW" ]]; then
|
||||||
local title_format{,ted}
|
export SCREEN_NO="%B${WINDOW}%b "
|
||||||
zstyle -s ':prezto:module:terminal:window-title' format 'title_format' || title_format="%s"
|
else
|
||||||
zformat -f title_formatted "$title_format" "s:$argv"
|
export SCREEN_NO=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Sets the GNU Screen title.
|
||||||
|
function set-screen-window-title {
|
||||||
if [[ "$TERM" == screen* ]]; then
|
if [[ "$TERM" == screen* ]]; then
|
||||||
title_format="\ek%s\e\\"
|
printf "\ek%s\e\\" ${(V)argv}
|
||||||
else
|
|
||||||
title_format="\e]2;%s\a"
|
|
||||||
fi
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
printf "$title_format" "${(V%)title_formatted}"
|
# Sets the terminal window title.
|
||||||
|
function set-terminal-window-title {
|
||||||
|
if [[ "$TERM" == ((x|a|ml|dt|E)term*|(u|)rxvt*) ]]; then
|
||||||
|
printf "\e]2;%s\a" ${(V)argv}
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Sets the terminal tab title.
|
# Sets the terminal tab title.
|
||||||
function set-tab-title {
|
function set-terminal-tab-title {
|
||||||
local title_format{,ted}
|
if [[ "$TERM" == ((x|a|ml|dt|E)term*|(u|)rxvt*) ]]; then
|
||||||
zstyle -s ':prezto:module:terminal:tab-title' format 'title_format' || title_format="%s"
|
printf "\e]1;%s\a" ${(V)argv}
|
||||||
zformat -f title_formatted "$title_format" "s:$argv"
|
fi
|
||||||
|
|
||||||
printf "\e]1;%s\a" ${(V%)title_formatted}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Sets the tab and window titles with a given command.
|
# Sets the tab and window titles with a given command.
|
||||||
function _terminal-set-titles-with-command {
|
function set-titles-with-command {
|
||||||
|
# Do not set the window and tab titles in Terminal.app because they are not
|
||||||
|
# reset upon command termination.
|
||||||
|
if [[ "$TERM_PROGRAM" == 'Apple_Terminal' ]]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
emulate -L zsh
|
emulate -L zsh
|
||||||
setopt EXTENDED_GLOB
|
setopt EXTENDED_GLOB
|
||||||
|
|
||||||
# Get the command name that is under job control.
|
# Get the command name that is under job control.
|
||||||
if [[ "${2[(w)1]}" == (fg|%*)(\;|) ]]; then
|
if [[ "${1[(w)1]}" == (fg|%*)(\;|) ]]; then
|
||||||
# Get the job name, and, if missing, set it to the default %+.
|
# Get the job name, and, if missing, set it to the default %+.
|
||||||
local job_name="${${2[(wr)%*(\;|)]}:-%+}"
|
local job_name="${${1[(wr)%*(\;|)]}:-%+}"
|
||||||
|
|
||||||
# Make a local copy for use in the subshell.
|
# Make a local copy for use in the subshell.
|
||||||
local -A jobtexts_from_parent_shell
|
local -A jobtexts_from_parent_shell
|
||||||
jobtexts_from_parent_shell=(${(kv)jobtexts})
|
jobtexts_from_parent_shell=(${(kv)jobtexts})
|
||||||
|
|
||||||
jobs "$job_name" 2>/dev/null > >(
|
jobs $job_name 2>/dev/null > >(
|
||||||
read index discarded
|
read index discarded
|
||||||
# The index is already surrounded by brackets: [1].
|
# The index is already surrounded by brackets: [1].
|
||||||
_terminal-set-titles-with-command "${(e):-\$jobtexts_from_parent_shell$index}"
|
set-titles-with-command "${(e):-\$jobtexts_from_parent_shell$index}"
|
||||||
)
|
)
|
||||||
else
|
else
|
||||||
# Set the command name, or in the case of sudo or ssh, the next command.
|
# Set the command name, or in the case of sudo or ssh, the next command.
|
||||||
local cmd="${${2[(wr)^(*=*|sudo|ssh|-*)]}:t}"
|
local cmd=${${1[(wr)^(*=*|sudo|ssh|-*)]}:t}
|
||||||
local truncated_cmd="${cmd/(#m)?(#c15,)/${MATCH[1,12]}...}"
|
local truncated_cmd="${cmd/(#m)?(#c15,)/${MATCH[1,12]}...}"
|
||||||
unset MATCH
|
unset MATCH
|
||||||
|
|
||||||
set-window-title "$cmd"
|
if [[ "$TERM" == screen* ]]; then
|
||||||
set-tab-title "$truncated_cmd"
|
set-screen-window-title "$truncated_cmd"
|
||||||
|
else
|
||||||
|
set-terminal-window-title "$cmd"
|
||||||
|
set-terminal-tab-title "$truncated_cmd"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Sets the tab and window titles with a given path.
|
# Sets the tab and window titles with a given path.
|
||||||
function _terminal-set-titles-with-path {
|
function set-titles-with-path {
|
||||||
emulate -L zsh
|
emulate -L zsh
|
||||||
setopt EXTENDED_GLOB
|
setopt EXTENDED_GLOB
|
||||||
|
|
||||||
local absolute_path="${${1:a}:-$PWD}"
|
local absolute_path="${${1:a}:-$PWD}"
|
||||||
local abbreviated_path="${absolute_path/#$HOME/~}"
|
|
||||||
local truncated_path="${abbreviated_path/(#m)?(#c15,)/...${MATCH[-12,-1]}}"
|
|
||||||
unset MATCH
|
|
||||||
|
|
||||||
set-window-title "$abbreviated_path"
|
if [[ "$TERM_PROGRAM" == 'Apple_Terminal' ]]; then
|
||||||
set-tab-title "$truncated_path"
|
printf '\e]7;%s\a' "file://$HOST${absolute_path// /%20}"
|
||||||
|
else
|
||||||
|
local abbreviated_path="${absolute_path/#$HOME/~}"
|
||||||
|
local truncated_path="${abbreviated_path/(#m)?(#c15,)/...${MATCH[-12,-1]}}"
|
||||||
|
unset MATCH
|
||||||
|
|
||||||
|
if [[ "$TERM" == screen* ]]; then
|
||||||
|
set-screen-window-title "$truncated_path"
|
||||||
|
else
|
||||||
|
set-terminal-window-title "$abbreviated_path"
|
||||||
|
set-terminal-tab-title "$truncated_path"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Sets the Terminal.app proxy icon.
|
# Don't override precmd/preexec; append to hook array.
|
||||||
function _terminal-set-terminal-app-proxy-icon {
|
|
||||||
printf '\e]7;%s\a' "file://$HOST${${1:-$PWD}// /%20}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Do not override precmd/preexec; append to the hook array.
|
|
||||||
autoload -Uz add-zsh-hook
|
autoload -Uz add-zsh-hook
|
||||||
|
|
||||||
# Set up the Apple Terminal.
|
# Sets the tab and window titles before the prompt is displayed.
|
||||||
if [[ "$TERM_PROGRAM" == 'Apple_Terminal' ]] \
|
function set-titles-precmd {
|
||||||
&& ( ! [[ -n "$STY" || -n "$TMUX" || -n "$DVTM" ]] )
|
if zstyle -t ':prezto:module:terminal' auto-title; then
|
||||||
then
|
set-titles-with-path
|
||||||
# Sets the Terminal.app current working directory before the prompt is
|
fi
|
||||||
# displayed.
|
}
|
||||||
add-zsh-hook precmd _terminal-set-terminal-app-proxy-icon
|
add-zsh-hook precmd set-titles-precmd
|
||||||
|
|
||||||
# Unsets the Terminal.app current working directory when a terminal
|
# Sets the tab and window titles before command execution.
|
||||||
# multiplexer or remote connection is started since it can no longer be
|
function set-titles-preexec {
|
||||||
# updated, and it becomes confusing when the directory displayed in the title
|
if zstyle -t ':prezto:module:terminal' auto-title; then
|
||||||
# bar is no longer synchronized with real current working directory.
|
set-titles-with-command "$2"
|
||||||
function _terminal-unset-terminal-app-proxy-icon {
|
fi
|
||||||
if [[ "${2[(w)1]:t}" == (screen|tmux|dvtm|ssh|mosh) ]]; then
|
}
|
||||||
_terminal-set-terminal-app-proxy-icon ' '
|
add-zsh-hook preexec set-titles-preexec
|
||||||
fi
|
|
||||||
}
|
|
||||||
add-zsh-hook preexec _terminal-unset-terminal-app-proxy-icon
|
|
||||||
|
|
||||||
# Do not set the tab and window titles in Terminal.app since it sets the tab
|
|
||||||
# title to the currently running process by default and the current working
|
|
||||||
# directory is set separately.
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Set up non-Apple terminals.
|
|
||||||
if zstyle -t ':prezto:module:terminal' auto-title \
|
|
||||||
&& ( ! [[ -n "$STY" || -n "$TMUX" ]] )
|
|
||||||
then
|
|
||||||
# Sets the tab and window titles before the prompt is displayed.
|
|
||||||
add-zsh-hook precmd _terminal-set-titles-with-path
|
|
||||||
|
|
||||||
# Sets the tab and window titles before command execution.
|
|
||||||
add-zsh-hook preexec _terminal-set-titles-with-command
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
@ -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
|
||||||
|
|
||||||
#
|
#
|
||||||
|
54
modules/update/functions/pupdate
Normal file
54
modules/update/functions/pupdate
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
#
|
||||||
|
# Updates Prezto to the latest version.
|
||||||
|
#
|
||||||
|
# Authors:
|
||||||
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
|
#
|
||||||
|
|
||||||
|
local remote_name
|
||||||
|
local remote_branch
|
||||||
|
local auto_commit
|
||||||
|
local use_color
|
||||||
|
|
||||||
|
zstyle -s ':prezto:module:update:remote' name 'remote_name'
|
||||||
|
zstyle -s ':prezto:module:update:remote' branch 'remote_branch'
|
||||||
|
zstyle -t ':prezto:module:update' auto-commit && auto_commit='yes'
|
||||||
|
zstyle -t ':prezto:module:update:*' color && use_color='yes'
|
||||||
|
|
||||||
|
if ! git \
|
||||||
|
--git-dir="$(cd "${ZDOTDIR:-$HOME}/.zprezto" && git-root)" \
|
||||||
|
--work-tree="${ZDOTDIR:-$HOME}/.zprezto" \
|
||||||
|
pull \
|
||||||
|
$(! is-true "$auto_commit" && print '--no-commit') \
|
||||||
|
--strategy=recursive \
|
||||||
|
-X ours \
|
||||||
|
"${remote_name:-origin}" \
|
||||||
|
"${remote_branch:-master}" 2> /dev/null
|
||||||
|
then
|
||||||
|
is-true "$use_color" && printf "$FG[red]"
|
||||||
|
print 'There was an error updating. Try again later?'
|
||||||
|
is-true "$use_color" && printf "$FG[none]"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
is-true "$use_color" && printf "$FG[green]"
|
||||||
|
printf '%s' \
|
||||||
|
'________ _____
|
||||||
|
___ __ \___________________ /______
|
||||||
|
__ /_/ /_ ___/ _ \__ /_ __/ __ \
|
||||||
|
_ ____/_ / / __/_ /_/ /_ / /_/ /
|
||||||
|
/_/ /_/ \___/_____/\__/ \____/
|
||||||
|
'
|
||||||
|
is-true "$use_color" && printf "$FG[cyan]"
|
||||||
|
print
|
||||||
|
print 'Prezto has been updated to the latest version.'
|
||||||
|
print 'Follow me on GitHub at https://github.com/sorin-ionescu/prezto.'
|
||||||
|
if ! is-true "$auto_commit"; then
|
||||||
|
is-true "$use_color" && printf "$FG[yellow]"
|
||||||
|
print
|
||||||
|
print 'Updates must be manually commited.'
|
||||||
|
fi
|
||||||
|
print
|
||||||
|
is-true "$use_color" && printf "$FG[none]"
|
||||||
|
return 0
|
||||||
|
|
24
modules/update/init.zsh
Normal file
24
modules/update/init.zsh
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#
|
||||||
|
# Updates Prezto periodically.
|
||||||
|
#
|
||||||
|
# Authors:
|
||||||
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
|
#
|
||||||
|
|
||||||
|
_updater_date_file="$HOME/.zupdate"
|
||||||
|
if zstyle -t ':prezto:module:update' auto-update; then
|
||||||
|
zstyle -s ':prezto:module:update' frequency '_updater_check_frequency'
|
||||||
|
|
||||||
|
# Initialize the update reminder.
|
||||||
|
if [[ ! -f "$_updater_date_file" ]]; then
|
||||||
|
touch "$_updater_date_file"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check for update every 7 days.
|
||||||
|
if [[ "$_updater_date_file"(Nm+$_updater_check_frequency) ]]; then
|
||||||
|
pupdate && touch "$_updater_date_file"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
unset _updater_{date_file,check_frequency}
|
||||||
|
|
@ -50,7 +50,6 @@ Aliases
|
|||||||
|
|
||||||
### Disabled File Globbing
|
### Disabled File Globbing
|
||||||
|
|
||||||
- `bower`
|
|
||||||
- `fc`
|
- `fc`
|
||||||
- `find`
|
- `find`
|
||||||
- `ftp`
|
- `ftp`
|
||||||
|
@ -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'
|
||||||
@ -105,17 +104,17 @@ alias sl='ls' # I often screw this up.
|
|||||||
# Mac OS X Everywhere
|
# Mac OS X Everywhere
|
||||||
if [[ "$OSTYPE" == darwin* ]]; then
|
if [[ "$OSTYPE" == darwin* ]]; then
|
||||||
alias o='open'
|
alias o='open'
|
||||||
elif [[ "$OSTYPE" == cygwin* ]]; then
|
alias get='curl --continue-at - --location --progress-bar --remote-name --remote-time'
|
||||||
alias o='cygstart'
|
|
||||||
alias pbcopy='tee > /dev/clipboard'
|
|
||||||
alias pbpaste='cat /dev/clipboard'
|
|
||||||
else
|
else
|
||||||
alias o='xdg-open'
|
alias o='xdg-open'
|
||||||
|
alias get='wget --continue --progress=bar --timestamping'
|
||||||
|
|
||||||
if (( $+commands[xclip] )); then
|
if (( $+commands[xclip] )); then
|
||||||
alias pbcopy='xclip -selection clipboard -in'
|
alias pbcopy='xclip -selection clipboard -in'
|
||||||
alias pbpaste='xclip -selection clipboard -out'
|
alias pbpaste='xclip -selection clipboard -out'
|
||||||
elif (( $+commands[xsel] )); then
|
fi
|
||||||
|
|
||||||
|
if (( $+commands[xsel] )); then
|
||||||
alias pbcopy='xsel --clipboard --input'
|
alias pbcopy='xsel --clipboard --input'
|
||||||
alias pbpaste='xsel --clipboard --output'
|
alias pbpaste='xsel --clipboard --output'
|
||||||
fi
|
fi
|
||||||
@ -124,13 +123,6 @@ fi
|
|||||||
alias pbc='pbcopy'
|
alias pbc='pbcopy'
|
||||||
alias pbp='pbpaste'
|
alias pbp='pbpaste'
|
||||||
|
|
||||||
# File Download
|
|
||||||
if (( $+commands[curl] )); then
|
|
||||||
alias get='curl --continue-at - --location --progress-bar --remote-name --remote-time'
|
|
||||||
elif (( $+commands[wget] )); then
|
|
||||||
alias get='wget --continue --progress=bar --timestamping'
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Resource Usage
|
# Resource Usage
|
||||||
alias df='df -kh'
|
alias df='df -kh'
|
||||||
alias du='du -kh'
|
alias du='du -kh'
|
||||||
|
@ -48,7 +48,7 @@ zprofile and zlogin are not meant to be used concurrently but can be done so.
|
|||||||
This file is sourced by interactive shells. It should define aliases,
|
This file is sourced by interactive shells. It should define aliases,
|
||||||
functions, shell options, and key bindings.
|
functions, shell options, and key bindings.
|
||||||
|
|
||||||
### zpreztorc
|
## zpreztorc
|
||||||
|
|
||||||
This file configures Prezto.
|
This file configures Prezto.
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
# Set case-sensitivity for completion, history lookup, etc.
|
# Set case-sensitivity for completion, history lookup, etc.
|
||||||
# zstyle ':prezto:*:*' case-sensitive 'yes'
|
zstyle ':prezto:*:*' case-sensitive 'no'
|
||||||
|
|
||||||
# Color output (auto set to 'no' on dumb terminals).
|
# Color output (auto set to 'no' on dumb terminals).
|
||||||
zstyle ':prezto:*:*' color 'yes'
|
zstyle ':prezto:*:*' color 'yes'
|
||||||
@ -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
|
||||||
#
|
#
|
||||||
@ -129,19 +122,14 @@ zstyle ':prezto:module:prompt' theme 'sorin'
|
|||||||
# 'builtin' 'bg=blue' \
|
# 'builtin' 'bg=blue' \
|
||||||
# 'command' 'bg=blue' \
|
# 'command' 'bg=blue' \
|
||||||
# 'function' 'bg=blue'
|
# 'function' 'bg=blue'
|
||||||
|
#
|
||||||
|
|
||||||
#
|
#
|
||||||
# Terminal
|
# Terminal
|
||||||
#
|
#
|
||||||
|
|
||||||
# Auto set the tab and window titles.
|
# Auto set the tab and window titles.
|
||||||
# zstyle ':prezto:module:terminal' auto-title 'yes'
|
zstyle ':prezto:module:terminal' auto-title 'yes'
|
||||||
|
|
||||||
# Set the window title format.
|
|
||||||
# zstyle ':prezto:module:terminal:window-title' format '%n@%m: %s'
|
|
||||||
|
|
||||||
# Set the tab title format.
|
|
||||||
# zstyle ':prezto:module:terminal:tab-title' format '%m: %s'
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Tmux
|
# Tmux
|
||||||
@ -152,3 +140,23 @@ 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'
|
||||||
|
|
||||||
|
#
|
||||||
|
# Update
|
||||||
|
#
|
||||||
|
|
||||||
|
# Auto update to the latest version.
|
||||||
|
zstyle ':prezto:module:update' auto-update 'no'
|
||||||
|
|
||||||
|
# Auto commit updated files without review.
|
||||||
|
zstyle ':prezto:module:update' auto-commit 'no'
|
||||||
|
|
||||||
|
# Set the update frequency in days.
|
||||||
|
zstyle ':prezto:module:update' check-frequency '7'
|
||||||
|
|
||||||
|
# Set the name of the update remote.
|
||||||
|
zstyle ':prezto:module:update:remote' name 'origin'
|
||||||
|
|
||||||
|
# Set the branch of the update remote.
|
||||||
|
zstyle ':prezto:module:update:remote' branch 'master'
|
||||||
|
|
||||||
|
@ -5,73 +5,3 @@
|
|||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
#
|
#
|
||||||
|
|
||||||
#
|
|
||||||
# Browser
|
|
||||||
#
|
|
||||||
|
|
||||||
if [[ "$OSTYPE" == darwin* ]]; then
|
|
||||||
export BROWSER='open'
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Editors
|
|
||||||
#
|
|
||||||
|
|
||||||
export EDITOR='nano'
|
|
||||||
export VISUAL='nano'
|
|
||||||
export PAGER='less'
|
|
||||||
|
|
||||||
#
|
|
||||||
# Language
|
|
||||||
#
|
|
||||||
|
|
||||||
if [[ -z "$LANG" ]]; then
|
|
||||||
export LANG='en_US.UTF-8'
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Paths
|
|
||||||
#
|
|
||||||
|
|
||||||
# Ensure path arrays do not contain duplicates.
|
|
||||||
typeset -gU cdpath fpath mailpath path
|
|
||||||
|
|
||||||
# Set the the list of directories that cd searches.
|
|
||||||
# cdpath=(
|
|
||||||
# $cdpath
|
|
||||||
# )
|
|
||||||
|
|
||||||
# Set the list of directories that Zsh searches for programs.
|
|
||||||
path=(
|
|
||||||
/usr/local/{bin,sbin}
|
|
||||||
$path
|
|
||||||
)
|
|
||||||
|
|
||||||
#
|
|
||||||
# Less
|
|
||||||
#
|
|
||||||
|
|
||||||
# Set the default Less options.
|
|
||||||
# Mouse-wheel scrolling has been disabled by -X (disable screen clearing).
|
|
||||||
# Remove -X and -F (exit if the content fits on one screen) to enable it.
|
|
||||||
export LESS='-F -g -i -M -R -S -w -X -z-4'
|
|
||||||
|
|
||||||
# Set the Less input preprocessor.
|
|
||||||
if (( $+commands[lesspipe.sh] )); then
|
|
||||||
export LESSOPEN='| /usr/bin/env lesspipe.sh %s 2>&-'
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Temporary Files
|
|
||||||
#
|
|
||||||
|
|
||||||
if [[ ! -d "$TMPDIR" ]]; then
|
|
||||||
export TMPDIR="/tmp/$USER"
|
|
||||||
mkdir -p -m 700 "$TMPDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
TMPPREFIX="${TMPDIR%/}/zsh"
|
|
||||||
if [[ ! -d "$TMPPREFIX" ]]; then
|
|
||||||
mkdir -p "$TMPPREFIX"
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
@ -5,8 +5,72 @@
|
|||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
#
|
#
|
||||||
|
|
||||||
# Ensure that a non-login, non-interactive shell has a defined environment.
|
#
|
||||||
if [[ "$SHLVL" -eq 1 && ! -o LOGIN && -s "${ZDOTDIR:-$HOME}/.zprofile" ]]; then
|
# Browser
|
||||||
source "${ZDOTDIR:-$HOME}/.zprofile"
|
#
|
||||||
|
|
||||||
|
if [[ "$OSTYPE" == darwin* ]]; then
|
||||||
|
export BROWSER='open'
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# Editors
|
||||||
|
#
|
||||||
|
|
||||||
|
export EDITOR='nano'
|
||||||
|
export VISUAL='nano'
|
||||||
|
export PAGER='less'
|
||||||
|
|
||||||
|
#
|
||||||
|
# Language
|
||||||
|
#
|
||||||
|
|
||||||
|
if [[ -z "$LANG" ]]; then
|
||||||
|
export LANG='en_US.UTF-8'
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# Paths
|
||||||
|
#
|
||||||
|
|
||||||
|
typeset -gU cdpath fpath mailpath path
|
||||||
|
|
||||||
|
# Set the the list of directories that cd searches.
|
||||||
|
# cdpath=(
|
||||||
|
# $cdpath
|
||||||
|
# )
|
||||||
|
|
||||||
|
# Set the list of directories that Zsh searches for programs.
|
||||||
|
path=(
|
||||||
|
/usr/local/{bin,sbin}
|
||||||
|
$path
|
||||||
|
)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Less
|
||||||
|
#
|
||||||
|
|
||||||
|
# Set the default Less options.
|
||||||
|
# Mouse-wheel scrolling has been disabled by -X (disable screen clearing).
|
||||||
|
# Remove -X and -F (exit if the content fits on one screen) to enable it.
|
||||||
|
export LESS='-F -g -i -M -R -S -w -X -z-4'
|
||||||
|
|
||||||
|
# Set the Less input preprocessor.
|
||||||
|
if (( $+commands[lesspipe.sh] )); then
|
||||||
|
export LESSOPEN='| /usr/bin/env lesspipe.sh %s 2>&-'
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# Temporary Files
|
||||||
|
#
|
||||||
|
|
||||||
|
if [[ ! -d "$TMPDIR" ]]; then
|
||||||
|
export TMPDIR="/tmp/$USER"
|
||||||
|
mkdir -p -m 700 "$TMPDIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
TMPPREFIX="${TMPDIR%/}/zsh"
|
||||||
|
if [[ ! -d "$TMPPREFIX" ]]; then
|
||||||
|
mkdir -p "$TMPPREFIX"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user