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

Compare commits

..

173 Commits

Author SHA1 Message Date
f2a826e963 Add preview function to sorin theme 2015-05-31 16:51:29 -04:00
bdec6c4e20 Redraw only when called from subprocess 2015-05-31 16:50:03 -04:00
ef634f38a4 Replace signal TERM with KILL 2015-05-31 16:47:16 -04:00
b761261b11 Replace signal USR1 with WINCH 2015-05-31 16:46:42 -04:00
02c5f776fc [Fix #892] Symlink prompt pure async dependency 2015-05-28 20:24:58 -04:00
a275db55d6 Fix MacPorts typo 2015-05-26 22:12:55 -04:00
b6efdc1ea4 Add DNF module
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2015-05-26 22:12:55 -04:00
904c94469e Consolidate brew update and upgrade aliases 2015-05-26 22:12:55 -04:00
159418835f Add Linux as as requirement 2015-05-25 22:01:57 -04:00
f7ea78078f Update pure theme 2015-05-25 21:58:43 -04:00
fe64f91f52 Update sorin screenshot 2015-05-19 18:25:40 -04:00
b46769149b Remove Emacs indicator
The user always knows that he is inside Emacs making the indicator
unnecessary.
2015-05-19 18:25:40 -04:00
999f0d1a74 Use numerical colors 2015-05-19 18:25:40 -04:00
f6a2c73423 Remove 'git:' prefix 2015-05-19 18:25:40 -04:00
a1dea6ae43 Get Git status asynchronously 2015-05-19 18:25:39 -04:00
cd5067668c Substitute command when alias is undefined 2015-05-19 18:24:04 -04:00
6a812ed36b Correct typos in completion module 2015-05-19 17:50:40 -04:00
ca03fd670a Skip setting terminal title inside Emacs 2015-05-19 17:49:46 -04:00
08676a273e Update pure theme 2015-05-03 13:44:41 -04:00
20766138cb Update external history-substring-search 2015-05-03 13:44:41 -04:00
e9f86bf4db Update the link to iTerm2 and tmux integration
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2015-05-03 13:44:40 -04:00
c98da90662 Update external history-substring-search 2015-04-07 19:24:44 -04:00
ac8bc74ef0 Update pure theme 2015-04-01 16:32:38 -04:00
ccca57f2ac Update external history-substring-search 2015-04-01 16:32:38 -04:00
4016f0c7c1 Update external completions 2015-04-01 16:32:37 -04:00
c34098af20 Update copyright 2015-03-08 23:38:06 -04:00
ee0b02464c [Fix #819] Check for node as a last resort 2015-02-24 15:29:25 -05:00
e144abb285 Fix node-module
The change recently introduced for #777 was actually breaking the module
completely, as it was only loaded if neither `node` nor `nvm`
were available.
2015-02-23 12:11:21 -05:00
b41f485528 Add missing parenthesis
The bug was introduced in 933c61b.
2015-02-22 23:52:41 -05:00
ab45ade380 [Fix #801] Make $TMPPREFIX a file path 2015-02-22 21:56:12 -05:00
1292587f95 [Fix #777] Check for nvm or node 2015-02-22 21:53:40 -05:00
933c61b8f1 [Fix #776] Support GNU top 2015-02-22 21:42:11 -05:00
88aee30ae8 [Fix #762] Use $LOGNAME instead of $USER
$USER is deprecated.
2015-02-13 00:00:27 -05:00
4411c95a83 Update pure theme 2015-02-12 19:17:38 -05:00
62d87cae32 Update external completions 2015-02-12 19:15:47 -05:00
d43bcb9720 Revert "Remove extra git-dir call in git-info and use git_dir variable instead"
This reverts commit 3012c0984b.
2014-12-08 18:21:00 -05:00
ba351df9fb [Fix #748] Set grep color for BSD and GNU 2014-12-08 18:13:25 -05:00
925b94b6e2 Fix Powerline unicode characters
Branch & separator characters are updated to display properly.
2014-12-08 18:02:22 -05:00
c171621747 Fix issue with several themes where errors occur
if the git module is not loaded.
2014-12-08 17:58:15 -05:00
0148ee6a4d Check for S.gpg-agent to see if gpg-agent is running
From GnuPG changelog:

>  Removed the GPG_AGENT_INFO related code.  GnuPG does now
>  always use a fixed socket name in its home directory.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-12-08 17:54:41 -05:00
fc3f8025ea Add a preexec hook to set the GPG-Agent TTY
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-12-08 16:38:20 -05:00
9539341e1e [Fix #732] Replace $GREP_OPTIONS with an alias 2014-11-24 13:05:34 -05:00
13d1ed160e Use $GNUPGHOME if it exists 2014-11-22 14:51:06 -05:00
2a33581e80 [Fix #724] Unquote variable
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-15 14:16:00 -05:00
3dd4cbc3c0 Fix typo
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-14 17:24:07 -05:00
7a92046c86 Create a new tmux session if none exists 2014-11-13 19:40:41 -05:00
3012c0984b Remove extra git-dir call in git-info and use git_dir variable instead 2014-11-12 19:19:19 -05:00
00a5639e65 Enable iTerm2 tmux integration
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-12 18:19:58 -05:00
3cb1f7c4c9 Inform how to add SSH identities to Keychain
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-11 22:52:40 -05:00
90eae2b491 If a default Ruby is set, switch to it
Set PATH variables to allow gems such as Bundler to be found and for the
`ruby-info` function to properly work.

A default Ruby must be set in ~/.ruby-version; for more information, see
https://github.com/postmodern/chruby#default-ruby.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-11 22:52:40 -05:00
d349c1cec7 Convert the PeepCode theme to git-info 2014-11-11 20:51:47 -05:00
a7a4912940 Add paradox theme 2014-11-11 20:51:46 -05:00
82710c29fc Fix theme function declaration style 2014-11-11 20:51:46 -05:00
9f82926f6e Add pure theme 2014-11-11 20:51:46 -05:00
61e91b8fb0 Add agnoster theme 2014-11-11 20:51:46 -05:00
967c91a351 Add powerline theme 2014-11-11 20:51:46 -05:00
087fce8548 Update sorin theme screenshot 2014-11-11 20:51:45 -05:00
2ae905a625 Indicate inside Emacs 2014-11-11 20:51:45 -05:00
19fc31c342 Indicate SSH connections 2014-11-11 20:51:45 -05:00
e76df6022d Add cloud theme
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-11 20:51:44 -05:00
c2d62c3b47 Add ruby-info to smiley theme 2014-11-11 20:51:44 -05:00
03336db523 Add smiley theme
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-11 20:51:44 -05:00
1bc4235a5e Escape '%' in path 2014-11-11 20:51:44 -05:00
c078c47c9d Add damoekri theme
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-11 20:51:44 -05:00
0bede677e6 Add kylewest theme 2014-11-11 20:51:44 -05:00
ad09f29fd5 Add skwp theme 2014-11-11 20:51:42 -05:00
567506f7e7 Update giddie theme
Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-11-05 22:52:38 -05:00
13ed3a1bf7 Add giddie theme 2014-11-05 22:52:38 -05:00
6f9c1666e1 Use short apothegms only in fortune 2014-11-05 17:43:43 -05:00
ab7f697734 [Fix #713] Set prompt theme off in unsupported terminal 2014-11-05 17:41:36 -05:00
d020d34e59 Fix node-info to show right node version
Currently, node-info shows nothing if $version is different than 'none'.
2014-10-19 17:21:54 +07:00
17a6124b43 Fix git log pretty format argument 2014-10-18 16:32:49 +02:00
3c47c57c87 [Fix #698] Describe module in README the same as in code 2014-10-15 18:54:24 -04:00
ff0cdd3ed7 Fix typo in Perl module readme 2014-10-15 18:49:47 -04:00
b948e3630b Load Homebrew installed NVM 2014-10-13 11:57:20 -04:00
55e4db9429 Enable 'acls', 'xattrs' support in rsync whenever available
rsync has support for these available in most cases and isn't
specific to Mac OS X any more.

Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
2014-10-12 19:20:55 -04: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
164 changed files with 1552 additions and 761 deletions

9
.gitmodules vendored
View File

@ -7,3 +7,12 @@
[submodule "modules/completion/external"]
path = modules/completion/external
url = https://github.com/zsh-users/zsh-completions.git
[submodule "modules/prompt/external/powerline"]
path = modules/prompt/external/powerline
url = https://github.com/davidjrice/prezto_powerline.git
[submodule "modules/prompt/external/agnoster"]
path = modules/prompt/external/agnoster
url = https://gist.github.com/3712874.git
[submodule "modules/prompt/functions/pure"]
path = modules/prompt/external/pure
url = https://github.com/sindresorhus/pure.git

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:
@ -36,9 +36,16 @@ version is 4.3.10.
### 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
-----
@ -78,7 +85,9 @@ 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-2015 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
@ -99,11 +108,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
[1]: http://www.zsh.org
[2]: http://i.imgur.com/nBEEZ.png "sorin theme"
[2]: http://i.imgur.com/nrGV6pg.png "sorin theme"
[3]: http://git-scm.com
[4]: https://github.com
[5]: http://gitimmersion.com
[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

@ -26,11 +26,26 @@ Directory
Sets directory options and defines directory aliases.
DNF
---
Defines dnf aliases.
Dpkg
----
Defines dpkg aliases and functions.
Editor
------
Sets key bindings.
Emacs
-----
Enables Emacs dependency management.
Environment
-----------
@ -41,13 +56,19 @@ 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
---------
---
Provides for an easier use of GPG by setting up gpg-agent.
@ -61,22 +82,22 @@ Helper
Provides helper functions for developing modules.
History Substring Search
------------------------
Integrates zsh-history-substring-search into Prezto.
History
-------
Sets history options and defines history aliases.
History Substring Search
------------------------
Integrates zsh-history-substring-search into Prezto.
Homebrew
--------
Defines Homebrew aliases.
Macports
MacPorts
--------
Defines MacPorts aliases and adds MacPorts directories to path variables.
@ -86,6 +107,11 @@ Node.js
Provides utility functions for Node.js and loads npm completion.
OCaml
-----
Initializes OCaml package management.
OSX
---
@ -137,10 +163,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
-------------------
@ -171,4 +197,3 @@ Yum
---
Defines yum aliases.

View File

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

View File

@ -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

@ -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

@ -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 \
@ -46,11 +46,10 @@ while (( $# > 0 )); do
|| rar ${${verbose:+v}:-l} "$1" ;;
(*.7z) 7za l "$1" ;;
(*)
print "$0: cannot list: $1" >&2
print "$0: cannot list: $1" >&2
success=1
;;
esac
shift
done

View File

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

@ -24,7 +24,7 @@ autoload -Uz compinit && compinit -i
setopt COMPLETE_IN_WORD # Complete from both ends of a word.
setopt ALWAYS_TO_END # Move cursor to the end of a completed word.
setopt PATH_DIRS # Perform path search even on command names with slashes.
setopt AUTO_MENU # Show completion menu on a succesive tab press.
setopt AUTO_MENU # Show completion menu on a successive tab press.
setopt AUTO_LIST # Automatically list choices on ambiguous completion.
setopt AUTO_PARAM_SLASH # If completed parameter is a directory, add a trailing slash.
unsetopt MENU_COMPLETE # Do not autoselect the first completion entry.
@ -34,7 +34,7 @@ unsetopt FLOW_CONTROL # Disable start/stop characters in shell editor.
# Styles
#
# Use caching to make completion for cammands such as dpkg and apt usable.
# Use caching to make completion for commands such as dpkg and apt usable.
zstyle ':completion::complete:*' use-cache on
zstyle ':completion::complete:*' cache-path "${ZDOTDIR:-$HOME}/.zcompcache"
@ -116,7 +116,7 @@ zstyle ':completion:*:(rm|kill|diff):*' ignore-line other
zstyle ':completion:*:rm:*' file-patterns '*:all-files'
# Kill
zstyle ':completion:*:*:*:*:processes' command 'ps -u $USER -o pid,user,comm -w'
zstyle ':completion:*:*:*:*:processes' command 'ps -u $LOGNAME -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
@ -146,4 +146,3 @@ zstyle ':completion:*:ssh:*' group-order users hosts-domain hosts-host users hos
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

29
modules/dnf/README.md Normal file
View File

@ -0,0 +1,29 @@
DNF
===
Defines [dnf][1] aliases.
Aliases
-------
- `dnfc` removes package(s) and leaves.
- `dnfi` installs package(s).
- `dnfh` displays history.
- `dnfl` lists packages.
- `dnfL` lists installed packages.
- `dnfq` displays package information.
- `dnfr` removes package(s).
- `dnfs` searches for a package.
- `dnfu` updates packages.
- `dnfU` upgrates packages.
Authors
-------
*The authors of this module should be contacted via the [issue tracker][2].*
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://fedoraproject.org/wiki/Features/DNF
[2]: https://github.com/sorin-ionescu/prezto/issues

28
modules/dnf/init.zsh Normal file
View File

@ -0,0 +1,28 @@
#
# Defines dnf aliases.
#
# Authors:
# FireWave <firewave@free.fr>
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# Return if requirements are not found.
if (( ! $+commands[dnf] )); then
return 1
fi
#
# Aliases
#
alias dnfc='sudo dnf clean all' # Cleans the cache.
alias dnfh='dnf history' # Displays history.
alias dnfi='sudo dnf install' # Installs package(s).
alias dnfl='dnf list' # Lists packages.
alias dnfL='dnf list installed' # Lists installed packages.
alias dnfq='dnf info' # Displays package information.
alias dnfr='sudo dnf remove' # Removes package(s).
alias dnfs='dnf search' # Searches for a package.
alias dnfu='sudo dnf update' # Updates packages.
alias dnfU='sudo dnf upgrade' # Upgrades packages.

View File

@ -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

@ -55,4 +55,3 @@ 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`))"'

View File

@ -49,8 +49,7 @@ To indicate when the editor is completing, add the following to your
zstyle ':prezto:module:editor:info:completing' format '...'
Then add `$editor_info[context]`, where context is *keymap*, *insert*, or
*overwrite*, to `$PROMPT` or `$RPROMPT` and call `editor-info` in the
`prompt_name_preexec` hook function.
*overwrite*, to `$PROMPT` or `$RPROMPT`.
Authors
-------
@ -60,4 +59,3 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/oh-my-zsh/issues

View File

@ -28,40 +28,42 @@ WORDCHARS='*?_-.[]~&;!#$%^(){}<>'
zmodload zsh/terminfo
typeset -gA key_info
key_info=(
'Control' '\C-'
'Escape' '\e'
'Meta' '\M-'
'Backspace' "^?"
'Delete' "^[[3~"
'F1' "$terminfo[kf1]"
'F2' "$terminfo[kf2]"
'F3' "$terminfo[kf3]"
'F4' "$terminfo[kf4]"
'F5' "$terminfo[kf5]"
'F6' "$terminfo[kf6]"
'F7' "$terminfo[kf7]"
'F8' "$terminfo[kf8]"
'F9' "$terminfo[kf9]"
'F10' "$terminfo[kf10]"
'F11' "$terminfo[kf11]"
'F12' "$terminfo[kf12]"
'Insert' "$terminfo[kich1]"
'Home' "$terminfo[khome]"
'PageUp' "$terminfo[kpp]"
'End' "$terminfo[kend]"
'PageDown' "$terminfo[knp]"
'Up' "$terminfo[kcuu1]"
'Left' "$terminfo[kcub1]"
'Down' "$terminfo[kcud1]"
'Right' "$terminfo[kcuf1]"
'BackTab' "$terminfo[kcbt]"
'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' "^?"
'Delete' "^[[3~"
'F1' "$terminfo[kf1]"
'F2' "$terminfo[kf2]"
'F3' "$terminfo[kf3]"
'F4' "$terminfo[kf4]"
'F5' "$terminfo[kf5]"
'F6' "$terminfo[kf6]"
'F7' "$terminfo[kf7]"
'F8' "$terminfo[kf8]"
'F9' "$terminfo[kf9]"
'F10' "$terminfo[kf10]"
'F11' "$terminfo[kf11]"
'F12' "$terminfo[kf12]"
'Insert' "$terminfo[kich1]"
'Home' "$terminfo[khome]"
'PageUp' "$terminfo[kpp]"
'End' "$terminfo[kend]"
'PageDown' "$terminfo[knp]"
'Up' "$terminfo[kcuu1]"
'Left' "$terminfo[kcub1]"
'Down' "$terminfo[kcud1]"
'Right' "$terminfo[kcuf1]"
'BackTab' "$terminfo[kcbt]"
)
# 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
key_info["$key"]='<27>'
key_info[$key]='<27>'
fi
done
@ -107,31 +109,40 @@ function editor-info {
}
zle -N editor-info
# Ensures that $terminfo values are valid and updates editor information when
# the keymap changes.
function zle-keymap-select zle-line-init zle-line-finish {
# Updates editor information when the keymap changes.
function zle-keymap-select {
zle editor-info
}
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] && $+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
if (( $+terminfo[smkx] )); then
# Enable terminal application mode.
echoti smkx
fi
# Update editor information.
zle editor-info
}
zle -N zle-keymap-select
zle -N zle-line-finish
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
@ -197,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}
@ -316,4 +327,3 @@ else
fi
unset key{,map,bindings}

View File

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

View File

@ -33,15 +33,6 @@ unsetopt BG_NICE # Don't run all background jobs at a lower priority.
unsetopt HUP # Don't kill jobs on shell exit.
unsetopt CHECK_JOBS # Don't report on jobs when shell exit.
#
# Grep
#
if zstyle -t ':prezto:environment:grep' color; then
export GREP_COLOR='37;45'
export GREP_OPTIONS='--color=auto'
fi
#
# Termcap
#
@ -55,4 +46,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

@ -332,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

@ -100,12 +100,12 @@ alias gix='git rm -r --cached'
alias giX='git rm -rf --cached'
# 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}'
alias gld='git log --topo-order --stat --patch --full-diff --pretty=format:${_git_log_medium_format}'
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 glb='git log --topo-order --pretty=format:${_git_log_brief_format}'
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}"'
alias gld='git log --topo-order --stat --patch --full-diff --pretty=format:"${_git_log_medium_format}"'
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 glb='git log --topo-order --pretty=format:"${_git_log_brief_format}"'
alias glc='git shortlog --summary --numbered'
# Merge (m)
@ -179,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

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

@ -1,7 +1,7 @@
GNU Utility
===========
Provides for the interactive use of GNU utilities on non-GNU systems.
Provides for the interactive use of GNU utilities on BSD systems.
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
@ -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

@ -24,4 +24,3 @@ Authors
[1]: http://www.gnupg.org
[2]: http://linux.die.net/man/1/gpg-agent
[3]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -11,15 +11,18 @@ if (( ! $+commands[gpg-agent] )); then
fi
# Set the default paths to gpg-agent files.
_gpg_agent_conf="$HOME/.gnupg/gpg-agent.conf"
_gpg_agent_env="$TMPDIR/gpg-agent.env"
_gpg_agent_conf="${GNUPGHOME:-$HOME/.gnupg}/gpg-agent.conf"
_gpg_agent_env="${TMPDIR:-/tmp}/gpg-agent.env"
# Start gpg-agent if not started.
if ! ps -U "$USER" -o ucomm | grep -q gpg-agent; then
eval "$(gpg-agent --daemon | tee "$_gpg_agent_env")"
else
if [[ -z "$GPG_AGENT_INFO" && ! -S "${GNUPGHOME:-$HOME/.gnupg}/S.gpg-agent" ]]; then
# Export environment variables.
source "$_gpg_agent_env" 2> /dev/null
# Start gpg-agent if not started.
if ! ps -U "$LOGNAME" -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.
@ -32,6 +35,12 @@ if grep 'enable-ssh-support' "$_gpg_agent_conf" &> /dev/null; then
# Load the SSH module for additional processing.
pmodload 'ssh'
# Updates the GPG-Agent TTY before every command since SSH does not set it.
function _gpg-agent-update-tty {
gpg-connect-agent UPDATESTARTUPTTY /bye >/dev/null
}
add-zsh-hook preexec _gpg-agent-update-tty
fi
# Clean up.
@ -41,4 +50,3 @@ unset _gpg_agent_{conf,env}
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

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

View File

@ -39,4 +39,3 @@ function add-zsh-trap {
}
add-zsh-trap "$@"

View File

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

View File

@ -59,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,7 +10,7 @@
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
#
# Search
@ -55,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

@ -6,21 +6,32 @@ 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.
- `brewu` updates Homebrew and formulae.
- `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

View File

@ -6,7 +6,7 @@
#
# Return if requirements are not found.
if [[ "$OSTYPE" != darwin* ]]; then
if [[ "$OSTYPE" != (darwin|linux)* ]]; then
return 1
fi
@ -14,12 +14,20 @@ 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 brewu='brew update && brew upgrade --all'
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

@ -1,4 +1,4 @@
Macports
MacPorts
========
Defines MacPorts aliases and adds MacPorts directories to path variables.
@ -23,4 +23,3 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
[1]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -32,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

@ -43,4 +43,3 @@ Authors
[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

@ -17,9 +17,8 @@ if (( $+functions[nvm_version] )); then
version="${$(nvm_version)#v}"
fi
if [[ -n "$version" ]]; then
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

@ -6,13 +6,16 @@
# Zeh Rizzatti <zehrizzatti@gmail.com>
#
# Load NVM into the shell session.
# Load manually installed NVM into the shell session.
if [[ -s "$HOME/.nvm/nvm.sh" ]]; then
source "$HOME/.nvm/nvm.sh"
fi
# Load package manager installed NVM into the shell session.
elif (( $+commands[brew] )) && [[ -d "$(brew --prefix nvm 2>/dev/null)" ]]; then
source $(brew --prefix nvm)/nvm.sh
# Return if requirements are not found.
if (( ! $+commands[node] )); then
elif (( ! $+commands[node] )); then
return 1
fi
@ -29,4 +32,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,17 +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]).
- `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
-------
@ -29,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
end repeat
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

@ -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

@ -6,7 +6,7 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
local tmp="$TMPDIR/pacman-disowned-$UID-$$"
local tmp="${TMPDIR:-/tmp}/pacman-disowned-$UID-$$"
local db="$tmp/db"
local fs="$tmp/fs"
@ -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

@ -1,7 +1,7 @@
Perl
====
Enables local [Perl][1] module installation on Mac OS X and defines alises.
Enables local [Perl][1] module installation on Mac OS X and defines aliases.
Local Module Installation
-------------------------
@ -61,4 +61,3 @@ Authors
[1]: http://www.perl.org
[2]: http://perlbrew.pl
[3]: https://github.com/sorin-ionescu/prezto/issues

View File

@ -50,4 +50,3 @@ alias plbO='perlbrew switch-off'
alias plbs='perlbrew switch'
alias plbu='perlbrew use'
alias plbx='perlbrew uninstall'

View File

@ -46,7 +46,7 @@ The most basic example of this function can be seen below.
If the `prompt_name_setup` function is customizable via parameters, a help
function **should** be defined. The user will access it via `prompt -h name`.
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_help {
cat <<EOH
@ -63,7 +63,7 @@ The most basic example of this function can be seen bellow.
If the `prompt_name_setup` function is customizable via parameters, a preview
function **should** be defined. The user will access it via `prompt -p name`.
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_preview {
if (( $# > 0 )); then
@ -91,7 +91,7 @@ a function before you calling it.
**Do not register hook functions. They will be registered by the `prompt` function.**
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_precmd {
if (( $+functions[git-info] )); then
@ -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

1
modules/prompt/external/pure vendored Submodule

View File

@ -0,0 +1 @@
../external/pure/async.zsh

View File

@ -0,0 +1 @@
../external/agnoster/agnoster.zsh-theme

View File

@ -0,0 +1,121 @@
#
# A minimal two-color theme.
#
# Authors:
# Kevin Laude <nerfyoda@gmail.com>
#
# Features:
# - One line, left aligned.
# - The prompt is prefixed by a character sequence of your choice.
# - Only displays the current directory instead of the full path.
# - Displays the current branch when in a git project (this requires loading
# the git module before prompt in ~/.zpreztorc).
# - Displays a character at the end of the prompt when in a git project with
# "dirty" files.
#
# Usage:
# This prompt's prefix symbol and colors are customizable:
# prompt cloud [<symbol>] [<color1>] [<color2>]
#
# In ~/.zpreztorc:
# zstyle ':prezto:module:prompt' theme 'cloud' \
# ['<symbol>'] \
# ['<color1>'] \
# ['<color2>']
#
# If these options are not provided, the symbol defaults to "☁" with colors
# cyan and green.
#
# Screenshots:
# http://i.imgur.com/mJCZ8rE.png
#
# Note:
# This is a port of the oh-my-zsh cloud theme, originally written by Phillip
# Ridlen <p@rdln.net> and Mark Drago <markdrago@gmail.com>
#
# Load dependencies.
pmodload 'helper'
function prompt_cloud_precmd {
setopt LOCAL_OPTIONS
unsetopt XTRACE KSH_ARRAYS
# Get Git repository information.
if (( $+functions[git-info] )); then
git-info
fi
}
function prompt_cloud_help {
cat <<EOT
This prompt's prefix symbol and colors are customizable:
prompt cloud [<symbol>] [<color1>] [<color2>]
In ~/.zpreztorc:
zstyle ':prezto:module:prompt' theme 'cloud' ['<symbol>'] ['<color1>'] ['<color2>']
If these options are not provided, the symbol defaults to ☁ with colors cyan
and green.
EOT
}
function prompt_cloud_preview {
if (( $# > 0 )); then
prompt_preview_theme 'cloud' "$@"
else
prompt_preview_theme 'cloud'
print
prompt_preview_theme 'cloud' "✯"
print
prompt_preview_theme 'cloud' ">" "yellow" "red"
fi
}
function prompt_cloud_setup {
setopt LOCAL_OPTIONS
unsetopt XTRACE KSH_ARRAYS
prompt_opts=(cr percent subst)
# Set the theme prefix to a cloud or to the user's given characters.
if [[ -n "$1" ]]; then
prefix="$1"
else
prefix='☁'
fi
# Assign colors.
if [[ -n "$2" ]]; then
primary_color="$2"
else
primary_color='cyan'
fi
if [[ -n "$3" ]]; then
secondary_color="$3"
else
secondary_color='green'
fi
# Load required functions.
autoload -Uz add-zsh-hook
# Add hook for calling git-info before each command.
add-zsh-hook precmd prompt_cloud_precmd
# Set git-info parameters.
zstyle ':prezto:module:git:info' verbose 'yes'
zstyle ':prezto:module:git:info:dirty' format "%%B%F{$secondary_color}]%f%%b %F{yellow}⚡%f"
zstyle ':prezto:module:git:info:clean' format "%B%F{$secondary_color}]%f%b"
zstyle ':prezto:module:git:info:branch' format "%%B%F{$secondary_color}[%f%%b%%B%F{$primary_color}%b%f%%b"
zstyle ':prezto:module:git:info:keys' format \
'prompt' '%b%C%D' \
'rprompt' ''
# Define prompts.
PROMPT='%B%F{$primary_color}${prefix}%f%b %B%F{$secondary_color}%c%f%b ${git_info:+${(e)git_info[prompt]}} '
RPROMPT=''
}
prompt_cloud_setup "$@"

View File

@ -0,0 +1,76 @@
#
# A simple theme inspired by the Sorin and PeepCode themes.
#
# Authors:
# Daniel Møller Kristensen <damoekri@icloud.com>
#
# Screenshots:
# http://i.imgur.com/AX9HnPF.png
#
# Load dependencies.
pmodload 'helper'
function prompt_damoekri_pwd {
local pwd="${PWD/#$HOME/~}"
if [[ "$pwd" == (#m)[/~] ]]; then
_prompt_damoekri_pwd="$MATCH"
unset MATCH
else
_prompt_damoekri_pwd="${${${${(@j:/:M)${(@s:/:)pwd}##.#?}:h}%/}//\%/%%}/${${pwd:t}//\%/%%}"
fi
}
function prompt_damoekri_precmd {
setopt LOCAL_OPTIONS
unsetopt XTRACE KSH_ARRAYS
# Format PWD.
prompt_damoekri_pwd
# Get Git repository information.
if (( $+functions[git-info] )); then
git-info
fi
# Get Ruby version information.
if (( $+functions[ruby-info] )); then
ruby-info
fi
}
function prompt_damoekri_setup {
setopt LOCAL_OPTIONS
unsetopt XTRACE KSH_ARRAYS
prompt_opts=(cr percent subst)
# Load required functions.
autoload -Uz add-zsh-hook
# Add hook for calling git-info and ruby-info before each command.
add-zsh-hook precmd prompt_damoekri_precmd
# Set editor-info parameters.
zstyle ':prezto:module:editor:info:keymap:primary' format ' %F{green}»%f'
# Set git-info parameters.
zstyle ':prezto:module:git:info' verbose 'yes'
zstyle ':prezto:module:git:info:action' format ':%F{magenta}%s%f'
zstyle ':prezto:module:git:info:branch' format '%F{blue}%b%f'
zstyle ':prezto:module:git:info:clean' format ' %F{green}✔%f'
zstyle ':prezto:module:git:info:dirty' format ' %F{red}✗%f'
zstyle ':prezto:module:git:info:commit' format '%F{blue}%.7c%f'
zstyle ':prezto:module:git:info:position' format '%F{blue}%p%f'
zstyle ':prezto:module:git:info:keys' format \
'rprompt' ' $(coalesce "%b" "%p" "%c")%s%C%D'
# Set ruby-info parameters.
zstyle ':prezto:module:ruby:info:version' format ' %F{yellow}%v%f'
# Define prompts.
PROMPT='%F{cyan}${_prompt_damoekri_pwd}%f${editor_info[keymap]} '
RPROMPT='${git_info:+${(e)git_info[rprompt]}}${ruby_info:+${ruby_info[version]}}'
}
prompt_damoekri_setup "$@"

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