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

Compare commits

...

182 Commits

Author SHA1 Message Date
b2d84afacf don't overwrite the WORKON_HOME env var if the user has already set it 2014-10-10 22:39:13 -07:00
7629171239 support skip-virtualenvwrapper-init zstyle in python module to avoid auto-sourcing of virtualenvwrapper.sh 2014-10-10 22:37:42 -07:00
53bd555c6d Try lesspipe in addition to lesspipe.sh for LESSOPEN
Debian based systems have `lesspipe`, without '.sh' suffix.
Since `$commands` is an associative array, we do index search and set
the input preprocessor on first match.
2014-10-10 19:00:46 -04:00
86ba5b69d3 Ignore case in filenames
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-10 18:55:26 -04:00
5791c07d48 Only print fortunes in terminals 2014-10-10 18:53:44 -04:00
34a50c2550 Add homebrew-cask aliases to homebrew module
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-10 18:51:14 -04:00
417b9d429d Update OPAM setup
Recent OPAM versions generate more elaborate setup code.
2014-10-10 18:38:32 -04:00
fea08d4e50 [Fix #669] Do not use lazy virtualenvwrapper
Lazy virtualenvwrapper completion crashes Zsh.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-10 18:35:33 -04:00
d3f1441481 [Fix #595] Simplify the handling of the Terminal.app proxy icon 2014-10-09 23:38:15 -04:00
a84ac5b002 Only one newline at end of file 2014-10-09 23:38:15 -04:00
10c33ec9a4 Convert tabs to spaces 2014-10-09 23:38:13 -04:00
9b1f39f267 [Fix #563] Control+Arrow keys are not in the terminfo database 2014-10-09 13:08:21 -04:00
36ade25eb6 [Fix #652] Execute abs with sudo 2014-10-09 00:02:56 -04:00
8f711d64b5 [Fix #594] Remove quotes surrounding associative array key 2014-10-06 23:36:33 -04:00
c4b50ec1a0 [Fix #635] Use $BROWSER to open node documentation 2014-10-06 18:02:45 -04:00
62198b0326 Display full command line on suggestion for the kill command
For the zsh suggestion for the 'kill' command, show full command line
(command: usually with arguments) instead of only the executable name (comm).
2014-10-06 17:03:53 -04:00
b4884d4d45 [Fix #626] Escape '%' in path 2014-10-06 16:54:21 -04:00
abfc4ab6e5 [Fix #648] Do not instruct users to call editor-info 2014-10-06 16:50:03 -04:00
657e8a16f4 [Fix #689] Use GPG_AGENT_INFO instead of GPG_AGENT_PID
GPG_AGENT_PID may not be defined. Also, source gpg-agent.env before
checking the PID.
2014-10-06 16:42:22 -04:00
ea25ccf62c Set default GPG_AGENT_PID for grep
If `GPG_AGENT_PID` is unset, grep will succeed if another gpg-agent is
running as it will match the string `gpg-agent` where the PID was an
empty string. Set a default value for grep to a value that will never
match if unset, i.e. -1.
2014-10-05 21:46:58 -04:00
3e88b8bcdc Set default SSH_AGENT_PID for grep
If `SSH_AGENT_PID` is unset, grep will succeed if another ssh-agent is
running as it will match the string `ssh-agent` where the PID was an
empty string. Set a default value for grep to a value that will never
match if unset, i.e. -1.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-05 21:44:20 -04:00
e892d7f3c7 Fix broken link to 256 color formatting blogpost
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-05 21:26:08 -04:00
4e4a6fcc63 Don't set node-info if version is 'none'
This is done to make it easier to not show node-info in themes
when no node version is currently in use. This is consistent with
how the Python module's python-info works.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-05 21:22:38 -04:00
3e8349ddde Use the x command for unrar and rar to preserve paths
unrar and rar will discard everything up to the file name when extracting
with `e`. This breaks extraction of archives that have files with duplicate
file names and ones where the paths are important. The `x` command
extracts with the full path instead.
2014-10-05 21:14:01 -04:00
fdb406f917 Fix typo 2014-10-05 21:12:54 -04:00
493bf302f6 Ensure dircolors uses sh syntax
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-05 21:12:54 -04:00
a217af99f3 Prezto only enables the main syntax highlighter
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-05 21:12:53 -04:00
06cc5088aa [Fix #630] Zsh v4.3.17 is the minimum required 2014-10-05 21:12:42 -04:00
5088ca4839 Bump minimum supported Zsh to v4.3.11
zsh-syntax-highlighting requires this version.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-05 20:25:25 -04:00
0f696fc206 Update external syntax-highlighting 2014-10-05 20:16:26 -04:00
96bcf813b7 Update external history-substring-search 2014-10-05 20:15:43 -04:00
fe8f9a9b5b Update external completions 2014-10-05 20:14:25 -04:00
bf9dbfd5b9 Support $PYTHONUSERBASE per PEP 370
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-04-03 17:55:35 -04:00
ff0dfa424d Create a default tmux session only when none defined in tmux.conf
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-04-03 17:39:46 -04:00
fedad8e9cf Fix git-info added/deleted count formatting typo
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-03-07 15:52:39 -05:00
478653fab2 [Fix #543] Do not set tmux destroy-unattached
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-03-07 15:48:49 -05:00
10cf701864 Simplify multiplexer auto-start tests 2014-02-26 17:19:19 -05:00
7722dd4400 Inform the user to load ruby as late as possible when using RVM 2014-02-17 23:39:22 -05:00
240eecaddf [Fix #551] Rename tmux auto-start session 2014-02-17 23:27:03 -05:00
415e4bff3d Fix a test operator bug introduced in e5a0e33 2014-02-17 23:09:11 -05:00
e5a0e33f1c [Fix #541] Do not auto-load screen/tmux inside of Emacs/Vim
When Emacs and Vim are launched from outside of an interactive shell,
$TMUX and $STY are not set; check for Emacs and Vim environment
variables instead.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-02-17 22:43:49 -05:00
8189577772 Disable glob for bower
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-02-16 18:29:01 -05:00
c74cf4b5e0 Prefix rarely used osx functions 2014-02-16 18:00:47 -05:00
72782528aa Add functions to display and delete osx download history 2014-02-02 20:30:27 -05:00
02717cb4c1 Update osx alias descriptions 2014-02-02 20:08:55 -05:00
bccfca8c10 Make osx functions autoloadable 2014-02-02 20:08:21 -05:00
b8bb51d7b5 Cast AppleScript paths to text 2014-02-02 14:44:22 -05:00
00e12b7a98 Add capability to browse man pages in Dash.app 2014-02-01 23:39:11 -05:00
232313e2a0 Remove Bwana.app support
Bwana.app has been stale for years. It no longer works properly.
2014-02-01 23:39:11 -05:00
e48dac79f3 Add double slash after Bwana.app's man protocol
Safari 6's unified location and search bar can no longer tell the
difference between a protocol and a colon search.
2014-02-01 23:39:11 -05:00
dbeb6d4e1a [Fix #361] Load chruby when found 2014-02-01 23:37:29 -05:00
af003d83c5 [Fix #535] Set Pacman frontend to 'pacman' when none set 2014-01-21 22:12:09 -05:00
839f4a7b83 Fix setting the 'pac' alias 2014-01-13 21:35:38 -05:00
c091f71283 [Fix #522] Do not load the terminal module in non-graphical terminals 2014-01-09 20:07:40 -05:00
e1974ad58d [Fix #516] Define ZLE functions separately 2014-01-09 19:58:14 -05:00
391bc405d0 Revert "Warn that Cygwin is not supported"
This reverts commit b1abe7a845.
2014-01-04 17:30:38 -05:00
80ded5e33d Revert "Remove utility aliases for Cygwin"
This reverts commit d368d0536b.
2014-01-04 17:30:37 -05:00
fa6723a5ee Don't use sudo if implicitly called by Pacman frontend
Don't rely on alias expansion to handle Pacman because aliases
are not expanded in sudo.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-01-04 17:30:37 -05:00
57b283facd [Fix #514] Use /tmp when $TMPDIR is undefined 2014-01-03 14:20:32 -05:00
aefdce3fc3 Fix README.md: PATH was moved from .zshenv to .zprofile 2014-01-03 13:41:05 -05:00
e4e4f89c9f [Fix #523] Ensure zprofile exists before sourcing it 2014-01-03 13:37:36 -05:00
817dd3aa3a Allow functions in a module to be symlinks
Add the '-' flag to the function glob which makes the other flag test
against the target of the symlink, and not the symlink itself.

When using rcm (https://github.com/thoughtbot/rcm), the function files
are symlinked by default, but the current glob excludes them by
targeting normal files (with the '.' flag).

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-01-03 13:30:55 -05:00
347928193f Update copyright 2013-12-08 01:34:27 -05:00
da1a837cd4 Refactor Bundler aliases 2013-11-30 19:25:11 -05:00
2ebdbdcff5 Update external completions 2013-11-29 20:37:01 -05:00
eea1eea7dc Update external history-substring-search 2013-11-29 20:36:33 -05:00
4e9553e896 Update external syntax-highlighting 2013-11-29 20:36:07 -05:00
a57d545639 Update copyright 2013-11-29 19:13:06 -05:00
cdc4f36f25 Fix heading level for "zpreztorc" 2013-11-29 17:34:34 -05:00
50edc45132 [Fix #503] Prefix rails aliases with 'bundle exec' 2013-11-29 08:46:14 -05:00
b1abe7a845 Warn that Cygwin is not supported 2013-11-29 08:46:14 -05:00
d368d0536b Remove utility aliases for Cygwin 2013-11-29 08:46:14 -05:00
254b7c36d9 [Fix #324] Add configurable terminal window and tab title formats 2013-11-26 00:25:37 -05:00
d19c349f3f Unsufix internal functions 2013-11-26 00:25:37 -05:00
9f60ddb96b Prefix internal functions 2013-11-26 00:25:36 -05:00
5b4dcea595 Simplify auto-titling 2013-11-26 00:25:36 -05:00
b98c7469e5 Rewrite terminal auto-title 2013-11-26 00:25:35 -05:00
f6bd76a90b Remove unused GNU Screen window number format 2013-11-26 00:25:35 -05:00
d877617734 [Fix #362, Fix #384] Set Mac OS X 10.6 terminal window title 2013-11-26 00:25:34 -05:00
76fc07ba9f Comment a typeset 2013-11-25 18:16:36 -05:00
52ea7152ad Git ignore bundler vendor/assets 2013-11-25 17:25:11 -05:00
b159ddb02b Do not specify a bundler install path 2013-11-25 17:25:10 -05:00
5cfe250e52 Rewrite _rails-command to work from app subdirectories 2013-11-25 17:25:10 -05:00
cc4a58bee3 Add Rails 4 bin path 2013-11-25 17:25:10 -05:00
3a5fff9c6d Don't override customized environments in subshells
Only set up environment for the top-level shell, and allow it to be
inherited normally.

A top level shell is usually a login shell, but can also be a
non-interactive, non-login shell in certain cases, such as when
executing an SSH remote command.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-11-25 17:16:33 -05:00
8993a8dfad Bump minimum supported Zsh to v4.3.11 2013-11-20 09:59:02 -05:00
28e956691c Add and update module descriptions 2013-11-17 15:58:53 -05:00
1c6a016644 Add Ocaml module
Manage local Ocaml modules with OPAM.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-11-17 15:56:17 -05:00
e18f18af92 Support command-not-found on Arch Linux
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-11-17 15:09:03 -05:00
a4bacb8bb9 [Fix #479] Start only one ssh-agent instance 2013-09-26 14:46:21 -04:00
aacff80984 [Fix #477] Add instructions for updating Prezto 2013-09-26 14:08:44 -04:00
eb1a20552a Comment an unnecessary style 2013-08-27 22:29:20 -04:00
a914a87aa9 Stop module loading when external code fails to source 2013-08-27 22:22:55 -04:00
e1e2c85392 Use correct option for pacman search aliases 2013-08-27 16:08:10 -04:00
8ee6634c93 Do not define $GEM_HOME
Defining it breaks gems for all users who neither use RVM nor rbenv,
but have a different default Ruby version nonetheless.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-08-25 22:24:42 -04:00
959887013d Simplify a conditional 2013-08-20 08:47:18 -04:00
b769505857 Remove duplicate alias definitions 2013-08-20 08:46:37 -04:00
622e7b117b Add utility aliases for Cygwin
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-08-20 08:35:55 -04:00
459238b2bb Replace pythonz with pyenv
Depending on Python to manage Python is silly.
2013-08-20 08:21:17 -04:00
773ca7ee50 Update external syntax-highlighting 2013-08-12 21:10:15 -04:00
92e688173b Update external history-substring-search 2013-08-12 21:10:06 -04:00
59e6e7fe8e Update external completions 2013-08-12 21:09:52 -04:00
92c4dc0fb2 Clarify customization instructions
Explicitly state that a new user must create his own fork to commit and
track changes via Github.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-08-12 18:27:50 -04:00
1ef2555100 Move from Carton to Cask
Carton was renamed to Cask to avoid a name clash with a Perl utility of
that name.
2013-08-12 18:27:49 -04:00
07686fad38 Increase control over multiplexer auto-start
Setting the auto-start 'remote' and 'local' zstyles for the screen and
tmux modules to 'true' automatically starts a session in SSH connections
and in local terminals respectively.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-08-12 18:27:24 -04:00
61f3adcdd1 [Fix #459] Correct typos in the dpkg module 2013-08-09 17:03:26 -04:00
d817e80741 [Fix #452] Squash bugs introduced in fcab2a1 2013-08-09 17:02:38 -04:00
9d504d2d93 [Fix #411] Add Homebrew module 2013-05-27 17:23:54 -04:00
875ce2e56c [Fix #434] Correct ambiguity in the use of the term keymap 2013-05-27 17:23:53 -04:00
16aa48baeb Rename archive module functions 2013-05-25 14:42:43 -04:00
f007820a14 [Fix #436] Update link to Bombich rsync 2013-05-24 12:33:23 -04:00
9b945e26b9 Revert "[Fix #436] Remove Bombich rsync references"
This reverts commit 20655c8b66.
2013-05-24 12:29:49 -04:00
20655c8b66 [Fix #436] Remove Bombich rsync references 2013-05-23 19:10:26 -04:00
0c9c099ac3 Add the RubyGems bin directory to PATH on other Unix systems
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-05-23 18:26:15 -04:00
baf7f6184b Do not substitute /tmp since $TMPDIR is always set 2013-05-23 16:00:16 -04:00
c9c3b40b5c [Fix #437] Always set $TMPDIR 2013-05-23 15:58:55 -04:00
1622abb830 Make gpg-agent and ssh-agent work with each other 2013-05-18 21:52:19 -04:00
fcab2a1713 [Fix #425] Rewrite module ssh-agent; rename it to ssh 2013-05-18 19:27:40 -04:00
973278140e [Fix #103] Add documentation for editor 2013-05-18 17:05:44 -04:00
39b88fe334 Remove the git-info SIGINT message
Users should read the Git module README on how to turn git-info on and
off.
2013-05-18 15:31:34 -04:00
a7623aad6b [Fix #307] Do not auto-off git-info
Instead of turning off git-info when CTRL+C is caught, show instructions
on how to turn it off manually.
2013-05-18 15:31:34 -04:00
db384b2ac6 Remove ununsed variable 2013-05-18 15:31:33 -04:00
7845c36951 Clarify Git listing aliases descriptions 2013-05-18 15:31:33 -04:00
75c0d49f56 Swap aliases gsd and gsL 2013-05-18 15:31:33 -04:00
d4e78d427a Rename alias gRc to gRp 2013-05-18 15:31:32 -04:00
e836957e4f [Fix #221] Add a simple git-info 2013-05-18 15:31:32 -04:00
5306bab7ce [#221] Do not format undefined zstyles 2013-05-18 15:31:31 -04:00
f3ae9dd82c Initialize ahead and behind local variables 2013-05-18 15:31:31 -04:00
88408e8bc2 Add rar command to archive module
This addition tries to use the rar command if unrar is not found.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-05-18 13:18:29 -04:00
fb5b1be345 Refactor Emacs module 2013-05-17 21:29:44 -04:00
bde5149c7b Load completion for Carton 2013-05-17 23:13:11 +02:00
7e33c7189e Correct syntax error in variable assignment
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-05-10 23:48:06 -04:00
413b717484 Ensure that the tmux server is started
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2013-05-06 19:08:31 -04:00
23f62774f9 [Fix #426] Correct syntax error in variable assignment 2013-05-03 08:56:13 -04:00
2e64f7ed64 [Fix #419] Rewrite module gpg-agent; rename it to gpg 2013-05-01 11:28:40 -04:00
6cd97d2d0f [Fix #52] Add zstyles to configure history-substring-search 2013-04-26 19:47:12 -04:00
810a4490d7 [#52] Add zstyles to configure syntax-highlighting 2013-04-26 19:47:07 -04:00
b42479a7c7 Set WORDCHARS in the editor module 2013-04-25 19:05:07 -04:00
80b203bcd3 [Fix #422] Revert "Remove no longer necessary key bindings"
This reverts commit 3c5363ef9b.
2013-04-25 17:51:27 -04:00
cf07c4ec91 Update external history-substring-search 2013-04-25 17:51:22 -04:00
05a6653284 Sort Git conflict aliases 2013-04-25 00:19:33 -04:00
4e3475d8a7 [Fix #403] Display accented characters properly 2013-04-24 23:18:10 -04:00
f86854ebd4 Correct typos in git module README 2013-04-24 22:53:53 -04:00
16a8e45cfa Wrap errant long line in git module README 2013-04-24 22:53:40 -04:00
f431af790b Fix misspellings of the word bellow in READMEs 2013-04-24 22:50:17 -04:00
3c5363ef9b Remove no longer necessary key bindings 2013-04-24 22:39:53 -04:00
0d27e20e43 Update external history-substring-search 2013-04-24 22:36:26 -04:00
9e23df814f Update external syntax-highlighting 2013-04-24 22:28:38 -04:00
18d239141d Update external completions 2013-04-24 20:50:38 -04:00
579dfee6f7 [Fix #399] Only enable the main syntax highlighter 2013-03-01 00:27:00 -05:00
a1a2a37045 Use the builtin $signals array 2013-03-01 00:26:50 -05:00
2baa4dce0c Add Emacs module
Enables Emacs dependency management with Carton.
2013-02-28 17:43:46 -05:00
e2c5f2fb2c [Fix #396] Remove the osx trash function
The trash program found at http://hasseg.org/trash is a superior
implementation.
2013-02-28 17:35:54 -05:00
6e65349c45 [Fix #398] Manually set locale 2013-02-28 17:28:05 -05:00
f4d9b32de9 [Fix #351] Set empty keys to an invalid UTF-8 sequence 2013-01-29 14:13:14 -05:00
185235003e Add support for nvm 2013-01-29 13:43:06 -05:00
d198c08db5 Use $GNUPGHOME in GPG agent startup
Use the value of $GNUPGHOME, to facilitate moving GPG's home.

This lets users who keep their GPG keyring on external devices or alternate
folders use the gpg-agent autostarting, even if $HOME/.gnupg does not exist.
2013-01-28 18:19:09 -05:00
6fd00449a6 [Fix #381] Remove the path_helper workaround 2013-01-28 18:06:14 -05:00
095863e6ae [Fix #385] Do not set $INFOPATH 2013-01-28 17:35:27 -05:00
e5de305157 [Fix #383] Do not set $MANPATH
man dynamically searches for man pages based on $PATH.
2013-01-28 17:34:55 -05:00
39795d3e5e Fix lesspipe.sh detection in custom PATH
The detection of lesspipe.sh has to be done after setting PATH as it
could be installed in a non-standard bin directory. For example,
Homebrew installs lesspipe in /usr/local.
2013-01-23 17:01:57 +01:00
b531191e2c [Fix #366] Distinct position with red 2013-01-14 15:52:32 -05:00
455cc0c6e5 Export $MANPATH and $INFOPATH 2013-01-12 11:31:29 -05:00
14da495193 [Fix #349] Display diff when committing 2013-01-12 11:28:33 -05:00
bb6b590919 [Fix #360] Set alias giR to reset the index interactively 2013-01-12 11:25:06 -05:00
1d0b0e2e9b [Fix #357] Set alias gcO to check out hunks interactively 2013-01-03 13:13:46 -05:00
5a245850f0 [Fix #355] Do not set launchd environment variables
Setting environment variables for launchd processes is unreliable.
Finder and all Finder launched programs have to be restarted for the
new environment variables to take effect.
2012-12-30 18:15:43 -05:00
5d4282c43d [Fix #347] Move 'users' from tag-order to group-order 2012-12-23 11:27:39 -05:00
c737369083 Add an alias to ammend a git commit, including the message 2012-12-20 19:49:07 -05:00
bf957d7cc4 Update external syntax-highlighting 2012-12-20 19:30:08 -05:00
e5cfdba26d Update external completions 2012-12-20 19:27:50 -05:00
6cd1f66cd4 [Fix #348] Clarify how GNU utilities are wrapped 2012-12-20 19:11:19 -05:00
a120602dfa [Fix #338] Remove vi jk and kj bindings 2012-12-20 19:02:16 -05:00
37f65b3f86 Check for the existence of .zcompdump before compiling 2012-12-20 18:58:00 -05:00
decf3cd875 Fix auto completion for SSH hosts when saved with a non-standard port 2012-12-20 18:55:52 -05:00
29647947fe [Fix #335] Prevent rbenv from hashing gems at startup 2012-12-20 18:53:58 -05:00
795495b864 Fix a typo in git documentation 2012-12-20 18:22:47 -05:00
13b501adaf Fallback to standard cabal location on OS X
If ~/Library/Haskell does not exist, fall back to ~/.cabal/bin.

Ideally, we'd parse ~/.cabal/config here, but cabal does not provide an
interface to get configuration settings.
2012-10-17 18:22:57 -04:00
1788d73cd8 [Fix #263, Fix #314] Ensure application mode is valid before use 2012-10-17 18:15:27 -04:00
52db7bb0f6 [#263, #314] Undo revert of "Ensure that $terminfo values are valid"
This reverts commit ed4e9af9c4.
2012-10-17 18:15:21 -04:00
bb597ae22d Replace table captions with headings
GitHub does not support Markdown table captions.
2012-10-03 20:09:51 -04:00
1ed7fd360c Replace z with fasd in modules README
See b967c50 and 24bb99c for more information.
2012-10-03 16:40:43 -04:00
153 changed files with 1433 additions and 1109 deletions

View File

@ -39,4 +39,3 @@ improve its performance, do not hesitate to fork and send pull requests.
[3]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
[4]: https://help.github.com/articles/using-pull-requests
[5]: http://daringfireball.net/projects/markdown/syntax#img

View File

@ -8,8 +8,8 @@ and prompt themes.
Installation
------------
Prezto will work with any recent release of Zsh, but the minimum recommended
version is 4.3.10.
Prezto will work with any recent release of Zsh, but the minimum required
version is 4.3.17.
1. Launch Zsh:
@ -33,31 +33,19 @@ version is 4.3.10.
5. Open a new Zsh terminal window or tab.
### Mac OS X
If you have administrator privileges, you must fix an Apple-introduced problem
in Mac OS X 10.5 Leopard by executing the following command, or BASH and Zsh
will have the wrong `PATH` when executed non-interactively.
sudo chmod ugo-x /usr/libexec/path_helper
`path_helper` is intended to make it easier for installers to add new paths to
the environment without having to edit shell configuration files by adding
a file with a path to the */etc/paths.d* directory.
Unfortunately, `path_helper` always reads paths from */etc/paths* set by Apple
then paths from */etc/paths.d* set by third party installers, and lastly paths
from the `PATH` environment variable set by the parent process, which
ultimately is set by the user with `export PATH=...` Thus, it reorders path
priorities, and user */bin* directories meant to override system */bin*
directories end up at the tail of the array.
### Troubleshooting
If you are not able to find certain commands after switching to *Prezto*,
modify the `PATH` variable in *~/.zshenv* then open a new Zsh terminal
modify the `PATH` variable in *~/.zprofile* then open a new Zsh terminal
window or tab.
Updating
--------
Pull the latest changes and update submodules.
git pull && git submodule update --init --recursive
Usage
-----
@ -82,9 +70,10 @@ accompanying README files to learn of what is available.
Customization
-------------
The project is managed via [Git][3]. It is highly recommend that you commit
your changes and push them to [GitHub][4] to not lose them. If you do not know
how to use Git, follow this [tutorial][5] and bookmark this [reference][6].
The project is managed via [Git][3]. It is highly recommended that you fork this
project; so, that you can commit your changes and push them to [GitHub][4] to
not lose them. If you do not know how to use Git, follow this [tutorial][5] and
bookmark this [reference][6].
Resources
---------
@ -96,7 +85,8 @@ License
(The MIT License)
Copyright (c) 2009-2012 Robby Russell, Sorin Ionescu, and contributors.
Copyright (c) 2009-2011 Robby Russell and contributors.
Copyright (c) 2011-2014 Sorin Ionescu and contributors.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
@ -124,4 +114,3 @@ SOFTWARE.
[6]: http://gitref.org
[7]: http://www.bash2zsh.com/zsh_refcard/refcard.pdf
[8]: http://grml.org/zsh/zsh-lovers.html

View File

@ -10,7 +10,7 @@
#
# Check for the minimum supported version.
min_zsh_version='4.3.10'
min_zsh_version='4.3.17'
if ! autoload -Uz is-at-least || ! is-at-least "$min_zsh_version"; then
print "prezto: old shell detected, minimum required: $min_zsh_version" >&2
return 1
@ -25,7 +25,7 @@ unset min_zsh_version
function pmodload {
local -a pmodules
local pmodule
local pfunction_glob='^([_.]*|prompt_*_setup|README*)(.N:t)'
local pfunction_glob='^([_.]*|prompt_*_setup|README*)(-.N:t)'
# $argv is overridden in the anonymous function.
pmodules=("$argv[@]")
@ -111,4 +111,3 @@ unset zfunction{s,}
zstyle -a ':prezto:load' pmodule 'pmodules'
pmodload "$pmodules[@]"
unset pmodules

View File

@ -8,7 +8,7 @@ Load modules in *zpreztorc*. The order matters.
Archive
-------
Provides functions to extract and list popular archive formats.
Provides functions to list and extract archives.
Command-Not-Found
-----------------
@ -31,20 +31,41 @@ Dpkg
Defines dpkg aliases and functions.
Editor
------
Sets key bindings.
Emacs
-----
Enables Emacs dependency management.
Environment
-----------
Sets general shell options and defines environment variables.
Fasd
----
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
-----------
Provides for the interactive use of GNU utilities on non-GNU systems.
GPG-Agent
---------
GPG
---
Provides for an easier use of gpg-agent.
Provides for an easier use of GPG by setting up gpg-agent.
Haskell
-------
@ -56,15 +77,20 @@ Helper
Provides helper functions for developing modules.
History
-------
Sets history options and defines history aliases.
History Substring Search
------------------------
Integrates zsh-history-substring-search into Prezto.
History
-------
Homebrew
--------
Sets history options and defines history aliases.
Defines Homebrew aliases.
Macports
--------
@ -76,6 +102,11 @@ Node.js
Provides utility functions for Node.js and loads npm completion.
OCaml
-----
Initializes OCaml package management.
OSX
---
@ -127,10 +158,10 @@ Spectrum
Provides for easier use of 256 colors and effects.
SSH-Agent
---------
SSH
---
Provides for an easier use of ssh-agent.
Provides for an easier use of SSH by setting up ssh-agent.
Syntax Highlighting
-------------------
@ -161,10 +192,3 @@ Yum
---
Defines yum aliases.
Z
-
Integrates z into Prezto, which maintains a frequently used directory list for
fast directory changes.

View File

@ -1,13 +1,13 @@
Archive
=======
Provides functions to extract and list popular archive formats.
Provides functions to list and extract archives.
Functions
---------
- `extract` extracts the contents of one or more archives.
- `ls-archive` lists the contents of one or more archives.
- `lsarchive` lists the contents of one or more archives.
- `unarchive` extracts the contents of one or more archives.
Supported Formats
-----------------
@ -26,7 +26,7 @@ installed:
- *.lzma* requires `unlzma`.
- *.Z* requires `uncompress`.
- *.zip* requires `unzip`.
- *.rar* requires `unrar`.
- *.rar* requires `unrar` or `rar`.
- *.7z* requires `7za`.
- *.deb* requires `ar`, `tar`.
@ -38,4 +38,3 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -1,8 +1,8 @@
#compdef ls-archive
#compdef lsarchive
#autoload
#
# Completes ls-archive.
# Completes lsarchive.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
@ -11,4 +11,3 @@
_arguments \
'(-v --verbose)'{-v,--remove}'[verbose archive listing]' \
"*::archive file:_files -g '(#i)*.(tar|tgz|tbz|tbz2|txz|tlz|gz|bz2|xz|lzma|Z|zip|rar|7z)(-.)'" && return 0

View File

@ -1,8 +1,8 @@
#compdef extract
#compdef unarchive
#autoload
#
# Completes extract.
# Completes unarchive.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
@ -11,4 +11,3 @@
_arguments \
'(-r --remove)'{-r,--remove}'[remove archive]' \
"*::archive file:_files -g '(#i)*.(tar|tgz|tbz|tbz2|txz|tlz|gz|bz2|xz|lzma|Z|zip|rar|7z|deb)(-.)'" && return 0

View File

@ -1,5 +1,5 @@
#
# Lists the contents of popular archive formats.
# Lists the contents of archives.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
@ -30,7 +30,7 @@ while (( $# > 0 )); do
continue
fi
case "$1" in
case "$1:l" in
(*.tar.gz|*.tgz) tar t${verbose:+v}vzf "$1" ;;
(*.tar.bz2|*.tbz|*.tbz2) tar t${verbose:+v}jf "$1" ;;
(*.tar.xz|*.txz) tar --xz --help &> /dev/null \
@ -41,7 +41,9 @@ while (( $# > 0 )); do
|| lzcat "$1" | tar x${verbose:+v}f - ;;
(*.tar) tar t${verbose:+v}f "$1" ;;
(*.zip) unzip -l${verbose:+v} "$1" ;;
(*.rar) unrar ${${verbose:+v}:-l} "$1" ;;
(*.rar) unrar &> /dev/null \
&& unrar ${${verbose:+v}:-l} "$1" \
|| rar ${${verbose:+v}:-l} "$1" ;;
(*.7z) 7za l "$1" ;;
(*)
print "$0: cannot list: $1" >&2
@ -51,4 +53,3 @@ while (( $# > 0 )); do
shift
done

View File

@ -1,5 +1,5 @@
#
# Extracts the contents of popular archive formats.
# Extracts the contents of archives.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
@ -37,7 +37,7 @@ while (( $# > 0 )); do
success=0
file_name="${1:t}"
extract_dir="${file_name:r}"
case "$1" in
case "$1:l" in
(*.tar.gz|*.tgz) tar xvzf "$1" ;;
(*.tar.bz2|*.tbz|*.tbz2) tar xvjf "$1" ;;
(*.tar.xz|*.txz) tar --xz --help &> /dev/null \
@ -53,7 +53,9 @@ while (( $# > 0 )); do
(*.lzma) unlzma "$1" ;;
(*.Z) uncompress "$1" ;;
(*.zip) unzip "$1" -d $extract_dir ;;
(*.rar) unrar e -ad "$1" ;;
(*.rar) unrar &> /dev/null \
&& unrar x -ad "$1" \
|| rar x -ad "$1" ;;
(*.7z) 7za x "$1" ;;
(*.deb)
mkdir -p "$extract_dir/control"
@ -74,4 +76,3 @@ while (( $# > 0 )); do
(( $success == 0 )) && (( $remove_archive == 0 )) && rm "$1"
shift
done

View File

@ -1,7 +1,8 @@
Command-Not-Found
=================
Loads the [command-not-found][1] tool on Debian-based distributions.
Displays installation information for not found commands by loading the
[command-not-found][1] tool on Debian-based and Arch Linux-based distributions.
Authors
-------
@ -12,4 +13,3 @@ Authors
[1]: https://code.launchpad.net/command-not-found
[2]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -5,10 +5,13 @@
# 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.
if [[ ! -s '/etc/zsh_command_not_found' ]]; then
else
return 1
fi
source '/etc/zsh_command_not_found'

View File

@ -21,4 +21,3 @@ Authors
[1]: https://github.com/zsh-users/zsh-completions
[2]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -30,9 +30,6 @@ setopt AUTO_PARAM_SLASH # If completed parameter is a directory, add a traili
unsetopt MENU_COMPLETE # Do not autoselect the first completion entry.
unsetopt FLOW_CONTROL # Disable start/stop characters in shell editor.
# Treat these characters as part of a word.
WORDCHARS='*?_-.[]~&;!#$%^(){}<>'
#
# Styles
#
@ -96,7 +93,7 @@ zstyle ':completion::*:(-command-|export):*' fake-parameters ${${${_comps[(I)-va
# Populate hostname completion.
zstyle -e ':completion:*:hosts' hosts 'reply=(
${=${${(f)"$(cat {/etc/ssh_,~/.ssh/known_}hosts(|2)(N) 2>/dev/null)"}%%[#| ]*}//,/ }
${=${=${=${${(f)"$(cat {/etc/ssh_,~/.ssh/known_}hosts(|2)(N) 2>/dev/null)"}%%[#| ]*}//\]:[0-9]*/ }//,/ }//\[/ }
${=${(f)"$(cat /etc/hosts(|)(N) <<(ypcat hosts 2>/dev/null))"}%%\#*}
${=${${${${(@M)${(f)"$(cat ~/.ssh/config 2>/dev/null)"}:#Host *}#Host }:#*\**}:#*\?*}}
)'
@ -119,7 +116,7 @@ zstyle ':completion:*:(rm|kill|diff):*' ignore-line other
zstyle ':completion:*:rm:*' file-patterns '*:all-files'
# Kill
zstyle ':completion:*:*:*:*:processes' command 'ps -u $USER -o pid,user,comm -w'
zstyle ':completion:*:*:*:*:processes' command 'ps -u $USER -o pid,user,command -w'
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;36=0=01'
zstyle ':completion:*:*:kill:*' menu yes select
zstyle ':completion:*:*:kill:*' force-list always
@ -144,9 +141,8 @@ fi
# SSH/SCP/RSYNC
zstyle ':completion:*:(scp|rsync):*' tag-order 'hosts:-host:host hosts:-domain:domain hosts:-ipaddr:ip\ address *'
zstyle ':completion:*:(scp|rsync):*' group-order users files all-files hosts-domain hosts-host hosts-ipaddr
zstyle ':completion:*:ssh:*' tag-order users 'hosts:-host:host hosts:-domain:domain hosts:-ipaddr:ip\ address *'
zstyle ':completion:*:ssh:*' group-order hosts-domain hosts-host users hosts-ipaddr
zstyle ':completion:*:ssh:*' tag-order 'hosts:-host:host hosts:-domain:domain hosts:-ipaddr:ip\ address *'
zstyle ':completion:*:ssh:*' group-order users hosts-domain hosts-host users hosts-ipaddr
zstyle ':completion:*:(ssh|scp|rsync):*:hosts-host' ignored-patterns '*(.|:)*' loopback ip6-loopback localhost ip6-localhost broadcasthost
zstyle ':completion:*:(ssh|scp|rsync):*:hosts-domain' ignored-patterns '<->.<->.<->.<->' '^[-[:alnum:]]##(.[-[:alnum:]]##)##' '*@*'
zstyle ':completion:*:(ssh|scp|rsync):*:hosts-ipaddr' ignored-patterns '^(<->.<->.<->.<->|(|::)([[:xdigit:].]##:(#c,2))##(|%*))' '127.0.0.<->' '255.255.255.255' '::1' 'fe80::*'

View File

@ -33,4 +33,3 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -28,4 +28,3 @@ 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

@ -7,16 +7,16 @@ Aliases
-------
- `debc` cleans the cache.
- `debf` displays a file's packake.
- `debf` displays a file's package.
- `debi` installs packages from repositories.
- `debI` installs packages from files.
- `debq` displays package information.
- `debu` updates the packages lists.
- `debu` updates the package lists.
- `debU` upgrades outdated packages.
- `debx` removes packages.
- `debX` removes packages, their configuration, and unneeded dependencies.
- `debs` searches for packages.
- `deb-build` creates a basic .deb package.
- `deb-build` creates a basic deb package.
- `deb-kclean` removes all kernel images and headers, except for the ones in
use.
@ -39,4 +39,3 @@ Authors
[1]: http://wiki.debian.org/Teams/Dpkg
[2]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -23,4 +23,3 @@ rm "$clone_script"
print '#!/bin/sh\n' > "$clone_script"
print "aptitude install ${package_list}\n" >> "$clone_script"
chmod +x "$clone_script"

View File

@ -34,4 +34,3 @@ Commands:
EOF
;;
esac

View File

@ -12,4 +12,3 @@ MAKEFLAGS='' time fakeroot make-kpkg \
--revision "$(date +"%Y%m%d")" \
kernel_image \
kernel_headers

View File

@ -19,7 +19,7 @@ fi
# Cleans the cache.
alias debc='sudo apt-get clean && sudo apt-get autoclean'
# Displays a file's packake.
# Displays a file's package.
alias debf='apt-file search --regexp'
# Installs packages from repositories.
@ -31,7 +31,7 @@ alias debI='sudo dpkg -i'
# Displays package information.
alias debq='apt-cache show'
# Updates the packages lists.
# Updates the package lists.
alias debu='sudo apt-get update'
# Upgrades outdated packages.
@ -50,9 +50,8 @@ else
alias debs='apt-cache search'
fi
# Creates a basic .deb package.
# Creates a basic deb package.
alias deb-build='time dpkg-buildpackage -rfakeroot -us -uc'
# Removes all kernel images and headers, except for the ones in use.
alias deb-kclean='sudo aptitude remove -P "?and(~i~nlinux-(ima|hea) ?not(~n`uname -r`))"'

61
modules/editor/README.md Normal file
View File

@ -0,0 +1,61 @@
Editor
======
Sets key bindings.
Settings
--------
### Key bindings
To enable key bindings, add the following to *zpreztorc*, and replace 'bindings'
with 'emacs' or 'vi'.
zstyle ':prezto:module:editor' key-bindings 'bindings'
### Dot Expansion
To enable the auto conversion of .... to ../.., add the following to
*zpreztorc*.
zstyle ':prezto:module:editor' dot-expansion 'yes'
Theming
-------
To indicate when the editor is in the primary keymap (emacs or viins), add
the following to your `theme_prompt_setup` function.
zstyle ':prezto:module:editor:info:keymap:primary' format '>>>'
To indicate when the editor is in the primary keymap (emacs or viins) insert
mode, add the following to your `theme_prompt_setup` function.
zstyle ':prezto:module:editor:info:keymap:primary:insert' format 'I'
To indicate when the editor is in the primary keymap (emacs or viins) overwrite
mode, add the following to your `theme_prompt_setup` function.
zstyle ':prezto:module:editor:info:keymap:primary:overwrite' format 'O'
To indicate when the editor is in the alternate keymap (vicmd), add the
following to your `theme_prompt_setup` function.
zstyle ':prezto:module:editor:info:keymap:alternate' format '<<<'
To indicate when the editor is completing, add the following to your
`theme_prompt_setup` function.
zstyle ':prezto:module:editor:info:completing' format '...'
Then add `$editor_info[context]`, where context is *keymap*, *insert*, or
*overwrite*, to `$PROMPT` or `$RPROMPT`.
Authors
-------
*The authors of this module should be contacted via the [issue tracker][1].*
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/oh-my-zsh/issues

View File

@ -4,42 +4,6 @@
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# Usage:
# To enable key bindings, add the following to zpreztorc, and replace 'map'
# with 'emacs' or 'vi.
#
# zstyle ':prezto:module:editor' keymap 'map'
#
# To enable the auto conversion of .... to ../.., add the following to
# zpreztorc.
#
# zstyle ':prezto:module:editor' dot-expansion 'yes'
#
# To indicate when the editor is in the primary keymap (emacs or viins), add
# the following to your theme prompt setup function.
#
# zstyle ':prezto:module:editor:info:keymap:primary' format '>>>'
#
# To indicate when the editor is in the primary keymap (emacs or viins) insert
# mode, add the following to your theme prompt setup function.
#
# zstyle ':prezto:module:editor:info:keymap:primary:insert' format 'I'
#
# To indicate when the editor is in the primary keymap (emacs or viins)
# overwrite mode, add the following to your theme prompt setup function.
#
# zstyle ':prezto:module:editor:info:keymap:primary:overwrite' format 'O'
#
# To indicate when the editor is in the alternate keymap (vicmd), add the
# following to your theme prompt setup function.
#
# zstyle ':prezto:module:editor:info:keymap:alternate' format '<<<'
#
# To indicate when the editor is completing, add the following to your theme
# prompt setup function.
#
# zstyle ':prezto:module:editor:info:completing' format '...'
#
# Return if requirements are not found.
if [[ "$TERM" == 'dumb' ]]; then
@ -57,11 +21,16 @@ setopt BEEP
# Variables
#
# Treat these characters as part of a word.
WORDCHARS='*?_-.[]~&;!#$%^(){}<>'
# Use human-friendly identifiers.
zmodload zsh/terminfo
typeset -gA key_info
key_info=(
'Control' '\C-'
'ControlLeft' '\e[1;5D \e[5D \e\e[D \eOd'
'ControlRight' '\e[1;5C \e[5C \e\e[C \eOc'
'Escape' '\e'
'Meta' '\M-'
'Backspace' "^?"
@ -90,12 +59,11 @@ key_info=(
'BackTab' "$terminfo[kcbt]"
)
# Do not bind any keys if there are empty values in $key_info.
# Set empty $key_info values to an invalid UTF-8 sequence to induce silent
# bindkey failure.
for key in "${(k)key_info[@]}"; do
if [[ -z "$key_info[$key]" ]]; then
print "prezto: one or more keys are non-bindable" >&2
unset key{,_info}
return 1
key_info[$key]='<27>'
fi
done
@ -142,13 +110,39 @@ function editor-info {
zle -N editor-info
# Updates editor information when the keymap changes.
function zle-keymap-select zle-line-init zle-line-finish {
function zle-keymap-select {
zle editor-info
}
zle -N zle-keymap-select
zle -N zle-line-finish
# 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
# Toggles emacs overwrite mode and updates editor information.
function overwrite-mode {
zle .overwrite-mode
@ -214,10 +208,10 @@ bindkey -d
# Emacs Key Bindings
#
for key ("$key_info[Escape]"{B,b}) bindkey -M emacs "$key" emacs-backward-word
for key ("$key_info[Escape]"{F,f}) bindkey -M emacs "$key" emacs-forward-word
bindkey -M emacs "$key_info[Escape]$key_info[Left]" emacs-backward-word
bindkey -M emacs "$key_info[Escape]$key_info[Right]" emacs-forward-word
for key in "$key_info[Escape]"{B,b} "${(s: :)key_info[ControlLeft]}"
bindkey -M emacs "$key" emacs-backward-word
for key in "$key_info[Escape]"{F,f} "${(s: :)key_info[ControlRight]}"
bindkey -M emacs "$key" emacs-forward-word
# Kill to the beginning of the line.
for key in "$key_info[Escape]"{K,k}
@ -253,10 +247,6 @@ bindkey -M vicmd "v" edit-command-line
bindkey -M vicmd "u" undo
bindkey -M vicmd "$key_info[Control]R" redo
# Switch to command mode.
bindkey -M viins "jk" vi-cmd-mode
bindkey -M viins "kj" vi-cmd-mode
if (( $+widgets[history-incremental-pattern-search-backward] )); then
bindkey -M vicmd "?" history-incremental-pattern-search-backward
bindkey -M vicmd "/" history-incremental-pattern-search-forward
@ -327,14 +317,13 @@ fi
#
# Set the key layout.
zstyle -s ':prezto:module:editor' keymap 'keymap'
if [[ "$keymap" == (emacs|) ]]; then
zstyle -s ':prezto:module:editor' key-bindings 'key_bindings'
if [[ "$key_bindings" == (emacs|) ]]; then
bindkey -e
elif [[ "$keymap" == vi ]]; then
elif [[ "$key_bindings" == vi ]]; then
bindkey -v
else
print "prezto: invalid keymap: $keymap" >&2
print "prezto: editor: invalid key bindings: $key_bindings" >&2
fi
unset key{map,}
unset key{,map,bindings}

33
modules/emacs/README.md Normal file
View File

@ -0,0 +1,33 @@
Emacs
=====
Enables Emacs dependency management.
Dependency management
---------------------
[Carton][1] installs and manages Emacs packages for Emacs package development
and Emacs configuration.
This module prepends the Carton directory to the path variable to enable the
execution of `carton`.
Aliases
-------
### Carton
- `cai` installs dependencies.
- `cau` updates dependencies.
- `caI` initializes the current directory for dependency management.
- `cae` executes a command which correct dependencies.
Authors
-------
*The authors of this module should be contacted via the [issue tracker][2].*
- [Sebastian Wiesner](https://github.com/lunaryorn)
[1]: https://github.com/rejeep/carton
[2]: https://github.com/sorin-ionescu/prezto/issues

25
modules/emacs/init.zsh Normal file
View File

@ -0,0 +1,25 @@
#
# Configures Emacs dependency management.
#
# Authors: Sebastian Wiesner <lunaryorn@gmail.com>
#
# Return if requirements are not found.
if [[ ! -d "$HOME/.cask" ]]; then
return 1
fi
# Prepend Cask bin directory.
path=($HOME/.cask/bin $path)
# Load Carton completion
source "$HOME/.cask/etc/cask_completion.zsh" 2> /dev/null
#
# Aliases
#
alias cai='cask install'
alias cau='cask update'
alias caI='cask init'
alias cae='cask exec'

View File

@ -23,4 +23,3 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -17,6 +17,8 @@ zle -N self-insert url-quote-magic
#
setopt BRACE_CCL # Allow brace character class list expansion.
setopt COMBINING_CHARS # Combine zero-length punctuation characters (accents)
# with the base character.
setopt RC_QUOTES # Allow 'Henry''s Garage' instead of 'Henry'\''s Garage'.
unsetopt MAIL_WARNING # Don't print a warning message if a mail file has been accessed.
@ -53,4 +55,3 @@ if zstyle -t ':prezto:environment:termcap' color; then
export LESS_TERMCAP_ue=$'\E[0m' # Ends underline.
export LESS_TERMCAP_us=$'\E[01;32m' # Begins underline.
fi

View File

@ -36,4 +36,3 @@ Authors
[3]: https://github.com/rupa/z
[4]: https://github.com/rupa/v
[5]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -51,4 +51,3 @@ function fasd_cd {
# Changes the current working directory interactively.
alias j='fasd_cd -i'

View File

@ -1,7 +1,8 @@
Git
===
Enhances the [Git][1] distributed version control system by providing aliases, functions and by exposing repository status information to prompts.
Enhances the [Git][1] distributed version control system by providing aliases,
functions and by exposing repository status information to prompts.
Git **1.7.2** is the [minimum required version][7].
@ -12,7 +13,7 @@ Settings
The format of the [git-log][8] output is configurable via the following style,
where context is *brief*, *oneline*, and *medium*, which will be passed to the
`--prety=format:` switch.
`--pretty=format:` switch.
zstyle ':prezto:module:git:log:context' format ''
@ -38,8 +39,8 @@ Aliases
- `gbc` creates a new branch.
- `gbl` lists branches and their commits.
- `gbL` lists local and remote branches and their commits.
- `gbs` lists branches and their commits with ancestery graphs.
- `gbS` lists local and remote branches and their commits with ancestery
- `gbs` lists branches and their commits with ancestry graphs.
- `gbS` lists local and remote branches and their commits with ancestry
graphs.
- `gbx` deletes a branch.
- `gbX` deletes a branch irrespective of its merged status.
@ -53,16 +54,27 @@ Aliases
- `gca` stages all modified and deleted files.
- `gcm` records changes to the repository with the given message.
- `gco` checks out a branch or paths to work tree.
- `gcO` checks out paths to work tree using the *HEAD* commit.
- `gcO` checks out hunks from the index or the tree interactively.
- `gcf` amends the tip of the current branch using the same log message as
*HEAD*.
- `gcF` amends the tip of the current branch.
- `gcp` applies changes introduced by existing commits.
- `gcP` applies changes introduced by existing commits without committing.
- `gcr` reverts existing commits by reverting patches and recording new
commits.
- `gcR` removes the *HEAD* commit.
- `gcs` displays various types of objects.
- `gcl` displays lost commits.
- `gcl` lists lost commits.
### Conflict
- `gCl` lists unmerged files.
- `gCa` adds unmerged file contents to the index.
- `gCe` executes merge-tool on all unmerged file.
- `gCo` checks out our changes for unmerged paths.
- `gCO` checks out our changes for all unmerged paths.
- `gCt` checks out their changes for unmerged paths.
- `gCT` checks out their changes for all unmerged paths.
### Data
@ -85,8 +97,8 @@ Aliases
- `gg` displays lines matching a pattern.
- `ggi` displays lines matching a pattern ignoring case.
- `ggl` displays files matching a pattern.
- `ggL` displays files are not matching a pattern.
- `ggl` lists files matching a pattern.
- `ggL` lists files that are not matching a pattern.
- `ggv` displays lines not matching a pattern.
- `ggw` displays lines matching a pattern at word boundary.
@ -97,21 +109,11 @@ Aliases
- `giu` adds file contents to the index (updates only known files).
- `gid` displays changes between the index and a named commit (diff).
- `giD` displays changes between the index and a named commit (word diff).
- `gir` resets current HEAD to the specified state.
- `giR` resets current index to the specified state.
- `gir` resets the current HEAD to the specified state.
- `giR` resets the current index interactively.
- `gix` removes files/directories from the index (recursively).
- `giX` removes files/directories from the index (recursively and forced).
### Conflict
- `gCl` lists unmerged files.
- `gCa` adds unmerged file contents to the index.
- `gCe` executes merge-tool on all unmerged file.
- `gCo` checks out our changes for unmerged paths.
- `gCO` checks out our changes for all unmerged paths.
- `gCt` checks out their changes for unmerged paths.
- `gCT` checks out their changes for all unmerged paths.
### Log
- `gl` displays the log.
@ -153,12 +155,12 @@ Aliases
### Remote
- `gR` manages tracked repositories.
- `gRl` displays remote names and URLs.
- `gRl` lists remote names and their URLs.
- `gRa` adds a new remote.
- `gRx` removes a remote.
- `gRm` renames a remote.
- `gRu` fetches remotes updates.
- `gRc` deletes all stale remote tracking branches.
- `gRp` prunes all stale remote tracking branches.
- `gRs` displays information about a given remote.
- `gRb` opens a remote on [GitHub][3] in the default browser.
@ -168,10 +170,9 @@ Aliases
- `gsa` applies the changes recorded in a stash to the working directory.
- `gsx` drops a stashed state.
- `gsX` drops all the stashed states.
- `gsd` lists dropped stashed states.
- `gsl` lists stashed states.
- `gsL` displays the changes recorded in the stash as a diff between the
stashed state and its original parent.
- `gsL` lists dropped stashed states.
- `gsd` displays changes between the stash and its original parent.
- `gsp` removes and applies a single stashed state from the stash list.
- `gsr` recovers a given stashed state.
- `gss` stashes the changes of the dirty working directory, including untracked.
@ -246,25 +247,47 @@ setting a style is as follows.
zstyle ':prezto:module:git:info:context:subcontext' format 'string'
### Main Contexts
| Name | Format Code | Description
| --------- | :---------: | ---------------------------------------------------
| action | %s | Special action name
| added | %a | Added files count
| ahead | %A | Commits ahead of remote count
| behind | %B | Commits behind of remote count
| branch | %b | Branch name
| commit | %c | Commit hash
| position | %p | Commits from the nearest tag count
| remote | %R | Remote name
| stashed | %S | Stashed states count
### Concise Contexts
| Name | Format Code | Description
| --------- | :---------: | ---------------------------------------------------
| clean | %C | Clean state
| dirty | %D | Dirty files count
| indexed | %i | Indexed files count
| unindexed | %I | Unindexed files count
| untracked | %u | Untracked files count
The following contexts must be enabled with the following zstyle:
zstyle ':prezto:module:git:info' verbose 'yes'
### Verbose Contexts
| Name | Format Code | Description
| --------- | :---------: | ---------------------------------------------------
| added | %a | Added files count
| clean | %C | Clean state
| deleted | %d | Deleted files count
| dirty | %D | Dirty files count
| modified | %m | Modified files count
| position | %p | Commits from the nearest tag count
| remote | %R | Remote name
| renamed | %r | Renamed files count
| stashed | %S | Stashed states count
| unmerged | %U | Unmerged files count
| untracked | %u | Untracked files count
[**Main Contexts**]
### Special Action Contexts
| Name | Format | Description
| -------------------- | :---------: | -----------------------------------------
@ -276,7 +299,6 @@ setting a style is as follows.
| rebase | value | Rebasing
| rebase-interactive | value | Rebasing interactively
| rebase-merge | value | Rebasing merge
[**Special Action Contexts**]
First, format the repository state attributes. For example, to format the branch
and remote names, define the following styles.
@ -290,7 +312,7 @@ Second, format how the above attributes are displayed in prompts.
'prompt' ' git(%b)' \
'rprompt' '[%R]'
Last, add `$git_info[prompt]` to `$PROMPT` and `$git_info[prompt]` to
Last, add `$git_info[prompt]` to `$PROMPT` and `$git_info[rprompt]` to
`$RPROMPT` respectively and call `git-info` in the `prompt_name_preexec` hook
function.
@ -310,4 +332,3 @@ Authors
[6]: https://github.com/sorin-ionescu/prezto/issues
[7]: https://github.com/sorin-ionescu/prezto/issues/219
[8]: http://www.kernel.org/pub/software/scm/git/docs/git-log.html

View File

@ -42,12 +42,13 @@ alias gbs='git show-branch'
alias gbS='git show-branch -a'
# Commit (c)
alias gc='git commit'
alias gca='git commit --all'
alias gc='git commit --verbose'
alias gca='git commit --verbose --all'
alias gcm='git commit --message'
alias gco='git checkout'
alias gcO='git checkout HEAD --'
alias gcO='git checkout --patch'
alias gcf='git commit --amend --reuse-message HEAD'
alias gcF='git commit --verbose --amend'
alias gcp='git cherry-pick --ff'
alias gcP='git cherry-pick --no-commit'
alias gcr='git revert'
@ -55,6 +56,15 @@ alias gcR='git reset "HEAD^"'
alias gcs='git show'
alias gcl='git-commit-lost'
# Conflict (C)
alias gCl='git status | sed -n "s/^.*both [a-z]*ed: *//p"'
alias gCa='git add $(gCl)'
alias gCe='git mergetool $(gCl)'
alias gCo='git checkout --ours --'
alias gCO='gCo $(gCl)'
alias gCt='git checkout --theirs --'
alias gCT='gCt $(gCl)'
# Data (d)
alias gd='git ls-files'
alias gdc='git ls-files --cached'
@ -85,19 +95,10 @@ alias giu='git add --update'
alias gid='git diff --no-ext-diff --cached'
alias giD='git diff --no-ext-diff --cached --word-diff'
alias gir='git reset'
alias giR='git reset --keep'
alias giR='git reset --patch'
alias gix='git rm -r --cached'
alias giX='git rm -rf --cached'
# Conflict (C)
alias gCl='git status | sed -n "s/^.*both [a-z]*ed: *//p"'
alias gCa='git add $(gCl)'
alias gCe='git mergetool $(gCl)'
alias gCo='git checkout --ours --'
alias gCO='gCo $(gCl)'
alias gCt='git checkout --theirs --'
alias gCT='gCt $(gCl)'
# Log (l)
alias gl='git log --topo-order --pretty=format:${_git_log_medium_format}'
alias gls='git log --topo-order --stat --pretty=format:${_git_log_medium_format}'
@ -137,7 +138,7 @@ alias gRa='git remote add'
alias gRx='git remote rm'
alias gRm='git remote rename'
alias gRu='git remote update'
alias gRc='git remote prune'
alias gRp='git remote prune'
alias gRs='git remote show'
alias gRb='git-hub-browse'
@ -146,9 +147,9 @@ alias gs='git stash'
alias gsa='git stash apply'
alias gsx='git stash drop'
alias gsX='git-stash-clear-interactive'
alias gsd='git-stash-dropped'
alias gsl='git stash list'
alias gsL='git stash show --patch --stat'
alias gsL='git-stash-dropped'
alias gsd='git stash show --patch --stat'
alias gsp='git stash pop'
alias gsr='git-stash-recover'
alias gss='git stash save --include-untracked'
@ -178,4 +179,3 @@ alias gwc='git clean -n'
alias gwC='git clean -f'
alias gwx='git rm -r'
alias gwX='git rm -rf'

View File

@ -45,4 +45,3 @@ case "$state" in
esac
return $ret

View File

@ -9,4 +9,3 @@
#
_arguments '1:url:' && return 0

View File

@ -16,4 +16,3 @@ _arguments "1:toggle:((
on\:'enable in-prompt information for the current repository'
off\:'disable in-prompt information for the current repository'
))" && return 0

View File

@ -38,4 +38,3 @@ case "$state" in
esac
return $ret

View File

@ -24,4 +24,3 @@ done < <(
)
_describe -t submodule 'submodules' submodules && return 0

View File

@ -18,4 +18,3 @@ if [[ -n "$ref" ]]; then
else
return 1
fi

View File

@ -18,4 +18,3 @@ git fsck 2> /dev/null \
--no-walk \
--stdin \
--pretty=format:${_git_log_oneline_format}

View File

@ -14,4 +14,3 @@ else
print "$0: not a repository: $PWD" >&2
return 1
fi

View File

@ -56,4 +56,3 @@ else
print "$0: not a Git repository or remote not set" >&2
return 1
fi

View File

@ -20,4 +20,3 @@ if (( $+commands[curl] )); then
else
print "$0: command not found: curl" >&2
fi

View File

@ -89,31 +89,6 @@ function _git-action {
return 1
}
# Turns off git-info for the current repository.
function _git-info-abort {
if ! is-true "$_git_info_executing"; then
return 1
fi
cat >&2 <<EOF
Gathering status for certain repositories is time intensive.
By pressing CTRL + C, you have turned off prompt Git status
for this repository.
To revert, execute:
git-info on
EOF
unset _git_info_executing
git config --bool prompt.showinfo false
git-info
return 0
}
add-zsh-trap INT _git-info-abort
# Gets the Git status information.
function git-info {
# Extended globbing is needed to parse repository status.
@ -126,13 +101,13 @@ function git-info {
local added=0
local added_format
local added_formatted
local ahead
local ahead=0
local ahead_and_behind
local ahead_and_behind_cmd
local ahead_format
local ahead_formatted
local ahead_or_behind
local behind
local behind=0
local behind_format
local behind_formatted
local branch
@ -151,9 +126,11 @@ function git-info {
local dirty_format
local dirty_formatted
local ignore_submodules
local indexed=0
local indexed_format
local indexed_formatted
local -A info_formats
local info_format
local line_number=0
local modified=0
local modified_format
local modified_formatted
@ -171,6 +148,10 @@ function git-info {
local stashed_format
local stashed_formatted
local status_cmd
local status_mode
local unindexed=0
local unindexed_format
local unindexed_formatted
local unmerged=0
local unmerged_format
local unmerged_formatted
@ -203,44 +184,152 @@ function git-info {
return 1
fi
# Used to abort and turn git-info off on SIGINT.
_git_info_executing=true
# Use porcelain status for easy parsing.
status_cmd='git status --porcelain'
# Gets the remote name.
remote_cmd='git rev-parse --symbolic-full-name --verify HEAD@{upstream}'
# Gets the commit difference counts between local and remote.
ahead_and_behind_cmd='git rev-list --count --left-right HEAD...@{upstream}'
# Ignore submodule status.
zstyle -s ':prezto:module:git:status:ignore' submodules 'ignore_submodules'
if [[ -n "$ignore_submodules" ]]; then
status_cmd+=" --ignore-submodules=${ignore_submodules}"
fi
# Format commit.
zstyle -s ':prezto:module:git:info:commit' format 'commit_format'
if [[ -n "$commit_format" ]]; then
commit="$(git rev-parse HEAD 2> /dev/null)"
if [[ -n "$commit" ]]; then
zstyle -s ':prezto:module:git:info:commit' format 'commit_format'
zformat -f commit_formatted "$commit_format" "c:$commit"
fi
fi
# Format stashed.
if [[ -f "$(git-dir)/refs/stash" ]]; then
stashed="$(git stash list 2> /dev/null | wc -l | awk '{print $1}')"
zstyle -s ':prezto:module:git:info:stashed' format 'stashed_format'
if [[ -n "$stashed_format" && -f "$(git-dir)/refs/stash" ]]; then
stashed="$(git stash list 2> /dev/null | wc -l | awk '{print $1}')"
if [[ -n "$stashed" ]]; then
zformat -f stashed_formatted "$stashed_format" "S:$stashed"
fi
fi
# Format action.
zstyle -s ':prezto:module:git:info:action' format 'action_format'
if [[ -n "$action_format" ]]; then
action="$(_git-action)"
if [[ -n "$action" ]]; then
zstyle -s ':prezto:module:git:info:action' format 'action_format'
zformat -f action_formatted "$action_format" "s:$action"
fi
fi
# Get the branch.
branch="${$(git symbolic-ref HEAD 2> /dev/null)#refs/heads/}"
# Format branch.
zstyle -s ':prezto:module:git:info:branch' format 'branch_format'
if [[ -n "$branch" && -n "$branch_format" ]]; then
zformat -f branch_formatted "$branch_format" "b:$branch"
fi
# Format position.
zstyle -s ':prezto:module:git:info:position' format 'position_format'
if [[ -z "$branch" && -n "$position_format" ]]; then
position="$(git describe --contains --all HEAD 2> /dev/null)"
if [[ -n "$position" ]]; then
zformat -f position_formatted "$position_format" "p:$position"
fi
fi
# Format remote.
zstyle -s ':prezto:module:git:info:remote' format 'remote_format'
if [[ -n "$branch" && -n "$remote_format" ]]; then
# Gets the remote name.
remote_cmd='git rev-parse --symbolic-full-name --verify HEAD@{upstream}'
remote="${$(${(z)remote_cmd} 2> /dev/null)##refs/remotes/}"
if [[ -n "$remote" ]]; then
zformat -f remote_formatted "$remote_format" "R:$remote"
fi
fi
zstyle -s ':prezto:module:git:info:ahead' format 'ahead_format'
zstyle -s ':prezto:module:git:info:behind' format 'behind_format'
if [[ -n "$branch" && ( -n "$ahead_format" || -n "$behind_format" ) ]]; then
# Gets the commit difference counts between local and remote.
ahead_and_behind_cmd='git rev-list --count --left-right HEAD...@{upstream}'
# Get ahead and behind counts.
ahead_and_behind="$(${(z)ahead_and_behind_cmd} 2> /dev/null)"
# Format ahead.
if [[ -n "$ahead_format" ]]; then
ahead="$ahead_and_behind[(w)1]"
if (( ahead > 0 )); then
zformat -f ahead_formatted "$ahead_format" "A:$ahead"
fi
fi
# Format behind.
if [[ -n "$behind_format" ]]; then
behind="$ahead_and_behind[(w)2]"
if (( behind > 0 )); then
zformat -f behind_formatted "$behind_format" "B:$behind"
fi
fi
fi
# Get status type.
if ! zstyle -t ':prezto:module:git:info' verbose; then
# Format indexed.
zstyle -s ':prezto:module:git:info:indexed' format 'indexed_format'
if [[ -n "$indexed_format" ]]; then
((
indexed+=$(
git diff-index \
--no-ext-diff \
--name-only \
--cached \
--ignore-submodules=${ignore_submodules:-none} \
HEAD \
2> /dev/null \
| wc -l
)
))
if (( indexed > 0 )); then
zformat -f indexed_formatted "$indexed_format" "i:$indexed"
fi
fi
# Format unindexed.
zstyle -s ':prezto:module:git:info:unindexed' format 'unindexed_format'
if [[ -n "$unindexed_format" ]]; then
((
unindexed+=$(
git diff-files \
--no-ext-diff \
--name-only \
--ignore-submodules=${ignore_submodules:-none} \
2> /dev/null \
| wc -l
)
))
if (( unindexed > 0 )); then
zformat -f unindexed_formatted "$unindexed_format" "I:$unindexed"
fi
fi
# Format untracked.
zstyle -s ':prezto:module:git:info:untracked' format 'untracked_format'
if [[ -n "$untracked_format" ]]; then
((
untracked+=$(
git ls-files \
--other \
--exclude-standard \
2> /dev/null \
| wc -l
)
))
if (( untracked > 0 )); then
zformat -f untracked_formatted "$untracked_format" "u:$untracked"
fi
fi
(( dirty = indexed + unindexed + untracked ))
else
# Use porcelain status for easy parsing.
status_cmd="git status --porcelain --ignore-submodules=${ignore_submodules:-none}"
# Get current status.
while IFS=$'\n' read line; do
@ -256,82 +345,45 @@ function git-info {
(( dirty++ ))
done < <(${(z)status_cmd} 2> /dev/null)
# Format branch.
branch="${$(git symbolic-ref -q HEAD)##refs/heads/}"
if [[ -n "$branch" ]]; then
zstyle -s ':prezto:module:git:info:branch' format 'branch_format'
zformat -f branch_formatted "$branch_format" "b:$branch"
# Format remote.
remote="${$(${(z)remote_cmd} 2> /dev/null)##refs/remotes/}"
if [[ -n "$remote" ]]; then
zstyle -s ':prezto:module:git:info:remote' format 'remote_format'
zformat -f remote_formatted "$remote_format" "R:$remote"
# Get ahead and behind counts.
ahead_and_behind="$(${(z)ahead_and_behind_cmd} 2> /dev/null)"
# Format ahead.
ahead="$ahead_and_behind[(w)1]"
if (( $ahead > 0 )); then
zstyle -s ':prezto:module:git:info:ahead' format 'ahead_format'
zformat -f ahead_formatted "$ahead_format" "A:$ahead"
fi
# Format behind.
behind="$ahead_and_behind[(w)2]"
if (( $behind > 0 )); then
zstyle -s ':prezto:module:git:info:behind' format 'behind_format'
zformat -f behind_formatted "$behind_format" "B:$behind"
fi
fi
else
# Format position.
position="$(git describe --contains --all HEAD 2> /dev/null)"
if [[ -n "$position" ]]; then
zstyle -s ':prezto:module:git:info:position' format 'position_format'
zformat -f position_formatted "$position_format" "p:$position"
fi
fi
# Format added.
if (( $added > 0 )); then
if (( added > 0 )); then
zstyle -s ':prezto:module:git:info:added' format 'added_format'
zformat -f added_formatted "$added_format" "a:$added_format"
zformat -f added_formatted "$added_format" "a:$added"
fi
# Format deleted.
if (( $deleted > 0 )); then
if (( deleted > 0 )); then
zstyle -s ':prezto:module:git:info:deleted' format 'deleted_format'
zformat -f deleted_formatted "$deleted_format" "d:$deleted_format"
zformat -f deleted_formatted "$deleted_format" "d:$deleted"
fi
# Format modified.
if (( $modified > 0 )); then
if (( modified > 0 )); then
zstyle -s ':prezto:module:git:info:modified' format 'modified_format'
zformat -f modified_formatted "$modified_format" "m:$modified"
fi
# Format renamed.
if (( $renamed > 0 )); then
if (( renamed > 0 )); then
zstyle -s ':prezto:module:git:info:renamed' format 'renamed_format'
zformat -f renamed_formatted "$renamed_format" "r:$renamed"
fi
# Format unmerged.
if (( $unmerged > 0 )); then
if (( unmerged > 0 )); then
zstyle -s ':prezto:module:git:info:unmerged' format 'unmerged_format'
zformat -f unmerged_formatted "$unmerged_format" "U:$unmerged"
fi
# Format untracked.
if (( $untracked > 0 )); then
if (( untracked > 0 )); then
zstyle -s ':prezto:module:git:info:untracked' format 'untracked_format'
zformat -f untracked_formatted "$untracked_format" "u:$untracked"
fi
fi
# Format dirty and clean.
if (( $dirty > 0 )); then
if (( dirty > 0 )); then
zstyle -s ':prezto:module:git:info:dirty' format 'dirty_format'
zformat -f dirty_formatted "$dirty_format" "D:$dirty"
else
@ -342,30 +394,30 @@ function git-info {
zstyle -a ':prezto:module:git:info:keys' format 'info_formats'
for info_format in ${(k)info_formats}; do
zformat -f REPLY "$info_formats[$info_format]" \
"a:$added_formatted" \
"A:$ahead_formatted" \
"B:$behind_formatted" \
"D:$dirty_formatted" \
"R:$remote_formatted" \
"S:$stashed_formatted" \
"U:$unmerged_formatted" \
"a:$added_formatted" \
"b:$branch_formatted" \
"C:$clean_formatted" \
"c:$commit_formatted" \
"d:$deleted_formatted" \
"D:$dirty_formatted" \
"i:$indexed_formatted" \
"I:$unindexed_formatted" \
"m:$modified_formatted" \
"p:$position_formatted" \
"R:$remote_formatted" \
"r:$renamed_formatted" \
"s:$action_formatted" \
"S:$stashed_formatted" \
"U:$unmerged_formatted" \
"u:$untracked_formatted"
git_info[$info_format]="$REPLY"
done
unset REPLY
unset _git_info_executing
return 0
}
git-info "$@"

View File

@ -14,4 +14,3 @@ else
print "$0: not a repository work tree: $PWD" >&2
return 1
fi

View File

@ -20,4 +20,3 @@ if [[ -f "$(git-dir)/refs/stash" ]]; then
fi
fi
fi

View File

@ -20,4 +20,3 @@ git fsck --unreachable 2> /dev/null \
--merges \
--no-walk \
--stdin

View File

@ -16,4 +16,3 @@ for commit in "$@"; do
git update-ref \
-m "$(git log -1 --pretty="format:%s" "$commit")" refs/stash "$commit"
done

View File

@ -30,4 +30,3 @@ git-submodule-remove "$src"
git submodule add "$url" "$dst"
return 0

View File

@ -25,4 +25,3 @@ rm -rf "${1}"
rm -rf "$(git-dir)/modules/${1}"
return 0

View File

@ -15,4 +15,3 @@ pmodload 'helper'
# Source module files.
source "${0:h}/alias.zsh"

View File

@ -7,8 +7,8 @@ Installing GNU utilities on non-GNU systems in `$PATH` without a prefix, i.e.
`ls` instead of `gls`, is not recommended since scripts that target other
utilities will be broken.
However, for interactive use, prefixed commands can be wrapped in their
non-prefixed counterparts.
This module wraps GNU utilities in functions without a prefix for interactive
use.
This module must be loaded **before** the *utility* module.
@ -30,4 +30,3 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -58,4 +58,3 @@ for _gnu_utility_cmd in "${_gnu_utility_cmds[@]}"; do
done
unset _gnu_utility_{p,cmds,cmd,pcmd}

View File

@ -1,25 +0,0 @@
GPG-Agent
=========
Provides for an easier use of [gpg-agent][1].
Settings
--------
### SSH-Agent Protocol Emulation
To enable SSH-Agent protocol emulation, add the following line to *zpreztorc*:
zstyle ':prezto:module:gpg-agent' ssh-support 'yes'
Authors
-------
*The authors of this module should be contacted via the [issue tracker][2].*
- [Florian Walch](https://github.com/fwalch)
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: http://linux.die.net/man/1/gpg-agent
[2]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -1,44 +0,0 @@
#
# Provides for an easier use of gpg-agent.
#
# Authors:
# Florian Walch <florian.walch@gmx.at>
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# Return if requirements are not found.
if (( ! $+commands[gpg-agent] )); then
return 1
fi
_gpg_env="$HOME/.gnupg/gpg-agent.env"
function _gpg-agent-start {
local ssh_support
zstyle -b ':prezto:module:gpg-agent' ssh-support 'ssh_support' \
|| ssh_support=''
gpg-agent \
--daemon ${ssh_support:+'--enable-ssh-support'}
--write-env-file "${_gpg_env}" > /dev/null
chmod 600 "${_gpg_env}"
source "${_gpg_env}" > /dev/null
}
# Source GPG agent settings, if applicable.
if [[ -s "${_gpg_env}" ]]; then
source "${_gpg_env}" > /dev/null
ps -ef | grep "${SSH_AGENT_PID}" | grep -q 'gpg-agent' || {
_gpg-agent-start
}
else
_gpg-agent-start
fi
export GPG_AGENT_INFO
export SSH_AUTH_SOCK
export SSH_AGENT_PID
export GPG_TTY="$(tty)"

26
modules/gpg/README.md Normal file
View File

@ -0,0 +1,26 @@
GPG
===
Provides for an easier use of [GPG][1] by setting up [gpg-agent][2].
### SSH
To enable OpenSSH Agent protocol emulation, and make `gpg-agent` a drop-in
replacement for `ssh-agent`, add the following line to
*~/.gnupg/gpg-agent.conf*:
enable-ssh-support
When OpenSSH Agent protocol emulation is enabled, this module will load the SSH
module for additional processing.
Authors
-------
*The authors of this module should be contacted via the [issue tracker][3].*
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: http://www.gnupg.org
[2]: http://linux.die.net/man/1/gpg-agent
[3]: https://github.com/sorin-ionescu/prezto/issues

46
modules/gpg/init.zsh Normal file
View File

@ -0,0 +1,46 @@
#
# Provides for an easier use of GPG by setting up gpg-agent.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# Return if requirements are not found.
if (( ! $+commands[gpg-agent] )); then
return 1
fi
# Set the default paths to gpg-agent files.
_gpg_agent_conf="$HOME/.gnupg/gpg-agent.conf"
_gpg_agent_env="${TMPDIR:-/tmp}/gpg-agent.env"
# Start gpg-agent if not started.
if [[ -z "$GPG_AGENT_INFO" ]]; then
# Export environment variables.
source "$_gpg_agent_env" 2> /dev/null
# Start gpg-agent if not started.
if ! ps -U "$USER" -o pid,ucomm | grep -q -- "${${${(s.:.)GPG_AGENT_INFO}[2]}:--1} gpg-agent"; then
eval "$(gpg-agent --daemon | tee "$_gpg_agent_env")"
fi
fi
# Inform gpg-agent of the current TTY for user prompts.
export GPG_TTY="$(tty)"
# Integrate with the SSH module.
if grep 'enable-ssh-support' "$_gpg_agent_conf" &> /dev/null; then
# Override the ssh-agent environment file default path.
_ssh_agent_env="$_gpg_agent_env"
# Load the SSH module for additional processing.
pmodload 'ssh'
fi
# Clean up.
unset _gpg_agent_{conf,env}
# Disable GUI prompts inside SSH.
if [[ -n "$SSH_CONNECTION" ]]; then
export PINENTRY_USER_DATA='USE_CURSES=1'
fi

View File

@ -26,4 +26,3 @@ Authors
[1]: http://www.haskell.org/cabal/
[2]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -10,12 +10,9 @@ if (( ! $+commands[ghc] )); then
return 1
fi
# Prepend Cabal per user directories to PATH/MANPATH.
if [[ "$OSTYPE" == darwin* ]]; then
# Prepend Cabal per user directories to PATH.
if [[ "$OSTYPE" == darwin* && -d $HOME/Library/Haskell ]]; then
path=($HOME/Library/Haskell/bin(/N) $path)
manpath=($HOME/Library/Haskell/man(/N) $manpath)
else
path=($HOME/.cabal/bin(/N) $path)
manpath=($HOME/.cabal/man(/N) $manpath)
fi

View File

@ -22,4 +22,3 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -6,14 +6,6 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# Trap signals were generated with 'kill -l'.
# DEBUG, EXIT, and ZERR are Zsh signals.
_trap_signals=(
ABRT ALRM BUS CHLD CONT EMT FPE HUP ILL INFO INT IO KILL PIPE PROF QUIT
SEGV STOP SYS TERM TRAP TSTP TTIN TTOU URG USR1 USR2 VTALRM WINCH XCPU XFSZ
DEBUG EXIT ZERR
)
# Adds a function name to a list to be called when a trap is triggered.
function add-zsh-trap {
if (( $# < 2 )); then
@ -21,7 +13,7 @@ function add-zsh-trap {
return 1
fi
if [[ -z "$_trap_signals[(r)$1]" ]]; then
if [[ -z "$signals[(r)$1]" ]]; then
print "$0: unknown signal: $1" >&2
return 1
fi
@ -47,4 +39,3 @@ function add-zsh-trap {
}
add-zsh-trap "$@"

View File

@ -29,4 +29,3 @@ function coalesce {
done
return 1
}

View File

@ -36,6 +36,18 @@ To enable highlighting for this module only, add the following line to
zstyle ':prezto:module:history-substring-search' color 'yes'
To set the query found color, add the following line to *zpreztorc*:
zstyle ':prezto:module:history-substring-search:color' found ''
To set the query not found color, add the following line to *zpreztorc*:
zstyle ':prezto:module:history-substring-search:color' not-found ''
To set the search globbing flags, add the following line to *zpreztorc*:
zstyle ':prezto:module:history-substring-search' globbing-flags ''
Authors
-------
@ -47,4 +59,3 @@ Authors
[1]: https://github.com/zsh-users/zsh-history-substring-search
[2]: http://fishshell.com
[3]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -10,14 +10,26 @@
pmodload 'editor'
# Source module files.
source "${0:h}/external/zsh-history-substring-search.zsh"
source "${0:h}/external/zsh-history-substring-search.zsh" || return 1
#
# Styles
# Search
#
zstyle -s ':prezto:module:history-substring-search:color' found \
'HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND' \
|| HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND='bg=magenta,fg=white,bold'
zstyle -s ':prezto:module:history-substring-search:color' not-found \
'HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND' \
|| HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND='bg=red,fg=white,bold'
zstyle -s ':prezto:module:history-substring-search' globbing-flags \
'HISTORY_SUBSTRING_SEARCH_GLOBBING_FLAGS' \
|| HISTORY_SUBSTRING_SEARCH_GLOBBING_FLAGS='i'
if zstyle -t ':prezto:module:history-substring-search' case-sensitive; then
unset HISTORY_SUBSTRING_SEARCH_GLOBBING_FLAGS
HISTORY_SUBSTRING_SEARCH_GLOBBING_FLAGS="${HISTORY_SUBSTRING_SEARCH_GLOBBING_FLAGS//i}"
fi
if ! zstyle -t ':prezto:module:history-substring-search' color; then
@ -28,7 +40,7 @@ fi
# Key Bindings
#
if [[ -n $key_info ]]; then
if [[ -n "$key_info" ]]; then
# Emacs
bindkey -M emacs "$key_info[Control]P" history-substring-search-up
bindkey -M emacs "$key_info[Control]N" history-substring-search-down
@ -43,4 +55,3 @@ if [[ -n $key_info ]]; then
bindkey -M "$keymap" "$key_info[Down]" history-substring-search-down
done
fi

View File

@ -41,4 +41,3 @@ Authors
[1]: http://zsh.sourceforge.net/Guide/zshguide02.html#l16
[2]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -0,0 +1,38 @@
Homebrew
========
Defines Homebrew aliases.
Aliases
-------
### Homebrew
- `brewc` cleans outdated brews and their cached archives.
- `brewC` cleans outdated brews, including keg-only, and their cached archives.
- `brewi` installs a formula.
- `brewl` lists installed formulae.
- `brews` searches for a formula.
- `brewU` upgrades Homebrew and outdated brews.
- `brewu` upgrades Homebrew.
- `brewx` uninstalls a formula.
### Homebrew Cask
- `cask` is aliased to `brew cask`.
- `caskc` cleans up old cached downloads.
- `caskC` cleans up all cached downloads.
- `caski` installs a cask.
- `caskl` lists installed casks.
- `casks` searches for a cask.
- `caskx` uninstalls a cask.
Authors
-------
*The authors of this module should be contacted via the [issue tracker][1].*
- [Sorin Ionescu](https://github.com/sorin-ionescu)
- [Griffin Yourick](https://github.com/tough-griff)
[1]: https://github.com/sorin-ionescu/prezto/issues

34
modules/homebrew/init.zsh Normal file
View File

@ -0,0 +1,34 @@
#
# Defines Homebrew aliases.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# Return if requirements are not found.
if [[ "$OSTYPE" != darwin* ]]; then
return 1
fi
#
# Aliases
#
# Homebrew
alias brewc='brew cleanup'
alias brewC='brew cleanup --force'
alias brewi='brew install'
alias brewl='brew list'
alias brews='brew search'
alias brewu='brew upgrade'
alias brewU='brew update && brew upgrade'
alias brewx='brew remove'
# Homebrew Cask
alias cask='brew cask'
alias caskc='brew cask cleanup --outdated'
alias caskC='brew cask cleanup'
alias caski='brew cask install'
alias caskl='brew cask list'
alias casks='brew cask search'
alias caskx='brew cask uninstall'

View File

@ -23,4 +23,3 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -15,18 +15,6 @@ fi
# Paths
#
# Set the list of directories that info searches for manuals.
infopath=(
/opt/local/share/info
$infopath
)
# Set the list of directories that man searches for manuals.
manpath=(
/opt/local/share/man
$manpath
)
# Set the list of directories that Zsh searches for programs.
path=(
/opt/local/{bin,sbin}
@ -44,4 +32,3 @@ alias portU='sudo port selfupdate && sudo port upgrade outdated'
alias portu='sudo port upgrade'
alias portX='sudo port -u uninstall'
alias portx='sudo port uninstall'

View File

@ -1,13 +1,34 @@
Node.js
=======
Provides utility functions for [Node.js][1] and loads [npm][2] completion.
Provides utility functions for [Node.js][1], loads the Node Version Manager, and
enables [npm][2] completion.
nvm
---
[nvm][5] allows for managing multiple, isolated Node.js installations in the
home directory.
Functions
---------
- `node-doc` opens the Node.js online [API documentation][3] in the default
browser.
- `node-info` exposes information about the Node.js environment via the
`$node_info` associative array.
Theming
-------
To display the version number of the current Node.js version, define the
following style inside the `prompt_name_setup` function.
# %v - Node.js version.
zstyle ':prezto:module:node:info:version' format 'version:%v'
Then add `$node_info[version]` to either `$PROMPT` or `$RPROMPT` and call
`node-info` in `prompt_name_preexec` hook function.
Authors
-------
@ -15,9 +36,10 @@ Authors
*The authors of this module should be contacted via the [issue tracker][4].*
- [Sorin Ionescu](https://github.com/sorin-ionescu)
- [Zeh Rizzatti](https://github.com/zehrizzatti)
[1]: http://nodejs.org
[2]: http://npmjs.org
[3]: http://nodejs.org/api
[4]: https://github.com/sorin-ionescu/prezto/issues
[5]: https://github.com/creationix/nvm

View File

@ -5,6 +5,10 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# TODO: Make the sections easier to use.
open "http://nodejs.org/docs/$(node --version | sed 's/-.*//')/api/all.html#${1}"
if [[ -z "$BROWSER" ]]; then
print "$0: no web browser defined" >&2
return 1
fi
# TODO: Make the sections easier to use.
"$BROWSER" "http://nodejs.org/docs/$(node --version | sed 's/-.*//')/api/all.html#${1}"

View File

@ -0,0 +1,24 @@
#
# Exposes information about the Node.js environment via the $node_info
# associative array.
#
# Authors:
# Zeh Rizzatti <zehrizzatti@gmail.com>
#
local version
local version_format
local version_formatted
unset node_info
typeset -gA node_info
if (( $+functions[nvm_version] )); then
version="${$(nvm_version)#v}"
fi
if [[ "$version" == (none|) ]]; then
zstyle -s ':prezto:module:node:info:version' format 'version_format'
zformat -f version_formatted "$version_format" "v:$version"
node_info[version]="$version_formatted"
fi

View File

@ -1,10 +1,16 @@
#
# Completes npm.
# Loads the Node Version Manager and enables npm completion.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
# Zeh Rizzatti <zehrizzatti@gmail.com>
#
# Load NVM into the shell session.
if [[ -s "$HOME/.nvm/nvm.sh" ]]; then
source "$HOME/.nvm/nvm.sh"
fi
# Return if requirements are not found.
if (( ! $+commands[node] )); then
return 1
@ -23,4 +29,3 @@ if (( $+commands[npm] )); then
unset cache_file
fi

27
modules/ocaml/README.md Normal file
View File

@ -0,0 +1,27 @@
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

14
modules/ocaml/init.zsh Normal file
View File

@ -0,0 +1,14 @@
#
# Initializes OCaml package management.
#
# Authors:
# Sebastian Wiesner <lunaryorn@gmail.com>
#
# Return if requirements are not found.
if [[ ! -f "$HOME/.opam/opam-init/init.zsh" ]]; then
return 1
fi
# Initialize OPAM.
source "$HOME/.opam/opam-init/init.zsh"

View File

@ -9,18 +9,20 @@ Aliases
- `cdf` changes the current working director to the current _Finder_
directory.
- `pushdf` pushes the current working directory onto the directory queue and
- `ql` quick looks at files.
- `rm-osx-cruft` deletes .DS\_Store, \_\_MACOSX cruft.
changes the current working director to the current _Finder_ directory.
Functions
---------
- `manb` opens _man_ pages in [_Bwana.app_][2].
- `mand` opens _man_ pages in [_Dash.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]).
- `trash` moves files and folders to _Trash_.
- `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
-------
@ -30,7 +32,6 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: http://www.apple.com/macosx/
[2]: http://bruji.com/bwana/
[2]: http://kapeli.com/dash
[3]: http://www.iterm2.com/
[4]: https://github.com/sorin-ionescu/prezto/issues

View File

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

View File

@ -1,24 +0,0 @@
#
# 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

@ -0,0 +1,20 @@
#
# 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

@ -17,4 +17,3 @@ function manp {
}
manp "$@"

View File

@ -0,0 +1,13 @@
#
# 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

@ -0,0 +1,11 @@
#
# 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

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

View File

@ -5,14 +5,11 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
osascript 2>/dev/null <<EOF
set output to ""
osascript 2>&1 <<EOF
tell application "Finder" to set the_selection to selection
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
if the_selection is not {}
repeat with an_item in the_selection
log POSIX path of (an_item as text)
end repeat
end if
EOF

10
modules/osx/functions/ql Normal file
View File

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

View File

@ -39,4 +39,3 @@ EOF
end tell
EOF
}

View File

@ -1,27 +0,0 @@
#
# Moves directories and files to Trash.
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
print -N "${@:a}" | xargs -0 osascript -e '
on run theFilePaths
tell application "Finder"
set thePOSIXFiles to {}
repeat with aFilePath in theFilePaths
set aPOSIXFile to aFilePath as POSIX file
if exists aPOSIXFile
set end of thePOSIXFiles to aPOSIXFile
end if
end repeat
move every item of thePOSIXFiles to trash
end tell
end run
' &>/dev/null
if (( $? != 0)); then
print "$0: failed to move one or more items" >&2
return 1
fi

View File

@ -14,26 +14,8 @@ fi
# Aliases
#
# Change directory to the current Finder directory.
# Changes directory to the current Finder directory.
alias cdf='cd "$(pfd)"'
# Push directory to the current Finder directory.
# Pushes 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

@ -63,4 +63,3 @@ Authors
[1]: http://www.archlinux.org/pacman/
[2]: http://archlinux.fr/yaourt-en
[3]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -20,4 +20,3 @@ find /bin /etc /lib /sbin /usr \
\( -type d -printf '%p/\n' -o -print \) | sort > "$fs"
comm -23 "$fs" "$db"

View File

@ -18,4 +18,3 @@ pacman --query --explicit --info \
print $2
}
'

View File

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

View File

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

View File

@ -61,4 +61,3 @@ Authors
[1]: http://www.perl.org
[2]: http://perlbrew.pl
[3]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -20,8 +20,6 @@ if [[ "$OSTYPE" == darwin* ]]; then
perl_path="$HOME/Library/Perl/5.12"
if [[ -f "$perl_path/lib/perl5/local/lib.pm" ]]; then
manpath=("$perl_path/man" $manpath)
if [[ ! -s "$cache_file" ]]; then
perl -I$perl_path/lib/perl5 -Mlocal::lib=$perl_path >! "$cache_file"
fi
@ -31,12 +29,6 @@ if [[ "$OSTYPE" == darwin* ]]; then
unset perl_path
unset cache_file
# Set environment variables for launchd processes.
for env_var in PERL_LOCAL_LIB_ROOT PERL_MB_OPT PERL_MM_OPT PERL5LIB; do
launchctl setenv "$env_var" "${(P)env_var}" &!
done
unset env_var
fi
#
@ -58,4 +50,3 @@ alias plbO='perlbrew switch-off'
alias plbs='perlbrew switch'
alias plbu='perlbrew use'
alias plbx='perlbrew uninstall'

View File

@ -34,7 +34,7 @@ including a function that displays help or a function used to preview it.
**Do not call this function directly.**
The most basic example of this function can be seen bellow.
The most basic example of this function can be seen below.
function prompt_name_setup {
PROMPT='%m%# '
@ -109,4 +109,3 @@ Authors
[1]: http://zsh.sourceforge.net/Doc/Release/User-Contributions.html#Prompt-Themes
[2]: http://zsh.sourceforge.net/Doc/Release/Functions.html#Hook-Functions
[3]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -48,4 +48,3 @@ function prompt_minimal_setup {
}
prompt_minimal_setup "$@"

View File

@ -58,4 +58,3 @@ function prompt_nicoulaj_setup {
}
prompt_nicoulaj_setup "$@"

View File

@ -85,4 +85,3 @@ function prompt_peepcode_preview {
}
prompt_peepcode_setup "$@"

View File

@ -18,7 +18,7 @@ function prompt_sorin_pwd {
_prompt_sorin_pwd="$MATCH"
unset MATCH
else
_prompt_sorin_pwd="${${${(@j:/:M)${(@s:/:)pwd}##.#?}:h}%/}/${pwd:t}"
_prompt_sorin_pwd="${${${${(@j:/:M)${(@s:/:)pwd}##.#?}:h}%/}//\%/%%}/${${pwd:t}//\%/%%}"
fi
}
@ -46,10 +46,14 @@ function prompt_sorin_setup {
# Add hook for calling git-info before each command.
add-zsh-hook precmd prompt_sorin_precmd
# Set editor-info parameters.
zstyle ':prezto:module:editor:info:completing' format '%B%F{red}...%f%b'
zstyle ':prezto:module:editor:info:keymap:primary' format ' %B%F{red}%F{yellow}%F{green}%f%b'
zstyle ':prezto:module:editor:info:keymap:primary:overwrite' format ' %F{red}♺%f'
zstyle ':prezto:module:editor:info:keymap:alternate' format ' %B%F{green}%F{yellow}%F{red}%f%b'
# Set git-info parameters.
zstyle ':prezto:module:git:info' verbose 'yes'
zstyle ':prezto:module:git:info:action' format ':%%B%F{yellow}%s%f%%b'
zstyle ':prezto:module:git:info:added' format ' %%B%F{green}✚%f%%b'
zstyle ':prezto:module:git:info:ahead' format ' %%B%F{yellow}⬆%f%%b'
@ -58,7 +62,7 @@ function prompt_sorin_setup {
zstyle ':prezto:module:git:info:commit' format ':%F{green}%.7c%f'
zstyle ':prezto:module:git:info:deleted' format ' %%B%F{red}✖%f%%b'
zstyle ':prezto:module:git:info:modified' format ' %%B%F{blue}✱%f%%b'
zstyle ':prezto:module:git:info:position' format ':%F{green}%p%f'
zstyle ':prezto:module:git:info:position' format ':%F{red}%p%f'
zstyle ':prezto:module:git:info:renamed' format ' %%B%F{magenta}➜%f%%b'
zstyle ':prezto:module:git:info:stashed' format ' %%B%F{cyan}✭%f%%b'
zstyle ':prezto:module:git:info:unmerged' format ' %%B%F{yellow}═%f%%b'
@ -74,4 +78,3 @@ function prompt_sorin_setup {
}
prompt_sorin_setup "$@"

Some files were not shown because too many files have changed in this diff Show More