From e6a6a0238fac6116d4281c820cce6816681227f4 Mon Sep 17 00:00:00 2001 From: Brian Cullen Date: Fri, 21 Mar 2025 21:09:57 +0000 Subject: [PATCH 01/10] Clear --- .config/nvim/init.vim | 100 ---- .gitignore | 2 +- .nvimrc | 207 -------- .tmux.conf | 22 - .tmux/plugins/tmux-sensible | 1 - .tmux/plugins/tmux-yank | 1 - .tmux/plugins/tpm | 1 - .vimrc | 194 -------- .zprezto/.editorconfig | 9 - .zprezto/.github/ISSUE_TEMPLATE.md | 24 - .zprezto/.github/PULL_REQUEST_TEMPLATE.md | 10 - .zprezto/.gitignore | 4 - .zprezto/.gitmodules | 31 -- .zprezto/CONTRIBUTING.md | 74 --- .zprezto/LICENSE | 20 - .zprezto/README.md | 158 ------ .zprezto/init.zsh | 197 -------- .zprezto/modules/README.md | 166 ------- .zprezto/modules/archive/README.md | 53 -- .zprezto/modules/archive/functions/_lsarchive | 13 - .zprezto/modules/archive/functions/_unarchive | 13 - .zprezto/modules/archive/functions/archive | 75 --- .zprezto/modules/archive/functions/lsarchive | 62 --- .zprezto/modules/archive/functions/unarchive | 111 ----- .zprezto/modules/autosuggestions/README.md | 62 --- .zprezto/modules/autosuggestions/external | 1 - .zprezto/modules/autosuggestions/init.zsh | 35 -- .zprezto/modules/command-not-found/README.md | 23 - .zprezto/modules/command-not-found/init.zsh | 23 - .zprezto/modules/completion/README.md | 55 --- .zprezto/modules/completion/external | 1 - .zprezto/modules/completion/init.zsh | 186 ------- .zprezto/modules/directory/README.md | 30 -- .zprezto/modules/directory/init.zsh | 29 -- .zprezto/modules/dnf/README.md | 25 - .zprezto/modules/dnf/init.zsh | 28 -- .zprezto/modules/docker/README.md | 196 -------- .zprezto/modules/docker/alias.zsh | 177 ------- .zprezto/modules/docker/init.zsh | 57 --- .zprezto/modules/dpkg/README.md | 37 -- .zprezto/modules/dpkg/functions/deb-clone | 29 -- .zprezto/modules/dpkg/functions/deb-history | 40 -- .zprezto/modules/dpkg/functions/deb-kbuild | 18 - .zprezto/modules/dpkg/init.zsh | 57 --- .zprezto/modules/editor/README.md | 102 ---- .zprezto/modules/editor/init.zsh | 456 ----------------- .zprezto/modules/emacs/README.md | 29 -- .zprezto/modules/emacs/init.zsh | 25 - .zprezto/modules/environment/README.md | 52 -- .zprezto/modules/environment/init.zsh | 65 --- .zprezto/modules/fasd/README.md | 41 -- .zprezto/modules/fasd/init.zsh | 57 --- .zprezto/modules/git/README.md | 464 ------------------ .zprezto/modules/git/alias.zsh | 275 ----------- .../modules/git/functions/_git-hub-browse | 47 -- .../git/functions/_git-hub-shorten-url | 16 - .zprezto/modules/git/functions/_git-info | 18 - .../modules/git/functions/_git-submodule-move | 40 -- .../git/functions/_git-submodule-remove | 26 - .../modules/git/functions/git-branch-current | 24 - .../modules/git/functions/git-commit-lost | 24 - .zprezto/modules/git/functions/git-dir | 20 - .zprezto/modules/git/functions/git-hub-browse | 62 --- .../modules/git/functions/git-hub-shorten-url | 28 -- .zprezto/modules/git/functions/git-info | 454 ----------------- .zprezto/modules/git/functions/git-root | 20 - .../git/functions/git-stash-clear-interactive | 26 - .../modules/git/functions/git-stash-dropped | 26 - .../modules/git/functions/git-stash-recover | 22 - .../modules/git/functions/git-submodule-move | 36 -- .../git/functions/git-submodule-remove | 31 -- .zprezto/modules/git/init.zsh | 20 - .zprezto/modules/gnu-utility/README.md | 34 -- .zprezto/modules/gnu-utility/init.zsh | 64 --- .zprezto/modules/gpg/README.md | 28 -- .zprezto/modules/gpg/init.zsh | 56 --- .zprezto/modules/haskell/README.md | 25 - .zprezto/modules/haskell/init.zsh | 21 - .zprezto/modules/helper/README.md | 26 - .../modules/helper/functions/add-zsh-trap | 41 -- .zprezto/modules/helper/init.zsh | 56 --- .../history-substring-search/README.md | 79 --- .../modules/history-substring-search/external | 1 - .../modules/history-substring-search/init.zsh | 61 --- .zprezto/modules/history/README.md | 50 -- .zprezto/modules/history/init.zsh | 63 --- .zprezto/modules/homebrew/README.md | 43 -- .zprezto/modules/homebrew/init.zsh | 47 -- .zprezto/modules/macports/README.md | 22 - .zprezto/modules/macports/init.zsh | 37 -- .zprezto/modules/node/README.md | 84 ---- .zprezto/modules/node/functions/node-doc | 18 - .zprezto/modules/node/functions/node-info | 32 -- .zprezto/modules/node/init.zsh | 65 --- .zprezto/modules/ocaml/README.md | 24 - .zprezto/modules/ocaml/init.zsh | 14 - .zprezto/modules/osx/README.md | 50 -- .zprezto/modules/osx/functions/_mand_manp | 11 - .zprezto/modules/osx/functions/mand | 23 - .zprezto/modules/osx/functions/manp | 19 - .../osx/functions/osx-ls-download-history | 17 - .../modules/osx/functions/osx-rm-dir-metadata | 15 - .../osx/functions/osx-rm-download-history | 17 - .zprezto/modules/osx/functions/pfd | 16 - .zprezto/modules/osx/functions/pfs | 19 - .zprezto/modules/osx/functions/ql | 14 - .zprezto/modules/osx/functions/tab | 56 --- .zprezto/modules/osx/init.zsh | 24 - .zprezto/modules/pacman/README.md | 65 --- .../pacman/functions/pacman-list-disowned | 26 - .../pacman/functions/pacman-list-explicit | 24 - .zprezto/modules/pacman/init.zsh | 88 ---- .zprezto/modules/perl/README.md | 106 ---- .zprezto/modules/perl/functions/perl-info | 34 -- .zprezto/modules/perl/init.zsh | 97 ---- .zprezto/modules/prompt/README.md | 167 ------- .zprezto/modules/prompt/external/agnoster | 1 - .zprezto/modules/prompt/external/powerline | 1 - .zprezto/modules/prompt/external/pure | 1 - .zprezto/modules/prompt/functions/async | 1 - .zprezto/modules/prompt/functions/prompt-pwd | 31 -- .../prompt/functions/prompt_agnoster_setup | 1 - .../prompt/functions/prompt_cloud_setup | 125 ----- .../prompt/functions/prompt_damoekri_setup | 69 --- .../prompt/functions/prompt_giddie_setup | 80 --- .../prompt/functions/prompt_kylewest_setup | 69 --- .../prompt/functions/prompt_minimal_setup | 63 --- .../prompt/functions/prompt_nicoulaj_setup | 64 --- .../prompt/functions/prompt_paradox_setup | 160 ------ .../prompt/functions/prompt_peepcode_setup | 89 ---- .../prompt/functions/prompt_powerline_setup | 1 - .../prompt/functions/prompt_pure_setup | 1 - .../prompt/functions/prompt_skwp_setup | 79 --- .../prompt/functions/prompt_smiley_setup | 69 --- .../prompt/functions/prompt_sorin_setup | 189 ------- .../prompt/functions/prompt_steeef_setup | 110 ----- .zprezto/modules/prompt/init.zsh | 28 -- .zprezto/modules/python/README.md | 165 ------- .zprezto/modules/python/functions/python-info | 53 -- .zprezto/modules/python/init.zsh | 165 ------- .zprezto/modules/rails/README.md | 31 -- .zprezto/modules/rails/init.zsh | 35 -- .zprezto/modules/rsync/README.md | 26 - .zprezto/modules/rsync/init.zsh | 43 -- .zprezto/modules/ruby/README.md | 106 ---- .zprezto/modules/ruby/functions/ruby-app-root | 22 - .zprezto/modules/ruby/functions/ruby-info | 38 -- .zprezto/modules/ruby/init.zsh | 81 --- .zprezto/modules/screen/README.md | 40 -- .zprezto/modules/screen/init.zsh | 42 -- .zprezto/modules/spectrum/README.md | 88 ---- .zprezto/modules/spectrum/init.zsh | 69 --- .zprezto/modules/ssh/README.md | 24 - .zprezto/modules/ssh/init.zsh | 62 --- .../modules/syntax-highlighting/README.md | 78 --- .zprezto/modules/syntax-highlighting/external | 1 - .zprezto/modules/syntax-highlighting/init.zsh | 36 -- .zprezto/modules/terminal/README.md | 54 -- .zprezto/modules/terminal/init.zsh | 129 ----- .zprezto/modules/tmux/README.md | 88 ---- .zprezto/modules/tmux/init.zsh | 49 -- .zprezto/modules/utility/README.md | 225 --------- .../utility/functions/_cdls_popdls_pushdls | 11 - .zprezto/modules/utility/functions/_dut | 11 - .zprezto/modules/utility/functions/_mkdcd | 13 - .../modules/utility/functions/_noremoteglob | 11 - .zprezto/modules/utility/functions/_prep | 18 - .zprezto/modules/utility/functions/_psub | 19 - .zprezto/modules/utility/functions/diff | 17 - .zprezto/modules/utility/functions/dut | 27 - .zprezto/modules/utility/functions/make | 17 - .zprezto/modules/utility/functions/prep | 56 --- .zprezto/modules/utility/functions/psub | 57 --- .zprezto/modules/utility/functions/wdiff | 32 -- .zprezto/modules/utility/functions/zsh-help | 102 ---- .zprezto/modules/utility/init.zsh | 269 ---------- .zprezto/modules/wakeonlan/README.md | 37 -- .zprezto/modules/wakeonlan/functions/_wake | 12 - .zprezto/modules/wakeonlan/functions/wake | 24 - .zprezto/modules/yum/README.md | 25 - .zprezto/modules/yum/init.zsh | 27 - .zprezto/runcoms/README.md | 77 --- .zprezto/runcoms/zlogin | 26 - .zprezto/runcoms/zlogout | 19 - .zprezto/runcoms/zpreztorc | 228 --------- .zprezto/runcoms/zprofile | 64 --- .zprezto/runcoms/zshenv | 11 - .zprezto/runcoms/zshrc | 34 -- 188 files changed, 1 insertion(+), 11267 deletions(-) delete mode 100644 .config/nvim/init.vim delete mode 100644 .nvimrc delete mode 100644 .tmux.conf delete mode 160000 .tmux/plugins/tmux-sensible delete mode 160000 .tmux/plugins/tmux-yank delete mode 160000 .tmux/plugins/tpm delete mode 100644 .vimrc delete mode 100644 .zprezto/.editorconfig delete mode 100644 .zprezto/.github/ISSUE_TEMPLATE.md delete mode 100644 .zprezto/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 .zprezto/.gitignore delete mode 100644 .zprezto/.gitmodules delete mode 100644 .zprezto/CONTRIBUTING.md delete mode 100644 .zprezto/LICENSE delete mode 100644 .zprezto/README.md delete mode 100644 .zprezto/init.zsh delete mode 100644 .zprezto/modules/README.md delete mode 100644 .zprezto/modules/archive/README.md delete mode 100644 .zprezto/modules/archive/functions/_lsarchive delete mode 100644 .zprezto/modules/archive/functions/_unarchive delete mode 100644 .zprezto/modules/archive/functions/archive delete mode 100644 .zprezto/modules/archive/functions/lsarchive delete mode 100644 .zprezto/modules/archive/functions/unarchive delete mode 100644 .zprezto/modules/autosuggestions/README.md delete mode 160000 .zprezto/modules/autosuggestions/external delete mode 100644 .zprezto/modules/autosuggestions/init.zsh delete mode 100644 .zprezto/modules/command-not-found/README.md delete mode 100644 .zprezto/modules/command-not-found/init.zsh delete mode 100644 .zprezto/modules/completion/README.md delete mode 160000 .zprezto/modules/completion/external delete mode 100644 .zprezto/modules/completion/init.zsh delete mode 100644 .zprezto/modules/directory/README.md delete mode 100644 .zprezto/modules/directory/init.zsh delete mode 100644 .zprezto/modules/dnf/README.md delete mode 100644 .zprezto/modules/dnf/init.zsh delete mode 100644 .zprezto/modules/docker/README.md delete mode 100644 .zprezto/modules/docker/alias.zsh delete mode 100644 .zprezto/modules/docker/init.zsh delete mode 100644 .zprezto/modules/dpkg/README.md delete mode 100644 .zprezto/modules/dpkg/functions/deb-clone delete mode 100644 .zprezto/modules/dpkg/functions/deb-history delete mode 100644 .zprezto/modules/dpkg/functions/deb-kbuild delete mode 100644 .zprezto/modules/dpkg/init.zsh delete mode 100644 .zprezto/modules/editor/README.md delete mode 100644 .zprezto/modules/editor/init.zsh delete mode 100644 .zprezto/modules/emacs/README.md delete mode 100644 .zprezto/modules/emacs/init.zsh delete mode 100644 .zprezto/modules/environment/README.md delete mode 100644 .zprezto/modules/environment/init.zsh delete mode 100644 .zprezto/modules/fasd/README.md delete mode 100644 .zprezto/modules/fasd/init.zsh delete mode 100644 .zprezto/modules/git/README.md delete mode 100644 .zprezto/modules/git/alias.zsh delete mode 100644 .zprezto/modules/git/functions/_git-hub-browse delete mode 100644 .zprezto/modules/git/functions/_git-hub-shorten-url delete mode 100644 .zprezto/modules/git/functions/_git-info delete mode 100644 .zprezto/modules/git/functions/_git-submodule-move delete mode 100644 .zprezto/modules/git/functions/_git-submodule-remove delete mode 100644 .zprezto/modules/git/functions/git-branch-current delete mode 100644 .zprezto/modules/git/functions/git-commit-lost delete mode 100644 .zprezto/modules/git/functions/git-dir delete mode 100644 .zprezto/modules/git/functions/git-hub-browse delete mode 100644 .zprezto/modules/git/functions/git-hub-shorten-url delete mode 100644 .zprezto/modules/git/functions/git-info delete mode 100644 .zprezto/modules/git/functions/git-root delete mode 100644 .zprezto/modules/git/functions/git-stash-clear-interactive delete mode 100644 .zprezto/modules/git/functions/git-stash-dropped delete mode 100644 .zprezto/modules/git/functions/git-stash-recover delete mode 100644 .zprezto/modules/git/functions/git-submodule-move delete mode 100644 .zprezto/modules/git/functions/git-submodule-remove delete mode 100644 .zprezto/modules/git/init.zsh delete mode 100644 .zprezto/modules/gnu-utility/README.md delete mode 100644 .zprezto/modules/gnu-utility/init.zsh delete mode 100644 .zprezto/modules/gpg/README.md delete mode 100644 .zprezto/modules/gpg/init.zsh delete mode 100644 .zprezto/modules/haskell/README.md delete mode 100644 .zprezto/modules/haskell/init.zsh delete mode 100644 .zprezto/modules/helper/README.md delete mode 100644 .zprezto/modules/helper/functions/add-zsh-trap delete mode 100644 .zprezto/modules/helper/init.zsh delete mode 100644 .zprezto/modules/history-substring-search/README.md delete mode 160000 .zprezto/modules/history-substring-search/external delete mode 100644 .zprezto/modules/history-substring-search/init.zsh delete mode 100644 .zprezto/modules/history/README.md delete mode 100644 .zprezto/modules/history/init.zsh delete mode 100644 .zprezto/modules/homebrew/README.md delete mode 100644 .zprezto/modules/homebrew/init.zsh delete mode 100644 .zprezto/modules/macports/README.md delete mode 100644 .zprezto/modules/macports/init.zsh delete mode 100644 .zprezto/modules/node/README.md delete mode 100644 .zprezto/modules/node/functions/node-doc delete mode 100644 .zprezto/modules/node/functions/node-info delete mode 100644 .zprezto/modules/node/init.zsh delete mode 100644 .zprezto/modules/ocaml/README.md delete mode 100644 .zprezto/modules/ocaml/init.zsh delete mode 100644 .zprezto/modules/osx/README.md delete mode 100644 .zprezto/modules/osx/functions/_mand_manp delete mode 100644 .zprezto/modules/osx/functions/mand delete mode 100644 .zprezto/modules/osx/functions/manp delete mode 100644 .zprezto/modules/osx/functions/osx-ls-download-history delete mode 100644 .zprezto/modules/osx/functions/osx-rm-dir-metadata delete mode 100644 .zprezto/modules/osx/functions/osx-rm-download-history delete mode 100644 .zprezto/modules/osx/functions/pfd delete mode 100644 .zprezto/modules/osx/functions/pfs delete mode 100644 .zprezto/modules/osx/functions/ql delete mode 100644 .zprezto/modules/osx/functions/tab delete mode 100644 .zprezto/modules/osx/init.zsh delete mode 100644 .zprezto/modules/pacman/README.md delete mode 100644 .zprezto/modules/pacman/functions/pacman-list-disowned delete mode 100644 .zprezto/modules/pacman/functions/pacman-list-explicit delete mode 100644 .zprezto/modules/pacman/init.zsh delete mode 100644 .zprezto/modules/perl/README.md delete mode 100644 .zprezto/modules/perl/functions/perl-info delete mode 100644 .zprezto/modules/perl/init.zsh delete mode 100644 .zprezto/modules/prompt/README.md delete mode 160000 .zprezto/modules/prompt/external/agnoster delete mode 160000 .zprezto/modules/prompt/external/powerline delete mode 160000 .zprezto/modules/prompt/external/pure delete mode 120000 .zprezto/modules/prompt/functions/async delete mode 100644 .zprezto/modules/prompt/functions/prompt-pwd delete mode 120000 .zprezto/modules/prompt/functions/prompt_agnoster_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_cloud_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_damoekri_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_giddie_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_kylewest_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_minimal_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_nicoulaj_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_paradox_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_peepcode_setup delete mode 120000 .zprezto/modules/prompt/functions/prompt_powerline_setup delete mode 120000 .zprezto/modules/prompt/functions/prompt_pure_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_skwp_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_smiley_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_sorin_setup delete mode 100644 .zprezto/modules/prompt/functions/prompt_steeef_setup delete mode 100644 .zprezto/modules/prompt/init.zsh delete mode 100644 .zprezto/modules/python/README.md delete mode 100644 .zprezto/modules/python/functions/python-info delete mode 100644 .zprezto/modules/python/init.zsh delete mode 100644 .zprezto/modules/rails/README.md delete mode 100644 .zprezto/modules/rails/init.zsh delete mode 100644 .zprezto/modules/rsync/README.md delete mode 100644 .zprezto/modules/rsync/init.zsh delete mode 100644 .zprezto/modules/ruby/README.md delete mode 100644 .zprezto/modules/ruby/functions/ruby-app-root delete mode 100644 .zprezto/modules/ruby/functions/ruby-info delete mode 100644 .zprezto/modules/ruby/init.zsh delete mode 100644 .zprezto/modules/screen/README.md delete mode 100644 .zprezto/modules/screen/init.zsh delete mode 100644 .zprezto/modules/spectrum/README.md delete mode 100644 .zprezto/modules/spectrum/init.zsh delete mode 100644 .zprezto/modules/ssh/README.md delete mode 100644 .zprezto/modules/ssh/init.zsh delete mode 100644 .zprezto/modules/syntax-highlighting/README.md delete mode 160000 .zprezto/modules/syntax-highlighting/external delete mode 100644 .zprezto/modules/syntax-highlighting/init.zsh delete mode 100644 .zprezto/modules/terminal/README.md delete mode 100644 .zprezto/modules/terminal/init.zsh delete mode 100644 .zprezto/modules/tmux/README.md delete mode 100644 .zprezto/modules/tmux/init.zsh delete mode 100644 .zprezto/modules/utility/README.md delete mode 100644 .zprezto/modules/utility/functions/_cdls_popdls_pushdls delete mode 100644 .zprezto/modules/utility/functions/_dut delete mode 100644 .zprezto/modules/utility/functions/_mkdcd delete mode 100644 .zprezto/modules/utility/functions/_noremoteglob delete mode 100644 .zprezto/modules/utility/functions/_prep delete mode 100644 .zprezto/modules/utility/functions/_psub delete mode 100644 .zprezto/modules/utility/functions/diff delete mode 100644 .zprezto/modules/utility/functions/dut delete mode 100644 .zprezto/modules/utility/functions/make delete mode 100644 .zprezto/modules/utility/functions/prep delete mode 100644 .zprezto/modules/utility/functions/psub delete mode 100644 .zprezto/modules/utility/functions/wdiff delete mode 100644 .zprezto/modules/utility/functions/zsh-help delete mode 100644 .zprezto/modules/utility/init.zsh delete mode 100644 .zprezto/modules/wakeonlan/README.md delete mode 100644 .zprezto/modules/wakeonlan/functions/_wake delete mode 100644 .zprezto/modules/wakeonlan/functions/wake delete mode 100644 .zprezto/modules/yum/README.md delete mode 100644 .zprezto/modules/yum/init.zsh delete mode 100644 .zprezto/runcoms/README.md delete mode 100644 .zprezto/runcoms/zlogin delete mode 100644 .zprezto/runcoms/zlogout delete mode 100644 .zprezto/runcoms/zpreztorc delete mode 100644 .zprezto/runcoms/zprofile delete mode 100644 .zprezto/runcoms/zshenv delete mode 100644 .zprezto/runcoms/zshrc diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim deleted file mode 100644 index 4f019a8..0000000 --- a/.config/nvim/init.vim +++ /dev/null @@ -1,100 +0,0 @@ -source ~/.vimrc -set clipboard=unnamedplus - -call plug#begin() -Plug 'dense-analysis/ale' -Plug 'neoclide/coc.nvim', { 'branch': 'release' } -Plug 'amiralies/coc-elixir', {'do': 'yarn install && yarn prepack'} -Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } -Plug 'junegunn/fzf.vim' -Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' } -Plug 'MattesGroeger/vim-bookmarks' -Plug 'tpope/vim-repeat' -Plug 'svermeulen/vim-yoink' -Plug 'svermeulen/vim-cutlass' -Plug 'svermeulen/vim-subversive' -Plug 'ggandor/leap.nvim' - -let g:ale_fixers = { -\ 'elixir' : ['mix_format', 'remove_trailing_lines', 'trim_whitespace'], -\ '*': ['remove_trailing_lines', 'trim_whitespace'] -\ } - -call plug#end() - -nmap ,f :ALEFix - -nnoremap m d -xnoremap m d - -nnoremap mm dd -nnoremap M D - -nmap gd (coc-definition) -nmap gy (coc-type-definition) -nmap gi (coc-implementation) -nmap rn (coc-rename) -nnoremap K :call show_documentation() -nnoremap co :CocList outline -nnoremap cc :CocList commands -nnoremap cs :CocList -I symbols -nnoremap cn :CocNext -nnoremap cp :CocPrev - -nmap (YoinkPostPasteSwapBack) -nmap (YoinkPostPasteSwapForward) -nmap p (YoinkPaste_p) -nmap P (YoinkPaste_P) - -nmap s (SubversiveSubstitute) -nmap ss (SubversiveSubstituteLine) -nmap S (SubversiveSubstituteToEndOfLine) - -nmap s (SubversiveSubstituteRange) -xmap s (SubversiveSubstituteRange) -nmap ss (SubversiveSubstituteWordRange) -nmap cs (SubversiveSubstituteRangeConfirm) -xmap cs (SubversiveSubstituteRangeConfirm) -nmap css (SubversiveSubstituteWordRangeConfirm) -" Also replace the default gp with yoink paste so we can toggle paste in this case too -nmap gp (YoinkPaste_gp) -nmap gP (YoinkPaste_gP) - -function! s:show_documentation() - if (index(['vim','help'], &filetype) >= 0) - execute 'h '.expand('') - elseif (coc#rpc#ready()) - call CocActionAsync('doHover') - else - execute '!' . &keywordprg . " " . expand('') - endif -endfunction - -:highlight CocFloating ctermbg=black -:highlight CocFloating ctermfg=LightGrey - -map :Files -nnoremap f :Rg -nnoremap F :Rg -nnoremap :BLines -nnoremap hh :History -nnoremap h: :History: -nnoremap h/ :History/ -nnoremap b :Buffers -nnoremap t :Windows - -nmap MM BookmarkToggle -nmap MI BookmarkAnnotate -nmap MA BookmarkShowAll -nmap MJ BookmarkNext -nmap MK BookmarkPrev -nmap MC BookmarkClear -nmap MX BookmarkClearAll -nmap MKK BookmarkMoveUp -nmap MJJ BookmarkMoveDown -nmap MG BookmarkMoveToLine - -nnoremap :CocCommand explorer -let g:yoinkIncludeDeleteOperations = 1 -nmap (leap-forward) -nmap (leap-backward) diff --git a/.gitignore b/.gitignore index 72e8ffc..8b13789 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -* + diff --git a/.nvimrc b/.nvimrc deleted file mode 100644 index 22f09ff..0000000 --- a/.nvimrc +++ /dev/null @@ -1,207 +0,0 @@ -" vim-sublime - A minimal Sublime Text - like vim experience bundle -" http://github.com/grigio/vim-sublime -" Best view with a 256 color terminal and Powerline fonts -" Updated by Dorian Neto (https://github.com/dorianneto)" - -set nocompatible -filetype off - -set rtp+=~/.vim/bundle/Vundle.vim -call vundle#begin() -Plugin 'VundleVim/Vundle.vim' - -" ------Plugins------- -Plugin 'scrooloose/nerdtree' -Plugin 'tpope/vim-surround' -Plugin 'gcmt/breeze.vim' -Plugin 'kien/ctrlp.vim' -Plugin 'SirVer/ultisnips' -Plugin 'tomtom/tcomment_vim' -Plugin 'vim-airline/vim-airline' -Plugin 'vim-airline/vim-airline-themes' -Plugin 'airblade/vim-gitgutter' -Plugin 'Valloric/YouCompleteMe' -Plugin 'davidhalter/jedi-vim' -Plugin 'elixir-lang/vim-elixir' -Plugin 'slashmili/alchemist.vim' -Plugin 'mileszs/ack.vim' -Plugin 'ludovicchabant/vim-gutentags' -Plugin 'sheerun/vim-polyglot' -Plugin 'dunckr/vim-monokai-soda' -Plugin 'crusoexia/vim-monokai' -Plugin 'easymotion/vim-easymotion' -Plugin 'tpope/vim-fugitive' -Plugin 'christoomey/vim-tmux-navigator' -Plugin 'roxma/vim-tmux-clipboard' - -let g:gutentags_cache_dir = '~/.tags_cache' - - -" Color Themes -Plugin 'colors' - -call vundle#end() -colorscheme Monokai -filetype plugin indent on - -"""""""" -if has('autocmd') - filetype plugin indent on -endif -if has('syntax') && !exists('g:syntax_on') - syntax enable -endif - -" Use :help 'option' to see the documentation for the given option. -set autoindent -set backspace=indent,eol,start -set complete-=i -set showmatch -set showmode -set smarttab - -set nrformats-=octal -set shiftround - -set ttimeout -set ttimeoutlen=50 - -set incsearch -" Use to clear the highlighting of :set hlsearch. -if maparg('', 'n') ==# '' - nnoremap :nohlsearch -endif - -set laststatus=2 -set ruler -set showcmd -set wildmenu - -set autoread - -set encoding=utf-8 -set tabstop=2 shiftwidth=2 expandtab -set listchars=tab:▒░,trail:▓ -set list - -inoremap u - -set number -set hlsearch -set ignorecase -set smartcase - -" Don't use Ex mode, use Q for formatting -map Q gq - -" In many terminal emulators the mouse works just fine, thus enable it. -if has('mouse') - set mouse=a -endif - -" do not history when leavy buffer -set hidden - -" FIXME: (broken) ctrl s to save -noremap :update -vnoremap :update -inoremap :update - -set nobackup -set nowritebackup -set noswapfile -set fileformats=unix,dos,mac - -" exit insert mode -inoremap - -set completeopt=menuone,longest,preview - -" -" Plugins config -" - -" NERDTree -nnoremap :NERDTreeToggle - -" CtrlP -set wildignore+=*/.git/*,*/.hg/*,*/.svn/* - -" Ultisnip -" NOTE: otherwise it overrides forever -let g:UltiSnipsExpandTrigger="" -let g:UltiSnipsJumpForwardTrigger="" -let g:UltiSnipsJumpBackwardTrigger="" -let g:did_UltiSnips_vim_after = 1 - -" vim-airline -let g:airline#extensions#tabline#enabled = 1 -let g:airline_powerline_fonts = 1 - -" -" Basic shortcuts definitions -" most in visual mode / selection (v or ⇧ v) -" - -" Find -map / -" indent / deindent after selecting the text with (⇧ v), (.) to repeat. -vnoremap > -vnoremap < -" comment / decomment & normal comment behavior -vmap gc -" Disable tComment to escape some entities -let g:tcomment#replacements_xml={} -" Text wrap simpler, then type the open tag or '," -vmap S -" Cut, Paste, Copy -vmap d -vmap p -vmap y -" Undo, Redo (broken) -nnoremap :undo -inoremap :undo -nnoremap :redo -inoremap :redo -" Tabs -let g:airline_theme='badwolf' -let g:airline#extensions#tabline#enabled = 1 -nnoremap :tabprevious -inoremap :tabpreviousi -nnoremap :tabnext -inoremap :tabnexti -nnoremap :tabnew -inoremap :tabnewi -nnoremap :tabclose -inoremap :tabclosei - -" lazy ':' -map \ : - -let mapleader = ',' -nnoremap p :set paste -nnoremap o :set nopaste -noremap g :GitGutterToggle - -" this machine config -if filereadable(expand("~/.vimrc.local")) - source ~/.vimrc.local -endif - -if executable('ag') - let g:ackprg = 'ag --vimgrep' - endif - " f{char} to move to {char} - map f (easymotion-bd-f) - nmap f (easymotion-overwin-f) - - " s{char}{char} to move to {char}{char} - nmap s (easymotion-overwin-f2) - - " Move to line - map L (easymotion-bd-jk) - nmap L (easymotion-overwin-line) - - " Move to word - map w (easymotion-bd-w) - nmap w (easymotion-overwin-w) diff --git a/.tmux.conf b/.tmux.conf deleted file mode 100644 index 005e3b6..0000000 --- a/.tmux.conf +++ /dev/null @@ -1,22 +0,0 @@ -set -g terminal-overrides 'xterm*:smcup@:rmcup@' -bind -n C-h run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-h) || tmux select-pane -L" -bind -n C-j run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-j) || tmux select-pane -D" -bind -n C-k run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-k) || tmux select-pane -U" -bind -n C-l run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-l) || tmux select-pane -R" -bind -n C-\ run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys 'C-\\') || tmux select-pane -l" -# List of plugins -set -g @plugin 'tmux-plugins/tpm' -set -g @plugin 'tmux-plugins/tmux-sensible' -set -g @plugin 'tmux-plugins/tmux-yank' - -# Other examples: -# set -g @plugin 'github_username/plugin_name' -# set -g @plugin 'git@github.com/user/plugin' -# set -g @plugin 'git@bitbucket.com/user/plugin' - -# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) -run '~/.tmux/plugins/tpm/tpm' - -set -g default-shell $SHELL -set-option -g default-command "reattach-to-user-namespace -l ${SHELL}" - diff --git a/.tmux/plugins/tmux-sensible b/.tmux/plugins/tmux-sensible deleted file mode 160000 index 526110e..0000000 --- a/.tmux/plugins/tmux-sensible +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 526110eb9b60825d3276afba97ffa4cedb4b0ab9 diff --git a/.tmux/plugins/tmux-yank b/.tmux/plugins/tmux-yank deleted file mode 160000 index feb9611..0000000 --- a/.tmux/plugins/tmux-yank +++ /dev/null @@ -1 +0,0 @@ -Subproject commit feb9611b7d1c323ca54cd8a5111a53e3e8265b59 diff --git a/.tmux/plugins/tpm b/.tmux/plugins/tpm deleted file mode 160000 index c8ac32a..0000000 --- a/.tmux/plugins/tpm +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c8ac32a085d382c43190bda4fb5972e531f501fd diff --git a/.vimrc b/.vimrc deleted file mode 100644 index 48d23b7..0000000 --- a/.vimrc +++ /dev/null @@ -1,194 +0,0 @@ -" vim-sublime - A minimal Sublime Text - like vim experience bundle -" http://github.com/grigio/vim-sublime -" Best view with a 256 color terminal and Powerline fonts -" Updated by Dorian Neto (https://github.com/dorianneto)" - -set nocompatible -filetype off - -set rtp+=~/.vim/bundle/Vundle.vim -call vundle#begin() -Plugin 'VundleVim/Vundle.vim' - -" ------Plugins------- -Plugin 'scrooloose/nerdtree' -Plugin 'tpope/vim-surround' -"Plugin 'tpope/vim-abolish' -Plugin 'tomtom/tcomment_vim' -Plugin 'vim-airline/vim-airline' -Plugin 'vim-airline/vim-airline-themes' -Plugin 'airblade/vim-gitgutter' -Plugin 'elixir-lang/vim-elixir' -" Plugin 'dunckr/vim-monokai-soda' -Plugin 'crusoexia/vim-monokai' -Plugin 'haya14busa/incsearch.vim' -" Plugin 'easymotion/vim-easymotion' -" Plugin 'haya14busa/incsearch-easymotion.vim' -Plugin 'christoomey/vim-tmux-navigator' - -" Color Themes -Plugin 'colors' - -call vundle#end() -colorscheme monokai -filetype plugin indent on - -"""""""" -if has('autocmd') - filetype plugin indent on -endif -if has('syntax') && !exists('g:syntax_on') - syntax enable -endif - -" Use :help 'option' to see the documentation for the given option. -set autoindent -set backspace=indent,eol,start -set complete-=i -set showmatch -set showmode -set smarttab - -set nrformats-=octal -set shiftround - -set ttimeout -set ttimeoutlen=50 - -set incsearch -" Use to clear the highlighting of :set hlsearch. -if maparg('', 'n') ==# '' - nnoremap :nohlsearch -endif - -set laststatus=2 -set ruler -set showcmd -set wildmenu - -set autoread - -set encoding=utf-8 -set tabstop=4 shiftwidth=4 expandtab -set listchars=space:. -set nolist - - -inoremap u - -set number - -set hlsearch -set ignorecase -set smartcase - -" Don't use Ex mode, use Q for formatting -map Q gq - -" In many terminal emulators the mouse works just fine, thus enable it. -if has('mouse') - set mouse=a -endif - -" do not history when leavy buffer -set hidden - -" FIXME: (broken) ctrl s to save -noremap :update -vnoremap :update -inoremap :update - -set nobackup -set nowritebackup -set noswapfile -set fileformats=unix,dos,mac - -" exit insert mode -inoremap - -set completeopt=menuone,longest,preview - -" -" Plugins config -" - -" CtrlP -set wildignore+=*/.git/*,*/.hg/*,*/.svn/* - - -" vim-airline -let g:airline#extensions#tabline#enabled = 1 -let g:airline_powerline_fonts = 1 - -" -" Basic shortcuts definitions -" most in visual mode / selection (v or ⇧ v) -" - -" comment / decomment & normal comment behavior -vmap gc -" Disable tComment to escape some entities -let g:tcomment#replacements_xml={} -" Text wrap simpler, then type the open tag or '," -" -" Tabs -let g:airline_theme='badwolf' -let g:airline#extensions#tabline#enabled = 1 -" nnoremap :tabprevious -" inoremap :tabpreviousi -" nnoremap :tabnext -" inoremap :tabnexti -" nnoremap :tabnew -" inoremap :tabnewi -" nnoremap :tabclose -" inoremap :tabclosei - -" lazy ':' -map \ : - -let mapleader = '\' -nnoremap p :set paste -nnoremap o :set nopaste -noremap g :GitGutterToggle - -" -" if executable('rg') -" let g:ackprg = 'rg --vimgrep --no-heading' -" elseif executable('ag') -" let g:ackprg = 'ag --mmap --vimgrep' -" endif -" f{char} to move to {char} -" map f (easymotion-bd-f) -" nmap f (easymotion-overwin-f) -" -" " s{char}{char} to move to {char}{char} -" nmap s (easymotion-overwin-f2) -" -" " Move to line -" map L (easymotion-bd-jk) -" nmap L (easymotion-overwin-line) -" -" " Move to word -" map w (easymotion-bd-w) -" nmap w (easymotion-overwin-w) -" -" map l (easymotion-lineforward) -" map j (easymotion-j) -" map k (easymotion-k) -" map h (easymotion-linebackward) -" map (easymotion-s) - -"incsearch -map / (incsearch-forward) -map ? (incsearch-backward) -map g/ (incsearch-stay) - - -"incsearch easymotion -" map / (incsearch-easymotion-/) -" map ? (incsearch-easymotion-?) -" map g/ (incsearch-easymotion-stay) - -set relativenumber -let g:ale_javascript_eslint_options = "--rule 'indent: [\"error\", 4]'" -" diff --git a/.zprezto/.editorconfig b/.zprezto/.editorconfig deleted file mode 100644 index 42dd37a..0000000 --- a/.zprezto/.editorconfig +++ /dev/null @@ -1,9 +0,0 @@ -[*] -end_of_line = lf -insert_final_newline = true -indent_style = space -indent_size = 2 -trim_trailing_whitespace = true - -[{.gitattributes,.gitignore,.gitmodules}] -indent_style = tab diff --git a/.zprezto/.github/ISSUE_TEMPLATE.md b/.zprezto/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index e39ca09..0000000 --- a/.zprezto/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,24 +0,0 @@ - - -### Description - - -### Expected behavior - - - -### Actual behavior - - - -### Steps to Reproduce - -1. [First Step] -2. [Second Step] -3. [and so on...] - -### Versions - - - Prezto commit: - - ZSH version: - - OS information: diff --git a/.zprezto/.github/PULL_REQUEST_TEMPLATE.md b/.zprezto/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index b8548b6..0000000 --- a/.zprezto/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,10 +0,0 @@ -Please be sure to check out our [contributing guidelines](https://github.com/sorin-ionescu/prezto/blob/master/CONTRIBUTING.md) -before submitting your pull request. - -Fixes # - -## Proposed Changes - - - - - - - diff --git a/.zprezto/.gitignore b/.zprezto/.gitignore deleted file mode 100644 index 05e53b6..0000000 --- a/.zprezto/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -*.zwc -*.zwc.old -modules/*/cache.zsh -contrib diff --git a/.zprezto/.gitmodules b/.zprezto/.gitmodules deleted file mode 100644 index 301ae41..0000000 --- a/.zprezto/.gitmodules +++ /dev/null @@ -1,31 +0,0 @@ -[submodule "modules/autosuggestions/external"] - path = modules/autosuggestions/external - url = https://github.com/zsh-users/zsh-autosuggestions.git -[submodule "modules/history-substring-search/external"] - path = modules/history-substring-search/external - url = https://github.com/zsh-users/zsh-history-substring-search.git -[submodule "modules/syntax-highlighting/external"] - path = modules/syntax-highlighting/external - url = https://github.com/zsh-users/zsh-syntax-highlighting.git -[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://github.com/agnoster/agnoster-zsh-theme.git -[submodule "modules/prompt/external/pure"] - path = modules/prompt/external/pure - url = https://github.com/sindresorhus/pure.git -[submodule "modules/fasd/external"] - path = modules/fasd/external - url = https://github.com/clvv/fasd.git -[submodule "modules/prompt/external/async"] - path = modules/prompt/external/async - url = https://github.com/mafredri/zsh-async.git -[submodule "modules/prompt/external/powerlevel10k"] - path = modules/prompt/external/powerlevel10k - url = https://github.com/romkatv/powerlevel10k.git - shallow = true diff --git a/.zprezto/CONTRIBUTING.md b/.zprezto/CONTRIBUTING.md deleted file mode 100644 index 6bcb36b..0000000 --- a/.zprezto/CONTRIBUTING.md +++ /dev/null @@ -1,74 +0,0 @@ -# Contributing - -This project would not exist without all of its users and [contributors][1]. - -If you have ideas on how to make the configuration easier to maintain or -improve its performance, do not hesitate to fork and send pull requests. - -## Issue Reporting - -- Check that the issue has not already been reported. -- Check that the issue has not already been fixed in the latest code. -- Open an issue with a clear title and description in grammatically correct, - complete sentences. - -## Pull Request - -- Read [how to properly contribute to open source projects on GitHub][2]. -- Use a topic branch to easily amend a pull request later, if necessary. -- Write [good commit messages][3]. -- Squash commits on the topic branch before opening a pull request. -- Use the same coding style and spacing. -- Open a [pull request][4] that relates to but one subject with a clear title - and description in grammatically correct, complete sentences. - -### Code Style - -This project follows the [Google Shell Style Guide][5] when possible. However, -there are a number of additional things to keep in mind. - -- Local variables should be used whenever possible. -- Prefer `zstyle` over environment variables for configuration. -- Prefer (( ... )) over [[ ... ]] for arithmetic expression. -- Use the function keyword to define functions. -- The 80 character hard limit can be waived for readability. - -### Using an Alternative *zprezto* Directory - -To work on Prezto without affecting your current configuration: - -```sh -mkdir devel-zprezto -cd devel-zprezto -git clone --recursive https://github.com/sorin-ionescu/prezto.git .zprezto -ZDOTDIR=$(pwd) -echo "Your development ZDOTDIR is $ZDOTDIR" -setopt EXTENDED_GLOB -for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do - ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}" -done -``` - -Then to start zsh in this development environment you will run: - -```console -ZDOTDIR=/path/to/devel-zprezto zsh -``` - -### Modules - -- A *README.md* must be present. -- Large functions must be placed in a *functions* directory. -- Functions that take arguments must have completion. - -### Themes - -- A screenshots section must be present in the file header. -- The pull request description must have [embedded screenshots][6]. - -[1]: https://github.com/sorin-ionescu/prezto/contributors -[2]: https://gun.io/blog/how-to-github-fork-branch-and-pull-request -[3]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html -[4]: https://help.github.com/articles/using-pull-requests -[5]: https://google.github.io/styleguide/shell.xml -[6]: https://github.github.com/gfm/#images diff --git a/.zprezto/LICENSE b/.zprezto/LICENSE deleted file mode 100644 index d417147..0000000 --- a/.zprezto/LICENSE +++ /dev/null @@ -1,20 +0,0 @@ -Copyright (c) 2009-2011 Robby Russell and contributors -Copyright (c) 2011-2017 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 -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -of the Software, and to permit persons to whom the Software is furnished to do -so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE diff --git a/.zprezto/README.md b/.zprezto/README.md deleted file mode 100644 index 5479721..0000000 --- a/.zprezto/README.md +++ /dev/null @@ -1,158 +0,0 @@ -# Prezto — Instantly Awesome Zsh - -Prezto is the configuration framework for [Zsh][1]; it enriches the command line -interface environment with sane defaults, aliases, functions, auto completion, -and prompt themes. - -## Installation - -Prezto will work with any recent release of Zsh, but the minimum required -version is **4.3.11**. - -01. Launch Zsh: - - ```console - zsh - ``` - -02. Clone the repository: - - ```console - git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto" - ``` - -
- Optional: Installing in $XDG_CONFIG_HOME - - Optionally, if you already have `$XDG_CONFIG_HOME` configured (usually as - _`$HOME/.config`_ by default) and intend to install Prezto under - _`$XDG_CONFIG_HOME/zsh`_ instead, you can clone the repository there and - configure `$ZDOTDIR` separately if not already configured. - - - Clone the repository: - - ```console - git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-${XDG_CONFIG_HOME:-$HOME/.config}/zsh}/.zprezto" - ``` - - - Configure `$XDG_CONFIG_HOME` and `$ZDOTDIR` in _`$HOME/.zshenv`_: - - ```sh - export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:=$HOME/.config}" - export ZDOTDIR="${ZDOTDIR:=$XDG_CONFIG_HOME/zsh}" - source "$ZDOTDIR/.zshenv" - ``` - -
- -03. Create a new Zsh configuration by copying/linking the Zsh configuration - files provided: - - ```console - setopt EXTENDED_GLOB - for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do - ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}" - done - ``` - - **Note:** If you already have any of the given configuration files, `ln` in - the above operation will cause an error. In simple cases, you can load - Prezto by adding the line `source "${ZDOTDIR:-$HOME}/.zprezto/init.zsh"` to - the bottom of your _`${ZDOTDIR:-$HOME}/.zshrc`_ and keep the rest of your - Zsh configuration intact. For more complicated setups, we recommend that you - back up your original configs and replace them with the provided Prezto - [_`runcoms`_][10]. - -04. Set Zsh as your default shell: - - ```console - chsh -s /bin/zsh - ``` - -05. Open a new Zsh terminal window or tab. - -### Troubleshooting - -If you are not able to find certain commands after switching to Prezto, modify -the `PATH` variable in _`${ZDOTDIR:-$HOME}/.zprofile`_ then open a new Zsh -terminal window or tab. - -## Updating - -Run `zprezto-update` to automatically check if there is an update to Prezto. -If there are no file conflicts, Prezto and its submodules will be automatically -updated. If there are conflicts you will be instructed to go into the -`$ZPREZTODIR` directory and resolve them yourself. - -To pull the latest changes and update submodules manually: - -```console -cd $ZPREZTODIR -git pull -git submodule sync --recursive -git submodule update --init --recursive -``` - -## Usage - -Prezto has many features disabled by default. Read the source code and the -accompanying README files to learn about what is available. - -### Modules - -01. Browse [_`modules`_][9] to see what is available. -02. Load the modules you need in _`${ZDOTDIR:-$HOME}/.zpreztorc`_ and then open - a new Zsh terminal window or tab. - -### Themes - -01. For a list of themes, type `prompt -l`. -02. To preview a theme, type `prompt -p name`. -03. Load the theme you like in _`${ZDOTDIR:-$HOME}/.zpreztorc`_ and then - open a new Zsh terminal window or tab. - - ![sorin theme][2] - Note that the [_`git`_][11] module may be required for special symbols to - appear, such as those on the right of the above image. Add `'git'` to the - `pmodule` list (under `zstyle ':prezto:load' pmodule \` in your - _`${ZDOTDIR:-$HOME}/.zpreztorc`_) to enable this module. - -### External Modules - -01. By default modules will be loaded from [_`/modules`_][9] and _`/contrib`_. -02. Additional module directories can be added to the - `:prezto:load:pmodule-dirs` setting in _`${ZDOTDIR:-$HOME}/.zpreztorc`_. - - Note that module names need to be unique or they will cause an error when - loading. - - ```sh - zstyle ':prezto:load' pmodule-dirs $HOME/.zprezto-contrib - ``` - -## Customization - -The project is managed via [Git][3]. We highly recommend that you fork this -project so that you can commit your changes and push them to your fork on -[GitHub][4] to preserve them. If you do not know how to use Git, follow this -[tutorial][5] and bookmark this [reference][6]. - -## Resources - -The [Zsh Reference Card][7] and the [zsh-lovers][8] man page are indispensable. - -## License - -This project is licensed under the MIT License. - -[1]: https://www.zsh.org -[2]: https://i.imgur.com/nrGV6pg.png "sorin theme" -[3]: https://git-scm.com -[4]: https://github.com -[5]: https://gitimmersion.com -[6]: https://git.github.io/git-reference/ -[7]: http://www.bash2zsh.com/zsh_refcard/refcard.pdf -[8]: https://grml.org/zsh/zsh-lovers.html -[9]: modules#readme -[10]: runcoms#readme -[11]: modules/git#readme diff --git a/.zprezto/init.zsh b/.zprezto/init.zsh deleted file mode 100644 index 5d7996a..0000000 --- a/.zprezto/init.zsh +++ /dev/null @@ -1,197 +0,0 @@ -# -# Initializes Prezto. -# -# Authors: -# Sorin Ionescu -# - -# -# Version Check -# - -# Check for the minimum supported version. -min_zsh_version='4.3.11' -if ! autoload -Uz is-at-least || ! is-at-least "$min_zsh_version"; then - printf "prezto: old shell detected, minimum required: %s\n" "$min_zsh_version" >&2 - return 1 -fi -unset min_zsh_version - -# zprezto convenience updater -# The function is surrounded by ( ) instead of { } so it starts in a subshell -# and won't affect the environment of the calling shell -function zprezto-update { - ( - function cannot-fast-forward { - local STATUS="$1" - [[ -n "${STATUS}" ]] && printf "%s\n" "${STATUS}" - printf "Unable to fast-forward the changes. You can fix this by " - printf "running\ncd '%s' and then\n'git pull' " "${ZPREZTODIR}" - printf "to manually pull and possibly merge in changes\n" - } - cd -q -- "${ZPREZTODIR}" || return 7 - local orig_branch="$(git symbolic-ref HEAD 2> /dev/null | cut -d '/' -f 3)" - if [[ "$orig_branch" == "master" ]]; then - git fetch || return "$?" - local UPSTREAM=$(git rev-parse '@{u}') - local LOCAL=$(git rev-parse HEAD) - local REMOTE=$(git rev-parse "$UPSTREAM") - local BASE=$(git merge-base HEAD "$UPSTREAM") - if [[ $LOCAL == $REMOTE ]]; then - printf "There are no updates.\n" - return 0 - elif [[ $LOCAL == $BASE ]]; then - printf "There is an update available. Trying to pull.\n\n" - if git pull --ff-only; then - printf "Syncing submodules\n" - git submodule sync --recursive - git submodule update --init --recursive - return $? - else - cannot-fast-forward - return 1 - fi - elif [[ $REMOTE == $BASE ]]; then - cannot-fast-forward "Commits in master that aren't in upstream." - return 1 - else - cannot-fast-forward "Upstream and local have diverged." - return 1 - fi - else - printf "zprezto install at '%s' is not on the master branch " "${ZPREZTODIR}" - printf "(you're on '%s')\nUnable to automatically update.\n" "${orig_branch}" - return 1 - fi - return 1 - ) -} -# -# Module Loader -# - -# Loads Prezto modules. -function pmodload { - local -a pmodules - local -a pmodule_dirs - local -a locations - local pmodule - local pmodule_location - local pfunction_glob='^([_.]*|prompt_*_setup|README*|*~)(-.N:t)' - - # Load in any additional directories and warn if they don't exist - zstyle -a ':prezto:load' pmodule-dirs 'user_pmodule_dirs' - for user_dir in "$user_pmodule_dirs[@]"; do - if [[ ! -d "$user_dir" ]]; then - echo "$0: Missing user module dir: $user_dir" - fi - done - - pmodule_dirs=("$ZPREZTODIR/modules" "$ZPREZTODIR/contrib" "$user_pmodule_dirs[@]") - - # $argv is overridden in the anonymous function. - pmodules=("$argv[@]") - - # Load Prezto modules. - for pmodule in "$pmodules[@]"; do - if zstyle -t ":prezto:module:$pmodule" loaded 'yes' 'no'; then - continue - else - locations=(${pmodule_dirs:+${^pmodule_dirs}/$pmodule(-/FN)}) - if (( ${#locations} > 1 )); then - if ! zstyle -t ':prezto:load' pmodule-allow-overrides 'yes'; then - print "$0: conflicting module locations: $locations" - continue - fi - elif (( ${#locations} < 1 )); then - print "$0: no such module: $pmodule" - continue - fi - - # Grab the full path to this module - pmodule_location=${locations[-1]} - - # Add functions to $fpath. - fpath=(${pmodule_location}/functions(-/FN) $fpath) - - function { - local pfunction - - # Extended globbing is needed for listing autoloadable function directories. - setopt LOCAL_OPTIONS EXTENDED_GLOB - - # Load Prezto functions. - for pfunction in ${pmodule_location}/functions/$~pfunction_glob; do - autoload -Uz "$pfunction" - done - } - - if [[ -s "${pmodule_location}/init.zsh" ]]; then - source "${pmodule_location}/init.zsh" - elif [[ -s "${pmodule_location}/${pmodule}.plugin.zsh" ]]; then - source "${pmodule_location}/${pmodule}.plugin.zsh" - fi - - if (( $? == 0 )); then - zstyle ":prezto:module:$pmodule" loaded 'yes' - else - # Remove the $fpath entry. - fpath[(r)${pmodule_location}/functions]=() - - function { - local pfunction - - # Extended globbing is needed for listing autoloadable function - # directories. - setopt LOCAL_OPTIONS EXTENDED_GLOB - - # Unload Prezto functions. - for pfunction in ${pmodule_location}/functions/$~pfunction_glob; do - unfunction "$pfunction" - done - } - - zstyle ":prezto:module:$pmodule" loaded 'no' - fi - fi - done -} - -# -# Prezto Initialization -# - -# This finds the directory prezto is installed to so plugin managers don't need -# to rely on dirty hacks to force prezto into a directory. Additionally, it -# needs to be done here because inside the pmodload function ${0:h} evaluates to -# the current directory of the shell rather than the prezto dir. -ZPREZTODIR=${0:h} - -# Source the Prezto configuration file. -if [[ -s "${ZDOTDIR:-$HOME}/.zpreztorc" ]]; then - source "${ZDOTDIR:-$HOME}/.zpreztorc" -fi - -# Disable color and theme in dumb terminals. -if [[ "$TERM" == 'dumb' ]]; then - zstyle ':prezto:*:*' color 'no' - zstyle ':prezto:module:prompt' theme 'off' -fi - -# Load Zsh modules. -zstyle -a ':prezto:load' zmodule 'zmodules' -for zmodule ("$zmodules[@]") zmodload "zsh/${(z)zmodule}" -unset zmodule{s,} - -# Load more specific 'run-help' function from $fpath. -(( $+aliases[run-help] )) && unalias run-help && autoload -Uz run-help - -# Autoload Zsh functions. -zstyle -a ':prezto:load' zfunction 'zfunctions' -for zfunction ("$zfunctions[@]") autoload -Uz "$zfunction" -unset zfunction{s,} - -# Load Prezto modules. -zstyle -a ':prezto:load' pmodule 'pmodules' -pmodload "$pmodules[@]" -unset pmodules diff --git a/.zprezto/modules/README.md b/.zprezto/modules/README.md deleted file mode 100644 index cc9dfb1..0000000 --- a/.zprezto/modules/README.md +++ /dev/null @@ -1,166 +0,0 @@ -# Modules - -Load modules in _`${ZDOTDIR:-$HOME}/.zpreztorc`_. The order matters. - -```sh -zstyle ':prezto:load' pmodule 'environment' 'terminal' -``` - -## Archive - -Provides functions to list and extract archives. - -## Autosuggestions - -Integrates zsh-autosuggestions into Prezto. - -## Command-Not-Found - -Loads the command-not-found tool on macOS or Debian-based distributions. - -## Completion - -Loads and configures TAB completion and provides additional -completions from the zsh-completions project. - -## 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 - -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 - -Provides for an easier use of GPG by setting up gpg-agent. - -## Haskell - -Enables local Haskell package installation. - -## 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. - -## Homebrew - -Defines Homebrew aliases. - -## MacPorts - -Defines MacPorts aliases and adds MacPorts directories to path variables. - -## Node.js - -Provides utility functions for Node.js and loads npm completion. - -## OCaml - -Initializes OCaml package management. - -## OSX - -Defines macOS aliases and functions. - -## Pacman - -Provides aliases and functions for the Pacman package manager and frontends. - -## Perl - -Enables local Perl module installation on macOS and defines alises. - -## Prompt - -Loads prompt themes. - -## Python - -Enables local Python and local Python package installation. - -## Ruby on Rails - -Defines Ruby on Rails aliases. - -## Rsync - -Defines rsync aliases. - -## Ruby - -Configures Ruby local gem installation, loads version managers, and defines -aliases. - -## GNU Screen - -Defines GNU Screen aliases and provides for auto launching it at start-up. - -## Spectrum - -Provides for easier use of 256 colors and effects. - -## SSH - -Provides for an easier use of SSH by setting up ssh-agent. - -## Syntax Highlighting - -Integrates zsh-syntax-highlighting into Prezto. - -## Terminal - -Sets terminal window and tab titles. - -## Tmux - -Defines tmux aliases and provides for auto launching it at start-up. - -## Utility - -Defines general aliases and functions. - -## Wake-on-LAN - -This module provides a wrapper around the wakeonlan tool. - -## Yum - -Defines yum aliases. diff --git a/.zprezto/modules/archive/README.md b/.zprezto/modules/archive/README.md deleted file mode 100644 index be63788..0000000 --- a/.zprezto/modules/archive/README.md +++ /dev/null @@ -1,53 +0,0 @@ -# Archive - -Provides functions to create, list, and extract archives. - -This module must be loaded _before_ the [_`completion`_][1] module so that the -provided completion definitions are loaded automatically by _`completion`_ -module. - -## Functions - -- `archive` creates an archive based on the provided archive name. -- `lsarchive` lists the contents of one or more archives. -- `unarchive` extracts the contents of one or more archives. - -## Supported Formats - -The following archive formats are supported when the required utilities are -installed: - -- _.tar.gz_, _.tgz_ require `tar` (optionally `pigz`). -- _.tar.bz2_, _.tbz_ require `tar` (optionally `pbzip2`). -- _.tar.xz_, _.txz_ require `tar` with _xz_ support. -- _.tar.zma_, _.tlz_ require `tar` with _lzma_ support. -- _.tar_ requires `tar`. -- _.gz_ requires `gunzip`. -- _.bz2_ requires `bunzip2`. -- _.xz_ requires `unxz`. -- _.lzma_ requires `unlzma`. -- _.Z_ requires `uncompress`. -- _.zip_, _.jar_ requires `unzip`. -- _.rar_ requires `rar` (needed for `archive` support), `unrar` or `lsar` and `unar`. -- _.7z_ requires `7za`. -- _.deb_ requires `ar`, `tar`. - -Additionally, if `pigz` and/or `pbzip2` are installed, `archive` will use them -over their traditional counterparts, `gzip` and `bzip2` respectively, to take -full advantage of all available CPU cores for compression. - -## Alternatives - -Specifically on macOS, [The Unarchiver][2] provides a similar command line tool -which doesn't depend on a number of other programs being installed. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][3]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) -- [Matt Hamilton](https://github.com/Eriner) - -[1]: ../completion#readme -[2]: https://theunarchiver.com/command-line -[3]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/archive/functions/_lsarchive b/.zprezto/modules/archive/functions/_lsarchive deleted file mode 100644 index bcbfbd6..0000000 --- a/.zprezto/modules/archive/functions/_lsarchive +++ /dev/null @@ -1,13 +0,0 @@ -#compdef lsarchive -#autoload - -# -# Completes lsarchive. -# -# Authors: -# Sorin Ionescu -# - -_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|zst|jar|rar|7z)(-.)'" && return 0 diff --git a/.zprezto/modules/archive/functions/_unarchive b/.zprezto/modules/archive/functions/_unarchive deleted file mode 100644 index 6a940b1..0000000 --- a/.zprezto/modules/archive/functions/_unarchive +++ /dev/null @@ -1,13 +0,0 @@ -#compdef unarchive -#autoload - -# -# Completes unarchive. -# -# Authors: -# Sorin Ionescu -# - -_arguments \ - '(-r --remove)'{-r,--remove}'[remove archive]' \ - "*::archive file:_files -g '(#i)*.(tar|tgz|tbz|tbz2|txz|tlz|gz|bz2|xz|lzma|Z|zip|zst|jar|rar|7z|deb)(-.)'" && return 0 diff --git a/.zprezto/modules/archive/functions/archive b/.zprezto/modules/archive/functions/archive deleted file mode 100644 index b6f9523..0000000 --- a/.zprezto/modules/archive/functions/archive +++ /dev/null @@ -1,75 +0,0 @@ -# -# Creates archive file -# -# Authors: -# Matt Hamilton -# - -# function archive { - -local archive_name path_to_archive _gzip_bin _bzip2_bin _xz_bin _zstd_bin - -if (( $# < 2 )); then - cat >&2 < -# - -# function lsarchive { - -local verbose - -if (( $# == 0 )); then - cat >&2 <. -EOF -fi - -if [[ "$1" == "-v" || "$1" == "--verbose" ]]; then - verbose=0 - shift -fi - -while (( $# > 0 )); do - if [[ ! -s "$1" ]]; then - print "$0: file not valid: $1" >&2 - shift - continue - fi - - 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 \ - && tar --xz -t${verbose:+v}f "$1" \ - || xzcat "$1" | tar t${verbose:+v}f - ;; - (*.tar.zma|*.tlz) tar --lzma --help &> /dev/null \ - && tar --lzma -t${verbose:+v}f "$1" \ - || lzcat "$1" | tar x${verbose:+v}f - ;; - (*.tar.zst|*.tzst) tar -I zstd -t${verbose:+v}f "$1" ;; - (*.tar) tar t${verbose:+v}f "$1" ;; - (*.zip|*.jar) unzip -l${verbose:+v} "$1" ;; - (*.rar) ( (( $+commands[unrar] )) \ - && unrar ${${verbose:+v}:-l} "$1" ) \ - || ( (( $+commands[rar] )) \ - && rar ${${verbose:+v}:-l} "$1" ) \ - || lsar ${verbose:+-l} "$1" ;; - (*.7z) 7za l "$1" ;; - (*) - print "$0: cannot list: $1" >&2 - success=1 - ;; - esac - - shift -done - -# } diff --git a/.zprezto/modules/archive/functions/unarchive b/.zprezto/modules/archive/functions/unarchive deleted file mode 100644 index 66c7e35..0000000 --- a/.zprezto/modules/archive/functions/unarchive +++ /dev/null @@ -1,111 +0,0 @@ -# -# Extracts the contents of archives. -# -# Authors: -# Sorin Ionescu -# - -# function unarchive { - -local remove_archive -local success -local file_name -local file_path -local extract_dir -local _gzip_bin _bzip2_bin _xz_bin _zstd_bin - -if (( $# == 0 )); then - cat >&2 <. -EOF -fi - -remove_archive=1 -if [[ "$1" == "-r" || "$1" == "--remove" ]]; then - remove_archive=0 - shift -fi - -# here, we check for dropin/multi-threaded replacements -# this should eventually be moved to modules/archive/init.zsh -# as a global alias -if (( $+commands[pigz] )); then - _gzip_bin='pigz' -else - _gzip_bin='gzip' -fi - -if (( $+commands[pixz] )); then - _xz_bin='pixz' -else - _xz_bin='xz' -fi - -if (( $+commands[lbzip2] )); then - _bzip2_bin='lbzip2' -elif (( $+commands[pbzip2] )); then - _bzip2_bin='pbzip2' -else - _bzip2_bin='bzip2' -fi - -_zstd_bin='zstd' - -while (( $# > 0 )); do - if [[ ! -s "$1" ]]; then - print "$0: file not valid: $1" >&2 - shift - continue - fi - - success=0 - file_name="${1:t}" - file_path="${1:A}" - extract_dir="${file_name:r}" - case "$1:l" in - (*.tar.gz|*.tgz) tar -xvf "$1" --use-compress-program="${_gzip_bin}" ;; - (*.tar.bz2|*.tbz|*.tbz2) tar -xvf "$1" --use-compress-program="${_bzip2_bin}" ;; - (*.tar.xz|*.txz) tar -xvf "$1" --use-compress-program="${_xz_bin}" ;; - (*.tar.zma|*.tlz) tar --lzma --help &> /dev/null \ - && tar --lzma -xvf "$1" \ - || lzcat "$1" | tar -xvf - ;; - (*.tar.zst|*.tzst) tar -xvf "$1" --use-compress-program="${_zstd_bin}" ;; - (*.tar) tar -xvf "$1" ;; - (*.gz) gunzip "$1" ;; - (*.bz2) bunzip2 "$1" ;; - (*.xz) unxz "$1" ;; - (*.lzma) unlzma "$1" ;; - (*.Z) uncompress "$1" ;; - (*.zip|*.jar) unzip "$1" -d $extract_dir ;; - (*.rar) ( (( $+commands[unrar] )) \ - && unrar x -ad "$1" ) \ - || ( (( $+commands[rar] )) \ - && rar x -ad "$1" ) \ - || unar -d "$1" ;; - (*.7z) 7za x "$1" ;; - (*.deb) - mkdir -p "$extract_dir/control" - mkdir -p "$extract_dir/data" - cd "$extract_dir"; ar vx "${file_path}" > /dev/null - cd control; tar xvf ../control.tar.* - cd ../data; tar xvf ../data.tar.* - cd ..; rm control.tar.* data.tar.* debian-binary - cd .. - ;; - (*) - print "$0: cannot extract: $1" >&2 - success=1 - ;; - esac - - (( success = $success > 0 ? $success : $? )) - (( $success == 0 )) && (( $remove_archive == 0 )) && rm "$1" - shift -done - -# } diff --git a/.zprezto/modules/autosuggestions/README.md b/.zprezto/modules/autosuggestions/README.md deleted file mode 100644 index 8aedb31..0000000 --- a/.zprezto/modules/autosuggestions/README.md +++ /dev/null @@ -1,62 +0,0 @@ -# Autosuggestions - -Integrates [zsh-autosuggestions][1] into Prezto, which implements the -[Fish shell][2]'s autosuggestions feature, where the user can type in any part -of a previously entered command and Zsh suggests commands as you type based on -history and completions. - -If this module is used in conjunction with the [_`syntax-highlighting`_][3] -module, this module must be loaded _after_ the _`syntax-highlighting`_ module. - -Additionally, if this module is used in conjunction with the -[_`history-substring-search`_][4] module, this module must be loaded _after_ the -_`history-substring-search`_ module as well. - -To elaborate, the relative order of loading the modules would be -_`syntax-highlighting`_, _`history-substring-search`_ and _`autosuggestions`_. - -## Contributors - -New features and bug fixes should be submitted to the [zsh-autosuggestions][1] -project according to its rules and regulations. This module will be synchronized -against it. - -## Settings - -### Highlighting - -If colors are enabled, _autosuggestions_ will automatically highlight -positive results. - -To enable highlighting for this module only, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:autosuggestions' color 'yes' -``` - -To set the query found color, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:autosuggestions:color' found '' -``` - -## Troubleshooting - -### Autosuggestions from previous sessions don't show up - -For autosuggestions from previous shell sessions to work, please make sure you -also have the `history` module enabled. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][5]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://github.com/tarruda/zsh-autosuggestions -[2]: https://fishshell.com -[3]: ../syntax-highlighting#readme -[4]: ../history-substring-search#readme -[5]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/autosuggestions/external b/.zprezto/modules/autosuggestions/external deleted file mode 160000 index a411ef3..0000000 --- a/.zprezto/modules/autosuggestions/external +++ /dev/null @@ -1 +0,0 @@ -Subproject commit a411ef3e0992d4839f0732ebeb9823024afaaaa8 diff --git a/.zprezto/modules/autosuggestions/init.zsh b/.zprezto/modules/autosuggestions/init.zsh deleted file mode 100644 index a3a772e..0000000 --- a/.zprezto/modules/autosuggestions/init.zsh +++ /dev/null @@ -1,35 +0,0 @@ -# -# Integrates zsh-autosuggestions into Prezto. -# -# Authors: -# Sorin Ionescu -# - -# Load dependencies. -pmodload 'editor' - -# Source module files. -source "${0:h}/external/zsh-autosuggestions.zsh" || return 1 - -# -# Highlighting -# - -# Set highlight color, default 'fg=8'. -zstyle -s ':prezto:module:autosuggestions:color' found \ - 'ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE' || ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=8' - -# Disable highlighting. -if ! zstyle -t ':prezto:module:autosuggestions' color; then - ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='' -fi - -# -# Key Bindings -# - -if [[ -n "$key_info" ]]; then - # vi - bindkey -M viins "$key_info[Control]F" vi-forward-word - bindkey -M viins "$key_info[Control]E" vi-add-eol -fi diff --git a/.zprezto/modules/command-not-found/README.md b/.zprezto/modules/command-not-found/README.md deleted file mode 100644 index c433380..0000000 --- a/.zprezto/modules/command-not-found/README.md +++ /dev/null @@ -1,23 +0,0 @@ -# Command-Not-Found - -When you try to use a command that is not available locally, searches the -package manager for a package offering that command and suggests the proper -install command. - -Debian and Arch Linux based distributions use the [`command-not-found`][1] tool. - -macOS uses Homebrew's [`command-not-found` clone][2]. Note that unless you have -a recent version of Homebrew installed, you might also need to tap the -`command-not-found` Homebrew repository [following the instructions][3]. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][4]._ - -- [Joseph Booker](https://github.com/sargas) -- [Indrajit Raychaudhuri](https://github.com/indrajitr) - -[1]: https://code.launchpad.net/command-not-found -[2]: https://github.com/Homebrew/homebrew-command-not-found -[3]: https://github.com/Homebrew/homebrew-command-not-found#install -[4]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/command-not-found/init.zsh b/.zprezto/modules/command-not-found/init.zsh deleted file mode 100644 index d81692d..0000000 --- a/.zprezto/modules/command-not-found/init.zsh +++ /dev/null @@ -1,23 +0,0 @@ -# -# Displays installation information for not found commands. -# -# Authors: -# Joseph Jon Booker -# Indrajit Raychaudhuri -# - -# 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' -# Load command-not-found on macOS when Homebrew tap is configured. -elif (( $+commands[brew] )) \ - && [[ -s "${hb_cnf_handler::="$(brew --repository 2> /dev/null)"/Library/Taps/homebrew/homebrew-command-not-found/handler.sh}" ]]; then - source "$hb_cnf_handler" - unset hb_cnf_handler -# Return if requirements are not found. -else - return 1 -fi diff --git a/.zprezto/modules/completion/README.md b/.zprezto/modules/completion/README.md deleted file mode 100644 index cdce9e5..0000000 --- a/.zprezto/modules/completion/README.md +++ /dev/null @@ -1,55 +0,0 @@ -# Completion - -Loads and configures TAB completion and provides additional -completions from the [zsh-completions][1] project. - -This module must be loaded late _after_ the _`utility`_ module and all other -modules that provide completion definitions. - -## Options - -- `COMPLETE_IN_WORD` complete from both ends of a word. -- `ALWAYS_TO_END` move cursor to the end of a completed word. -- `PATH_DIRS` perform path search even on command names with slashes. -- `AUTO_MENU` show completion menu on a successive TAB press. -- `AUTO_LIST` automatically list choices on ambiguous completion. -- `AUTO_PARAM_SLASH` if completed parameter is a directory, add a trailing - slash (`/`). -- `EXTENDED_GLOB` needed for file modification glob modifiers with _compinit_. -- `MENU_COMPLETE` do not autoselect the first completion entry. -- `FLOW_CONTROL` disable start/stop characters in shell editor. - -## Variables - -- `LS_COLORS` used by default for Zsh [standard style][2] 'list-colors'. - -## Settings - -### Ignore _`/etc/hosts`_ Entries - -To ignore certain entries from static _`/etc/hosts`_ for host completion, add -the following lines in _`${ZDOTDIR:-$HOME}/.zpreztorc`_ with the IP addresses of -the hosts as they appear in _`/etc/hosts`_. Both IP address and the associated -hostname(s) will be ignored during host completion. However, some of the entries -ignored from _`/etc/hosts`_ still might appear during completion because of -their presence in _ssh_ configuration or history). - -```sh -zstyle ':prezto:module:completion:*:hosts' etc-host-ignores \ - '0.0.0.0' '127.0.0.1' -``` - -## Contributors - -Completions should be submitted to the [zsh-completions][1] project according to -its rules and regulations. This module will be synchronized against it. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][3]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://github.com/zsh-users/zsh-completions -[2]: https://zsh.sourceforge.net/Doc/Release/Completion-System.html#Standard-Styles -[3]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/completion/external b/.zprezto/modules/completion/external deleted file mode 160000 index 11ad0a4..0000000 --- a/.zprezto/modules/completion/external +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 11ad0a45ff1695cac00e86c687cce6fa1fd1cdbd diff --git a/.zprezto/modules/completion/init.zsh b/.zprezto/modules/completion/init.zsh deleted file mode 100644 index fc5cfd4..0000000 --- a/.zprezto/modules/completion/init.zsh +++ /dev/null @@ -1,186 +0,0 @@ -# -# Sets completion options. -# -# Authors: -# Robby Russell -# Sorin Ionescu -# - -# Return if requirements are not found. -if [[ $TERM == 'dumb' ]]; then - return 1 -fi - -# Add zsh-completions to $fpath. -fpath=(${0:h}/external/src $fpath) - -# Add completion for keg-only brewed curl when available. -if (( $+commands[brew] )) \ - && [[ -d "${curl_prefix::="$(brew --prefix 2> /dev/null)"/opt/curl}" ]]; then - fpath=($curl_prefix/share/zsh/site-functions $fpath) -fi -unset curl_prefix - -# -# Options -# - -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 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. -setopt EXTENDED_GLOB # Needed for file modification glob modifiers with compinit. -unsetopt MENU_COMPLETE # Do not autoselect the first completion entry. -unsetopt FLOW_CONTROL # Disable start/stop characters in shell editor. - -# -# Variables -# - -# Standard style used by default for 'list-colors' -LS_COLORS=${LS_COLORS:-'di=34:ln=35:so=32:pi=33:ex=31:bd=36;01:cd=33;01:su=31;40;07:sg=36;40;07:tw=32;40;07:ow=33;40;07:'} - -# -# Initialization -# - -# Load and initialize the completion system ignoring insecure directories with a -# cache time of 20 hours, so it should almost always regenerate the first time a -# shell is opened each day. -autoload -Uz compinit -_comp_path="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/zcompdump" -# #q expands globs in conditional expressions -if [[ $_comp_path(#qNmh-20) ]]; then - # -C (skip function check) implies -i (skip security check). - compinit -C -d "$_comp_path" -else - mkdir -p "$_comp_path:h" - compinit -i -d "$_comp_path" - # Keep $_comp_path younger than cache time even if it isn't regenerated. - touch "$_comp_path" -fi -unset _comp_path - -# -# Styles -# - -# Defaults. -zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS} -zstyle ':completion:*:default' list-prompt '%S%M matches%s' - -# Use caching to make completion for commands such as dpkg and apt usable. -zstyle ':completion::complete:*' use-cache on -zstyle ':completion::complete:*' cache-path "${XDG_CACHE_HOME:-$HOME/.cache}/prezto/zcompcache" - -# Case-insensitive (all), partial-word, and then substring completion. -if zstyle -t ':prezto:module:completion:*' case-sensitive; then - zstyle ':completion:*' matcher-list 'r:|[._-]=* r:|=*' 'l:|=* r:|=*' - setopt CASE_GLOB -else - zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*' - unsetopt CASE_GLOB -fi - -# Group matches and describe. -zstyle ':completion:*:*:*:*:*' menu select -zstyle ':completion:*:matches' group 'yes' -zstyle ':completion:*:options' description 'yes' -zstyle ':completion:*:options' auto-description '%d' -zstyle ':completion:*:corrections' format ' %F{green}-- %d (errors: %e) --%f' -zstyle ':completion:*:descriptions' format ' %F{yellow}-- %d --%f' -zstyle ':completion:*:messages' format ' %F{purple} -- %d --%f' -zstyle ':completion:*:warnings' format ' %F{red}-- no matches found --%f' -zstyle ':completion:*' format ' %F{yellow}-- %d --%f' -zstyle ':completion:*' group-name '' -zstyle ':completion:*' verbose yes - -# Fuzzy match mistyped completions. -zstyle ':completion:*' completer _complete _match _approximate -zstyle ':completion:*:match:*' original only -zstyle ':completion:*:approximate:*' max-errors 1 numeric - -# Increase the number of errors based on the length of the typed word. But make -# sure to cap (at 7) the max-errors to avoid hanging. -zstyle -e ':completion:*:approximate:*' max-errors 'reply=($((($#PREFIX+$#SUFFIX)/3>7?7:($#PREFIX+$#SUFFIX)/3))numeric)' - -# Don't complete unavailable commands. -zstyle ':completion:*:functions' ignored-patterns '(_*|pre(cmd|exec))' - -# Array completion element sorting. -zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters - -# Directories -zstyle ':completion:*:*:cd:*' tag-order local-directories directory-stack path-directories -zstyle ':completion:*:*:cd:*:directory-stack' menu yes select -zstyle ':completion:*:-tilde-:*' group-order 'named-directories' 'path-directories' 'users' 'expand' -zstyle ':completion:*' squeeze-slashes true - -# History -zstyle ':completion:*:history-words' stop yes -zstyle ':completion:*:history-words' remove-all-dups yes -zstyle ':completion:*:history-words' list false -zstyle ':completion:*:history-words' menu yes - -# Environment Variables -zstyle ':completion::*:(-command-|export):*' fake-parameters ${${${_comps[(I)-value-*]#*,}%%,*}:#-*-} - -# Populate hostname completion. But allow ignoring custom entries from static -# */etc/hosts* which might be uninteresting. -zstyle -a ':prezto:module:completion:*:hosts' etc-host-ignores '_etc_host_ignores' - -zstyle -e ':completion:*:hosts' hosts 'reply=( - ${=${=${=${${(f)"$(cat {/etc/ssh/ssh_,~/.ssh/}known_hosts(|2)(N) 2> /dev/null)"}%%[#| ]*}//\]:[0-9]*/ }//,/ }//\[/ } - ${=${(f)"$(cat /etc/hosts(|)(N) <<(ypcat hosts 2> /dev/null))"}%%(\#${_etc_host_ignores:+|${(j:|:)~_etc_host_ignores}})*} - ${=${${${${(@M)${(f)"$(cat ~/.ssh/config 2> /dev/null)"}:#Host *}#Host }:#*\**}:#*\?*}} -)' - -# Don't complete uninteresting users... -zstyle ':completion:*:*:*:users' ignored-patterns \ - adm amanda apache avahi beaglidx bin cacti canna clamav daemon \ - dbus distcache dovecot fax ftp games gdm gkrellmd gopher \ - hacluster haldaemon halt hsqldb ident junkbust ldap lp mail \ - mailman mailnull mldonkey mysql nagios \ - named netdump news nfsnobody nobody nscd ntp nut nx openvpn \ - operator pcap postfix postgres privoxy pulse pvm quagga radvd \ - rpc rpcuser rpm shutdown squid sshd sync uucp vcsa xfs '_*' - -# ... unless we really want to. -zstyle '*' single-ignored show - -# Ignore multiple entries. -zstyle ':completion:*:(rm|kill|diff):*' ignore-line other -zstyle ':completion:*:rm:*' file-patterns '*:all-files' - -# Kill -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 -zstyle ':completion:*:*:kill:*' insert-ids single - -# Man -zstyle ':completion:*:manuals' separate-sections true -zstyle ':completion:*:manuals.(^1*)' insert-sections true - -# Media Players -zstyle ':completion:*:*:mpg123:*' file-patterns '*.(mp3|MP3):mp3\ files *(-/):directories' -zstyle ':completion:*:*:mpg321:*' file-patterns '*.(mp3|MP3):mp3\ files *(-/):directories' -zstyle ':completion:*:*:ogg123:*' file-patterns '*.(ogg|OGG|flac):ogg\ files *(-/):directories' -zstyle ':completion:*:*:mocp:*' file-patterns '*.(wav|WAV|mp3|MP3|ogg|OGG|flac):ogg\ files *(-/):directories' - -# Mutt -if [[ -s "$HOME/.mutt/aliases" ]]; then - zstyle ':completion:*:*:mutt:*' menu yes select - zstyle ':completion:*:mutt:*' users ${${${(f)"$(<"$HOME/.mutt/aliases")"}#alias[[:space:]]}%%[[:space:]]*} -fi - -# SSH/SCP/RSYNC -zstyle ':completion:*:(ssh|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:*' 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::*' diff --git a/.zprezto/modules/directory/README.md b/.zprezto/modules/directory/README.md deleted file mode 100644 index 86953a4..0000000 --- a/.zprezto/modules/directory/README.md +++ /dev/null @@ -1,30 +0,0 @@ -# Directory - -Sets directory options and defines directory aliases. - -## Options - -- `AUTO_CD` auto changes to a directory without typing `cd`. -- `AUTO_PUSHD` pushes the old directory onto the stack on `cd`. -- `PUSHD_IGNORE_DUPS` does not store duplicates in the stack. -- `PUSHD_SILENT` does not print the directory stack after `pushd` or `popd`. -- `PUSHD_TO_HOME` pushes to the home directory when no argument is given. -- `CDABLE_VARS` changes directory to a path stored in a variable. -- `MULTIOS` writes to multiple descriptors. -- `EXTENDED_GLOB` uses extended globbing syntax. -- `CLOBBER` does not overwrite existing files with `>` and `>>`. Use `>!` and - `>>!` to bypass. - -## Aliases - -- `d` prints the contents of the directory stack. -- `1 ... 9` changes the directory to the **n** previous one. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][1]._ - -- [James Cox](https://github.com/imajes) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/directory/init.zsh b/.zprezto/modules/directory/init.zsh deleted file mode 100644 index 8abc1e2..0000000 --- a/.zprezto/modules/directory/init.zsh +++ /dev/null @@ -1,29 +0,0 @@ -# -# Sets directory options and defines directory aliases. -# -# Authors: -# James Cox -# Sorin Ionescu -# - -# -# Options -# - -setopt AUTO_CD # Auto changes to a directory without typing cd. -setopt AUTO_PUSHD # Push the old directory onto the stack on cd. -setopt PUSHD_IGNORE_DUPS # Do not store duplicates in the stack. -setopt PUSHD_SILENT # Do not print the directory stack after pushd or popd. -setopt PUSHD_TO_HOME # Push to home directory when no argument is given. -setopt CDABLE_VARS # Change directory to a path stored in a variable. -setopt MULTIOS # Write to multiple descriptors. -setopt EXTENDED_GLOB # Use extended globbing syntax. -unsetopt CLOBBER # Do not overwrite existing files with > and >>. - # Use >! and >>! to bypass. - -# -# Aliases -# - -alias d='dirs -v' -for index ({1..9}) alias "$index"="cd +${index}"; unset index diff --git a/.zprezto/modules/dnf/README.md b/.zprezto/modules/dnf/README.md deleted file mode 100644 index 91a35e8..0000000 --- a/.zprezto/modules/dnf/README.md +++ /dev/null @@ -1,25 +0,0 @@ -# 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` upgrades 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 diff --git a/.zprezto/modules/dnf/init.zsh b/.zprezto/modules/dnf/init.zsh deleted file mode 100644 index 7a40142..0000000 --- a/.zprezto/modules/dnf/init.zsh +++ /dev/null @@ -1,28 +0,0 @@ -# -# Defines dnf aliases. -# -# Authors: -# FireWave -# Sorin Ionescu -# - -# 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. - diff --git a/.zprezto/modules/docker/README.md b/.zprezto/modules/docker/README.md deleted file mode 100644 index f193dc6..0000000 --- a/.zprezto/modules/docker/README.md +++ /dev/null @@ -1,196 +0,0 @@ -# Docker - -Defines [Docker][1] aliases and functions. - -## Aliases - -### Docker - -- `dk` is short for `docker` -- `dka` Attach to a running container -- `dkb` Build an image from a Dockerfile -- `dkd` Inspect changes on a container's filesystem -- `dkdf` Show docker filesystem usage -- `dke` Run a command in a running container -- `dkE` Run an interactive command in a running container -- `dkh` Show the history of an image -- `dki` List images -- `dkin` Return low-level information on a container, image or task -- `dkk` Kill a running container -- `dkl` Fetch the logs of a container -- `dkli` Log in to a Docker registry -- `dklo` Log out from a Docker registry -- `dkls` is alias for `dkps` -- `dkp` Pause all processes within one or more containers -- `dkP` Unpause all processes within one or more containers -- `dkpl` Pull an image or a repository from a registry -- `dkph` Push an image or a repository to a registry -- `dkps` List containers -- `dkpsa` List all containers (default lists just running) -- `dkr` Run a command in a new container -- `dkR` Run an interactive command in a new container and automatically remove - the container when it exits -- `dkRe` like `dkR` and set entry point to `/bin/bash` -- `dkrm` Remove one or more containers -- `dkrmi` Remove one or more images -- `dkrmC` Clean up exited containers -- `dkrmI` Clean up dangling images -- `dkrmV` Clean up unused volumes ( Docker >= 1.9 ) -- `dkrn` Rename a container -- `dks` Start one or more stopped containers -- `dkS` Restart a container -- `dkss` Display a live stream of container(s) resource usage statistics -- `dksv` Save one or more images to a tar archive (streamed to STDOUT by - default) -- `dkt` Tag an image into a repository -- `dktop` Display the running processes of a container -- `dkup` Update configuration of one or more containers -- `dkV` Manage Docker volumes -- `dkv` Show the Docker version information -- `dkw` Block until a container stops, then print its exit code -- `dkx` Stop a running container - -#### container (C) - -- `dkC` Manage containers -- `dkCa` Attach to a running container -- `dkCcp` Copy files/folders between a container and the local filesystem -- `dkCd` Inspect changes on a container's filesystem -- `dkCe` Run a command in a running container -- `dkCin` Display detailed information on one or more containers -- `dkCk` Kill one or more running containers -- `dkCl` Fetch the logs of a container -- `dkCls` List containers -- `dkCp` Pause all processes within one or more containers -- `dkCpr` Remove all stopped containers -- `dkCrn` Rename a container -- `dkCS` Restart one or more containers -- `dkCrm` Remove one or more containers -- `dkCr` Run a command in a new container -- `dkCR` Run an interactive command in a new container and automatically remove - the container when it exits -- `dkCRe` like `dkCR` and set entry point to `/bin/bash` -- `dkCs` Start one or more stopped containers -- `dkCss` Display a live stream of container(s) resource usage statistics -- `dkCx` Stop one or more running containers -- `dkCtop` Display the running processes of a container -- `dkCP` Unpause all processes within one or more containers -- `dkCup` Update configuration of one or more containers -- `dkCw` Block until one or more containers stop, then print their exit codes - -#### image (I) - -- `dkI` Manage images -- `dkIb` Build an image from a Dockerfile -- `dkIh` Show the history of an image -- `dkIim` Import the contents from a tarball to create a filesystem image -- `dkIin` Display detailed information on one or more images -- `dkIls` List images -- `dkIpr` Remove unused images -- `dkIpl` Pull an image or a repository from a registry -- `dkIph` Push an image or a repository to a registry -- `dkIrm` Remove one or more images -- `dkIsv` Save one or more images to a tar archive (streamed to STDOUT by - default) -- `dkIt` Tag an image into a repository - -#### volume (V) - -- `dkV` Manage volumes -- `dkVin` Display detailed information on one or more volumes -- `dkVls` List volumes -- `dkVpr` Remove all unused volumes -- `dkVrm` Remove one or more volumes - -#### network (N) - -- `dkN` Manage networks -- `dkNs` Connect a container to a network -- `dkNx` Disconnects a container from a network -- `dkNin` Displays detailed information on a network -- `dkNls` Lists all the networks created by the user -- `dkNpr` Remove all unused networks -- `dkNrm` Deletes one or more networks - -#### system (Y) - -- `dkY` Manage Docker -- `dkYdf` Show docker filesystem usage -- `dkYpr` Remove unused data - -#### stack (K) - -- `dkK` Manage Docker stacks -- `dkKls` List stacks -- `dkKps` List the tasks in the stack -- `dkKrm` Remove the stack - -#### swarm (W) - -- `dkW` Manage Docker Swarm - -### Docker Machine - -- `dkm` is short for `docker-machine` -- `dkma` Get or set the active machine -- `dkmcp` Copy files between machines -- `dkmd` Set up the default machine ; alowing you to use `dkme` without - arguments -- `dkme` Set up the environment for the Docker client (eg: `dkme staging` to - toggle to staging) -- `dkmin` Inspect information about a machine -- `dkmip` Get the IP address of a machine -- `dkmk` Kill a machine -- `dkmls` List machines -- `dkmpr` Re-provision existing machines -- `dkmps` is alias for `dkmls` -- `dkmrg` Regenerate TLS Certificates for a machine -- `dkmrm` Remove a machine -- `dkms` Start a machine -- `dkmsh` Log into or run a command on a machine with SSH -- `dkmst` Get the status of a machine -- `dkmS` Restart a machine -- `dkmu` Get the URL of a machine -- `dkmup` Upgrade a machine to the latest version of Docker -- `dkmV` Show the Docker Machine version or a machine docker version -- `dkmx` Stop a machine - -### Docker Compose - -- `dkc` is short for `docker-compose` -- `dkcb` Build or rebuild services -- `dkcB` Build or rebuild services and do not use cache when building the image -- `dkcd` Stop and remove containers, networks, images, and volumes -- `dkce` Execute a command in a running container -- `dkck` Kill containers -- `dkcl` View output from containers -- `dkcls` is alias for `dkcps` -- `dkcp` Pause services -- `dkcP` Unpause services -- `dkcpl` Pull service images -- `dkcph` Push service images -- `dkcps` List containers -- `dkcr` Run a one-off command -- `dkcR` Run a one-off command and remove container after run. -- `dkcrm` Remove stopped containers -- `dkcs` Start services -- `dkcsc` Set number of containers for a service -- `dkcS` Restart services -- `dkcu` Create and start containers -- `dkcU` Create and start containers in detached mode: Run containers in the - background, print new container names -- `dkcV` Show the Docker-Compose version information -- `dkcx` Stop services - -## Support - -If you're having problems, use the [Prezto issue tracker][2]. - -## Acknowledgements - -This module is a copy of [akarzim/zsh-docker-aliases][3] by [François Vantomme][4] (MIT License). - -[1]: https://www.docker.com/ -[2]: https://github.com/zsh-users/prezto/issues -[3]: https://github.com/akarzim/zsh-docker-aliases -[4]: https://github.com/akarzim diff --git a/.zprezto/modules/docker/alias.zsh b/.zprezto/modules/docker/alias.zsh deleted file mode 100644 index cdd9f7c..0000000 --- a/.zprezto/modules/docker/alias.zsh +++ /dev/null @@ -1,177 +0,0 @@ -# -# Defines Docker aliases. -# -# Author: -# François Vantomme -# - -# -# Aliases -# - -# Docker -alias dk='docker' -alias dka='docker attach' -alias dkb='docker build' -alias dkd='docker diff' -alias dkdf='docker system df' -alias dke='docker exec' -alias dkE='docker exec -it' -alias dkh='docker history' -alias dki='docker images' -alias dkin='docker inspect' -alias dkim='docker import' -alias dkk='docker kill' -alias dkl='docker logs' -alias dkli='docker login' -alias dklo='docker logout' -alias dkls='docker ps' -alias dkp='docker pause' -alias dkP='docker unpause' -alias dkpl='docker pull' -alias dkph='docker push' -alias dkps='docker ps' -alias dkpsa='docker ps -a' -alias dkr='docker run' -alias dkR='docker run -it --rm' -alias dkRe='docker run -it --rm --entrypoint /bin/bash' -alias dkRM='docker system prune' -alias dkrm='docker rm' -alias dkrmi='docker rmi' -alias dkrn='docker rename' -alias dks='docker start' -alias dkS='docker restart' -alias dkss='docker stats' -alias dksv='docker save' -alias dkt='docker tag' -alias dktop='docker top' -alias dkup='docker update' -alias dkV='docker volume' -alias dkv='docker version' -alias dkw='docker wait' -alias dkx='docker stop' - -## Container (C) -alias dkC='docker container' -alias dkCa='docker container attach' -alias dkCcp='docker container cp' -alias dkCd='docker container diff' -alias dkCe='docker container exec' -alias dkCin='docker container inspect' -alias dkCk='docker container kill' -alias dkCl='docker container logs' -alias dkCls='docker container ls' -alias dkCp='docker container pause' -alias dkCpr='docker container prune' -alias dkCrn='docker container rename' -alias dkCS='docker container restart' -alias dkCrm='docker container rm' -alias dkCr='docker container run' -alias dkCR='docker container run -it --rm' -alias dkCRe='docker container run -it --rm --entrypoint /bin/bash' -alias dkCs='docker container start' -alias dkCss='docker container stats' -alias dkCx='docker container stop' -alias dkCtop='docker container top' -alias dkCP='docker container unpause' -alias dkCup='docker container update' -alias dkCw='docker container wait' - -## Image (I) -alias dkI='docker image' -alias dkIb='docker image build' -alias dkIh='docker image history' -alias dkIim='docker image import' -alias dkIin='docker image inspect' -alias dkIls='docker image ls' -alias dkIpr='docker image prune' -alias dkIpl='docker image pull' -alias dkIph='docker image push' -alias dkIrm='docker image rm' -alias dkIsv='docker image save' -alias dkIt='docker image tag' - -## Volume (V) -alias dkV='docker volume' -alias dkVin='docker volume inspect' -alias dkVls='docker volume ls' -alias dkVpr='docker volume prune' -alias dkVrm='docker volume rm' - -## Network (N) -alias dkN='docker network' -alias dkNs='docker network connect' -alias dkNx='docker network disconnect' -alias dkNin='docker network inspect' -alias dkNls='docker network ls' -alias dkNpr='docker network prune' -alias dkNrm='docker network rm' - -## System (Y) -alias dkY='docker system' -alias dkYdf='docker system df' -alias dkYpr='docker system prune' - -## Stack (K) -alias dkK='docker stack' -alias dkKls='docker stack ls' -alias dkKps='docker stack ps' -alias dkKrm='docker stack rm' - -## Swarm (W) -alias dkW='docker swarm' - -## CleanUp (rm) -# Clean up exited containers (docker < 1.13) -alias dkrmC='docker rm $(docker ps -qaf status=exited)' -# Clean up dangling images (docker < 1.13) -alias dkrmI='docker rmi $(docker images -qf dangling=true)' -# Clean up dangling volumes (docker < 1.13) -alias dkrmV='docker volume rm $(docker volume ls -qf dangling=true)' - - -# Docker Machine (m) -alias dkm='docker-machine' -alias dkma='docker-machine active' -alias dkmcp='docker-machine scp' -alias dkmin='docker-machine inspect' -alias dkmip='docker-machine ip' -alias dkmk='docker-machine kill' -alias dkmls='docker-machine ls' -alias dkmpr='docker-machine provision' -alias dkmps='docker-machine ps' -alias dkmrg='docker-machine regenerate-certs' -alias dkmrm='docker-machine rm' -alias dkms='docker-machine start' -alias dkmsh='docker-machine ssh' -alias dkmst='docker-machine status' -alias dkmS='docker-machine restart' -alias dkmu='docker-machine url' -alias dkmup='docker-machine upgrade' -alias dkmv='docker-machine version' -alias dkmx='docker-machine stop' - -# Docker Compose (c) -alias dkc='docker-compose' -alias dkcb='docker-compose build' -alias dkcB='docker-compose build --no-cache' -alias dkcd='docker-compose down' -alias dkce='docker-compose exec' -alias dkck='docker-compose kill' -alias dkcl='docker-compose logs' -alias dkcls='docker-compose ps' -alias dkcp='docker-compose pause' -alias dkcP='docker-compose unpause' -alias dkcpl='docker-compose pull' -alias dkcph='docker-compose push' -alias dkcps='docker-compose ps' -alias dkcr='docker-compose run' -alias dkcR='docker-compose run --rm' -alias dkcrm='docker-compose rm' -alias dkcs='docker-compose start' -alias dkcsc='docker-compose scale' -alias dkcS='docker-compose restart' -alias dkcu='docker-compose up' -alias dkcU='docker-compose up -d' -alias dkcv='docker-compose version' -alias dkcx='docker-compose stop' diff --git a/.zprezto/modules/docker/init.zsh b/.zprezto/modules/docker/init.zsh deleted file mode 100644 index 8ad6bfd..0000000 --- a/.zprezto/modules/docker/init.zsh +++ /dev/null @@ -1,57 +0,0 @@ -# -# Defines Docker aliases. -# -# Author: -# François Vantomme -# - -# Return if requirements are not found. -if (( ! $+commands[docker] )); then - return 1 -fi - -# -# Functions -# - -# Set Docker Machine environment -function dkme { - if (( ! $+commands[docker-machine] )); then - return 1 - fi - - eval $(docker-machine env $1) -} - -# Set Docker Machine default machine -function dkmd { - if (( ! $+commands[docker-machine] )); then - return 1 - fi - - pushd ~/.docker/machine/machines - - if [[ ! -d $1 ]]; then - echo "Docker machine '$1' does not exists. Abort." - popd - return 1 - fi - - if [[ -L default ]]; then - eval $(rm -f default) - elif [[ -d default ]]; then - echo "A default machine already exists. Abort." - popd - return 1 - elif [[ -e default ]]; then - echo "A file named 'default' already exists. Abort." - popd - return 1 - fi - - eval $(ln -s $1 default) - popd -} - -# Source module files. -source "${0:h}/alias.zsh" diff --git a/.zprezto/modules/dpkg/README.md b/.zprezto/modules/dpkg/README.md deleted file mode 100644 index 4df9230..0000000 --- a/.zprezto/modules/dpkg/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# Dpkg - -Defines [_dpkg_][1] aliases and functions. - -## Aliases - -- `debc` cleans the cache. -- `debf` displays a file's package. -- `debi` installs packages from repositories. -- `debI` installs packages from files. -- `debq` displays package information. -- `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-kclean` removes all kernel images and headers, except for the ones in - use. - -## Functions - -- `deb-clone` generates a script that can be used to duplicate a `dpkg`-based - system. -- `deb-history` displays `dpkg` history. -- `deb-kbuild` makes a `dpkg` Linux kernel package. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Daniel Bolton](https://github.com/dbb) -- [Benjamin Boudreau](https://github.com/dreur) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://wiki.debian.org/Teams/Dpkg -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/dpkg/functions/deb-clone b/.zprezto/modules/dpkg/functions/deb-clone deleted file mode 100644 index a767bd3..0000000 --- a/.zprezto/modules/dpkg/functions/deb-clone +++ /dev/null @@ -1,29 +0,0 @@ -# -# Generates a script that can be used to duplicate a dpkg-based system. -# -# Authors: -# Daniel Bolton -# Sorin Ionescu -# - -# function deb-clone { - -local clone_script="${0}.sh" -local package_list=$( - perl \ - -m 'AptPkg::Cache' \ - -e ' - $c=AptPkg::Cache->new; - for (keys %$c) { - push @a, $_ if $c->{$_}->{'CurrentState'} eq 'Installed'; - } - print "$_ " for sort @a; - ' -) - -rm "$clone_script" -print '#!/bin/sh\n' > "$clone_script" -print "aptitude install ${package_list}\n" >> "$clone_script" -chmod +x "$clone_script" - -# } diff --git a/.zprezto/modules/dpkg/functions/deb-history b/.zprezto/modules/dpkg/functions/deb-history deleted file mode 100644 index a1369de..0000000 --- a/.zprezto/modules/dpkg/functions/deb-history +++ /dev/null @@ -1,40 +0,0 @@ -# -# Displays dpkg history. -# -# Authors: -# Peter Leung -# Benjamin Boudreau -# Sorin Ionescu -# - -# function deb-history { - -case "$1" in - (install) - zgrep --no-filename 'install ' $(ls -rt /var/log/dpkg*) - ;; - (upgrade|remove) - zgrep --no-filename "$1" $(ls -rt /var/log/dpkg*) - ;; - (rollback) - zgrep --no-filename upgrade $(ls -rt /var/log/dpkg*) \ - | grep "$2" -A10000000 \ - | grep "$3" -B10000000 \ - | awk '{print $4"="$5}' - ;; - (list) - zcat $(ls -rt /var/log/dpkg*) - ;; - (*) - cat >&2 < -# Sorin Ionescu -# - -# function deb-kbuild { - -make-kpkg clean -MAKEFLAGS='' time fakeroot make-kpkg \ - --append-to-version '-custom' \ - --revision "$(date +"%Y%m%d")" \ - kernel_image \ - kernel_headers - -# } diff --git a/.zprezto/modules/dpkg/init.zsh b/.zprezto/modules/dpkg/init.zsh deleted file mode 100644 index 69d524f..0000000 --- a/.zprezto/modules/dpkg/init.zsh +++ /dev/null @@ -1,57 +0,0 @@ -# -# Defines dpkg aliases. -# -# Authors: -# Daniel Bolton -# Benjamin Boudreau -# Sorin Ionescu -# - -# Return if requirements are not found. -if (( ! $+commands[dpkg] && ! $+commands[apt-get] )); then - return 1 -fi - -# -# Aliases -# - -# Cleans the cache. -alias debc='sudo apt-get clean && sudo apt-get autoclean' - -# Displays a file's package. -alias debf='apt-file search --regexp' - -# Installs packages from repositories. -alias debi='sudo apt-get install' - -# Installs packages from files. -alias debI='sudo dpkg -i' - -# Displays package information. -alias debq='apt-cache show' - -# Updates the package lists. -alias debu='sudo apt-get update' - -# Upgrades outdated packages. -alias debU='sudo apt-get update && sudo apt-get dist-upgrade' - -# Removes packages. -alias debx='sudo apt-get remove' - -# Removes packages, their configuration, and unneeded dependencies. -alias debX='sudo apt-get remove --purge && sudo apt-get autoremove --purge' - -# Searches for packages. -if (( $+commands[aptitude] )); then - alias debs='aptitude -F "* %p -> %d \n(%v/%V)" --no-gui --disable-columns search' -else - alias debs='apt-cache search' -fi - -# 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)))"' diff --git a/.zprezto/modules/editor/README.md b/.zprezto/modules/editor/README.md deleted file mode 100644 index 9aef6ef..0000000 --- a/.zprezto/modules/editor/README.md +++ /dev/null @@ -1,102 +0,0 @@ -# Editor - -Sets editor specific key bindings options and variables. - -## Options - -- `BEEP` beep on error in line editor. - -## Variables - -- `WORDCHARS` treat a given set of characters as part of a word. - -## Settings - -### Key bindings - -To enable key bindings, add the following to _`${ZDOTDIR:-$HOME}/.zpreztorc`_, -and replace `''` with `'emacs'` or `'vi'`. - -```sh -zstyle ':prezto:module:editor' key-bindings '' -``` - -### Dot Expansion - -To enable the auto conversion of .... to ../.., add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_. - -```sh -zstyle ':prezto:module:editor' dot-expansion 'yes' -``` - -### PS Context - -To enable the prompt context to be set, add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_. - -```sh -zstyle ':prezto:module:editor' ps-context 'yes' -``` - -## Theming - -To indicate when the editor is in the primary keymap (emacs or viins), add -the following to your `theme_prompt_setup` function. - -```sh -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. - -```sh -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. - -```sh -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. - -```sh -zstyle ':prezto:module:editor:info:keymap:alternate' format '<<<' -``` - -To indicate when the editor is completing, add the following to your -`theme_prompt_setup` function. - -```sh -zstyle ':prezto:module:editor:info:completing' format '...' -``` - -Then add `$editor_info[context]`, where context is _keymap_, _insert_, or -_overwrite_, to `$PROMPT` or `$RPROMPT`. - -## Convenience Functions - -### bindkey-all - -Provides a function `bindkey-all` which can be useful for checking how all of -the keys are bound. Normal `bindkey` command will only list the keys bound for -one keymap, which is not as useful if you want to grep through the output. The -keymap's names go to stderr so when you grep through `bindkey-all`'s output you -will still see the headings and can tell which keymap each binding goes to. - -It will also pass through arguments so you can use bindkey-all to set bindings -for all keymaps at once. If provided arguments it will _not_ print out the -names of each of the keymaps, and just run the command for each keymap. - -## 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/prezto/issues diff --git a/.zprezto/modules/editor/init.zsh b/.zprezto/modules/editor/init.zsh deleted file mode 100644 index 5b411f5..0000000 --- a/.zprezto/modules/editor/init.zsh +++ /dev/null @@ -1,456 +0,0 @@ -# -# Sets key bindings. -# -# Authors: -# Sorin Ionescu -# - -# Return if requirements are not found. -if [[ "$TERM" == 'dumb' ]]; then - return 1 -fi - -# -# Options -# - -setopt BEEP # Beep on error in line editor. - -# -# 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' - 'ControlPageUp' '\e[5;5~' - 'ControlPageDown' '\e[6;5~' - '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]='�' - fi -done - -# -# External Editor -# - -# Allow command line editing in an external editor. -autoload -Uz edit-command-line -zle -N edit-command-line - -# -# Functions -# -# Runs bindkey but for all of the keymaps. Running it with no arguments will -# print out the mappings for all of the keymaps. -function bindkey-all { - local keymap='' - for keymap in $(bindkey -l); do - [[ "$#" -eq 0 ]] && printf "#### %s\n" "${keymap}" 1>&2 - bindkey -M "${keymap}" "$@" - done -} -# Exposes information about the Zsh Line Editor via the $editor_info associative -# array. -function editor-info { - # Ensure that we're going to set the editor-info for prompts that - # are prezto managed and/or compatible. - if zstyle -t ':prezto:module:prompt' managed; then - # Clean up previous $editor_info. - unset editor_info - typeset -gA editor_info - - if [[ "$KEYMAP" == 'vicmd' ]]; then - zstyle -s ':prezto:module:editor:info:keymap:alternate' format 'REPLY' - editor_info[keymap]="$REPLY" - else - zstyle -s ':prezto:module:editor:info:keymap:primary' format 'REPLY' - editor_info[keymap]="$REPLY" - - if [[ "$ZLE_STATE" == *overwrite* ]]; then - zstyle -s ':prezto:module:editor:info:keymap:primary:overwrite' format 'REPLY' - editor_info[overwrite]="$REPLY" - else - zstyle -s ':prezto:module:editor:info:keymap:primary:insert' format 'REPLY' - editor_info[overwrite]="$REPLY" - fi - fi - - unset REPLY - zle zle-reset-prompt - fi -} -zle -N editor-info - -# Reset the prompt based on the current context and -# the ps-context option. -function zle-reset-prompt { - if zstyle -t ':prezto:module:editor' ps-context; then - # If we aren't within one of the specified contexts, then we want to reset - # the prompt with the appropriate editor_info[keymap] if there is one. - if [[ $CONTEXT != (select|cont) ]]; then - zle reset-prompt - zle -R - fi - else - zle reset-prompt - zle -R - fi -} -zle -N zle-reset-prompt - -# 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] )); 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 - zle editor-info -} -zle -N overwrite-mode - -# Enters vi insert mode and updates editor information. -function vi-insert { - zle .vi-insert - zle editor-info -} -zle -N vi-insert - -# Moves to the first non-blank character then enters vi insert mode and updates -# editor information. -function vi-insert-bol { - zle .vi-insert-bol - zle editor-info -} -zle -N vi-insert-bol - -# Enters vi replace mode and updates editor information. -function vi-replace { - zle .vi-replace - zle editor-info -} -zle -N vi-replace - -# Expands .... to ../.. -function expand-dot-to-parent-directory-path { - if [[ $LBUFFER = *.. ]]; then - LBUFFER+='/..' - else - LBUFFER+='.' - fi -} -zle -N expand-dot-to-parent-directory-path - -# Displays an indicator when completing. -function expand-or-complete-with-indicator { - local indicator - zstyle -s ':prezto:module:editor:info:completing' format 'indicator' - - # This is included to work around a bug in zsh which shows up when interacting - # with multi-line prompts. - if [[ -z "$indicator" ]]; then - zle expand-or-complete - return - fi - - print -Pn "$indicator" - zle expand-or-complete - zle redisplay -} -zle -N expand-or-complete-with-indicator - -# Inserts 'sudo ' at the beginning of the line. -function prepend-sudo { - if [[ "$BUFFER" != su(do|)\ * ]]; then - BUFFER="sudo $BUFFER" - (( CURSOR += 5 )) - fi -} -zle -N prepend-sudo - -# Expand aliases -function glob-alias { - zle _expand_alias - zle expand-word - zle magic-space -} -zle -N glob-alias - -# Toggle the comment character at the start of the line. This is meant to work -# around a buggy implementation of pound-insert in zsh. -# -# This is currently only used for the emacs keys because vi-pound-insert has -# been reported to work properly. -function pound-toggle { - if [[ "$BUFFER" = '#'* ]]; then - # Because of an oddity in how zsh handles the cursor when the buffer size - # changes, we need to make this check before we modify the buffer and let - # zsh handle moving the cursor back if it's past the end of the line. - if [[ $CURSOR != $#BUFFER ]]; then - (( CURSOR -= 1 )) - fi - BUFFER="${BUFFER:1}" - else - BUFFER="#$BUFFER" - (( CURSOR += 1 )) - fi -} -zle -N pound-toggle - -# Reset to default key bindings. -bindkey -d - -# -# Emacs Key Bindings -# - -for key in "$key_info[Escape]"{B,b} "${(s: :)key_info[ControlLeft]}" \ - "${key_info[Escape]}${key_info[Left]}" - bindkey -M emacs "$key" emacs-backward-word -for key in "$key_info[Escape]"{F,f} "${(s: :)key_info[ControlRight]}" \ - "${key_info[Escape]}${key_info[Right]}" - bindkey -M emacs "$key" emacs-forward-word - -# Kill to the beginning of the line. -for key in "$key_info[Escape]"{K,k} - bindkey -M emacs "$key" backward-kill-line - -# Redo. -bindkey -M emacs "$key_info[Escape]_" redo - -# Search previous character. -bindkey -M emacs "$key_info[Control]X$key_info[Control]B" vi-find-prev-char - -# Match bracket. -bindkey -M emacs "$key_info[Control]X$key_info[Control]]" vi-match-bracket - -# Edit command in an external editor. -bindkey -M emacs "$key_info[Control]X$key_info[Control]E" edit-command-line - -if (( $+widgets[history-incremental-pattern-search-backward] )); then - bindkey -M emacs "$key_info[Control]R" \ - history-incremental-pattern-search-backward - bindkey -M emacs "$key_info[Control]S" \ - history-incremental-pattern-search-forward -fi - -# Toggle comment at the start of the line. Note that we use pound-toggle which -# is similar to pount insert, but meant to work around some issues that were -# being seen in iTerm. -bindkey -M emacs "$key_info[Escape];" pound-toggle - - -# -# Vi Key Bindings -# - -# Edit command in an external editor emacs style (v is used for visual mode) -bindkey -M vicmd "$key_info[Control]X$key_info[Control]E" edit-command-line - -# Undo/Redo -bindkey -M vicmd "u" undo -bindkey -M viins "$key_info[Control]_" undo -bindkey -M vicmd "$key_info[Control]R" redo - -if (( $+widgets[history-incremental-pattern-search-backward] )); then - bindkey -M vicmd "?" history-incremental-pattern-search-backward - bindkey -M vicmd "/" history-incremental-pattern-search-forward -else - bindkey -M vicmd "?" history-incremental-search-backward - bindkey -M vicmd "/" history-incremental-search-forward -fi - -# Toggle comment at the start of the line. -bindkey -M vicmd "#" vi-pound-insert - -# -# Emacs and Vi Key Bindings -# - -# Unbound keys in vicmd and viins mode will cause really odd things to happen -# such as the casing of all the characters you have typed changing or other -# undefined things. In emacs mode they just insert a tilde, but bind these keys -# in the main keymap to a noop op so if there is no keybind in the users mode -# it will fall back and do nothing. -function _prezto-zle-noop { ; } -zle -N _prezto-zle-noop -local -a unbound_keys -unbound_keys=( - "${key_info[F1]}" - "${key_info[F2]}" - "${key_info[F3]}" - "${key_info[F4]}" - "${key_info[F5]}" - "${key_info[F6]}" - "${key_info[F7]}" - "${key_info[F8]}" - "${key_info[F9]}" - "${key_info[F10]}" - "${key_info[F11]}" - "${key_info[F12]}" - "${key_info[PageUp]}" - "${key_info[PageDown]}" - "${key_info[ControlPageUp]}" - "${key_info[ControlPageDown]}" -) -for keymap in $unbound_keys; do - bindkey -M viins "${keymap}" _prezto-zle-noop - bindkey -M vicmd "${keymap}" _prezto-zle-noop -done - -# Keybinds for all keymaps -for keymap in 'emacs' 'viins' 'vicmd'; do - bindkey -M "$keymap" "$key_info[Home]" beginning-of-line - bindkey -M "$keymap" "$key_info[End]" end-of-line -done - -# Keybinds for all vi keymaps -for keymap in viins vicmd; do - # Ctrl + Left and Ctrl + Right bindings to forward/backward word - for key in "${(s: :)key_info[ControlLeft]}" - bindkey -M "$keymap" "$key" vi-backward-word - for key in "${(s: :)key_info[ControlRight]}" - bindkey -M "$keymap" "$key" vi-forward-word -done - -# Keybinds for emacs and vi insert mode -for keymap in 'emacs' 'viins'; do - bindkey -M "$keymap" "$key_info[Insert]" overwrite-mode - bindkey -M "$keymap" "$key_info[Delete]" delete-char - bindkey -M "$keymap" "$key_info[Backspace]" backward-delete-char - - bindkey -M "$keymap" "$key_info[Left]" backward-char - bindkey -M "$keymap" "$key_info[Right]" forward-char - - # Expand history on space. - bindkey -M "$keymap" ' ' magic-space - - # Clear screen. - bindkey -M "$keymap" "$key_info[Control]L" clear-screen - - # Expand command name to full path. - for key in "$key_info[Escape]"{E,e} - bindkey -M "$keymap" "$key" expand-cmd-path - - # Duplicate the previous word. - for key in "$key_info[Escape]"{M,m} - bindkey -M "$keymap" "$key" copy-prev-shell-word - - # Use a more flexible push-line. - for key in "$key_info[Control]Q" "$key_info[Escape]"{q,Q} - bindkey -M "$keymap" "$key" push-line-or-edit - - # Bind Shift + Tab to go to the previous menu item. - bindkey -M "$keymap" "$key_info[BackTab]" reverse-menu-complete - - # Complete in the middle of word. - bindkey -M "$keymap" "$key_info[Control]I" expand-or-complete - - # Expand .... to ../.. - if zstyle -t ':prezto:module:editor' dot-expansion; then - bindkey -M "$keymap" "." expand-dot-to-parent-directory-path - fi - - # Display an indicator when completing. - bindkey -M "$keymap" "$key_info[Control]I" \ - expand-or-complete-with-indicator - - # Insert 'sudo ' at the beginning of the line. - bindkey -M "$keymap" "$key_info[Control]X$key_info[Control]S" prepend-sudo - - # control-space expands all aliases, including global - bindkey -M "$keymap" "$key_info[Control] " glob-alias -done - -# Delete key deletes character in vimcmd cmd mode instead of weird default functionality -bindkey -M vicmd "$key_info[Delete]" delete-char - -# Do not expand .... to ../.. during incremental search. -if zstyle -t ':prezto:module:editor' dot-expansion; then - bindkey -M isearch . self-insert 2> /dev/null -fi - -# -# Layout -# - -# Set the key layout. -zstyle -s ':prezto:module:editor' key-bindings 'key_bindings' -if [[ "$key_bindings" == (emacs|) ]]; then - bindkey -e -elif [[ "$key_bindings" == vi ]]; then - bindkey -v -else - print "prezto: editor: invalid key bindings: $key_bindings" >&2 -fi - -unset key{,map,_bindings} diff --git a/.zprezto/modules/emacs/README.md b/.zprezto/modules/emacs/README.md deleted file mode 100644 index f93304a..0000000 --- a/.zprezto/modules/emacs/README.md +++ /dev/null @@ -1,29 +0,0 @@ -# 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 diff --git a/.zprezto/modules/emacs/init.zsh b/.zprezto/modules/emacs/init.zsh deleted file mode 100644 index 3acc965..0000000 --- a/.zprezto/modules/emacs/init.zsh +++ /dev/null @@ -1,25 +0,0 @@ -# -# Configures Emacs dependency management. -# -# Authors: Sebastian Wiesner -# - -# 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' diff --git a/.zprezto/modules/environment/README.md b/.zprezto/modules/environment/README.md deleted file mode 100644 index 5243f26..0000000 --- a/.zprezto/modules/environment/README.md +++ /dev/null @@ -1,52 +0,0 @@ -# Environment - -Sets general shell options and defines environment variables. - -This module must be loaded first. - -## Contributors - -This module **MUST NOT** rely on any command that is not built in Zsh. - -Non-interactive environment variables should be defined in -[_`${ZDOTDIR:-$HOME}/.zshenv`_][1]. - -## Options - -### General - -- `COMBINING_CHARS` combine zero-length punctuation characters (accents) with - the base character. -- `INTERACTIVE_COMMENTS` enable comments in interactive shell. -- `RC_QUOTES` allow 'Henry''s Garage' instead of 'Henry'\''s Garage'. -- `MAIL_WARNING` don't print a warning message if a mail file has been accessed. - -### Jobs - -- `LONG_LIST_JOBS` list jobs in the long format by default. -- `AUTO_RESUME` attempt to resume existing job before creating a new process. -- `NOTIFY` report status of background jobs immediately. -- `BG_NICE` don't run all background jobs at a lower priority. -- `HUP` don't kill jobs on shell exit. -- `CHECK_JOBS` don't report on jobs when shell exit. - -## Variables - -### Termcap - -- `LESS_TERMCAP_mb` begins blinking. -- `LESS_TERMCAP_md` begins bold. -- `LESS_TERMCAP_me` ends mode. -- `LESS_TERMCAP_se` ends standout-mode. -- `LESS_TERMCAP_so` begins standout-mode. -- `LESS_TERMCAP_ue` ends underline. -- `LESS_TERMCAP_us` begins underline. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: ../../runcoms#zshenv -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/environment/init.zsh b/.zprezto/modules/environment/init.zsh deleted file mode 100644 index 3011f59..0000000 --- a/.zprezto/modules/environment/init.zsh +++ /dev/null @@ -1,65 +0,0 @@ -# -# Sets general shell options and defines environment variables. -# -# Authors: -# Sorin Ionescu -# - -# -# Smart URLs -# - -# This logic comes from an old version of zim. Essentially, bracketed-paste was -# added as a requirement of url-quote-magic in 5.1, but in 5.1.1 bracketed -# paste had a regression. Additionally, 5.2 added bracketed-paste-url-magic -# which is generally better than url-quote-magic so we load that when possible. -autoload -Uz is-at-least -if [[ ${ZSH_VERSION} != 5.1.1 && ${TERM} != "dumb" ]]; then - if is-at-least 5.2; then - autoload -Uz bracketed-paste-url-magic - zle -N bracketed-paste bracketed-paste-url-magic - elif is-at-least 5.1; then - autoload -Uz bracketed-paste-magic - zle -N bracketed-paste bracketed-paste-magic - fi - autoload -Uz url-quote-magic - zle -N self-insert url-quote-magic -fi - -# -# General -# - -setopt COMBINING_CHARS # Combine zero-length punctuation characters (accents) - # with the base character. -setopt INTERACTIVE_COMMENTS # Enable comments in interactive shell. -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. - -# Allow mapping Ctrl+S and Ctrl+Q shortcuts -[[ -r ${TTY:-} && -w ${TTY:-} && $+commands[stty] == 1 ]] && stty -ixon <$TTY >$TTY - -# -# Jobs -# - -setopt LONG_LIST_JOBS # List jobs in the long format by default. -setopt AUTO_RESUME # Attempt to resume existing job before creating a new process. -setopt NOTIFY # Report status of background jobs immediately. -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. - -# -# Termcap -# - -if zstyle -t ':prezto:environment:termcap' color; then - export LESS_TERMCAP_mb=$'\E[01;31m' # Begins blinking. - export LESS_TERMCAP_md=$'\E[01;31m' # Begins bold. - export LESS_TERMCAP_me=$'\E[0m' # Ends mode. - export LESS_TERMCAP_se=$'\E[0m' # Ends standout-mode. - export LESS_TERMCAP_so=$'\E[00;47;30m' # Begins standout-mode. - export LESS_TERMCAP_ue=$'\E[0m' # Ends underline. - export LESS_TERMCAP_us=$'\E[01;32m' # Begins underline. -fi diff --git a/.zprezto/modules/fasd/README.md b/.zprezto/modules/fasd/README.md deleted file mode 100644 index 1958a73..0000000 --- a/.zprezto/modules/fasd/README.md +++ /dev/null @@ -1,41 +0,0 @@ -# Fasd - -[Fasd][1] is a command-line productivity booster, inspired by tools like -[autojump][2], [z][3] and [v][4], it offers quick access to files and -directories by keeping track of files and directories that were previously -accessed. - -For shell completion to work, this module must be loaded _after_ the -[_`completion`_][5] module. - -The Prezto Fasd configuration differs from the default. The default aliases have -been disabled. - -## Installation - -`fasd` is bundled with prezto as a git submodule. Alternatively, you can -manually install `fasd`. If a manual installation is found, it will be used -instead of the bundled version. - -## Aliases - -- `j` changes the current working directory interactively. - -## Completion - -Type `,`, `f,`, `d,` in front of a comma-separated query or type `,,`, `,,f`, -`,,d` at the end of a comma-separated query then hit TAB. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][6]._ - -- [Wei Dai](https://github.com/clvv) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://github.com/clvv/fasd -[2]: https://github.com/joelthelion/autojump -[3]: https://github.com/rupa/z -[4]: https://github.com/rupa/v -[5]: ../completion#readme -[6]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/fasd/init.zsh b/.zprezto/modules/fasd/init.zsh deleted file mode 100644 index f948789..0000000 --- a/.zprezto/modules/fasd/init.zsh +++ /dev/null @@ -1,57 +0,0 @@ -# -# Maintains a frequently used file and directory list for fast access. -# -# Authors: -# Wei Dai -# Sorin Ionescu -# - -# Load dependencies. -pmodload 'editor' - -# If the command doesn't exist externally, we need to fall back to the bundled -# submodule. -if (( ! $+commands[fasd] )); then - source "${0:h}/external/fasd" || return 1 -fi - -# -# Initialization -# - -cache_file="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/fasd-cache.zsh" -if [[ "${commands[fasd]}" -nt "$cache_file" \ - || "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" \ - || ! -s "$cache_file" ]]; then - # Set the base init arguments. - init_args=(zsh-hook) - - # Set fasd completion init arguments, if applicable. - if zstyle -t ':prezto:module:completion' loaded; then - init_args+=(zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcomp-install) - fi - - mkdir -p "$cache_file:h" - # Cache init code. - fasd --init "$init_args[@]" >! "$cache_file" 2> /dev/null -fi - -source "$cache_file" - -unset cache_file init_args - -function fasd_cd { - local fasd_ret="$(fasd -d "$@")" - if [[ -d "$fasd_ret" ]]; then - cd "$fasd_ret" - else - print "$fasd_ret" - fi -} - -# -# Aliases -# - -# Changes the current working directory interactively. -alias j='fasd_cd -i' diff --git a/.zprezto/modules/git/README.md b/.zprezto/modules/git/README.md deleted file mode 100644 index fad57a1..0000000 --- a/.zprezto/modules/git/README.md +++ /dev/null @@ -1,464 +0,0 @@ -# Git - -Enhances the [Git][1] distributed version control system by providing aliases, -functions and by exposing repository status information to prompts. - -This module must be loaded _before_ the [_`completion`_][13] module so that the -provided completion definitions are loaded automatically by _`completion`_ -module. - -**Note:** Git **2.11** is the minimum required version for better -[git-rev-list][7] and [git-submodule][14] support. - -## Settings - -### Log - -To configure the format of the [git-log][8] output, add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_, and replace `''` with `'brief'`, -`'oneline'`, and `'medium'`. This will be passed to the `--pretty=format:` -switch. - -```sh -zstyle ':prezto:module:git:log:context' format '' -``` - -### Status - -Retrieving the status of a repository with [git-submodule][9] can take a long -time. To configure the submodules to ignore, add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_, and replace `''` with `'dirty'`, -`'untracked'`, `'all'`, or `'none'`. - -```sh -zstyle ':prezto:module:git:status:ignore' submodules '' -``` - -This setting affects all aliases and functions that call `git-status`. - -## Aliases - -Aliases are enabled by default. To disable them, add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_. - -```sh -zstyle ':prezto:module:git:alias' skip 'yes' -``` - -### Git - -- `g` is short for `git`. - -### Branch (b) - -- `gb` lists, creates, renames, and deletes branches. -- `gbc` creates a new branch. -- `gbl` lists branches and their commits. (also `gbv`) -- `gbL` lists all local and remote branches and their commits. -- `gbr` renames a branch. (also `gbm`) -- `gbR` renames a branch even if the new branch name already exists. (also - `gbM`) -- `gbs` lists branches and their commits with ancestry graphs. -- `gbS` lists local and remote branches and their commits with ancestry graphs. -- `gbV` lists branches with more verbose information about their commits. -- `gbx` deletes a branch. (also `gbd`) -- `gbX` deletes a branch irrespective of its merged status. (also `gbD`) - -### Commit (c) - -- `gc` records changes to the repository. -- `gcS` records changes to the repository. (Signed) -- `gca` stages all modified and deleted files. -- `gcaS` stages all modified and deleted files. (Signed) -- `gcm` records changes to the repository with the given message. -- `gcmS` records changes to the repository with the given message. (Signed) -- `gcam` stages all modified and deleted files, and records changes to the - repository with the given message. -- `gco` checks out a branch or paths to work tree. -- `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_. -- `gcfS` amends the tip of the current branch using the same log message as - _HEAD_. (Signed) -- `gcF` amends the tip of the current branch. -- `gcFS` amends the tip of the current branch. (Signed) -- `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 commits with various objects. -- `gcsS` displays commits with GPG signature. -- `gcl` lists lost commits. -- `gcy` displays commits yet to be applied to upstream in the short format. -- `gcY` displays commits yet to be applied to upstream. - -### Conflict (C) - -- `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 (d) - -- `gd` displays information about files in the index and the work tree. -- `gdc` lists cached files. -- `gdx` lists deleted files. -- `gdm` lists modified files. -- `gdu` lists untracked files. -- `gdk` lists killed files. -- `gdi` lists ignored files. - -### Fetch (f) - -- `gf` downloads objects and references from another repository. -- `gfa` downloads objects and references from all remote repositories. -- `gfc` clones a repository into a new directory. -- `gfcr` clones a repository into a new directory including all submodules. -- `gfm` fetches from and merges with another repository or local branch. -- `gfr` fetches from and rebases on another repository or local branch. - -### Flow (F) - -- `gFi` is short for `git flow init` - -#### Feature (Ff) - -- `gFf` is short for `git flow feature` -- `gFfl` is short for `git flow feature list` -- `gFfs` is short for `git flow feature start` -- `gFff` is short for `git flow feature finish` -- `gFfp` is short for `git flow feature publish` -- `gFft` is short for `git flow feature track` -- `gFfd` is short for `git flow feature diff` -- `gFfr` is short for `git flow feature rebase` -- `gFfc` is short for `git flow feature checkout` -- `gFfm` is short for `git flow feature pull` -- `gFfx` is short for `git flow feature delete` - -#### Bugfix (Fb) - -- `gFb` is short for `git flow bugfix` -- `gFbl` is short for `git flow bugfix list` -- `gFbs` is short for `git flow bugfix start` -- `gFbf` is short for `git flow bugfix finish` -- `gFbp` is short for `git flow bugfix publish` -- `gFbt` is short for `git flow bugfix track` -- `gFbd` is short for `git flow bugfix diff` -- `gFbr` is short for `git flow bugfix rebase` -- `gFbc` is short for `git flow bugfix checkout` -- `gFbm` is short for `git flow bugfix pull` -- `gFbx` is short for `git flow bugfix delete` - -#### Release (Fl) - -- `gFl` is short for `git flow release` -- `gFll` is short for `git flow release list` -- `gFls` is short for `git flow release start` -- `gFlf` is short for `git flow release finish` -- `gFlp` is short for `git flow release publish` -- `gFlt` is short for `git flow release track` -- `gFld` is short for `git flow release diff` -- `gFlr` is short for `git flow release rebase` -- `gFlc` is short for `git flow release checkout` -- `gFlm` is short for `git flow release pull` -- `gFlx` is short for `git flow release delete` - -#### Hotfix (Fh) - -- `gFh` is short for `git flow hotfix` -- `gFhl` is short for `git flow hotfix list` -- `gFhs` is short for `git flow hotfix start` -- `gFhf` is short for `git flow hotfix finish` -- `gFhp` is short for `git flow hotfix publish` -- `gFht` is short for `git flow hotfix track` -- `gFhd` is short for `git flow hotfix diff` -- `gFhr` is short for `git flow hotfix rebase` -- `gFhc` is short for `git flow hotfix checkout` -- `gFhm` is short for `git flow hotfix pull` -- `gFhx` is short for `git flow hotfix delete` - -#### Support (Fs) - -- `gFs` is short for `git flow support` -- `gFsl` is short for `git flow support list` -- `gFss` is short for `git flow support start` -- `gFsf` is short for `git flow support finish` -- `gFsp` is short for `git flow support publish` -- `gFst` is short for `git flow support track` -- `gFsd` is short for `git flow support diff` -- `gFsr` is short for `git flow support rebase` -- `gFsc` is short for `git flow support checkout` -- `gFsm` is short for `git flow support pull` -- `gFsx` is short for `git flow support delete` - -### Grep (g) - -- `gg` displays lines matching a pattern. -- `ggi` displays lines matching a pattern ignoring case. -- `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. - -### Index (i) - -- `gia` adds file contents to the index. -- `giA` adds file contents to the index interactively. -- `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). -- `gii` temporarily ignore differences in a given file. -- `giI` unignore differences in a given file. -- `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). - -### Log (l) - -- `gl` displays the log. -- `gls` displays the stats log. -- `gld` displays the diff log. -- `glo` displays the one line log. -- `glg` displays the graph log. -- `glb` displays the brief commit log. -- `glc` displays the commit count for each contributor in descending order. -- `glS` displays the log and checks the validity of signed commits. - -### Merge (m) - -- `gm` joins two or more development histories together. -- `gmC` joins two or more development histories together but does not commit. -- `gmF` joins two or more development histories together but does not commit - generating a merge commit even if the merge resolved as a fast-forward. -- `gma` aborts the conflict resolution, and reconstructs the pre-merge state. -- `gmt` runs the merge conflict resolution tools to resolve conflicts. - -### Push (p) - -- `gp` updates remote refs along with associated objects. -- `gpf` forcefully updates remote refs along with associated objects using the - safer `--force-with-lease` option. -- `gpF` forcefully updates remote refs along with associated objects using the - riskier `--force` option. -- `gpa` updates remote branches along with associated objects. -- `gpA` updates remote branches and tags along with associated objects. -- `gpt` updates remote tags along with associated objects. -- `gpc` updates remote refs along with associated objects and adds _origin_ as - an upstream reference for the current branch. -- `gpp` pulls and pushes from origin to origin. - -### Rebase (r) - -- `gr` forward-ports local commits to the updated upstream _HEAD_. -- `gra` aborts the rebase. -- `grc` continues the rebase after merge conflicts are resolved. -- `gri` makes a list of commits to be rebased and opens the editor. -- `grs` skips the current patch. - -### Remote (R) - -- `gR` manages tracked repositories. -- `gRl` lists remote names and their URLs. -- `gRa` adds a new remote. -- `gRx` removes a remote. -- `gRm` renames a remote. -- `gRu` fetches remotes updates. -- `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. - -### Stash (s) - -- `gs` stashes the changes of the dirty working directory. -- `gsa` applies the changes recorded in a stash to the working directory. -- `gsx` drops a stashed state. -- `gsX` drops all the stashed states. -- `gsl` lists stashed states. -- `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. -- `gsS` stashes the changes of the dirty working directory interactively. -- `gsw` stashes the changes of the dirty working directory retaining the index. - -### Submodule (S) - -- `gS` initializes, updates, or inspects submodules. -- `gSa` adds given a repository as a submodule. -- `gSf` evaluates a shell command in each of checked out submodules. -- `gSi` initializes submodules. -- `gSI` initializes and clones submodules recursively. -- `gSl` lists the commits of all submodules. -- `gSm` moves a submodule. -- `gSs` synchronizes submodules' remote URL to the value specified in - _.gitmodules_. -- `gSu` fetches and merges the latest changes for all submodule. -- `gSx` removes a submodule. - -### Tag (t) - -- `gt` lists tags or creates tag. -- `gtl` lists tags matching pattern. -- `gts` creates a signed tag. -- `gtv` validate a signed tag. - -### Working directory (w) - -- `gws` displays working-tree status in the short format. -- `gwS` displays working-tree status. -- `gwd` displays changes between the working tree and the index (diff). -- `gwD` displays changes between the working tree and the index (word diff). -- `gwr` resets the current HEAD to the specified state, does not touch the - index nor the working tree. -- `gwR` resets the current HEAD, index and working tree to the specified state. -- `gwc` removes untracked files from the working tree (dry-run). -- `gwC` removes untracked files from the working tree. -- `gwx` removes files from the working tree and from the index recursively. -- `gwX` removes files from the working tree and from the index recursively and - forcefully. - -### Shadows - -The following aliases may shadow system commands: - -- `gb` shadows the [GB][10]. -- `gm` shadows the [GraphicsMagick image processor][11]. -- `gpt` shadows the [GUID partition table maintenance utility][4]. -- `gs` shadows the [Ghostscript interpreter and previewer][5]. - -If you frequently use the above commands, you may wish to remove said aliases -from this module or to disable them at the bottom of the zshrc with `unalias`. - -You can temporarily bypass an alias by prefixing it with a backward slash: -`\gpt`. - -## Functions - -- `git-branch-current` displays the current branch. -- `git-commit-lost` lists lost commits. -- `git-dir` displays the path to the Git directory. -- `git-hub-browse` opens the [GitHub][3] repository in the default browser. -- `git-hub-shorten-url` shortens [GitHub URLs][12]. -- `git-info` exposes repository information via the `$git_info` associative - array. -- `git-root` displays the path to the working tree root. -- `git-stash-clear-interactive` asks for confirmation before clearing the stash. -- `git-stash-dropped` lists dropped stashed states. -- `git-stash-recover` recovers given dropped stashed states. -- `git-submodule-move` moves a submodule. -- `git-submodule-remove` removes a submodule. - -## Theming - -To display information about the current repository in a prompt, define the -following styles in the `prompt_name_setup` function, where the syntax for -setting a style is as follows. - -```sh -zstyle ':prezto:module:git:info:context:subcontext' format 'string' -``` - -### Main Contexts - -| Name | Format Code | Description | -| -------- | :---------: | ---------------------------------- | -| action | %s | Special action name | -| 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: - -```sh -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 | -| renamed | %r | Renamed files count | -| unmerged | %U | Unmerged files count | -| untracked | %u | Untracked files count | - -### Special Action Contexts - -| Name | Format | Description | -| -------------------- | :----: | ---------------------------- | -| apply | value | Applying patches | -| bisect | value | Binary searching for changes | -| cherry-pick | value | Cherry picking | -| cherry-pick-sequence | value | Cherry picking sequence | -| merge | value | Merging | -| rebase | value | Rebasing | -| rebase-interactive | value | Rebasing interactively | -| rebase-merge | value | Rebasing merge | -| revert | value | Reverting | -| revert-sequence | value | Reverting sequence | - -First, format the repository state attributes. For example, to format the branch -and remote names, define the following styles. - -```sh -zstyle ':prezto:module:git:info:branch' format 'branch:%b' -zstyle ':prezto:module:git:info:remote' format 'remote:%R' -``` - -Second, format how the above attributes are displayed in prompts. - -```sh -zstyle ':prezto:module:git:info:keys' format \ - 'prompt' ' git(%b)' \ - 'rprompt' '[%R]' -``` - -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. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][6]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) -- [Colin Hebert](https://github.com/ColinHebert) - -[1]: https://www.git-scm.com -[2]: https://hub.github.com -[3]: https://www.github.com -[4]: https://www.manpagez.com/man/8/gpt/ -[5]: https://www.manpagez.com/man/1/gs/ -[6]: https://github.com/sorin-ionescu/prezto/issues -[7]: https://github.com/sorin-ionescu/prezto/issues/219 -[8]: https://git-scm.com/docs/git-log -[9]: https://git-scm.com/docs/git-submodule -[10]: https://getgb.io/ -[11]: https://www.manpagez.com/man/1/gm/ -[12]: https://github.blog/2011-11-10-git-io-github-url-shortener -[13]: ../completion#readme -[14]: https://github.com/sorin-ionescu/prezto/pull/1929 diff --git a/.zprezto/modules/git/alias.zsh b/.zprezto/modules/git/alias.zsh deleted file mode 100644 index f14cca5..0000000 --- a/.zprezto/modules/git/alias.zsh +++ /dev/null @@ -1,275 +0,0 @@ -# -# Defines Git aliases. -# -# Authors: -# Sorin Ionescu -# - -# -# Settings -# - -# Log -zstyle -s ':prezto:module:git:log:medium' format '_git_log_medium_format' \ - || _git_log_medium_format='%C(bold)Commit:%C(reset) %C(green)%H%C(red)%d%n%C(bold)Author:%C(reset) %C(cyan)%an <%ae>%n%C(bold)Date:%C(reset) %C(blue)%ai (%ar)%C(reset)%n%+B' -zstyle -s ':prezto:module:git:log:oneline' format '_git_log_oneline_format' \ - || _git_log_oneline_format='%C(green)%h%C(reset) %s%C(red)%d%C(reset)%n' -zstyle -s ':prezto:module:git:log:brief' format '_git_log_brief_format' \ - || _git_log_brief_format='%C(green)%h%C(reset) %s%n%C(blue)(%ar by %an)%C(red)%d%C(reset)%n' - -# Status -zstyle -s ':prezto:module:git:status:ignore' submodules '_git_status_ignore_submodules' \ - || _git_status_ignore_submodules='none' - -# -# Aliases -# - -if ! zstyle -t ':prezto:module:git:alias' skip; then - # Git - alias g='git' - - # Branch (b) - alias gb='git branch' - alias gba='git branch --all --verbose' - alias gbc='git checkout -b' - alias gbd='git branch --delete' - alias gbD='git branch --delete --force' - alias gbl='git branch --verbose' - alias gbL='git branch --all --verbose' - alias gbm='git branch --move' - alias gbM='git branch --move --force' - alias gbr='git branch --move' - alias gbR='git branch --move --force' - alias gbs='git show-branch' - alias gbS='git show-branch --all' - alias gbv='git branch --verbose' - alias gbV='git branch --verbose --verbose' - alias gbx='git branch --delete' - alias gbX='git branch --delete --force' - - # Commit (c) - alias gc='git commit --verbose' - alias gcS='git commit --verbose --gpg-sign' - alias gca='git commit --verbose --all' - alias gcaS='git commit --verbose --all --gpg-sign' - alias gcm='git commit --message' - alias gcmS='git commit --message --gpg-sign' - alias gcam='git commit --all --message' - alias gco='git checkout' - alias gcO='git checkout --patch' - alias gcf='git commit --amend --reuse-message HEAD' - alias gcfS='git commit --amend --reuse-message HEAD --gpg-sign' - alias gcF='git commit --verbose --amend' - alias gcFS='git commit --verbose --amend --gpg-sign' - alias gcp='git cherry-pick --ff' - alias gcP='git cherry-pick --no-commit' - alias gcr='git revert' - alias gcR='git reset "HEAD^"' - alias gcs='git show' - alias gcsS='git show --pretty=short --show-signature' - alias gcl='git-commit-lost' - alias gcy='git cherry --verbose --abbrev' - alias gcY='git cherry --verbose' - - # Conflict (C) - alias gCl='git --no-pager diff --name-only --diff-filter=U' - 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' - alias gdx='git ls-files --deleted' - alias gdm='git ls-files --modified' - alias gdu='git ls-files --other --exclude-standard' - alias gdk='git ls-files --killed' - alias gdi='git status --porcelain --short --ignored | sed -n "s/^!! //p"' - - # Fetch (f) - alias gf='git fetch' - alias gfa='git fetch --all' - alias gfc='git clone' - alias gfcr='git clone --recurse-submodules' - alias gfm='git pull' - alias gfma='git pull --autostash' - alias gfr='git pull --rebase' - alias gfra='git pull --rebase --autostash' - - # Flow (F) - alias gFi='git flow init' - alias gFf='git flow feature' - alias gFb='git flow bugfix' - alias gFl='git flow release' - alias gFh='git flow hotfix' - alias gFs='git flow support' - - alias gFfl='git flow feature list' - alias gFfs='git flow feature start' - alias gFff='git flow feature finish' - alias gFfp='git flow feature publish' - alias gFft='git flow feature track' - alias gFfd='git flow feature diff' - alias gFfr='git flow feature rebase' - alias gFfc='git flow feature checkout' - alias gFfm='git flow feature pull' - alias gFfx='git flow feature delete' - - alias gFbl='git flow bugfix list' - alias gFbs='git flow bugfix start' - alias gFbf='git flow bugfix finish' - alias gFbp='git flow bugfix publish' - alias gFbt='git flow bugfix track' - alias gFbd='git flow bugfix diff' - alias gFbr='git flow bugfix rebase' - alias gFbc='git flow bugfix checkout' - alias gFbm='git flow bugfix pull' - alias gFbx='git flow bugfix delete' - - alias gFll='git flow release list' - alias gFls='git flow release start' - alias gFlf='git flow release finish' - alias gFlp='git flow release publish' - alias gFlt='git flow release track' - alias gFld='git flow release diff' - alias gFlr='git flow release rebase' - alias gFlc='git flow release checkout' - alias gFlm='git flow release pull' - alias gFlx='git flow release delete' - - alias gFhl='git flow hotfix list' - alias gFhs='git flow hotfix start' - alias gFhf='git flow hotfix finish' - alias gFhp='git flow hotfix publish' - alias gFht='git flow hotfix track' - alias gFhd='git flow hotfix diff' - alias gFhr='git flow hotfix rebase' - alias gFhc='git flow hotfix checkout' - alias gFhm='git flow hotfix pull' - alias gFhx='git flow hotfix delete' - - alias gFsl='git flow support list' - alias gFss='git flow support start' - alias gFsf='git flow support finish' - alias gFsp='git flow support publish' - alias gFst='git flow support track' - alias gFsd='git flow support diff' - alias gFsr='git flow support rebase' - alias gFsc='git flow support checkout' - alias gFsm='git flow support pull' - alias gFsx='git flow support delete' - - # Grep (g) - alias gg='git grep' - alias ggi='git grep --ignore-case' - alias ggl='git grep --files-with-matches' - alias ggL='git grep --files-without-matches' - alias ggv='git grep --invert-match' - alias ggw='git grep --word-regexp' - - # Index (i) - alias gia='git add' - alias giA='git add --patch' - alias giu='git add --update' - alias gid='git diff --no-ext-diff --cached' - alias giD='git diff --no-ext-diff --cached --word-diff' - alias gii='git update-index --assume-unchanged' - alias giI='git update-index --no-assume-unchanged' - alias gir='git reset' - alias giR='git reset --patch' - alias gix='git rm -r --cached' - alias giX='git rm -r --force --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 --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' - alias glS='git log --show-signature' - - # Merge (m) - alias gm='git merge' - alias gmC='git merge --no-commit' - alias gmF='git merge --no-ff' - alias gma='git merge --abort' - alias gmt='git mergetool' - - # Push (p) - alias gp='git push' - alias gpf='git push --force-with-lease' - alias gpF='git push --force' - alias gpa='git push --all' - alias gpA='git push --all && git push --tags' - alias gpt='git push --tags' - alias gpc='git push --set-upstream origin "$(git-branch-current 2> /dev/null)"' - alias gpp='git pull origin "$(git-branch-current 2> /dev/null)" && git push origin "$(git-branch-current 2> /dev/null)"' - - # Rebase (r) - alias gr='git rebase' - alias gra='git rebase --abort' - alias grc='git rebase --continue' - alias gri='git rebase --interactive' - alias grs='git rebase --skip' - - # Remote (R) - alias gR='git remote' - alias gRl='git remote --verbose' - alias gRa='git remote add' - alias gRx='git remote rm' - alias gRm='git remote rename' - alias gRu='git remote update' - alias gRp='git remote prune' - alias gRs='git remote show' - alias gRb='git-hub-browse' - - # Stash (s) - alias gs='git stash' - alias gsa='git stash apply' - alias gsx='git stash drop' - alias gsX='git-stash-clear-interactive' - alias gsl='git stash list' - 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' - alias gsS='git stash save --patch --no-keep-index' - alias gsw='git stash save --include-untracked --keep-index' - - # Submodule (S) - alias gS='git submodule' - alias gSa='git submodule add' - alias gSf='git submodule foreach' - alias gSi='git submodule init' - alias gSI='git submodule update --init --recursive' - alias gSl='git submodule status' - alias gSm='git-submodule-move' - alias gSs='git submodule sync' - alias gSu='git submodule update --remote --recursive' - alias gSx='git-submodule-remove' - - # Tag (t) - alias gt='git tag' - alias gtl='git tag --list' - alias gts='git tag --sign' - alias gtv='git verify-tag' - - # Working Copy (w) - alias gws='git status --ignore-submodules=$_git_status_ignore_submodules --short' - alias gwS='git status --ignore-submodules=$_git_status_ignore_submodules' - alias gwd='git diff --no-ext-diff' - alias gwD='git diff --no-ext-diff --word-diff' - alias gwr='git reset --soft' - alias gwR='git reset --hard' - alias gwc='git clean --dry-run' - alias gwC='git clean --force' - alias gwx='git rm -r' - alias gwX='git rm -r --force' -fi diff --git a/.zprezto/modules/git/functions/_git-hub-browse b/.zprezto/modules/git/functions/_git-hub-browse deleted file mode 100644 index 075314b..0000000 --- a/.zprezto/modules/git/functions/_git-hub-browse +++ /dev/null @@ -1,47 +0,0 @@ -#compdef git-hub-browse -#autoload - -# -# Completes git-hub-browse. -# -# Authors: -# Sorin Ionescu -# - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - return 1 -fi - -local state expl remotes remote branches_or_tags branches tags files ret=1 - -_arguments -C -s -S \ - '1::args:->remote' \ - '2::args:->branch-or-tag' \ - '3::args:->file' && ret=0 - -case "$state" in - (remote) - remotes=($(command git config --get-regexp 'remote.*.url' | cut -d. -f2)) - - _describe -t branch 'remotes' remotes && ret=0 - ;; - (branch-or-tag) - remote="$words[(($CURRENT - 1))]" - - branches_or_tags=($( - command git ls-remote --heads --tags "$remote" 2> /dev/null | cut -f2 - )) - - branches=(HEAD ${${(M)branches_or_tags[@]##refs/heads/?##}##refs/heads/}) - tags=(${${(M)branches_or_tags[@]##refs/tags/?##}##refs/tags/}) - - _describe -t branch 'branches' branches && ret=0 - _describe -t tag 'tags' tags && ret=0 - ;; - (file) - files=(${(0)"$(_call_program files command git ls-files -z --exclude-standard 2> /dev/null)"}) - _wanted file expl 'file' _multi_parts - / files && ret=0 - ;; -esac - -return $ret diff --git a/.zprezto/modules/git/functions/_git-hub-shorten-url b/.zprezto/modules/git/functions/_git-hub-shorten-url deleted file mode 100644 index 7e65ded..0000000 --- a/.zprezto/modules/git/functions/_git-hub-shorten-url +++ /dev/null @@ -1,16 +0,0 @@ -#compdef git-hub-shorten-url -#autoload - -# -# Completes git-hub-shorten-url. -# -# Authors: -# Sorin Ionescu -# - -local service="$service" - -zstyle ":completion:*:${service}:*:prefixes" ignored-patterns '^http(|s)://' -zstyle ":completion:*:${service}:*:hosts" ignored-patterns '^*github.com' - -_arguments '1::GitHub URL:_urls' '2::code:' && return 0 diff --git a/.zprezto/modules/git/functions/_git-info b/.zprezto/modules/git/functions/_git-info deleted file mode 100644 index ef6d970..0000000 --- a/.zprezto/modules/git/functions/_git-info +++ /dev/null @@ -1,18 +0,0 @@ -#compdef git-info -#autoload - -# -# Completes git-info. -# -# Authors: -# Sorin Ionescu -# - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - return 1 -fi - -_arguments "1:toggle:(( - on\:'enable in-prompt information for the current repository' - off\:'disable in-prompt information for the current repository' -))" && return 0 diff --git a/.zprezto/modules/git/functions/_git-submodule-move b/.zprezto/modules/git/functions/_git-submodule-move deleted file mode 100644 index 5f2122c..0000000 --- a/.zprezto/modules/git/functions/_git-submodule-move +++ /dev/null @@ -1,40 +0,0 @@ -#compdef git-submodule-move -#autoload - -# -# Completes git-submodule-move. -# -# Authors: -# Sorin Ionescu -# - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - return 1 -fi - -local state expl ret=1 -local -a submodules -local submodule - -_arguments -C -s -S \ - '1::args:->submodule' \ - '2::args:->directory' && ret=0 - -case "$state" in - (submodule) - while IFS=$'\n' read submodule; do - submodules+=("$submodule") - done < <( - command git config --file "$(git-root)/.gitmodules" --list \ - | grep '.path=' \ - | cut -d= -f2- - ) - - _describe -t submodule 'submodules' submodules && ret=0 - ;; - (directory) - _wanted directories expl 'directory' _path_files -/ || _message 'directory' - ;; -esac - -return $ret diff --git a/.zprezto/modules/git/functions/_git-submodule-remove b/.zprezto/modules/git/functions/_git-submodule-remove deleted file mode 100644 index 819dfd8..0000000 --- a/.zprezto/modules/git/functions/_git-submodule-remove +++ /dev/null @@ -1,26 +0,0 @@ -#compdef git-submodule-remove -#autoload - -# -# Completes git-submodule-remove. -# -# Authors: -# Sorin Ionescu -# - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - return 1 -fi - -local -a submodules -local submodule - -while IFS=$'\n' read submodule; do - submodules+=("$submodule") -done < <( - command git config --file "$(git-root)/.gitmodules" --list \ - | grep '.path=' \ - | cut -d= -f2- -) - -_describe -t submodule 'submodules' submodules && return 0 diff --git a/.zprezto/modules/git/functions/git-branch-current b/.zprezto/modules/git/functions/git-branch-current deleted file mode 100644 index 3cf2e19..0000000 --- a/.zprezto/modules/git/functions/git-branch-current +++ /dev/null @@ -1,24 +0,0 @@ -# -# Displays the current Git branch. -# -# Authors: -# Sorin Ionescu -# - -# function git-branch-current { - -if ! command git rev-parse 2> /dev/null; then - print "$0: not a repository: $PWD" >&2 - return 1 -fi - -local ref="$(command git symbolic-ref HEAD 2> /dev/null)" - -if [[ -n "$ref" ]]; then - print "${ref#refs/heads/}" - return 0 -else - return 1 -fi - -# } diff --git a/.zprezto/modules/git/functions/git-commit-lost b/.zprezto/modules/git/functions/git-commit-lost deleted file mode 100644 index 1f086d3..0000000 --- a/.zprezto/modules/git/functions/git-commit-lost +++ /dev/null @@ -1,24 +0,0 @@ -# -# Lists lost Git commits. -# -# Authors: -# Sorin Ionescu -# - -# function git-commit-lost { - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - print "$0: not a repository work tree: $PWD" >&2 - return 1 -fi - -command git fsck 2> /dev/null \ - | grep "^dangling commit" \ - | awk '{print $3}' \ - | command git log \ - --date-order \ - --no-walk \ - --stdin \ - --pretty=format:${_git_log_oneline_format} - -# } diff --git a/.zprezto/modules/git/functions/git-dir b/.zprezto/modules/git/functions/git-dir deleted file mode 100644 index aacaaa8..0000000 --- a/.zprezto/modules/git/functions/git-dir +++ /dev/null @@ -1,20 +0,0 @@ -# -# Displays the path to the Git directory. -# -# Authors: -# Sorin Ionescu -# - -# function git-dir { - -local git_dir="${$(command git rev-parse --git-dir):A}" - -if [[ -n "$git_dir" ]]; then - print "$git_dir" - return 0 -else - print "$0: not a repository: $PWD" >&2 - return 1 -fi - -# } diff --git a/.zprezto/modules/git/functions/git-hub-browse b/.zprezto/modules/git/functions/git-hub-browse deleted file mode 100644 index 3451198..0000000 --- a/.zprezto/modules/git/functions/git-hub-browse +++ /dev/null @@ -1,62 +0,0 @@ -# -# Opens a GitHub repository in the default browser. -# -# Authors: -# Sorin Ionescu -# - -# function git-hub-browse { - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - print "$0: not a repository work tree: $PWD" >&2 - return 1 -fi - -local remotes remote references reference file url - -remote="${1:-origin}" -remotes=($(command git remote show)) - -if (( $remotes[(i)$remote] == $#remotes + 1 )); then - print "$0: remote not found: $remote" >&2 - return 1 -fi - -url=$( - command git remote get-url "$remote" \ - | sed -En "s#(git@|https?://)(github.com)(:|/)(.+)/(.+)\.git#https://\2/\4/\5#p" -) - -reference="${${2:-$(git-branch-current)}:-HEAD}" -references=( - HEAD - ${${(f)"$(command git ls-remote --heads --tags "$remote")"}##*refs/(heads|tags)/} -) - -if (( $references[(i)$reference] == $#references + 1 )); then - print "$0: branch or tag not found: $reference" >&2 - return 1 -fi - -if [[ "$reference" == 'HEAD' ]]; then - reference="$(command git rev-parse HEAD 2> /dev/null)" -fi - -file="$3" - -if [[ -n "$url" ]]; then - url="$url/tree/$reference/$file" - - if [[ -n "$BROWSER" ]]; then - "$BROWSER" "$url" - return 0 - else - print "$0: browser not set or set to a non-existent browser" >&2 - return 1 - fi -else - print "$0: not a Git repository or remote not set" >&2 - return 1 -fi - -# } diff --git a/.zprezto/modules/git/functions/git-hub-shorten-url b/.zprezto/modules/git/functions/git-hub-shorten-url deleted file mode 100644 index b9edd01..0000000 --- a/.zprezto/modules/git/functions/git-hub-shorten-url +++ /dev/null @@ -1,28 +0,0 @@ -# -# Shortens GitHub URLs. -# -# Authors: -# Sorin Ionescu -# - -# function git-hub-shorten-url { - -local url="$1" code="$2" - -if [[ "$url" == '-' ]]; then - read url <&0 -fi - -if [[ -z "$url" || ! "$url" =~ ^https?:\/\/.*github.com\/ ]]; then - print "usage: $0 [ url | - ] [code] ; url must be a github.com URL" >&2 - return 1 -fi - -if (( $+commands[curl] )); then - print "${${(@M)${(f)"$(curl -s -i 'https://git.io' -F "url=$url" ${(z)code:+ -F "code=$code"})"}:#Location: *}#Location: }" -else - print "$0: command not found: curl" >&2 - return 1 -fi - -# } diff --git a/.zprezto/modules/git/functions/git-info b/.zprezto/modules/git/functions/git-info deleted file mode 100644 index 07f261d..0000000 --- a/.zprezto/modules/git/functions/git-info +++ /dev/null @@ -1,454 +0,0 @@ -# -# Exposes Git repository information via the $git_info associative array. -# -# Authors: -# Sorin Ionescu -# - -# Gets the Git special action (am, bisect, cherry, merge, rebase, revert). -# Borrowed from vcs_info and edited. -function _git-action { - local action_dir - local git_dir="$(git-dir)" - local apply_formatted - local bisect_formatted - local cherry_pick_formatted - local cherry_pick_sequence_formatted - local merge_formatted - local rebase_formatted - local rebase_interactive_formatted - local rebase_merge_formatted - local revert_formatted - local revert_sequence_formatted - - for action_dir in \ - "$git_dir/rebase-apply" \ - "$git_dir/rebase" \ - "$git_dir/../.dotest" - do - if [[ -d "$action_dir" ]] ; then - zstyle -s ':prezto:module:git:info:action:apply' format 'apply_formatted' \ - || apply_formatted='apply' - zstyle -s ':prezto:module:git:info:action:rebase' format 'rebase_formatted' \ - || rebase_formatted='rebase' - - if [[ -f "$action_dir/rebasing" ]] ; then - print "$rebase_formatted" - elif [[ -f "$action_dir/applying" ]] ; then - print "$apply_formatted" - else - print "$rebase_formatted/$apply_formatted" - fi - - return 0 - fi - done - - for action_dir in \ - "$git_dir/rebase-merge/interactive" \ - "$git_dir/.dotest-merge/interactive" - do - if [[ -f "$action_dir" ]]; then - zstyle -s ':prezto:module:git:info:action:rebase-interactive' format 'rebase_interactive_formatted' \ - || rebase_interactive_formatted='rebase-interactive' - print "$rebase_interactive_formatted" - return 0 - fi - done - - for action_dir in \ - "$git_dir/rebase-merge" \ - "$git_dir/.dotest-merge" - do - if [[ -d "$action_dir" ]]; then - zstyle -s ':prezto:module:git:info:action:rebase-merge' format 'rebase_merge_formatted' \ - || rebase_merge_formatted='rebase-merge' - print "$rebase_merge_formatted" - return 0 - fi - done - - if [[ -f "$git_dir/MERGE_HEAD" ]]; then - zstyle -s ':prezto:module:git:info:action:merge' format 'merge_formatted' \ - || merge_formatted='merge' - print "$merge_formatted" - return 0 - fi - - if [[ -f "$git_dir/CHERRY_PICK_HEAD" ]]; then - if [[ -d "$git_dir/sequencer" ]] ; then - zstyle -s ':prezto:module:git:info:action:cherry-pick-sequence' format 'cherry_pick_sequence_formatted' \ - || cherry_pick_sequence_formatted='cherry-pick-sequence' - print "$cherry_pick_sequence_formatted" - else - zstyle -s ':prezto:module:git:info:action:cherry-pick' format 'cherry_pick_formatted' \ - || cherry_pick_formatted='cherry-pick' - print "$cherry_pick_formatted" - fi - - return 0 - fi - - if [[ -f "$git_dir/REVERT_HEAD" ]]; then - if [[ -d "$git_dir/sequencer" ]] ; then - zstyle -s ':prezto:module:git:info:action:revert-sequence' format 'revert_sequence_formatted' \ - || revert_sequence_formatted='revert-sequence' - print "$revert_sequence_formatted" - else - zstyle -s ':prezto:module:git:info:action:revert' format 'revert_formatted' \ - || revert_formatted='revert' - print "$revert_formatted" - fi - - return 0 - fi - - if [[ -f "$git_dir/BISECT_LOG" ]]; then - zstyle -s ':prezto:module:git:info:action:bisect' format 'bisect_formatted' \ - || bisect_formatted='bisect' - print "$bisect_formatted" - return 0 - fi - - return 1 -} - -# Gets the Git status information. -function git-info { - # Extended globbing is needed to parse repository status. - setopt LOCAL_OPTIONS - setopt EXTENDED_GLOB - - local action - local action_format - local action_formatted - local added=0 - local added_format - local added_formatted - local ahead=0 - local ahead_and_behind - local ahead_and_behind_cmd - local ahead_format - local ahead_formatted - local ahead_or_behind - local behind=0 - local behind_format - local behind_formatted - local branch - local branch_format - local branch_formatted - local branch_info - local clean - local clean_formatted - local commit - local commit_format - local commit_formatted - local deleted=0 - local deleted_format - local deleted_formatted - local dirty=0 - 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 modified=0 - local modified_format - local modified_formatted - local position - local position_format - local position_formatted - local remote - local remote_cmd - local remote_format - local remote_formatted - local renamed=0 - local renamed_format - local renamed_formatted - local stashed=0 - 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 - local untracked=0 - local untracked_format - local untracked_formatted - - # Clean up previous $git_info. - unset git_info - typeset -gA git_info - - # Return if not inside a Git repository work tree. - if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - return 1 - fi - - if (( $# > 0 )); then - if [[ "$1" == [Oo][Nn] ]]; then - command git config --bool prompt.showinfo true - elif [[ "$1" == [Oo][Ff][Ff] ]]; then - command git config --bool prompt.showinfo false - else - print "usage: $0 [ on | off ]" >&2 - fi - return 0 - fi - - # Return if git-info is disabled. - if ! is-true "${$(command git config --bool prompt.showinfo):-true}"; then - return 1 - fi - - # Ignore submodule status. - zstyle -s ':prezto:module:git:status:ignore' submodules 'ignore_submodules' - - # Format commit. - zstyle -s ':prezto:module:git:info:commit' format 'commit_format' - if [[ -n "$commit_format" ]]; then - commit="$(command git rev-parse HEAD 2> /dev/null)" - if [[ -n "$commit" ]]; then - zformat -f commit_formatted "$commit_format" "c:$commit" - fi - fi - - # Format stashed. - zstyle -s ':prezto:module:git:info:stashed' format 'stashed_format' - if [[ -n "$stashed_format" ]]; then - commondir="" - if [[ -f "$(git-dir)/commondir" ]]; then - commondir="$(<$(git-dir)/commondir)" - [[ "$commondir" =~ ^/ ]] || commondir="$(git-dir)/$commondir" - fi - if [[ -f "$(git-dir)/refs/stash" || ( -n "$commondir" && -f "$commondir/refs/stash" ) ]]; then - stashed=${#${(f)"$(command git stash list 2> /dev/null)"}} - if (( $stashed > 0 )); then - zformat -f stashed_formatted "$stashed_format" "S:$stashed" - fi - 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 - zformat -f action_formatted "$action_format" "s:$action" - fi - fi - - # Get the branch. - branch="${$(command 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="$(command 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='command 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='command 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[(pws:\t:)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[(pws:\t:)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+=$( - command 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+=$( - command 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+=$( - command 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="command git status --porcelain --ignore-submodules=${ignore_submodules:-none}" - - # Get current status. - while IFS=$'\n' read line; do - # Count added, deleted, modified, renamed, unmerged, untracked, dirty. - # T (type change) is undocumented, see http://git.io/FnpMGw. - # For a table of scenarii, see http://i.imgur.com/2YLu1.png. - [[ "$line" == ([ACDMT][\ MT]|[ACMT]D)\ * ]] && (( added++ )) - [[ "$line" == [\ ACMRT]D\ * ]] && (( deleted++ )) - [[ "$line" == ?[MT]\ * ]] && (( modified++ )) - [[ "$line" == R?\ * ]] && (( renamed++ )) - [[ "$line" == (AA|DD|U?|?U)\ * ]] && (( unmerged++ )) - [[ "$line" == \?\?\ * ]] && (( untracked++ )) - (( dirty++ )) - done < <(${(z)status_cmd} 2> /dev/null) - - # Format added. - if (( added > 0 )); then - zstyle -s ':prezto:module:git:info:added' format '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" - fi - - # Format modified. - 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 - 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 - 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 - 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 - zstyle -s ':prezto:module:git:info:dirty' format 'dirty_format' - zformat -f dirty_formatted "$dirty_format" "D:$dirty" - else - zstyle -s ':prezto:module:git:info:clean' format 'clean_formatted' - fi - - # Format 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" \ - "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 - - return 0 -} - -git-info "$@" diff --git a/.zprezto/modules/git/functions/git-root b/.zprezto/modules/git/functions/git-root deleted file mode 100644 index 643f346..0000000 --- a/.zprezto/modules/git/functions/git-root +++ /dev/null @@ -1,20 +0,0 @@ -# -# Displays the path to the working tree root. -# -# Authors: -# Sorin Ionescu -# - -# function git-root { - -local root="$(command git rev-parse --show-toplevel 2> /dev/null)" - -if [[ -n "$root" ]]; then - print "$root" - return 0 -else - print "$0: not a repository work tree: $PWD" >&2 - return 1 -fi - -# } diff --git a/.zprezto/modules/git/functions/git-stash-clear-interactive b/.zprezto/modules/git/functions/git-stash-clear-interactive deleted file mode 100644 index 163deac..0000000 --- a/.zprezto/modules/git/functions/git-stash-clear-interactive +++ /dev/null @@ -1,26 +0,0 @@ -# -# Asks for confirmation before clearing the Git stash. -# -# Authors: -# Sorin Ionescu -# - -# function git-stash-clear-interactive { - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - print "$0: not a repository work tree: $PWD" >&2 - return 1 -fi - -local stashed - -if [[ -f "$(git-dir)/refs/stash" ]]; then - stashed=${#${(f)"$(command git stash list 2> /dev/null)"}} - if (( $stashed > 0 )); then - if read -q "?Clear $stashed stashed state(s) [y/N]? "; then - command git stash clear - fi - fi -fi - -# } diff --git a/.zprezto/modules/git/functions/git-stash-dropped b/.zprezto/modules/git/functions/git-stash-dropped deleted file mode 100644 index 142a4a7..0000000 --- a/.zprezto/modules/git/functions/git-stash-dropped +++ /dev/null @@ -1,26 +0,0 @@ -# -# Lists dropped Git stashed states. -# -# Authors: -# Sorin Ionescu -# - -# function git-stash-dropped { - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - print "$0: not a repository work tree: $PWD" >&2 - return 1 -fi - -command git fsck --unreachable 2> /dev/null \ - | grep 'commit' \ - | awk '{print $3}' \ - | command git log \ - --pretty=format:$_git_log_oneline_format \ - --extended-regexp \ - --grep="${1:-(WIP )?[Oo]n [^:]+:}" \ - --merges \ - --no-walk \ - --stdin - -# } diff --git a/.zprezto/modules/git/functions/git-stash-recover b/.zprezto/modules/git/functions/git-stash-recover deleted file mode 100644 index 6cb5416..0000000 --- a/.zprezto/modules/git/functions/git-stash-recover +++ /dev/null @@ -1,22 +0,0 @@ -# -# Recovers dropped Git stashed states. -# -# Authors: -# Sorin Ionescu -# - -# function git-stash-recover { - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - print "$0: not a repository work tree: $PWD" >&2 - return 1 -fi - -local commit - -for commit in "$@"; do - command git update-ref \ - -m "$(command git log -1 --pretty="format:%s" "$commit")" refs/stash "$commit" -done - -# } diff --git a/.zprezto/modules/git/functions/git-submodule-move b/.zprezto/modules/git/functions/git-submodule-move deleted file mode 100644 index 5e162a1..0000000 --- a/.zprezto/modules/git/functions/git-submodule-move +++ /dev/null @@ -1,36 +0,0 @@ -# -# Moves a Git submodule. -# -# Authors: -# Sorin Ionescu -# - -# function git-submodule-move { - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - print "$0: not a repository work tree: $PWD" >&2 - return 1 -elif [[ "$PWD" != "$(git-root)" ]]; then - print "$0: must be run from the root of the work tree" >&2 - return 1 -fi - -local src="$1" -local dst="$2" -local url - -url="$(command git config --file "$(git-root)/.gitmodules" --get "submodule.${src}.url")" - -if [[ -z "$url" ]]; then - print "$0: submodule not found: $src" >&2 - return 1 -fi - -mkdir -p "$dst:h" - -git-submodule-remove "$src" -command git submodule add "$url" "$dst" - -return 0 - -# } diff --git a/.zprezto/modules/git/functions/git-submodule-remove b/.zprezto/modules/git/functions/git-submodule-remove deleted file mode 100644 index b523314..0000000 --- a/.zprezto/modules/git/functions/git-submodule-remove +++ /dev/null @@ -1,31 +0,0 @@ -# -# Removes a Git submodule. -# -# Authors: -# Sorin Ionescu -# - -# function git-submodule-remove { - -if ! is-true "$(command git rev-parse --is-inside-work-tree 2> /dev/null)"; then - print "$0: not a repository work tree: $PWD" >&2 - return 1 -elif [[ "$PWD" != "$(git-root)" ]]; then - print "$0: must be run from the root of the work tree" >&2 - return 1 -elif ! command git config --file .gitmodules --get "submodule.${1}.path" &> /dev/null; then - print "$0: submodule not found: $1" >&2 - return 1 -fi - -command git config --file "$(git-dir)/config" --remove-section "submodule.${1}" &> /dev/null -command git config --file "$(git-root)/.gitmodules" --remove-section "submodule.${1}" &> /dev/null -command git add .gitmodules - -command git rm --cached -rf "$1" -rm -rf "$1" -rm -rf "$(git-dir)/modules/$1" - -return 0 - -# } diff --git a/.zprezto/modules/git/init.zsh b/.zprezto/modules/git/init.zsh deleted file mode 100644 index ac7ef75..0000000 --- a/.zprezto/modules/git/init.zsh +++ /dev/null @@ -1,20 +0,0 @@ -# -# Provides Git aliases and functions. -# -# Authors: -# Sorin Ionescu -# - -# Return if requirements are not found. -if (( ! $+commands[git] )); then - return 1 -fi - -# Load dependencies. -pmodload 'helper' - -# Load 'run-help' function. -autoload -Uz run-help-git - -# Source module files. -source "${0:h}/alias.zsh" diff --git a/.zprezto/modules/gnu-utility/README.md b/.zprezto/modules/gnu-utility/README.md deleted file mode 100644 index 747c72f..0000000 --- a/.zprezto/modules/gnu-utility/README.md +++ /dev/null @@ -1,34 +0,0 @@ -# GNU Utility - -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 -utilities will be broken. - -This module wraps GNU utilities in functions without a prefix for interactive -use. - -This module must be loaded _before_ the [_`utility`_][1] module so that GNU -utilities enabled in this module are available for configuration in _`utility`_ -module. - -## Settings - -### Prefix - -To use a different prefix, add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_, and replace `'g'` with the desired prefix. - -```sh -zstyle ':prezto:module:gnu-utility' prefix 'g' -``` - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: ../utility#readme -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/gnu-utility/init.zsh b/.zprezto/modules/gnu-utility/init.zsh deleted file mode 100644 index 85e8605..0000000 --- a/.zprezto/modules/gnu-utility/init.zsh +++ /dev/null @@ -1,64 +0,0 @@ -# -# Provides for the interactive use of GNU utilities on BSD systems. -# -# Authors: -# Sorin Ionescu -# - -# Get the prefix or use the default. -zstyle -s ':prezto:module:gnu-utility' prefix '_gnu_utility_p' \ - || _gnu_utility_p='g' - -# Return if requirements are not found. -if (( ! $+commands[${_gnu_utility_p}whoami] )); then - return 1 -fi - -_gnu_utility_cmds=( - # Coreutils - '[' 'b2sum' 'base32' 'base64' 'basename' 'basenc' 'cat' 'chcon' 'chgrp' - 'chmod' 'chown' 'chroot' 'cksum' 'comm' 'cp' 'csplit' 'cut' - 'date' 'dd' 'df' 'dir' 'dircolors' 'dirname' 'du' 'echo' 'env' 'expand' 'expr' - 'factor' 'false' 'fmt' 'fold' 'groups' 'head' 'hostid' 'id' 'install' 'join' - 'kill' 'link' 'ln' 'logname' 'ls' 'md5sum' 'mkdir' 'mkfifo' - 'mknod' 'mktemp' 'mv' 'nice' 'nl' 'nohup' 'nproc' 'numfmt' 'od' - 'paste' 'pathchk' 'pinky' 'pr' 'printenv' 'printf' 'ptx' 'pwd' - 'readlink' 'realpath' 'rm' 'rmdir' 'runcon' - 'seq' 'sha1sum' 'sha224sum' 'sha256sum' 'sha384sum' 'sha512sum' 'shred' 'shuf' - 'sleep' 'sort' 'split' 'stat' 'stdbuf' 'stty' 'sum' 'sync' 'tac' 'tail' - 'tee' 'test' 'timeout' 'touch' 'tr' 'true' 'truncate' 'tsort' 'tty' - 'uname' 'unexpand' 'uniq' 'unlink' 'uptime' 'users' 'vdir' - 'wc' 'who' 'whoami' 'yes' - - # The following utilities are not part of Coreutils but installed separately. - - # Binutils - 'addr2line' 'ar' 'c++filt' 'coffdump' 'dlltool' 'dllwrap' 'elfedit' 'nm' - 'objcopy' 'objdump' 'ranlib' 'readelf' - 'size' 'srconv' 'strings' 'strip' 'sysdump' 'windmc' 'windres' - - # Findutils - 'find' 'locate' 'oldfind' 'updatedb' 'xargs' - - # Libtool - 'libtool' 'libtoolize' - - # Miscellaneous - 'egrep' 'fgrep' 'getopt' 'grep' 'indent' 'make' 'sed' 'tar' 'time' 'units' - 'which' -) - -# Wrap GNU utilities in functions. -for _gnu_utility_cmd in "${_gnu_utility_cmds[@]}"; do - _gnu_utility_pcmd="${_gnu_utility_p}${_gnu_utility_cmd}" - if (( $+commands[$_gnu_utility_pcmd] \ - && ! $+builtins[$_gnu_utility_cmd] )); then - eval " - function $_gnu_utility_cmd { - '$commands[$_gnu_utility_pcmd]' \"\$@\" - } - " - fi -done - -unset _gnu_utility_{p,cmds,cmd,pcmd} diff --git a/.zprezto/modules/gpg/README.md b/.zprezto/modules/gpg/README.md deleted file mode 100644 index 08730eb..0000000 --- a/.zprezto/modules/gpg/README.md +++ /dev/null @@ -1,28 +0,0 @@ -# GPG - -Provides for an easier use of [GPG][1] by setting up [gpg-agent][2]. - -## Settings - -### SSH - -To enable OpenSSH Agent protocol emulation, and make `gpg-agent` a drop-in -replacement for `ssh-agent`, add the following line to -_`$GNUPGHOME/gpg-agent.conf`_ or _`$$HOME/.gnupg/gpg-agent.conf`_: - -```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]: https://www.gnupg.org -[2]: https://linux.die.net/man/1/gpg-agent -[3]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/gpg/init.zsh b/.zprezto/modules/gpg/init.zsh deleted file mode 100644 index a3b37ba..0000000 --- a/.zprezto/modules/gpg/init.zsh +++ /dev/null @@ -1,56 +0,0 @@ -# -# Provides for an easier use of GPG by setting up gpg-agent. -# -# Authors: -# Sorin Ionescu -# - -# 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="${GNUPGHOME:-$HOME/.gnupg}/gpg-agent.conf" -_gpg_agent_env="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/gpg-agent.env" - -# Load environment variables from previous run -source "$_gpg_agent_env" 2> /dev/null - -# Start gpg-agent if not started. -if [[ -z "$GPG_AGENT_INFO" && ! -S "${GNUPGHOME:-$HOME/.gnupg}/S.gpg-agent" ]]; then - # Start gpg-agent if not started. - if ! ps -U "$LOGNAME" -o pid,ucomm | grep -q -- "${${${(s.:.)GPG_AGENT_INFO}[2]}:--1} gpg-agent"; then - mkdir -p "$_gpg_agent_env:h" - 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 - # Load required functions. - autoload -Uz add-zsh-hook - - # Override the ssh-agent environment file default path. - _ssh_agent_env="$_gpg_agent_env" - - # 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. -unset _gpg_agent_{conf,env} - -# Disable GUI prompts inside SSH. -if [[ -n "$SSH_CONNECTION" ]]; then - export PINENTRY_USER_DATA='USE_CURSES=1' -fi diff --git a/.zprezto/modules/haskell/README.md b/.zprezto/modules/haskell/README.md deleted file mode 100644 index db7bfae..0000000 --- a/.zprezto/modules/haskell/README.md +++ /dev/null @@ -1,25 +0,0 @@ -# Haskell - -Enables local Haskell package installation. - -## Per-user Package Installation - -[Cabal][1], the Haskell package manager, can install packages into per user -directories. - -This module prepends per user directories to the relevant path variables to -enable the execution of user installed executables and the reading of -documentation. - -### Usage - -Install packages into per user directories with `cabal install --user`. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Sebastian Wiesner](https://github.com/lunaryorn) - -[1]: https://www.haskell.org/cabal/ -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/haskell/init.zsh b/.zprezto/modules/haskell/init.zsh deleted file mode 100644 index cb76864..0000000 --- a/.zprezto/modules/haskell/init.zsh +++ /dev/null @@ -1,21 +0,0 @@ -# -# Enables local Haskell package installation. -# -# Authors: -# Sebastian Wiesner -# - -# Return if requirements are not found. -if (( ! $+commands[ghc] )); then - return 1 -fi - -# Load dependencies. -pmodload 'helper' - -# Prepend Cabal per user directories to PATH. -if is-darwin && [[ -d $HOME/Library/Haskell ]]; then - path=($HOME/Library/Haskell/bin(/N) $path) -else - path=($HOME/.cabal/bin(/N) $path) -fi diff --git a/.zprezto/modules/helper/README.md b/.zprezto/modules/helper/README.md deleted file mode 100644 index 5c90a63..0000000 --- a/.zprezto/modules/helper/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# Helper - -Provides helper functions for developing modules. - -## Functions - -- `add-zsh-trap` adds a function name to a list to be called when a trap is - triggered. -- `is-autoloadable` checks if a file can be autoloaded by trying to load it in - a subshell. -- `is-callable` checks if a name is a command, function, or alias. -- `is-true` checks a boolean variable for "true". -- `coalesce` prints the first non-empty string in the arguments array. -- `is-darwin` checks if running on macOS Darwin. -- `is-linux` checks if running on Linux. -- `is-bsd` checks if running on BSD. -- `is-cygwin` checks if running on Cygwin (Windows). -- `is-termux` checks if running on Termux (Android). - -## 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/prezto/issues diff --git a/.zprezto/modules/helper/functions/add-zsh-trap b/.zprezto/modules/helper/functions/add-zsh-trap deleted file mode 100644 index 07663e9..0000000 --- a/.zprezto/modules/helper/functions/add-zsh-trap +++ /dev/null @@ -1,41 +0,0 @@ -# -# Provides for trapping UNIX signals and calling callback functions when a trap -# is triggered. -# -# Authors: -# Sorin Ionescu -# - -# Adds a function name to a list to be called when a trap is triggered. -function add-zsh-trap { - if (( $# < 2 )); then - print "usage: $0 type function" >&2 - return 1 - fi - - if [[ -z "$signals[(r)$1]" ]]; then - print "$0: unknown signal: $1" >&2 - return 1 - fi - - local trap_functions="TRAP${1}_FUNCTIONS" - if (( ! ${(P)+trap_functions} )); then - typeset -gaU "$trap_functions" - fi - eval "$trap_functions+="$2"" - - if (( ! $+functions[TRAP${1}] )); then - eval " - function TRAP${1} { - for trap_function in \"\$TRAP${1}_FUNCTIONS[@]\"; do - if (( \$+functions[\$trap_function] )); then - \"\$trap_function\" \"\$1\" - fi - done - return \$(( 128 + \$1 )) - } - " - fi -} - -add-zsh-trap "$@" diff --git a/.zprezto/modules/helper/init.zsh b/.zprezto/modules/helper/init.zsh deleted file mode 100644 index 0a33d7c..0000000 --- a/.zprezto/modules/helper/init.zsh +++ /dev/null @@ -1,56 +0,0 @@ -# -# Defines helper functions. -# -# Authors: -# Sorin Ionescu -# - -# Checks if a file can be autoloaded by trying to load it in a subshell. -function is-autoloadable { - ( unfunction $1 ; autoload -U +X $1 ) &> /dev/null -} - -# Checks if a name is a command, function, or alias. -function is-callable { - (( $+commands[$1] || $+functions[$1] || $+aliases[$1] || $+builtins[$1] )) -} - -# Checks a boolean variable for "true". -# Case insensitive: "1", "y", "yes", "t", "true", "o", and "on". -function is-true { - [[ -n "$1" && "$1" == (1|[Yy]([Ee][Ss]|)|[Tt]([Rr][Uu][Ee]|)|[Oo]([Nn]|)) ]] -} - -# Prints the first non-empty string in the arguments array. -function coalesce { - for arg in $argv; do - print "$arg" - return 0 - done - return 1 -} - -# Checks if running on macOS Darwin. -function is-darwin { - [[ "$OSTYPE" == darwin* ]] -} - -# Checks if running on Linux. -function is-linux { - [[ "$OSTYPE" == linux* ]] -} - -# Checks if running on BSD. -function is-bsd { - [[ "$OSTYPE" == *bsd* ]] -} - -# Checks if running on Cygwin (Windows). -function is-cygwin { - [[ "$OSTYPE" == cygwin* ]] -} - -# Checks if running on termux (Android). -function is-termux { - [[ "$OSTYPE" == linux-android ]] -} diff --git a/.zprezto/modules/history-substring-search/README.md b/.zprezto/modules/history-substring-search/README.md deleted file mode 100644 index 3a109c5..0000000 --- a/.zprezto/modules/history-substring-search/README.md +++ /dev/null @@ -1,79 +0,0 @@ -# History Substring Search - -Integrates [`zsh-history-substring-search`][1] into Prezto, which implements the -[Fish shell][2]'s history search feature, where the user can type in any part of -a previously entered command and press up and down to cycle through matching -commands. - -If this module is used in conjunction with the [_`syntax-highlighting`_][3] -module, this module must be loaded _after_ the _`syntax-highlighting`_ module. - -Additionally, if this module is used in conjunction with the -[_`autosuggestions`_][4] module, this module must be loaded _before_ the -_`autosuggestions`_ module. - -To elaborate, the relative order of loading the modules would be -_`syntax-highlighting`_, _`history-substring-search`_ and _`autosuggestions`_. - -## Contributors - -New features and bug fixes should be submitted to the -[`zsh-history-substring-search`][1] project according to its rules and -regulations. This module will be synchronized against it. - -## Settings - -### Case Sensitivity - -To enable case-sensitivity for this module only, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:history-substring-search' case-sensitive 'yes' -``` - -### Highlighting - -If colors are enabled, _history-substring-search_ will automatically highlight -positive results. - -To disable highlighting for this module only, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:history-substring-search' color 'no' -``` - -To set the query found color, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:history-substring-search:color' found '' -``` - -To set the query not found color, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:history-substring-search:color' not-found '' -``` - -To set the search globbing flags, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:history-substring-search' globbing-flags '' -``` - -## Authors - -_The authors of this module should be contacted via the [issue tracker][5]._ - -- [Suraj N. Kurapati](https://github.com/sunaku) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://github.com/zsh-users/zsh-history-substring-search -[2]: https://fishshell.com -[3]: ../syntax-highlighting#readme -[4]: ../autosuggestions#readme -[5]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/history-substring-search/external b/.zprezto/modules/history-substring-search/external deleted file mode 160000 index 0f80b8e..0000000 --- a/.zprezto/modules/history-substring-search/external +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 0f80b8eb3368b46e5e573c1d91ae69eb095db3fb diff --git a/.zprezto/modules/history-substring-search/init.zsh b/.zprezto/modules/history-substring-search/init.zsh deleted file mode 100644 index 0de7891..0000000 --- a/.zprezto/modules/history-substring-search/init.zsh +++ /dev/null @@ -1,61 +0,0 @@ -# -# Integrates history-substring-search into Prezto. -# -# Authors: -# Suraj N. Kurapati -# Sorin Ionescu -# - -# Load dependencies. -pmodload 'editor' - -# Source module files. -if (( ! $+functions[history-substring-search-up] )); then - source "${0:h}/external/zsh-history-substring-search.zsh" || return 1 -fi - -# -# 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 - HISTORY_SUBSTRING_SEARCH_GLOBBING_FLAGS="${HISTORY_SUBSTRING_SEARCH_GLOBBING_FLAGS//i}" -fi - -if ! zstyle -t ':prezto:module:history-substring-search' color; then - unset HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_{FOUND,NOT_FOUND} -fi - -# -# Key Bindings -# - -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 - - # Vi - bindkey -M vicmd "k" history-substring-search-up - bindkey -M vicmd "j" history-substring-search-down - - # Emacs and Vi - for keymap in 'emacs' 'viins'; do - bindkey -M "$keymap" "$key_info[Up]" history-substring-search-up - bindkey -M "$keymap" "$key_info[Down]" history-substring-search-down - done - - unset keymap -fi diff --git a/.zprezto/modules/history/README.md b/.zprezto/modules/history/README.md deleted file mode 100644 index 3806096..0000000 --- a/.zprezto/modules/history/README.md +++ /dev/null @@ -1,50 +0,0 @@ -# History - -Sets [history][1] options and defines history aliases. - -**Note:** Default path of `HISTFILE` has changed from -_`${ZDOTDIR:-$HOME}/.zhistory`_ to _`${ZDOTDIR:-$HOME}/.zsh_history`_. The file -will be automatically renamed if possible (when the new one doesn't exist). -Otherwise, if you want to preserve previous history, you will need to move them -from _`${ZDOTDIR:-$HOME}/.zhistory`_ to _`${ZDOTDIR:-$HOME}/.zsh_history`_. - -Alternately, you can set `HISTFILE` manually to _`${ZDOTDIR:-$HOME}/.zhistory`_. - -## Options - -- `BANG_HIST` treats the **!** character specially during expansion. -- `EXTENDED_HISTORY` writes the history file in the _:start:elapsed;command_ - format. -- `SHARE_HISTORY` shares history between all sessions. Note that - `SHARE_HISTORY`, `INC_APPEND_HISTORY`, and `INC_APPEND_HISTORY_TIME` are - mutually exclusive. -- `HIST_EXPIRE_DUPS_FIRST` expires a duplicate event first when trimming history. -- `HIST_IGNORE_DUPS` does not record an event that was just recorded again. -- `HIST_IGNORE_ALL_DUPS` deletes an old recorded event if a new event is a - duplicate. -- `HIST_FIND_NO_DUPS` does not display a previously found event. -- `HIST_IGNORE_SPACE` does not record an event starting with a space. -- `HIST_SAVE_NO_DUPS` does not write a duplicate event to the history file. -- `HIST_VERIFY` does not execute immediately upon history expansion. -- `HIST_BEEP` beeps when accessing non-existent history. - -## Variables - -- `HISTFILE` stores the path to the history file. -- `HISTSIZE` stores the maximum number of events to save in the internal history. -- `SAVEHIST` stores the maximum number of events to save in the history file. - -## Aliases - -- `history-stat` lists the ten most used commands - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Robby Russell](https://github.com/robbyrussell) -- [Sorin Ionescu](https://github.com/sorin-ionescu) -- [Indrajit Raychaudhuri](https://github.com/indrajitr) - -[1]: https://zsh.sourceforge.net/Guide/zshguide02.html#l16 -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/history/init.zsh b/.zprezto/modules/history/init.zsh deleted file mode 100644 index 3f815c0..0000000 --- a/.zprezto/modules/history/init.zsh +++ /dev/null @@ -1,63 +0,0 @@ -# -# Sets history options and defines history aliases. -# -# Authors: -# Robby Russell -# Sorin Ionescu -# - -# -# Options -# - -setopt BANG_HIST # Treat the '!' character specially during expansion. -setopt EXTENDED_HISTORY # Write the history file in the ':start:elapsed;command' format. -setopt SHARE_HISTORY # Share history between all sessions. -setopt HIST_EXPIRE_DUPS_FIRST # Expire a duplicate event first when trimming history. -setopt HIST_IGNORE_DUPS # Do not record an event that was just recorded again. -setopt HIST_IGNORE_ALL_DUPS # Delete an old recorded event if a new event is a duplicate. -setopt HIST_FIND_NO_DUPS # Do not display a previously found event. -setopt HIST_IGNORE_SPACE # Do not record an event starting with a space. -setopt HIST_SAVE_NO_DUPS # Do not write a duplicate event to the history file. -setopt HIST_VERIFY # Do not execute immediately upon history expansion. -setopt HIST_BEEP # Beep when accessing non-existent history. - -# -# Variables -# - -HISTFILE="${HISTFILE:-${ZDOTDIR:-$HOME}/.zsh_history}" # The path to the history file. -HISTSIZE=10000 # The maximum number of events to save in the internal history. -SAVEHIST=10000 # The maximum number of events to save in the history file. - -# -# Aliases -# - -# Lists the ten most used commands. -alias history-stat="history 0 | awk '{print \$2}' | sort | uniq -c | sort -n -r | head" - -if [[ -s "${OLD_HISTFILE::=${HISTFILE:h}/.zhistory}" ]]; then - - # New 'HISTFILE' doesn't exist yet, rename legacy one if available and notify. - if [[ ! -s "$HISTFILE" ]]; then - < -# - -# Load dependencies. -pmodload 'helper' - -# Return if requirements are not found. -if ! is-darwin && ! is-linux; then - return 1 -fi - -# -# Variables -# - -# Load standard Homebrew shellenv into the shell session. -# Load 'HOMEBREW_' prefixed variables only. Avoid loading 'PATH' related -# variables as they are already handled in standard zsh configuration. -if (( $+commands[brew] )); then - eval "${(@M)${(f)"$(brew shellenv 2> /dev/null)"}:#export HOMEBREW*}" -fi - -# -# Aliases -# - -# Homebrew -alias brewc='brew cleanup' -alias brewi='brew install' -alias brewL='brew leaves' -alias brewl='brew list' -alias brewo='brew outdated' -alias brews='brew search' -alias brewu='brew upgrade' -alias brewx='brew uninstall' - -# Homebrew Cask -alias caski='brew install --cask' -alias caskl='brew list --cask' -alias casko='brew outdated --cask' -alias casks='brew search --cask' -alias casku='brew upgrade --cask' -alias caskx='brew uninstall --cask' diff --git a/.zprezto/modules/macports/README.md b/.zprezto/modules/macports/README.md deleted file mode 100644 index ba6143b..0000000 --- a/.zprezto/modules/macports/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# MacPorts - -Defines MacPorts aliases and adds MacPorts directories to path variables. - -## Aliases - -- `portc` cleans the files used to build ports. -- `porti` installs a port. -- `ports` searches for a port. -- `portu` upgrades a port. -- `portU` upgrades MacPorts, the ports collection, and outdated ports. -- `portx` uninstalls a port. -- `portX` uninstalls inactive ports. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][1]._ - -- [Matt Cable](https://github.com/curiousstranger) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/macports/init.zsh b/.zprezto/modules/macports/init.zsh deleted file mode 100644 index 7bf4ab2..0000000 --- a/.zprezto/modules/macports/init.zsh +++ /dev/null @@ -1,37 +0,0 @@ -# -# Defines MacPorts aliases and adds MacPorts directories to path variables. -# -# Authors: -# Matt Cable -# Sorin Ionescu -# - -# Load dependencies. -pmodload 'helper' - -# Return if requirements are not found. -if ! is-darwin; then - return 1 -fi - -# -# Paths -# - -# Set the list of directories that Zsh searches for programs. -path=( - /opt/local/{bin,sbin} - $path -) - -# -# Aliases -# - -alias portc='sudo port clean --all installed' -alias porti='sudo port install' -alias ports='port search' -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' diff --git a/.zprezto/modules/node/README.md b/.zprezto/modules/node/README.md deleted file mode 100644 index 6ec0b75..0000000 --- a/.zprezto/modules/node/README.md +++ /dev/null @@ -1,84 +0,0 @@ -# Node.js - -Provides utility functions for [Node.js][1], loads the Node Version Manager, and -enables [_npm_][2] completion. - -This module must be loaded _before_ the _`completion`_ module so that the -provided completion definitions are loaded. - -## nodenv - -[_nodenv_][5] does one thing well - it is concerned solely with switching -Node versions. It is simple and predictable, Just Works, and is rock solid in -production. nodenv is forked from the popular [_rbenv_][6]. - -This will be loaded automatically if nodenv is installed in `$NODENV_ROOT`, -_`$XDG_CONFIG_HOME/nodenv`_, _`~/.nodenv`_, or `nodenv` is on the path. - -## nvm - -[_nvm_][7] allows for managing multiple, isolated Node.js installations in the -home directory. - -This will be loaded automatically if nvm is installed in `$NVM_DIR`, -_`$XDG_CONFIG_HOME/nvm`_, _`~/.nvm`_, or is installed with homebrew. - -## Variables - -- `N_PREFIX` stores the path to [_n_][8] cache. - -## Aliases - -### npm - -- `npmi` install a package. -- `npml` list installed packages. -- `npmo` check for outdated packages. -- `npmp` publish a package. -- `npmP` remove extraneous packages. -- `npmr` run arbitrary package scripts. -- `npms` search for packages. -- `npmt` test a package. -- `npmu` update packages. -- `npmx` uninstalls a package. - -- `npmci` install a project with a clean slate. -- `npmcit` install a project with a clean slate and run tests. -- `npmit` install package(s) and run tests. - -## 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. - -```sh -# %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 - -_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) -- [Indrajit Raychaudhuri](https://github.com/indrajitr) - -[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/nodenv/nodenv -[6]: https://github.com/sstephenson/rbenv -[7]: https://github.com/nvm-sh/nvm -[8]: https://github.com/tj/n diff --git a/.zprezto/modules/node/functions/node-doc b/.zprezto/modules/node/functions/node-doc deleted file mode 100644 index 92ac71d..0000000 --- a/.zprezto/modules/node/functions/node-doc +++ /dev/null @@ -1,18 +0,0 @@ -# -# Opens the Node.js online API documentation in the default browser. -# -# Authors: -# Sorin Ionescu -# - -# function node-doc { - -if [[ -z "$BROWSER" ]]; then - print "$0: no web browser defined" >&2 - return 1 -fi - -# TODO: Make the sections easier to use. -"$BROWSER" "https://nodejs.org/docs/${$(node --version 2> /dev/null)/%-*}/api/all.html#${1}" - -# } diff --git a/.zprezto/modules/node/functions/node-info b/.zprezto/modules/node/functions/node-info deleted file mode 100644 index 7a59127..0000000 --- a/.zprezto/modules/node/functions/node-info +++ /dev/null @@ -1,32 +0,0 @@ -# -# Exposes information about the Node.js environment via the $node_info -# associative array. -# -# Authors: -# Zeh Rizzatti -# - -# function node-info { - -local version -local version_format -local version_formatted - -unset node_info -typeset -gA node_info - -if (( $+commands[nodenv] )); then - version="${${$(nodenv version)#v}[(w)0]}" -elif (( $+functions[nvm_version] )); then - version="${$(nvm_version)#v}" -elif (( $+commands[node] )) ; then - version="${$(node -v)#v}" -fi - -if [[ "$version" != (none|system) ]]; 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 - -# } diff --git a/.zprezto/modules/node/init.zsh b/.zprezto/modules/node/init.zsh deleted file mode 100644 index b359104..0000000 --- a/.zprezto/modules/node/init.zsh +++ /dev/null @@ -1,65 +0,0 @@ -# -# Configures Node local installation, loads version managers, and defines -# variables and aliases. -# -# Authors: -# Sorin Ionescu -# Zeh Rizzatti -# Indrajit Raychaudhuri -# - -# Possible lookup locations for manually installed nodenv and nvm. -local_nodenv_paths=({$NODENV_ROOT,{$XDG_CONFIG_HOME/,$HOME/.}nodenv}/bin/nodenv(N)) -local_nvm_paths=({$NVM_DIR,{$XDG_CONFIG_HOME/,$HOME/.}nvm}/nvm.sh(N)) - -# Load manually installed or package manager installed nodenv into the shell -# session. -if (( $#local_nodenv_paths || $+commands[nodenv] )); then - - # Ensure manually installed nodenv is added to path when present. - [[ -s $local_nodenv_paths[1] ]] && path=($local_nodenv_paths[1]:h $path) - - eval "$(nodenv init - zsh)" - -# Load manually installed nvm into the shell session. -elif (( $#local_nvm_paths )); then - source "$local_nvm_paths[1]" --no-use - -# Load package manager installed nvm into the shell session. -elif (( $+commands[brew] )) \ - && [[ -d "${nvm_path::="$(brew --prefix 2> /dev/null)"/opt/nvm}" ]]; then - source "$nvm_path/nvm.sh" --no-use -fi - -unset local_n{odenv,vm}_paths nvm_path - -# Return if requirements are not found. -if (( ! $+commands[node] && ! $#functions[(i)n(odenv|vm)] )); then - return 1 -fi - -# -# Variables -# - -N_PREFIX="${XDG_CONFIG_HOME:-$HOME/.config}/n" # The path to 'n' cache. - -# -# Aliases -# - -# npm -alias npmi='npm install' -alias npml='npm list' -alias npmo='npm outdated' -alias npmp='npm publish' -alias npmP='npm prune' -alias npmr='npm run' -alias npms='npm search' -alias npmt='npm test' -alias npmu='npm update' -alias npmx='npm uninstall' - -alias npmci='npm ci' -alias npmcit='npm cit' -alias npmit='npm it' diff --git a/.zprezto/modules/ocaml/README.md b/.zprezto/modules/ocaml/README.md deleted file mode 100644 index 75aed54..0000000 --- a/.zprezto/modules/ocaml/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# OCaml - -Initializes [OCaml][1] package management. - -## OPAM - -[OPAM][2] is a package manager for OCaml. - -This module enables local package installation with OPAM by extending the -relevant path and OCaml variables. - -### Usage - -Install packages to your local package directory with `opam install`. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][3]._ - -- [Sebastian Wiesner](https://github.com/lunaryorn) - -[1]: https://ocaml.org/ -[2]: http://opam.ocamlpro.com/ -[3]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/ocaml/init.zsh b/.zprezto/modules/ocaml/init.zsh deleted file mode 100644 index b09c7eb..0000000 --- a/.zprezto/modules/ocaml/init.zsh +++ /dev/null @@ -1,14 +0,0 @@ -# -# Initializes OCaml package management. -# -# Authors: -# Sebastian Wiesner -# - -# 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" diff --git a/.zprezto/modules/osx/README.md b/.zprezto/modules/osx/README.md deleted file mode 100644 index 893d3af..0000000 --- a/.zprezto/modules/osx/README.md +++ /dev/null @@ -1,50 +0,0 @@ -# OSX - -Defines [macOS][1] aliases and functions. - -This module must be loaded _before_ the [_`completion`_][2] module so that the -provided completion definitions are loaded automatically by _`completion`_ -module. - -## Settings - -### Dash Keyword - -To change the keyword used by `mand` to open man pages in [_Dash.app_][3] from -its default value of 'manpages', add the following line in -_`${ZDOTDIR:-$HOME}/.zpreztorc`_ and replace the **keyword** with the one -configured in [_Dash.app_][3]. - -```sh -zstyle ':prezto:module:osx:man' dash-keyword 'keyword' -``` - -## Aliases - -- `cdf` changes the current working director to the current _Finder_ directory. -- `pushdf` pushes the current working directory onto the directory queue and - changes the current working director to the current _Finder_ directory. - -## Functions - -- `mand` opens _man_ pages in [_Dash.app_][3]. -- `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.app_][4]). -- `ql` previews files in Quick Look. -- `osx-rm-dir-metadata` deletes _`.DS_Store`_, _`__MACOSX`_ cruft. -- `osx-ls-download-history` displays the macOS download history. -- `osx-rm-download-history` deletes the macOS download history. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][5]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://www.apple.com/macos/ -[2]: ../completion#readme -[3]: https://kapeli.com/dash -[4]: https://www.iterm2.com/ -[5]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/osx/functions/_mand_manp b/.zprezto/modules/osx/functions/_mand_manp deleted file mode 100644 index 8ea1e56..0000000 --- a/.zprezto/modules/osx/functions/_mand_manp +++ /dev/null @@ -1,11 +0,0 @@ -#compdef mand manp -#autoload - -# -# Completes mand and manp. -# -# Authors: -# Sorin Ionescu -# - -_man diff --git a/.zprezto/modules/osx/functions/mand b/.zprezto/modules/osx/functions/mand deleted file mode 100644 index b62fab3..0000000 --- a/.zprezto/modules/osx/functions/mand +++ /dev/null @@ -1,23 +0,0 @@ -# -# Opens man pages in Dash.app. -# -# Authors: -# Sorin Ionescu -# - -function mand { - if (( $# > 0 )); then - zstyle -s ':prezto:module:osx:man' dash-keyword 'dashkw' || dashkw='manpages' - open "dash://$dashkw%3A$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 - - unset dashkw -} - -mand "$@" diff --git a/.zprezto/modules/osx/functions/manp b/.zprezto/modules/osx/functions/manp deleted file mode 100644 index fcb2a02..0000000 --- a/.zprezto/modules/osx/functions/manp +++ /dev/null @@ -1,19 +0,0 @@ -# -# Opens man pages in Preview.app. -# -# Authors: -# Sorin Ionescu -# - -function manp { - local page - if (( $# > 0 )); then - for page in "$@"; do - man -t "$page" | open -f -a Preview - done - else - print 'What manual page do you want?' >&2 - fi -} - -manp "$@" diff --git a/.zprezto/modules/osx/functions/osx-ls-download-history b/.zprezto/modules/osx/functions/osx-ls-download-history deleted file mode 100644 index 8b6eaab..0000000 --- a/.zprezto/modules/osx/functions/osx-ls-download-history +++ /dev/null @@ -1,17 +0,0 @@ -# -# Displays the macOS download history. -# -# Authors: -# Sorin Ionescu -# - -# function osx-ls-download-history { - -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 - -# } diff --git a/.zprezto/modules/osx/functions/osx-rm-dir-metadata b/.zprezto/modules/osx/functions/osx-rm-dir-metadata deleted file mode 100644 index f15f4ed..0000000 --- a/.zprezto/modules/osx/functions/osx-rm-dir-metadata +++ /dev/null @@ -1,15 +0,0 @@ -# -# Deletes .DS_Store and __MACOSX directories. -# -# Authors: -# Sorin Ionescu -# - -# function osx-rm-dir-metadata { - -find "${@:-$PWD}" \( \ - -type f -name '.DS_Store' -o \ - -type d -name '__MACOSX' \ -\) -print0 | xargs -0 rm -rf - -# } diff --git a/.zprezto/modules/osx/functions/osx-rm-download-history b/.zprezto/modules/osx/functions/osx-rm-download-history deleted file mode 100644 index 068ba3d..0000000 --- a/.zprezto/modules/osx/functions/osx-rm-download-history +++ /dev/null @@ -1,17 +0,0 @@ -# -# Deletes the macOS download history. -# -# Authors: -# Sorin Ionescu -# - -# function osx-rm-download-history { - -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 - -# } diff --git a/.zprezto/modules/osx/functions/pfd b/.zprezto/modules/osx/functions/pfd deleted file mode 100644 index 264b40b..0000000 --- a/.zprezto/modules/osx/functions/pfd +++ /dev/null @@ -1,16 +0,0 @@ -# -# Displays the current Finder.app directory. -# -# Authors: -# Sorin Ionescu -# - -# function pfd { - -osascript 2> /dev/null < -# - -# function pfs { - -osascript 2>&1 < -# - -# function ql { - -if (( $# > 0 )); then - qlmanage -p "$@" &> /dev/null -fi - -# } diff --git a/.zprezto/modules/osx/functions/tab b/.zprezto/modules/osx/functions/tab deleted file mode 100644 index c39a6a8..0000000 --- a/.zprezto/modules/osx/functions/tab +++ /dev/null @@ -1,56 +0,0 @@ -# -# Opens a new Terminal.app/iTerm.app tab in the current directory. -# -# Authors: -# Sorin Ionescu -# - -# function tab { - -local command="cd \\\"$PWD\\\"" -(( $# > 0 )) && command="${command}; $*" - -the_app=$( - osascript 2> /dev/null < /dev/null < /dev/null < /dev/null < -# - -# Load dependencies. -pmodload 'helper' - -# Return if requirements are not found. -if ! is-darwin; then - return 1 -fi - -# -# Aliases -# - -# Changes directory to the current Finder directory. -alias cdf='cd "$(pfd)"' - -# Pushes directory to the current Finder directory. -alias pushdf='pushd "$(pfd)"' diff --git a/.zprezto/modules/pacman/README.md b/.zprezto/modules/pacman/README.md deleted file mode 100644 index 4e6ad8b..0000000 --- a/.zprezto/modules/pacman/README.md +++ /dev/null @@ -1,65 +0,0 @@ -# Pacman - -Provides aliases and functions for the [Pacman][1] package manager and -frontends. - -## Settings - -It is possible to use a Pacman frontend with the pacman aliases provided by this -package as long as that frontend supports the same command line options (The -[AUR Helpers][2] page has a good comparison which lists if the command line -options are pacman compatible). - -Please note that installing packages with an AUR Helper is not officially -supported by Archlinux. It is currently recommended to manually build AUR -packages using the [provided instructions][3]. The [aurutils][4] project has a -set of small utilities to make this easier. - -To enable a different Pacman frontend, add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_, and replace `''` with the name -of the preferred frontend. - -```sh -zstyle ':prezto:module:pacman' frontend '' -``` - -## Aliases - -### Pacman - -- `pac` is short for `pacman`. -- `paci` installs packages from repositories. -- `pacI` installs packages from files. -- `pacx` removes packages and unneeded dependencies. -- `pacX` removes packages, their configuration, and unneeded dependencies. -- `pacq` displays information about a package from the repositories. -- `pacQ` displays information about a package from the local database. -- `pacs` searches for packages in the repositories. -- `pacS` searches for packages in the local database. -- `pacu` synchronizes the local package and Arch Build System (requires `abs`) - databases against the repositories. -- `pacU` synchronizes the local package database against the repositories then - upgrades outdated packages. -- `pacman-list-orphans` lists orphan packages. -- `pacman-remove-orphans` removes orphan packages. - -### Frontends - -## Functions - -- `aurget` clone an aur package. -- `pacman-list-explicit` lists explicitly installed pacman packages. -- `pacman-list-disowned` lists pacman disowned files. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][5]._ - -- [Benjamin Boudreau](https://github.com/dreur) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://www.archlinux.org/pacman/ -[2]: https://wiki.archlinux.org/title/AUR_helpers#Comparison_tables -[3]: https://wiki.archlinux.org/title/Arch_User_Repository#Installing_and_upgrading_packages -[4]: https://github.com/AladW/aurutils -[5]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/pacman/functions/pacman-list-disowned b/.zprezto/modules/pacman/functions/pacman-list-disowned deleted file mode 100644 index c5e84fc..0000000 --- a/.zprezto/modules/pacman/functions/pacman-list-disowned +++ /dev/null @@ -1,26 +0,0 @@ -# -# Lists Pacman disowned files. -# -# Authors: -# Benjamin Boudreau -# Sorin Ionescu -# - -# function pacman-list-disowned { - -local tmp="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/pacman-disowned-$$" -local db="$tmp/db" -local fs="$tmp/fs" - -mkdir -p "$tmp" -trap 'rm -rf "$tmp"' EXIT - -pacman --quiet --query --list | sort --unique > "$db" - -find /bin /etc /lib /sbin /usr \ - ! -name lost+found \ - \( -type d -printf '%p/\n' -o -print \) | sort > "$fs" - -comm -23 "$fs" "$db" - -# } diff --git a/.zprezto/modules/pacman/functions/pacman-list-explicit b/.zprezto/modules/pacman/functions/pacman-list-explicit deleted file mode 100644 index 7c9b08f..0000000 --- a/.zprezto/modules/pacman/functions/pacman-list-explicit +++ /dev/null @@ -1,24 +0,0 @@ -# -# Lists explicitly installed Pacman packages. -# -# Authors: -# Benjamin Boudreau -# Sorin Ionescu -# - -# function pacman-list-explicit { - -pacman --query --explicit --info \ - | awk ' - BEGIN { - FS=":" - } - /^Name/ { - print $2 - } - /^Description/ { - print $2 - } - ' - -# } diff --git a/.zprezto/modules/pacman/init.zsh b/.zprezto/modules/pacman/init.zsh deleted file mode 100644 index 88c977f..0000000 --- a/.zprezto/modules/pacman/init.zsh +++ /dev/null @@ -1,88 +0,0 @@ -# -# Defines Pacman aliases. -# -# Authors: -# Benjamin Boudreau -# Sorin Ionescu -# -# Tips: -# https://wiki.archlinux.org/index.php/Pacman_Tips -# - -# Return if requirements are not found. -if (( ! $+commands[pacman] )); then - return 1 -fi - -# -# Frontend -# - -# Get the Pacman frontend. -zstyle -s ':prezto:module:pacman' frontend '_pacman_frontend' - -if (( $+commands[$_pacman_frontend] )); then - alias pacman="$_pacman_frontend" -else - _pacman_frontend='pacman' - _pacman_sudo='sudo ' -fi - -# -# Aliases -# - -# Pacman. -alias pac="${_pacman_frontend}" - -# Installs packages from repositories. -alias paci="${_pacman_sudo}${_pacman_frontend} --sync" - -# Installs packages from files. -alias pacI="${_pacman_sudo}${_pacman_frontend} --upgrade" - -# Removes packages and unneeded dependencies. -alias pacx="${_pacman_sudo}${_pacman_frontend} --remove" - -# Removes packages, their configuration, and unneeded dependencies. -alias pacX="${_pacman_sudo}${_pacman_frontend} --remove --nosave --recursive" - -# Displays information about a package from the repositories. -alias pacq="${_pacman_frontend} --sync --info" - -# Displays information about a package from the local database. -alias pacQ="${_pacman_frontend} --query --info" - -# Searches for packages in the repositories. -alias pacs="${_pacman_frontend} --sync --search" - -# Searches for packages in the local database. -alias pacS="${_pacman_frontend} --query --search" - -# Lists orphan packages. -alias pacman-list-orphans="${_pacman_sudo}${_pacman_frontend} --query --deps --unrequired" - -# Removes orphan packages. -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 using the asp tool. -if (( $+commands[asp] )); then - alias pacu="${_pacman_sudo}${_pacman_frontend} --sync --refresh && sudo asp update" -else - alias pacu="${_pacman_sudo}${_pacman_frontend} --sync --refresh" -fi - -# Synchronizes the local package database against the repositories then -# upgrades outdated packages. -alias pacU="${_pacman_sudo}${_pacman_frontend} --sync --refresh --sysupgrade" - -function aurget { - local target_dir="$1" - if [[ -n "$2" ]]; then - target_dir="$2" - fi - git clone "https://aur.archlinux.org/$1" "$target_dir" -} - -unset _pacman_{frontend,sudo} diff --git a/.zprezto/modules/perl/README.md b/.zprezto/modules/perl/README.md deleted file mode 100644 index 772d068..0000000 --- a/.zprezto/modules/perl/README.md +++ /dev/null @@ -1,106 +0,0 @@ -# Perl - -Enables local [Perl][1] module installation on macOS and defines aliases. - -## Local Module Installation - -Perl versions older than 5.14 do not support the local installation of Perl -modules natively. This module allows for local installation of Perl modules on -macOS in _`~/Library/Perl/5.12`_ by altering the environment. - -### Usage - -For Perl versions older than 5.14, install _`local::lib`_. - -```console -curl -L -C - -O http://search.cpan.org/CPAN/authors/id/A/AP/APEIRON/local-lib-1.008004.tar.gz -tar xvf local-lib-1.008004.tar.gz -cd local-lib-1.008004 -perl Makefile.PL --bootstrap=$HOME/Library/Perl/5.12 -make && make test && make install -``` - -Install _cpanminus_: - -```console -curl -L http://cpanmin.us | perl - --self-upgrade -``` - -## Perlbrew - -An alternative to the above is to use [Perlbrew][2], which allows for the -management of multiple, isolated Perl installations in the home directory. - -## plenv - -Yet another alternative is [_plenv_][3]. This is inspired from _rbenv_ and -enables switching between multiple binary installations. - -The subcommands of _plenv_ is similar with _rbenv_. - -## Aliases - -### General - -- `pl` is short for `perl`. -- `pld` looks up Perl documentation (`perldoc`). -- `ple` executes a one line program in a loop (`perl -wlne`). - -### Perlbrew (plb) - -- `plb` manages Perl environments. -- `plba` lists available Perl versions. -- `plbi` installs a Perl version. -- `plbl` lists installed Perl versions. -- `plbo` temporarily turns off Perlbrew. -- `plbO` turns off Perlbrew. -- `plbs` switches to a Perl version. -- `plbu` uninstalls a Perl version. -- `plbx` temporarily sets the Perl version to use. - -### plenv (plv) - -- `plv` manages Perl environments. -- `plvc` List all available plenv commands. -- `plvl` Set or show the local application-specific Perl version. -- `plvg` Set or show the global Perl version. -- `plvs` Set or show the shell-specific Perl version. -- `plvi` Install a Perl version using the perl-build plugin. -- `plvu` Uninstall a specific Perl version. -- `plvr` Rehash plenv shims (run this after installing executables). -- `plvv` Show the current Perl version and its origin. -- `plvV` List all Perl versions available to plenv. -- `plvw` Display the full path to an executable. -- `plvW` List all Perl versions that contain the given executable. -- `plvm` List cpan modules in current perl. -- `plvM` Migrate cpan modules from other version. -- `plvI` Install cpanm. - -## Functions - -- `perl-info` exposes information about the Perl environment via the - `$perl_info` associative array. - -## Theming - -To display the name of the current Perl version in a prompt, define the -following style in the `prompt_name_setup` function. - -```sh -# %v - perl version. -zstyle ':prezto:module:perl:info:version' format 'version:%v' -``` - -Then add `$perl_info[version]` to `$PROMPT` or `$RPROMPT` and call -`perl-info` in the `prompt_name_precmd` hook function. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][4]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://www.perl.org -[2]: https://perlbrew.pl -[3]: https://github.com/tokuhirom/plenv -[4]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/perl/functions/perl-info b/.zprezto/modules/perl/functions/perl-info deleted file mode 100644 index b42e23d..0000000 --- a/.zprezto/modules/perl/functions/perl-info +++ /dev/null @@ -1,34 +0,0 @@ -# -# Exposes information about the Perl environment via the $perl_info associative -# array. -# -# Authors: -# JINNOUCHI Yasushi -# - -# function perl-info { - -local version -local version_format -local version_formatted - -# Clean up previous $perl_info. -unset perl_info -typeset -gA perl_info - -if (( $+commands[perlbrew] )); then - version="${PERLBREW_PERL##*perl-}" -elif (( $+commands[plenv] )); then - version=$(plenv version-name) -elif (( $+commands[perl] )); then - version=$(perl -e 'printf "%vd", $^V') -fi - -# Format version. -if [[ -n "$version" ]]; then - zstyle -s ':prezto:module:perl:info:version' format 'version_format' - zformat -f version_formatted "$version_format" "v:$version" - perl_info[version]="$version_formatted" -fi - -# } diff --git a/.zprezto/modules/perl/init.zsh b/.zprezto/modules/perl/init.zsh deleted file mode 100644 index 1b5e665..0000000 --- a/.zprezto/modules/perl/init.zsh +++ /dev/null @@ -1,97 +0,0 @@ -# -# Enables local Perl module installation on macOS and defines aliases. -# -# Authors: -# Sorin Ionescu -# - -# Return if requirements are not found. -if (( ! $+commands[perl] )); then - return 1 -fi - -# Load dependencies. -pmodload 'helper' - -# -# Load Perlbrew or plenv -# - -# Load Perlbrew into the shell session. -if [[ -s "${PERLBREW_ROOT:-$HOME/perl5/perlbrew}/etc/bashrc" ]]; then - source "${PERLBREW_ROOT:-$HOME/perl5/perlbrew}/etc/bashrc" - - # Load Perlbrew completion. - if [[ -s "${PERLBREW_ROOT:-$HOME/perl5/perlbrew}/etc/perlbrew-completion.bash" ]]; then - source "${PERLBREW_ROOT:-$HOME/perl5/perlbrew}/etc/perlbrew-completion.bash" - fi - -# Load manually installed plenv into the shell session. -elif [[ -s "$HOME/.plenv/bin/plenv" ]]; then - path=("$HOME/.plenv/bin" $path) - eval "$(plenv init - --no-rehash zsh)" - -# Load package manager installed plenv into the shell session. -elif (( $+commands[plenv] )); then - eval "$(plenv init - --no-rehash zsh)" -fi - -# -# Local Module Installation -# - -if is-darwin; then - # Perl is slow; cache its output. - cache_file="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/perl-cache.zsh" - perl_path="$HOME/Library/Perl/5.12" - - if [[ -f "$perl_path/lib/perl5/local/lib.pm" ]]; then - if [[ "${ZDOTDIR:-$HOME}/.zpreztorc" -nt "$cache_file" || ! -s "$cache_file" ]]; then - mkdir -p "$cache_file:h" - perl -I$perl_path/lib/perl5 -Mlocal::lib=$perl_path >! "$cache_file" - fi - - source "$cache_file" - fi - - unset cache_file perl_path -fi - -# -# Aliases -# - -# General -alias pl='perl' -alias pld='perldoc' -alias ple='perl -wlne' - -# Perlbrew -if (( $+commands[perlbrew] )); then - alias plb='perlbrew' - alias plba='perlbrew available' - alias plbi='perlbrew install' - alias plbl='perlbrew list' - alias plbo='perlbrew off' - alias plbO='perlbrew switch-off' - alias plbs='perlbrew switch' - alias plbu='perlbrew use' - alias plbx='perlbrew uninstall' - -elif (( $+commands[plenv] )); then - alias plv='plenv' - alias plvc='plenv commands' - alias plvl='plenv local' - alias plvg='plenv global' - alias plvs='plenv shell' - alias plvi='plenv install' - alias plvu='plenv uninstall' - alias plvr='plenv rehash' - alias plvv='plenv version' - alias plvV='plenv versions' - alias plvw='plenv which' - alias plvW='plenv whence' - alias plvm='plenv list-modules' - alias plvM='plenv migrate-modules' - alias plvI='plenv install-cpanm' -fi diff --git a/.zprezto/modules/prompt/README.md b/.zprezto/modules/prompt/README.md deleted file mode 100644 index 2279b55..0000000 --- a/.zprezto/modules/prompt/README.md +++ /dev/null @@ -1,167 +0,0 @@ -# Prompt - -Loads prompt [themes][1]. - -## Settings - -### Prompt Theme - -To select a prompt theme, add the following to _`${ZDOTDIR:-$HOME}/.zpreztorc`_, -and replace `''` with the name of the theme you wish to load. Setting it -to `'random'` will load a random theme every time. - -```sh -zstyle ':prezto:module:prompt' theme '' -``` - -### Prompt Display Length - -To change working directory prompt display length from 'short', set the -following to 'long' (without `~` expansion) or 'full' (with `~` expansion) in -_`${ZDOTDIR:-$HOME}/.zpreztorc`_. - -```sh -zstyle ':prezto:module:prompt' pwd-length 'short' -``` - -### Display Return Value - -Some prompts display the return value in the prompt. If a prompt has support, -this can be disabled with the following snippet. - -```sh -zstyle ':prezto:module:prompt' show-return-val 'no' -``` - -## Theming - -A prompt theme is an autoloadable function file with a special name, -`prompt_name_setup`, placed anywhere in `$fpath`, but for the purpose of this -project, themes **should** be placed in the _modules/prompt/functions_ -directory. - -### Required Variables - -To ensure that your function works with the editor-info module you'll need to -set the following variable in _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -# Tell prezto we can manage this prompt -zstyle ':prezto:module:prompt' managed 'yes' -``` - -This is to ensure compatibility with outside prompts, while allowing prezto -and prezto-compatible prompts to take full advantage of the editor module. -This should be set in the `prompt_name_setup` function after you've added -any additional hooks with `add-zsh-hook precmd prompt_name_precmd`. See below -for additional information about functions and hooks. - -### Theme Functions - -There are three theme functions, a setup function, a help function, and -a preview function. The setup function **must** always be defined. The help -function and the preview functions are optional. - -#### `prompt_name_setup` - -This function is called by the `prompt` function to install the theme. This -function may define other functions as necessary to maintain the prompt, -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 below. - -```sh -function prompt_name_setup { - PROMPT='%m%# ' - RPROMPT='' -} -``` - -#### `prompt_name_help` - -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 below. - -```sh -function prompt_name_help { - cat <] [] - -where the color is for the left-hand prompt. -EOH -} -``` - -#### `prompt_name_preview` - -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 below. - -```sh -function prompt_name_preview { - if (( $# > 0 )); then - prompt_preview_theme theme "$@" - else - prompt_preview_theme theme red green blue - print - prompt_preview_theme theme yellow magenta black - fi -} -``` - -### Hook Functions - -There are many Zsh [hook][2] functions, but mostly the _precmd_ hook will be -used. - -#### `prompt_name_precmd` - -This hook is called before the prompt is displayed and is useful for getting -information to display in a prompt. - -When calling functions to get information to display in a prompt, do not assume -that all the dependencies have been loaded. Always check for the availability of -a function before you calling it. - -**Do not register hook functions. They will be automatically registered by the -`prompt` function.** - -The most basic example of this function can be seen below. - -```sh -function prompt_name_precmd { - if (( $+functions[git-info] )); then - git-info - fi -} -``` - -## Troubleshooting - -### Fonts aren't displaying properly - -On most systems, themes which use special characters need to have a patched font -installed and configured properly. - -Powerline provides some information on [terminal support][4] and [how to install -patched fonts][5] which should fix most font issues. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][3]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://zsh.sourceforge.net/Doc/Release/User-Contributions.html#Prompt-Themes -[2]: https://zsh.sourceforge.net/Doc/Release/Functions.html#Hook-Functions -[3]: https://github.com/sorin-ionescu/prezto/issues -[4]: https://powerline.readthedocs.io/en/master/usage.html#terminal-emulator-requirements -[5]: https://powerline.readthedocs.io/en/latest/installation.html#fonts-installation diff --git a/.zprezto/modules/prompt/external/agnoster b/.zprezto/modules/prompt/external/agnoster deleted file mode 160000 index 6bba672..0000000 --- a/.zprezto/modules/prompt/external/agnoster +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 6bba672c7812a76defc3efed9b6369eeee2425dc diff --git a/.zprezto/modules/prompt/external/powerline b/.zprezto/modules/prompt/external/powerline deleted file mode 160000 index c48e4c6..0000000 --- a/.zprezto/modules/prompt/external/powerline +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c48e4c69ef5c368ea7cda961ed9d0e298a5ae1fc diff --git a/.zprezto/modules/prompt/external/pure b/.zprezto/modules/prompt/external/pure deleted file mode 160000 index 2e354b8..0000000 --- a/.zprezto/modules/prompt/external/pure +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2e354b80deae105ea246699c49e65dcd4fe8b759 diff --git a/.zprezto/modules/prompt/functions/async b/.zprezto/modules/prompt/functions/async deleted file mode 120000 index ae0ec55..0000000 --- a/.zprezto/modules/prompt/functions/async +++ /dev/null @@ -1 +0,0 @@ -../external/async/async.zsh \ No newline at end of file diff --git a/.zprezto/modules/prompt/functions/prompt-pwd b/.zprezto/modules/prompt/functions/prompt-pwd deleted file mode 100644 index d2d1788..0000000 --- a/.zprezto/modules/prompt/functions/prompt-pwd +++ /dev/null @@ -1,31 +0,0 @@ -# -# Prompt setup function commonly used by prompt themes. -# -# Authors: -# Sorin Ionescu -# - -# function prompt-pwd { - -setopt localoptions extendedglob - -local current_pwd="${PWD/#$HOME/~}" -local ret_directory - -if [[ "$current_pwd" == (#m)[/~] ]]; then - ret_directory="$MATCH" - unset MATCH -elif zstyle -m ':prezto:module:prompt' pwd-length 'full'; then - ret_directory=${PWD} -elif zstyle -m ':prezto:module:prompt' pwd-length 'long'; then - ret_directory=${current_pwd} -else - ret_directory="${${${${(@j:/:M)${(@s:/:)current_pwd}##.#?}:h}%/}//\%/%%}/${${current_pwd:t}//\%/%%}" -fi - -unset current_pwd - -print "$ret_directory" - -# } -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_agnoster_setup b/.zprezto/modules/prompt/functions/prompt_agnoster_setup deleted file mode 120000 index 34d8bc6..0000000 --- a/.zprezto/modules/prompt/functions/prompt_agnoster_setup +++ /dev/null @@ -1 +0,0 @@ -../external/agnoster/agnoster.zsh-theme \ No newline at end of file diff --git a/.zprezto/modules/prompt/functions/prompt_cloud_setup b/.zprezto/modules/prompt/functions/prompt_cloud_setup deleted file mode 100644 index 908e3c9..0000000 --- a/.zprezto/modules/prompt/functions/prompt_cloud_setup +++ /dev/null @@ -1,125 +0,0 @@ -# -# A minimal two-color theme. -# -# Authors: -# Kevin Laude -# -# 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 ${ZDOTDIR:-$HOME}/.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 [] [] [] -# -# In ${ZDOTDIR:-$HOME}/.zpreztorc: -# zstyle ':prezto:module:prompt' theme 'cloud' \ -# [''] \ -# [''] \ -# [''] -# -# 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 and Mark Drago -# - -# 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 <] [] [] - -In ${ZDOTDIR:-$HOME}/.zpreztorc: - zstyle ':prezto:module:prompt' theme 'cloud' [''] [''] [''] - -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 sp 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 - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # 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 "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_damoekri_setup b/.zprezto/modules/prompt/functions/prompt_damoekri_setup deleted file mode 100644 index 1fbaedf..0000000 --- a/.zprezto/modules/prompt/functions/prompt_damoekri_setup +++ /dev/null @@ -1,69 +0,0 @@ -# -# A simple theme inspired by the Sorin and PeepCode themes. -# -# Authors: -# Daniel Møller Kristensen -# -# Screenshots: -# http://i.imgur.com/AX9HnPF.png -# - -# Load dependencies. -pmodload 'helper' - -prompt_damoekri_precmd() { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - - # Format PWD. - _prompt_damoekri_pwd=$(prompt-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 sp 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 - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # 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 "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_giddie_setup b/.zprezto/modules/prompt/functions/prompt_giddie_setup deleted file mode 100644 index 2b36ccc..0000000 --- a/.zprezto/modules/prompt/functions/prompt_giddie_setup +++ /dev/null @@ -1,80 +0,0 @@ -# -# A colorful, friendly, multiline theme with some handy features. -# -# Authors: -# Paul Gideon Dann -# Sorin Ionescu -# -# Features: -# - Simple VCS branch, staged, and unstaged indication. -# - Prompt character is different in a VCS repository. -# - Last command exit status is displayed when non-zero. -# -# Screenshots: -# http://i.imgur.com/rCo3S.png -# - -function +vi-set_novcs_prompt_symbol { - _prompt_giddie_symbol=')' -} - -function +vi-set_vcs_prompt_symbol { - _prompt_giddie_symbol='±' -} - -function +vi-git_precmd { - # Check for untracked files, since vcs_info does not. - if [[ -n $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then - hook_com[unstaged]+='%F{green}?%f' - fi -} - -function prompt_giddie_precmd { - # Replace '/home/' with '~'. - _prompt_giddie_pwd="${PWD/#$HOME/~}" - vcs_info -} - -function prompt_giddie_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz vcs_info - autoload -Uz add-zsh-hook - - # Add hook to set up prompt parameters before each command. - add-zsh-hook precmd prompt_giddie_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # Set editor-info parameters. - zstyle ':prezto:module:editor:info:completing' format '%F{green}...%f' - zstyle ':prezto:module:editor:info:keymap:alternate' format '%F{yellow}--- COMMAND ---%f' - - # Set vcs_info parameters. - zstyle ':vcs_info:*' check-for-changes true - zstyle ':vcs_info:*' formats ' on %F{magenta}%b%f%c%u' - zstyle ':vcs_info:*' actionformats ' on %F{magenta}%b%f%c%u %F{yellow}(%a)%f' - zstyle ':vcs_info:*' stagedstr '%F{green}+%f' - zstyle ':vcs_info:*' unstagedstr '%F{green}!%f' - - # Set vcs_info hooks. - # NOTE: Prior to Zsh v4.3.12, there are no static hooks, no vcs_info_hookadd - # function, and no 'no-vcs' hook. - zstyle ':vcs_info:*+start-up:*' hooks set_novcs_prompt_symbol - zstyle ':vcs_info:git*+set-message:*' hooks set_vcs_prompt_symbol git_precmd - zstyle ':vcs_info:*+set-message:*' hooks set_vcs_prompt_symbol - - # Define prompts. - PROMPT='%(?..%F{red}%B-> [%?]%b%f -)%F{magenta}%n%f@%F{yellow}%m%f|%F{green}${_prompt_giddie_pwd}%f${vcs_info_msg_0_} -%F{blue}${_prompt_giddie_symbol}%f ' - RPROMPT='${editor_info[keymap]}' - SPROMPT='zsh: correct %F{magenta}%R%f to %F{green}%r%f [nyae]? ' -} - -prompt_giddie_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_kylewest_setup b/.zprezto/modules/prompt/functions/prompt_kylewest_setup deleted file mode 100644 index d3b33a9..0000000 --- a/.zprezto/modules/prompt/functions/prompt_kylewest_setup +++ /dev/null @@ -1,69 +0,0 @@ -# -# A single line theme with Git information on the left and Ruby on the right. -# -# Authors: -# Kyle West -# Sorin Ionescu -# -# Features: -# - Indicates dirty Git repository. -# - Indicates the Ruby version. -# - Indicates vi modes. -# -# Screenshots: -# http://i.imgur.com/dCwhynn.png -# - -function prompt_kylewest_precmd { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - - # Get Git repository information. - if (( $+functions[git-info] )); then - git-info - fi - - # Get Ruby information. - if (( $+functions[ruby-info] )); then - ruby-info - fi -} - -function prompt_kylewest_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz add-zsh-hook - - # Add hook for calling git-info before each command. - add-zsh-hook precmd prompt_kylewest_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # 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{green}❯%f%b" - zstyle ':prezto:module:editor:info:keymap:alternate' format "%B%F{magenta}❮%f%b" - - # Set git-info parameters. - zstyle ':prezto:module:git:info' verbose 'no' - zstyle ':prezto:module:git:info:branch' format '%F{yellow}%b%f' - zstyle ':prezto:module:git:info:dirty' format '%B%F{red}!%f%b' - zstyle ':prezto:module:git:info:indexed' format ' ' - zstyle ':prezto:module:git:info:unindexed' format ' ' - zstyle ':prezto:module:git:info:untracked' format ' ' - zstyle ':prezto:module:git:info:keys' format 'prompt' '- %b%D ' - - # Set ruby-info parameters. - zstyle ':prezto:module:ruby:info:version' format '%F{blue}[%v]%f' - - # Define prompts. - PROMPT='%F{cyan}%c%f ${git_info:+${(e)git_info[prompt]}}${editor_info[keymap]} ' - RPROMPT='${ruby_info[version]}' -} - -prompt_kylewest_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_minimal_setup b/.zprezto/modules/prompt/functions/prompt_minimal_setup deleted file mode 100644 index e57aac5..0000000 --- a/.zprezto/modules/prompt/functions/prompt_minimal_setup +++ /dev/null @@ -1,63 +0,0 @@ -# -# A monochrome theme that displays basic information. -# -# Authors: -# Brian Tse -# Sorin Ionescu -# -# Screenshots: -# http://i.imgur.com/zLZNK.png -# - -function +vi-git_status { - # Check for untracked files or updated submodules since vcs_info does not. - if [[ -n $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then - hook_com[unstaged]='%F{red}●%f' - fi -} - -function prompt_minimal_precmd { - vcs_info -} - -function prompt_minimal_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz add-zsh-hook - autoload -Uz vcs_info - - # Add hook for calling vcs_info before each command. - add-zsh-hook precmd prompt_minimal_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # Set vcs_info parameters. - zstyle ':vcs_info:*' enable bzr git hg svn - zstyle ':vcs_info:*' check-for-changes true - zstyle ':vcs_info:*' stagedstr '%F{green}●%f' - zstyle ':vcs_info:*' unstagedstr '%F{yellow}●%f' - zstyle ':vcs_info:*' formats ' - [%b%c%u]' - zstyle ':vcs_info:*' actionformats " - [%b%c%u|%F{cyan}%a%f]" - zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat '%b|%F{cyan}%r%f' - zstyle ':vcs_info:git*+set-message:*' hooks git_status - - # Define prompts. - PROMPT='%2~${vcs_info_msg_0_} » ' - RPROMPT='' -} - -function prompt_minimal_preview { - local +h PROMPT='' - local +h RPROMPT='' - local +h SPROMPT='' - - editor-info 2> /dev/null - prompt_preview_theme 'minimal' -} - -prompt_minimal_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_nicoulaj_setup b/.zprezto/modules/prompt/functions/prompt_nicoulaj_setup deleted file mode 100644 index 4b40bac..0000000 --- a/.zprezto/modules/prompt/functions/prompt_nicoulaj_setup +++ /dev/null @@ -1,64 +0,0 @@ -# -# A simple theme that displays only relevant information. -# -# Authors: -# Julien Nicoulaud -# Sorin Ionescu -# -# Features: -# - One line. -# - VCS information in the right prompt. -# - Only shows the path on the left prompt by default. -# - Crops the path to a defined length and only shows the path relative to -# the current VCS repository root. -# - Uses a different color depending on if the last command succeeded/failed. -# - Shows user@hostname if connected through SSH. -# - Shows if logged in as root or not. -# -# Screenshots: -# http://i.imgur.com/Xe1bu.png -# - -function prompt_nicoulaj_precmd { - vcs_info -} - -function prompt_nicoulaj_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz add-zsh-hook - autoload -Uz vcs_info - - # Add hook for calling vcs_info before each command. - add-zsh-hook precmd prompt_nicoulaj_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # Customizable parameters. - local max_path_chars=30 - local user_char='❯' - local root_char='❯❯❯' - local success_color='%F{071}' - local failure_color='%F{124}' - local vcs_info_color='%F{242}' - - # Set vcs_info parameters. - zstyle ':vcs_info:*' enable bzr git hg svn - zstyle ':vcs_info:*' check-for-changes true - zstyle ':vcs_info:*' unstagedstr '!' - zstyle ':vcs_info:*' stagedstr '+' - zstyle ':vcs_info:*' actionformats "%S" "%r/%s/%b %u%c (%a)" - zstyle ':vcs_info:*' formats "%S" "%r/%s/%b %u%c" - zstyle ':vcs_info:*' nvcsformats "%~" "" - - # Define prompts. - PROMPT="%(?.${success_color}.${failure_color})${SSH_TTY:+[%n@%m]}%B%${max_path_chars}<...<"'${vcs_info_msg_0_%%.}'"%<<%(!.${root_char}.${user_char})%b%f " - RPROMPT="${vcs_info_color}"'${vcs_info_msg_1_}'"%f" -} - -prompt_nicoulaj_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_paradox_setup b/.zprezto/modules/prompt/functions/prompt_paradox_setup deleted file mode 100644 index 9286967..0000000 --- a/.zprezto/modules/prompt/functions/prompt_paradox_setup +++ /dev/null @@ -1,160 +0,0 @@ -# -# A two-line, Powerline-inspired theme that displays contextual information. -# -# This theme requires a patched Powerline font, get them from -# https://github.com/Lokaltog/powerline-fonts. -# -# Authors: -# Isaac Wolkerstorfer -# Jeff Sandberg -# Sorin Ionescu -# Patrick Bos -# -# Screenshots: -# http://i.imgur.com/0XIWX.png -# - -# Load dependencies. -pmodload 'helper' - -# Define variables. -_prompt_paradox_current_bg='NONE' -_prompt_paradox_segment_separator='' -_prompt_paradox_start_time=$SECONDS - -function prompt_paradox_start_segment { - local bg fg - [[ -n "$1" ]] && bg="%K{$1}" || bg="%k" - [[ -n "$2" ]] && fg="%F{$2}" || fg="%f" - if [[ "$_prompt_paradox_current_bg" != 'NONE' && "$1" != "$_prompt_paradox_current_bg" ]]; then - print -n " $bg%F{$_prompt_paradox_current_bg}$_prompt_paradox_segment_separator$fg " - else - print -n "$bg$fg " - fi - _prompt_paradox_current_bg="$1" - [[ -n "$3" ]] && print -n "$3" -} - -function prompt_paradox_end_segment { - if [[ -n "$_prompt_paradox_current_bg" ]]; then - print -n " %k%F{$_prompt_paradox_current_bg}$_prompt_paradox_segment_separator" - else - print -n "%k" - fi - print -n "%f" - _prompt_paradox_current_bg='' -} - -function prompt_paradox_build_prompt { - prompt_paradox_start_segment black default '%(?::%F{red}✘ )%(!:%F{yellow}⚡ :)%(1j:%F{cyan}⚙ :)%F{blue}%n%F{red}@%F{green}%m%f' - prompt_paradox_start_segment blue black '$_prompt_paradox_pwd' - - if [[ -n "$git_info" ]]; then - prompt_paradox_start_segment green black '${(e)git_info[ref]}${(e)git_info[status]}' - fi - - if [[ -n "$python_info" ]]; then - prompt_paradox_start_segment white black '${(e)python_info[virtualenv]}' - fi - - prompt_paradox_end_segment -} - -prompt_paradox_print_elapsed_time() { - local end_time=$(( SECONDS - _prompt_paradox_start_time )) - local hours minutes seconds remainder - - if (( end_time >= 3600 )); then - hours=$(( end_time / 3600 )) - remainder=$(( end_time % 3600 )) - minutes=$(( remainder / 60 )) - seconds=$(( remainder % 60 )) - print -P "%B%F{red}>>> elapsed time ${hours}h${minutes}m${seconds}s%b" - elif (( end_time >= 60 )); then - minutes=$(( end_time / 60 )) - seconds=$(( end_time % 60 )) - print -P "%B%F{yellow}>>> elapsed time ${minutes}m${seconds}s%b" - elif (( end_time > 10 )); then - print -P "%B%F{green}>>> elapsed time ${end_time}s%b" - fi -} - -function prompt_paradox_precmd { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - - # Format PWD. - _prompt_paradox_pwd=$(prompt-pwd) - - # Get Git repository information. - if (( $+functions[git-info] )); then - git-info - fi - - # Get Python environment information. - if (( $+functions[python-info] )); then - python-info - fi - - # Calculate and print the elapsed time. - prompt_paradox_print_elapsed_time -} - -function prompt_paradox_preexec { - _prompt_paradox_start_time="$SECONDS" -} - -function prompt_paradox_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz add-zsh-hook - - # Add hook for calling git-info before each command. - add-zsh-hook preexec prompt_paradox_preexec - add-zsh-hook precmd prompt_paradox_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # 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{blue}❯%f%b' - zstyle ':prezto:module:editor:info:keymap:primary:overwrite' format '%F{red}♺%f' - zstyle ':prezto:module:editor:info:keymap:alternate' format '%B%F{red}❮%f%b' - - # Set git-info parameters. - zstyle ':prezto:module:git:info' verbose 'yes' - zstyle ':prezto:module:git:info:action' format ' ⁝ %s' - zstyle ':prezto:module:git:info:added' format ' ✚' - zstyle ':prezto:module:git:info:ahead' format ' ⬆' - zstyle ':prezto:module:git:info:behind' format ' ⬇' - zstyle ':prezto:module:git:info:branch' format ' %b' - zstyle ':prezto:module:git:info:commit' format '➦ %.7c' - zstyle ':prezto:module:git:info:deleted' format ' ✖' - zstyle ':prezto:module:git:info:dirty' format ' ⁝' - zstyle ':prezto:module:git:info:modified' format ' ✱' - zstyle ':prezto:module:git:info:position' format '%p' - zstyle ':prezto:module:git:info:renamed' format ' ➙' - zstyle ':prezto:module:git:info:stashed' format ' S' - zstyle ':prezto:module:git:info:unmerged' format ' ═' - zstyle ':prezto:module:git:info:untracked' format ' ?' - zstyle ':prezto:module:git:info:keys' format \ - 'ref' '$(coalesce "%b" "%p" "%c")' \ - 'status' '%s%D%A%B%S%a%d%m%r%U%u' - - # %v - virtualenv name. - zstyle ':prezto:module:python:info:virtualenv' format 'virtualenv:%v' - - # Define prompts. - PROMPT=' -${(e)$(prompt_paradox_build_prompt)} - ${editor_info[keymap]} ' - RPROMPT='%F{blue}[%F{green}%D{%H:%M:%S}%F{blue}]%f' - SPROMPT='zsh: correct %F{red}%R%f to %F{green}%r%f [nyae]? ' -} - -prompt_paradox_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_peepcode_setup b/.zprezto/modules/prompt/functions/prompt_peepcode_setup deleted file mode 100644 index 3a108df..0000000 --- a/.zprezto/modules/prompt/functions/prompt_peepcode_setup +++ /dev/null @@ -1,89 +0,0 @@ -# -# A simple theme from PeepCode. -# http://peepcode.com/blog/2012/my-command-line-prompt -# -# Authors: -# Geoffrey Grosenbach -# Sorin Ionescu -# -# Screenshots: -# http://i.imgur.com/LhgmW.png -# - -function prompt_peepcode_precmd { - # Get Git repository information. - if (( $+functions[git-info] )); then - git-info - fi - - # Get Ruby information. - if (( $+functions[ruby-info] )); then - ruby-info - fi -} - -function prompt_peepcode_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz add-zsh-hook - autoload -Uz vcs_info - - # Add a hook for calling info functions before each command. - add-zsh-hook precmd prompt_peepcode_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # Set git-info parameters. - zstyle ':prezto:module:git:info' verbose 'no' - zstyle ':prezto:module:git:info:action' format ' +%s' - zstyle ':prezto:module:git:info:branch' format ' %F{8}%b%f' - zstyle ':prezto:module:git:info:commit' format ' %F{white}%.7c%f' - zstyle ':prezto:module:git:info:indexed' format ' ' - zstyle ':prezto:module:git:info:unindexed' format ' ' - zstyle ':prezto:module:git:info:untracked' format ' ' - zstyle ':prezto:module:git:info:dirty' format ' %F{8}✗%f' - zstyle ':prezto:module:git:info:keys' format 'rprompt' '%b%c%s%D' - - # Set ruby-info parameters. - zstyle ':prezto:module:ruby:info:version' format ' %F{white}%v%f' - - # Define prompts. - PROMPT=" -%~ -%(?.%F{green}${1:-☻ }%f.%F{red}${1:-☻ }%f) " -RPROMPT='${ruby_info[version]}${git_info[rprompt]}' - -} - -function prompt_peepcode_help { - cat <] - -If this option is not provided, the symbol defaults to ☻. -EOH -} - -function prompt_peepcode_preview { - local +h PROMPT='%# ' - local +h RPROMPT='' - local +h SPROMPT='' - - if (( $# > 0 )); then - prompt_preview_theme 'peepcode' "$@" - else - prompt_preview_theme 'peepcode' - print - prompt_preview_theme 'peepcode' "❯" - print - prompt_preview_theme 'peepcode' "$" - fi -} - -prompt_peepcode_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_powerline_setup b/.zprezto/modules/prompt/functions/prompt_powerline_setup deleted file mode 120000 index 3715d75..0000000 --- a/.zprezto/modules/prompt/functions/prompt_powerline_setup +++ /dev/null @@ -1 +0,0 @@ -../external/powerline/prompt_powerline_setup \ No newline at end of file diff --git a/.zprezto/modules/prompt/functions/prompt_pure_setup b/.zprezto/modules/prompt/functions/prompt_pure_setup deleted file mode 120000 index 1480fcf..0000000 --- a/.zprezto/modules/prompt/functions/prompt_pure_setup +++ /dev/null @@ -1 +0,0 @@ -../external/pure/pure.zsh \ No newline at end of file diff --git a/.zprezto/modules/prompt/functions/prompt_skwp_setup b/.zprezto/modules/prompt/functions/prompt_skwp_setup deleted file mode 100644 index b84011f..0000000 --- a/.zprezto/modules/prompt/functions/prompt_skwp_setup +++ /dev/null @@ -1,79 +0,0 @@ -# -# A single line theme with Git information on the left and Ruby on the right. -# -# Authors: -# Steve Losh -# Bart Trojanowski -# Brian Carper -# steeef -# Sorin Ionescu -# Yan Pritzker -# -# Screenshots: -# http://i.imgur.com/gLgVp6Y.png -# - -function prompt_skwp_precmd { - # Get Git repository information. - if (( $+functions[git-info] )); then - git-info - fi - - # Get Ruby information. - if (( $+functions[ruby-info] )); then - ruby-info - fi -} - -function prompt_skwp_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz add-zsh-hook - - # Add hook to set up prompt parameters before each command. - add-zsh-hook precmd prompt_skwp_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # Use extended color pallete if available. - if [[ $TERM = *256color* || $TERM = *rxvt* ]]; then - _prompt_skwp_colors=( - "%F{81}" # Turquoise - "%F{166}" # Orange - "%F{135}" # Purple - "%F{161}" # Hotpink - "%F{118}" # Limegreen - ) - else - _prompt_skwp_colors=( - "%F{cyan}" - "%F{yellow}" - "%F{magenta}" - "%F{red}" - "%F{green}" - ) - fi - - # Set git-info parameters. - zstyle ':prezto:module:git:info' verbose 'yes' - zstyle ':prezto:module:git:info:branch' format "${_prompt_skwp_colors[1]}%b%f" - zstyle ':prezto:module:git:info:added' format "${_prompt_skwp_colors[5]}●%f" - zstyle ':prezto:module:git:info:deleted' format "${_prompt_skwp_colors[2]}●%f" - zstyle ':prezto:module:git:info:modified' format "${_prompt_skwp_colors[4]}●%f" - zstyle ':prezto:module:git:info:untracked' format "${_prompt_skwp_colors[3]}●%f" - zstyle ':prezto:module:git:info:keys' format 'prompt' '(%b%d%a%m%u)' - - # Set ruby-info parameters. - zstyle ':prezto:module:ruby:info:version' format '[%v]' - - # Define prompts. - PROMPT="${_prompt_skwp_colors[3]}%n%f@${_prompt_skwp_colors[2]}%m%f ${_prompt_skwp_colors[5]}%~%f "'${git_info:+${(e)git_info[prompt]}}'"$ " - RPROMPT='%F{blue}${ruby_info[version]}' -} - -prompt_skwp_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_smiley_setup b/.zprezto/modules/prompt/functions/prompt_smiley_setup deleted file mode 100644 index cd1725b..0000000 --- a/.zprezto/modules/prompt/functions/prompt_smiley_setup +++ /dev/null @@ -1,69 +0,0 @@ -# -# A simple theme that displays: -# - Python virtual environment. -# - Git branch. -# - Git state. -# - Last command exit state (smiley/X). -# -# Authors: -# Nadav Shatz -# -# Screenshots: -# http://i.imgur.com/ijycV6n.png -# - -# Load dependencies. -pmodload 'helper' - -function prompt_smiley_precmd { - unsetopt XTRACE KSH_ARRAYS - - # Get Git repository information. - if (( $+functions[git-info] )); then - git-info - fi - - # Get Python environment information. - if (( $+functions[python-info] )); then - python-info - fi - - # Get Ruby version information. - if (( $+functions[ruby-info] )); then - ruby-info - fi -} - -function prompt_smiley_setup { - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Add hook for calling git-info before each command. - add-zsh-hook precmd prompt_smiley_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # Set editor-info parameters. - zstyle ':prezto:module:editor:info:completing' format '%B%F{red}...%f%b' - - # Set python-info parameters. - zstyle ':prezto:module:python:info:virtualenv' format '%F{yellow}[%v]%f ' - - # Set ruby-info parameters. - zstyle ':prezto:module:ruby:info:version' format '%F{yellow}[%v]%f ' - - # Set git-info parameters. - zstyle ':prezto:module:git:info' verbose 'yes' - zstyle ':prezto:module:git:info:branch' format '%F{blue}%b%f' - zstyle ':prezto:module:git:info:dirty' format '%%B%F{red} ±%f%%b' - zstyle ':prezto:module:git:info:keys' format 'prompt' '(%b%D)' - - # Define prompts. - PROMPT='$python_info[virtualenv]$ruby_info[version]${git_info:+${(e)git_info[prompt]}} %B%c%b %(?:%F{green}ツ%f:%F{red}✖%f) ' - RPROMPT='${editor_info[overwrite]}${VIM:+" %B%F{green}V%f%b"}' - SPROMPT='zsh: correct %F{red}%R%f to %F{green}%r%f [nyae]? ' -} - -prompt_smiley_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_sorin_setup b/.zprezto/modules/prompt/functions/prompt_sorin_setup deleted file mode 100644 index a7d341e..0000000 --- a/.zprezto/modules/prompt/functions/prompt_sorin_setup +++ /dev/null @@ -1,189 +0,0 @@ -# -# A simple theme that displays relevant, contextual information. -# -# Authors: -# Sorin Ionescu -# -# Screenshots: -# http://i.imgur.com/nrGV6pg.png -# - -# -# 16 Terminal Colors -# -- --------------- -# 0 black -# 1 red -# 2 green -# 3 yellow -# 4 blue -# 5 magenta -# 6 cyan -# 7 white -# 8 bright black -# 9 bright red -# 10 bright green -# 11 bright yellow -# 12 bright blue -# 13 bright magenta -# 14 bright cyan -# 15 bright white -# - -# Load dependencies. -pmodload 'helper' - -function prompt_sorin_async_callback { - case $1 in - prompt_sorin_async_git) - # We can safely split on ':' because it isn't allowed in ref names. - IFS=':' read _git_target _git_post_target <<<"$3" - - # The target actually contains 3 space separated possibilities, so we need to - # make sure we grab the first one. - _git_target=$(coalesce ${(@)${(z)_git_target}}) - - if [[ -z "$_git_target" ]]; then - # No git target detected, flush the git fragment and redisplay the prompt. - if [[ -n "$_prompt_sorin_git" ]]; then - _prompt_sorin_git='' - zle && zle reset-prompt - fi - else - # Git target detected, update the git fragment and redisplay the prompt. - _prompt_sorin_git="${_git_target}${_git_post_target}" - zle && zle reset-prompt - fi - ;; - "[async]") - # Code is 1 for corrupted worker output and 2 for dead worker. - if [[ $2 -eq 2 ]]; then - # Our worker died unexpectedly. - typeset -g prompt_prezto_async_init=0 - fi - ;; - esac -} - -function prompt_sorin_async_git { - cd -q "$1" - if (( $+functions[git-info] )); then - git-info - print ${git_info[status]} - fi -} - -function prompt_sorin_async_tasks { - # Initialize async worker. This needs to be done here and not in - # prompt_sorin_setup so the git formatting can be overridden by other prompts. - if (( !${prompt_prezto_async_init:-0} )); then - async_start_worker prompt_sorin -n - async_register_callback prompt_sorin prompt_sorin_async_callback - typeset -g prompt_prezto_async_init=1 - fi - - # Kill the old process of slow commands if it is still running. - async_flush_jobs prompt_sorin - - # Compute slow commands in the background. - async_job prompt_sorin prompt_sorin_async_git "$PWD" -} - -function prompt_sorin_precmd { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - - # Format PWD. - _prompt_sorin_pwd=$(prompt-pwd) - - # Handle updating git data. We also clear the git prompt data if we're in a - # different git root now. - if (( $+functions[git-dir] )); then - local new_git_root="$(git-dir 2> /dev/null)" - if [[ $new_git_root != $_sorin_cur_git_root ]]; then - _prompt_sorin_git='' - _sorin_cur_git_root=$new_git_root - fi - fi - - # Run python info (this should be fast and not require any async) - if (( $+functions[python-info] )); then - python-info - fi - - prompt_sorin_async_tasks -} - -function prompt_sorin_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz add-zsh-hook - autoload -Uz async && async - - # Add hook for calling git-info before each command. - add-zsh-hook precmd prompt_sorin_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # Set editor-info parameters. - zstyle ':prezto:module:editor:info:completing' format '%B%F{7}...%f%b' - zstyle ':prezto:module:editor:info:keymap:primary' format ' %B%F{1}❯%F{3}❯%F{2}❯%f%b' - zstyle ':prezto:module:editor:info:keymap:primary:overwrite' format ' %F{3}♺%f' - zstyle ':prezto:module:editor:info:keymap:alternate' format ' %B%F{2}❮%F{3}❮%F{1}❮%f%b' - - # Set git-info parameters. - zstyle ':prezto:module:git:info' verbose 'yes' - zstyle ':prezto:module:git:info:action' format '%F{7}:%f%%B%F{9}%s%f%%b' - zstyle ':prezto:module:git:info:added' format ' %%B%F{2}✚%f%%b' - zstyle ':prezto:module:git:info:ahead' format ' %%B%F{13}⬆%f%%b' - zstyle ':prezto:module:git:info:behind' format ' %%B%F{13}⬇%f%%b' - zstyle ':prezto:module:git:info:branch' format ' %%B%F{2}%b%f%%b' - zstyle ':prezto:module:git:info:commit' format ' %%B%F{3}%.7c%f%%b' - zstyle ':prezto:module:git:info:deleted' format ' %%B%F{1}✖%f%%b' - zstyle ':prezto:module:git:info:modified' format ' %%B%F{4}✱%f%%b' - zstyle ':prezto:module:git:info:position' format ' %%B%F{13}%p%f%%b' - zstyle ':prezto:module:git:info:renamed' format ' %%B%F{5}➜%f%%b' - zstyle ':prezto:module:git:info:stashed' format ' %%B%F{6}✭%f%%b' - zstyle ':prezto:module:git:info:unmerged' format ' %%B%F{3}═%f%%b' - zstyle ':prezto:module:git:info:untracked' format ' %%B%F{7}◼%f%%b' - zstyle ':prezto:module:git:info:keys' format \ - 'status' '%b %p %c:%s%A%B%S%a%d%m%r%U%u' - - # Set python-info parameters. - zstyle ':prezto:module:python:info:virtualenv' format '%f%F{3}(%v)%F{7} ' - - # Set up non-zero return value display - local show_return="✘ " - # Default is to show the return value - if zstyle -T ':prezto:module:prompt' show-return-val; then - show_return+='%? ' - fi - - # Get the async worker set up. - _sorin_cur_git_root='' - - _prompt_sorin_git='' - _prompt_sorin_pwd='' - - # Define prompts. - PROMPT='${SSH_TTY:+"%F{9}%n%f%F{7}@%f%F{3}%m%f "}%F{4}${_prompt_sorin_pwd}%(!. %B%F{1}#%f%b.)${editor_info[keymap]} ' - RPROMPT='$python_info[virtualenv]${editor_info[overwrite]}%(?:: %F{1}' - RPROMPT+=${show_return} - RPROMPT+='%f)${VIM:+" %B%F{6}V%f%b"}${_prompt_sorin_git}' - SPROMPT='zsh: correct %F{1}%R%f to %F{2}%r%f [nyae]? ' -} - -function prompt_sorin_preview { - local +h PROMPT='' - local +h RPROMPT='' - local +h SPROMPT='' - - editor-info 2> /dev/null - prompt_preview_theme 'sorin' -} - -prompt_sorin_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/functions/prompt_steeef_setup b/.zprezto/modules/prompt/functions/prompt_steeef_setup deleted file mode 100644 index d32bd34..0000000 --- a/.zprezto/modules/prompt/functions/prompt_steeef_setup +++ /dev/null @@ -1,110 +0,0 @@ -# -# A theme based on Steve Losh's Extravagant Prompt with vcs_info integration. -# -# Authors: -# Steve Losh -# Bart Trojanowski -# Brian Carper -# steeef -# Sorin Ionescu -# -# Screenshots: -# http://i.imgur.com/HyRvv.png -# - -function prompt_steeef_precmd { - # Check for untracked files or updated submodules since vcs_info does not. - if [[ -n $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then - branch_format="(${_prompt_steeef_colors[1]}%b%f%u%c${_prompt_steeef_colors[4]}●%f)" - else - branch_format="(${_prompt_steeef_colors[1]}%b%f%u%c)" - fi - - zstyle ':vcs_info:*:prompt:*' formats "${branch_format}" - - vcs_info 'prompt' - - if (( $+functions[python-info] )); then - python-info - fi -} - -function prompt_steeef_setup { - setopt LOCAL_OPTIONS - unsetopt XTRACE KSH_ARRAYS - prompt_opts=(cr percent sp subst) - - # Load required functions. - autoload -Uz add-zsh-hook - autoload -Uz vcs_info - - # Add hook for calling vcs_info before each command. - add-zsh-hook precmd prompt_steeef_precmd - - # Tell prezto we can manage this prompt - zstyle ':prezto:module:prompt' managed 'yes' - - # Use extended color pallete if available. - if [[ $TERM = *256color* || $TERM = *rxvt* ]]; then - _prompt_steeef_colors=( - "%F{81}" # Turquoise - "%F{166}" # Orange - "%F{135}" # Purple - "%F{161}" # Hotpink - "%F{118}" # Limegreen - ) - else - _prompt_steeef_colors=( - "%F{cyan}" - "%F{yellow}" - "%F{magenta}" - "%F{red}" - "%F{green}" - ) - fi - - # Formats: - # %b - branchname - # %u - unstagedstr (see below) - # %c - stagedstr (see below) - # %a - action (e.g. rebase-i) - # %R - repository path - # %S - path in the repository - local branch_format="(${_prompt_steeef_colors[1]}%b%f%u%c)" - local action_format="(${_prompt_steeef_colors[5]}%a%f)" - local unstaged_format="${_prompt_steeef_colors[2]}●%f" - local staged_format="${_prompt_steeef_colors[5]}●%f" - - # Set editor-info parameters. - zstyle ':prezto:module:editor:info:keymap:primary' format '$' - - # Set vcs_info parameters. - zstyle ':vcs_info:*' enable bzr git hg svn - zstyle ':vcs_info:*:prompt:*' check-for-changes true - zstyle ':vcs_info:*:prompt:*' unstagedstr "${unstaged_format}" - zstyle ':vcs_info:*:prompt:*' stagedstr "${staged_format}" - zstyle ':vcs_info:*:prompt:*' actionformats "${branch_format}${action_format}" - zstyle ':vcs_info:*:prompt:*' formats "${branch_format}" - zstyle ':vcs_info:*:prompt:*' nvcsformats "" - - # Set python-info parameters. - zstyle ':prezto:module:python:info:virtualenv' format '(%v)' - - # Define prompts. - PROMPT=" -${_prompt_steeef_colors[3]}%n%f at ${_prompt_steeef_colors[2]}%m%f in ${_prompt_steeef_colors[5]}%~%f "'${vcs_info_msg_0_}'" -"'$python_info[virtualenv]${editor_info[keymap]} ' - RPROMPT='' -} - -function prompt_steeef_preview { - local +h PROMPT='' - local +h RPROMPT='' - local +h SPROMPT='' - - editor-info 2> /dev/null - prompt_preview_theme 'steeef' -} - -prompt_steeef_setup "$@" -# vim: ft=zsh diff --git a/.zprezto/modules/prompt/init.zsh b/.zprezto/modules/prompt/init.zsh deleted file mode 100644 index 3180883..0000000 --- a/.zprezto/modules/prompt/init.zsh +++ /dev/null @@ -1,28 +0,0 @@ -# -# Loads prompt themes. -# -# Authors: -# Sorin Ionescu -# - -# Load and execute the prompt theming system. -autoload -Uz promptinit && promptinit - -# Load the prompt theme. -zstyle -a ':prezto:module:prompt' theme 'prompt_argv' -if [[ "$TERM" == (dumb|linux|*bsd*) ]] || (( $#prompt_argv < 1 )); then - prompt 'off' -elif [[ "$prompt_argv[1]" == 'powerlevel9k' ]] ; then - < -# Patrick Bos -# - -# function python-info { - -local virtualenv_format -local virtualenv_formatted -local version_format -local version_formatted -local version - -# Clean up previous $python_info. -unset python_info -typeset -gA python_info - -# Grab the styling we might have to do -zstyle -s ':prezto:module:python:info:virtualenv' format 'virtualenv_format' -zstyle -s ':prezto:module:python:info:version' format 'version_format' - -# Format virtualenv. -if [[ -n "$virtualenv_format" ]]; then - if [[ -n "$VIRTUAL_ENV" ]]; then - zformat -f virtualenv_formatted "$virtualenv_format" "v:${VIRTUAL_ENV:t}" - python_info[virtualenv]="$virtualenv_formatted" - fi - - # Do the same for Conda virtual environments - if [[ -n "$CONDA_DEFAULT_ENV" ]]; then - zformat -f virtualenv_formatted "$virtualenv_format" "v:${CONDA_DEFAULT_ENV:t}" - python_info[virtualenv]="$virtualenv_formatted" - fi -fi - -if [[ -n "$version_format" ]]; then - if (( $+commands[pyenv] )); then - version="${"$(pyenv version)"%% *}" - elif (( $+commands[python] )); then - version="${$(python3 --version)#Python }" - fi - - if [[ -n "$version" && "$version" != "system" ]]; then - zformat -f version_formatted "$version_format" "v:$version" - python_info[version]="$version_formatted" - fi -fi - -# } diff --git a/.zprezto/modules/python/init.zsh b/.zprezto/modules/python/init.zsh deleted file mode 100644 index 91aa6d0..0000000 --- a/.zprezto/modules/python/init.zsh +++ /dev/null @@ -1,165 +0,0 @@ -# -# Enables local Python package installation. -# -# Authors: -# Sorin Ionescu -# Sebastian Wiesner -# Patrick Bos -# Indrajit Raychaudhuri -# - -# Load dependencies. -pmodload 'helper' - -# Load manually installed or package manager installed pyenv into the shell -# session. -if [[ -s "${local_pyenv::=${PYENV_ROOT:-$HOME/.pyenv}/bin/pyenv}" ]] \ - || (( $+commands[pyenv] )); then - - # Ensure manually installed pyenv is added to path when present. - [[ -s $local_pyenv ]] && path=($local_pyenv:h $path) - - # pyenv 2+ requires shims to be added to path before being initialized. - autoload -Uz is-at-least - if is-at-least 2 ${"$(pyenv --version 2>&1)"[(w)2]}; then - eval "$(pyenv init --path zsh)" - fi - - eval "$(pyenv init - zsh)" - -# Prepend PEP 370 per user site packages directory, which defaults to -# ~/Library/Python on macOS and ~/.local elsewhere, to PATH. The -# path can be overridden using PYTHONUSERBASE. -else - if [[ -n "$PYTHONUSERBASE" ]]; then - path=($PYTHONUSERBASE/bin(N) $path) - elif is-darwin; then - path=($HOME/Library/Python/*/bin(N) $path) - else - # This is subject to change. - path=($HOME/.local/bin(N) $path) - fi -fi - -unset local_pyenv - -# Return if requirements are not found. -if (( ! $#commands[(i)python[23]#] && ! $+functions[pyenv] && ! $+commands[conda] )); then - return 1 -fi - -function _python-workon-cwd { - # Check if this is a Git repo. - local GIT_REPO_ROOT="$(git rev-parse --show-toplevel 2> /dev/null)" - # Get absolute path, resolving symlinks. - local PROJECT_ROOT="$PWD:A" - while [[ "$PROJECT_ROOT" != "/" && ! -e "$PROJECT_ROOT/.venv" \ - && ! -d "$PROJECT_ROOT/.git" && "$PROJECT_ROOT" != "$GIT_REPO_ROOT" ]]; do - PROJECT_ROOT="$PROJECT_ROOT:h" - done - if [[ $PROJECT_ROOT == "/" ]]; then - PROJECT_ROOT="." - fi - # Check for virtualenv name override. - local ENV_NAME="" - if [[ -f "$PROJECT_ROOT/.venv" ]]; then - ENV_NAME="$(<$PROJECT_ROOT/.venv)" - elif [[ -f "$PROJECT_ROOT/.venv/bin/activate" ]]; then - ENV_NAME="$PROJECT_ROOT/.venv" - elif [[ $PROJECT_ROOT != "." ]]; then - ENV_NAME="$PROJECT_ROOT:t" - fi - if [[ -n $CD_VIRTUAL_ENV && "$ENV_NAME" != "$CD_VIRTUAL_ENV" ]]; then - # We've just left the repo, deactivate the environment. - # Note: this only happens if the virtualenv was activated automatically. - deactivate && unset CD_VIRTUAL_ENV - fi - if [[ $ENV_NAME != "" ]]; then - # Activate the environment only if it is not already active. - if [[ "$VIRTUAL_ENV" != "$WORKON_HOME/$ENV_NAME" ]]; then - if [[ -n "$WORKON_HOME" && -e "$WORKON_HOME/$ENV_NAME/bin/activate" ]]; then - workon "$ENV_NAME" && export CD_VIRTUAL_ENV="$ENV_NAME" - elif [[ -e "$ENV_NAME/bin/activate" ]]; then - source $ENV_NAME/bin/activate && export CD_VIRTUAL_ENV="$ENV_NAME" - fi - fi - fi -} - -# Load auto workon cwd hook. -if zstyle -t ':prezto:module:python:virtualenv' auto-switch; then - # Auto workon when changing directory. - autoload -Uz add-zsh-hook - add-zsh-hook chpwd _python-workon-cwd -fi - -# Load virtualenvwrapper into the shell session, if pre-requisites are met -# and unless explicitly requested not to -if (( $+VIRTUALENVWRAPPER_VIRTUALENV || $+commands[virtualenv] )) \ - && zstyle -T ':prezto:module:python:virtualenv' initialize ; then - # Set the directory where virtual environments are stored. - export WORKON_HOME="${WORKON_HOME:-$HOME/.virtualenvs}" - - # Disable the virtualenv prompt. Note that we use the magic value used by the - # pure prompt because there's some additional logic in that prompt which tries - # to figure out if a user set this variable and disable the python portion of - # that prompt based on it which is the exact opposite of what we want to do. - export VIRTUAL_ENV_DISABLE_PROMPT=12 - - # Create a sorted array of available virtualenv related 'pyenv' commands to - # look for plugins of interest. Scanning shell '$path' isn't enough as they - # can exist in 'pyenv' synthesized paths (e.g., '~/.pyenv/plugins') instead. - local -a pyenv_plugins - if (( $+commands[pyenv] )); then - pyenv_plugins=(${(@oM)${(f)"$(pyenv commands --no-sh 2> /dev/null)"}:#virtualenv*}) - fi - - if (( $pyenv_plugins[(i)virtualenv-init] <= $#pyenv_plugins )); then - # Enable 'virtualenv' with 'pyenv'. - eval "$(pyenv virtualenv-init - zsh)" - - # Optionally activate 'virtualenvwrapper' plugin when available. - if (( $pyenv_plugins[(i)virtualenvwrapper(_lazy|)] <= $#pyenv_plugins )); then - pyenv "$pyenv_plugins[(R)virtualenvwrapper(_lazy|)]" - fi - else - # Fallback to 'virtualenvwrapper' without 'pyenv' wrapper if 'python' is - # available in '$path'. - if (( ! $+VIRTUALENVWRAPPER_PYTHON )) && (( $#commands[(i)python[23]#] )); then - VIRTUALENVWRAPPER_PYTHON=$commands[(i)python[23]#] - fi - - virtenv_sources=( - ${(@Ov)commands[(I)virtualenvwrapper(_lazy|).sh]} - /usr/share/virtualenvwrapper/virtualenvwrapper(_lazy|).sh(OnN) - ) - if (( $#virtenv_sources )); then - source "$virtenv_sources[1]" - fi - - unset virtenv_sources - fi - - unset pyenv_plugins -fi - -# Load conda into the shell session, if requested. -zstyle -T ':prezto:module:python' conda-init -if (( $? && $+commands[conda] )); then - if (( $(conda ..changeps1) )); then - echo "To make sure Conda doesn't change your prompt (should do that in the prompt module) run:\n conda config --set changeps1 false" - # TODO: - # We could just run this ourselves. In an exit hook - # (add zsh-hook zshexit [(anonymous) function]) we could then set it back - # to the way it was before we changed it. However, I'm not sure if this is - # exception safe, so left it like this for now. - fi -fi - -# -# Aliases -# - -alias py='python' -alias py2='python2' -alias py3='python3' diff --git a/.zprezto/modules/rails/README.md b/.zprezto/modules/rails/README.md deleted file mode 100644 index 129627a..0000000 --- a/.zprezto/modules/rails/README.md +++ /dev/null @@ -1,31 +0,0 @@ -# Ruby on Rails - -Defines [Ruby on Rails][1] aliases. - -## Aliases - -- `ror` is short for `rails`. -- `rorc` starts the Rails console. -- `rordc` starts the Rails console connected to the database. -- `rordm` migrates the database. -- `rordM` migrates the database and recreates the test database. -- `rordr` rolls the database schema back to the previous version. -- `rorg` generates new code. -- `rorl` displays the log. -- `rorlc` truncates logs to zero bytes. -- `rorp` installs a plugin. -- `rorr` runs code in the application environment. -- `rors` starts the Rails server. -- `rorsd` starts the Rails server with the debugger. -- `rorx` destroys newly generated code. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Robby Russell](https://github.com/robbyrussell) -- [Jake Bell](https://github.com/theunraveler) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://rubyonrails.org -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/rails/init.zsh b/.zprezto/modules/rails/init.zsh deleted file mode 100644 index 44b53e9..0000000 --- a/.zprezto/modules/rails/init.zsh +++ /dev/null @@ -1,35 +0,0 @@ -# -# Defines Ruby on Rails aliases. -# -# Authors: -# Robby Russell -# Jake Bell -# Sorin Ionescu -# - -# Load dependencies. -pmodload 'ruby' - -# Return if requirements are not found. -if (( ! $+commands[bundle] )); then - return 1 -fi - -# -# Aliases -# - -alias ror='bundle exec rails' -alias rorc='bundle exec rails console' -alias rordc='bundle exec rails dbconsole' -alias rordm='bundle exec rake db:migrate' -alias rordM='bundle exec rake db:migrate db:test:clone' -alias rordr='bundle exec rake db:rollback' -alias rorg='bundle exec rails generate' -alias rorl='tail -f "$(ruby-app-root)/log/development.log"' -alias rorlc='bundle exec rake log:clear' -alias rorp='bundle exec rails plugin' -alias rorr='bundle exec rails runner' -alias rors='bundle exec rails server' -alias rorsd='bundle exec rails server --debugger' -alias rorx='bundle exec rails destroy' diff --git a/.zprezto/modules/rsync/README.md b/.zprezto/modules/rsync/README.md deleted file mode 100644 index ca0627f..0000000 --- a/.zprezto/modules/rsync/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# Rsync - -Defines [rsync][1] aliases. - -macOS users are encouraged to use _rsync_ from [Homebrew][2] or [MacPorts][3], -which has additional enhancements including patches from [Bombich][4]. - -## Aliases - -- `rsync-copy` copies files and directories from _source_ to _destination_. -- `rsync-move` moves files and directories from _source_ to _destination_. -- `rsync-update` updates files and directories on _destination_. -- `rsync-synchronize` synchronizes files and directories between _source_ and - _destination_. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][5]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://rsync.samba.org -[2]: https://github.com/Homebrew/homebrew-core -[3]: https://ports.macports.org/port/rsync -[4]: https://bombich.com/kb/ccc5/credits#rsync -[5]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/rsync/init.zsh b/.zprezto/modules/rsync/init.zsh deleted file mode 100644 index 47eabfe..0000000 --- a/.zprezto/modules/rsync/init.zsh +++ /dev/null @@ -1,43 +0,0 @@ -# -# Defines Rsync aliases. -# -# Authors: -# Sorin Ionescu -# - -# Return if requirements are not found. -if (( ! $+commands[rsync] )); then - return 1 -fi - -# Load dependencies. -pmodload 'helper' - -# -# Aliases -# - -_rsync_cmd='rsync --verbose --progress --human-readable --compress --archive \ - --hard-links --one-file-system' - -autoload -Uz is-at-least -if is-at-least 3.1 ${"$(rsync --version 2>&1)"[(w)3]}; then - - # ACL and extended attributes support - if grep -q 'xattrs' <(rsync --help 2>&1); then - _rsync_cmd="${_rsync_cmd} --acls --xattrs" - fi - - # macOS Enhancements - # https://bombich.com/kb/ccc5/credits - if is-darwin && grep -q 'file-flags' <(rsync --help 2>&1); then - _rsync_cmd="${_rsync_cmd} --crtimes --fileflags --force-change" - fi -fi - -alias rsync-copy="${_rsync_cmd}" -alias rsync-move="${_rsync_cmd} --remove-source-files" -alias rsync-update="${_rsync_cmd} --update" -alias rsync-synchronize="${_rsync_cmd} --update --delete" - -unset _rsync_cmd diff --git a/.zprezto/modules/ruby/README.md b/.zprezto/modules/ruby/README.md deleted file mode 100644 index 97a09f0..0000000 --- a/.zprezto/modules/ruby/README.md +++ /dev/null @@ -1,106 +0,0 @@ -# Ruby - -Configures [Ruby][1] local gem installation, loads version managers, and defines -aliases. - -## Local Gem Installation - -When a Ruby version manager is not detected, local gems are installed in -_`~/.gem`_; otherwise, they are installed according to the manager. - -## rbenv - -An alternative RVM is to use [_rbenv_][2], which allows for switching between -multiple, isolated Ruby installations in the home directory. - -While it is not as feature rich as RVM, it is not loaded into the shell and is -not known to cause conflicts with shell scripts. - -This will be loaded automatically if _rbenv_ is installed to `$RBENV_ROOT`, -_`~/.rbenv`_, or if the `rbenv` command is on the path. - -## rvm - -An alternative to the above is to use [The Ruby Version Manager (_rvm_)][3], -which allows for managing multiple, isolated Ruby installations and gem sets in -the home directory. - -Since RVM is loaded into the shell and is known to override shell commands, it -may conflict with shell scripts. - -Load this module as late as possible when using RVM since RVM will complain if -it is not first in `$PATH`. - -## chruby - -Yet another alternative is [_chruby_][4], which is simpler than both _rvm_ and -_rbenv_. - -### Settings - -#### Auto-Switch - -To enable auto switching the Ruby version on directory change based on the -`.ruby-version` file, add the following line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:ruby:chruby' auto-switch 'yes' -``` - -## Bundler - -Manage gems that are not meant to be used as commands, such as application -dependencies, with [Bundler][5]. - -## Aliases - -### General - -- `rb` is short for `ruby`. - -### Bundler - -- `rbb` manages ruby dependencies (`bundle`). -- `rbbc` cleans up unused gems in your bundler directory. -- `rbbe` executes a script in the context of the current bundle. -- `rbbi` installs the gems specified in the `Gemfile` in `vendor/bundle`. -- `rbbI` installs the following: - - gems specified in the `Gemfile` in `vendor/bundle`. - - packages the gems into `vendor/cache`. - - appends bundler directories to `.gitignore`. -- `rbbl` lists all gems in the current bundle. -- `rbbo` opens an installed gem in the editor. -- `rbbp` packages gem files into `vendor/cache`. -- `rbbu` updates gems to their latest version. - -## Functions - -- `ruby-app-root` displays the path to the Ruby application root directory. -- `ruby-info` exposes information about the Ruby environment via the - `$ruby_info` associative array. - -## Theming - -To display the name of the current Ruby version in a prompt, define the -following style in the `prompt_name_setup` function. - -```sh -# %v - ruby version. -zstyle ':prezto:module:ruby:info:version' format 'version:%v' -``` - -Then add `$ruby_info[version]` to `$PROMPT` or `$RPROMPT` and call -`ruby-info` in the `prompt_name_preexec` hook function. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][6]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://www.ruby-lang.org -[2]: https://github.com/rbenv/rbenv -[3]: https://rvm.io -[4]: https://github.com/postmodern/chruby -[5]: https://gembundler.com -[6]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/ruby/functions/ruby-app-root b/.zprezto/modules/ruby/functions/ruby-app-root deleted file mode 100644 index ef28c5b..0000000 --- a/.zprezto/modules/ruby/functions/ruby-app-root +++ /dev/null @@ -1,22 +0,0 @@ -# -# Displays the path to the Ruby application root directory. -# -# Authors: -# Sorin Ionescu -# - -# function ruby-app-root { - -local root_dir="$PWD" - -while [[ "$root_dir" != '/' ]]; do - if [[ -f "$root_dir/Gemfile" ]]; then - print "$root_dir" - break - fi - root_dir="$root_dir:h" -done - -return 1 - -# } diff --git a/.zprezto/modules/ruby/functions/ruby-info b/.zprezto/modules/ruby/functions/ruby-info deleted file mode 100644 index cba0188..0000000 --- a/.zprezto/modules/ruby/functions/ruby-info +++ /dev/null @@ -1,38 +0,0 @@ -# -# Exposes information about the Ruby environment via the $ruby_info associative -# array. -# -# Authors: -# Sorin Ionescu -# - -# function ruby-info { - -local version -local version_format -local version_formatted - -# Clean up previous $ruby_info. -unset ruby_info -typeset -gA ruby_info - -# Grab formatting for anything we might have to do -zstyle -s ':prezto:module:ruby:info:version' format 'version_format' - -if [[ -n "$version_format" ]]; then - if (( $+commands[rvm-prompt] )); then - version="$(rvm-prompt)" - elif (( $+commands[rbenv] )); then - version="$(rbenv version-name)" - elif (( $+commands[ruby] )); then - version="${${$(ruby --version)[(w)1,(w)2]}/ /-}" - fi - - # Format version. - if [[ -n "$version" && "$version" != "system" ]]; then - zformat -f version_formatted "$version_format" "v:$version" - ruby_info[version]="$version_formatted" - fi -fi - -# } diff --git a/.zprezto/modules/ruby/init.zsh b/.zprezto/modules/ruby/init.zsh deleted file mode 100644 index cf55bc5..0000000 --- a/.zprezto/modules/ruby/init.zsh +++ /dev/null @@ -1,81 +0,0 @@ -# -# Configures Ruby local installation, loads version managers, and defines -# aliases. -# -# Authors: -# Sorin Ionescu -# Indrajit Raychaudhuri -# - -# Possible lookup locations for manually installed rbenv and rvm. -local_rbenv_paths=({$RBENV_ROOT,{$XDG_CONFIG_HOME/,$HOME/.}rbenv}/bin/rbenv(N)) -local_rvm_paths=({$RVM_DIR,{$XDG_CONFIG_HOME/,$HOME/.}rvm}/scripts/rvm(N)) - -# Load manually installed or package manager installed rbenv into the shell -# session. -if (( $#local_rbenv_paths || $+commands[rbenv] )); then - - # Ensure manually installed rbenv is added to path when present. - [[ -s $local_rbenv_paths[1] ]] && path=($local_rbenv_paths[1]:h $path) - - eval "$(rbenv init - zsh)" - -# Load manually installed rvm into the shell session. -elif (( $#local_rvm_paths )); then - # Unset AUTO_NAME_DIRS since auto adding variable-stored paths to ~ list - # conflicts with rvm. - unsetopt AUTO_NAME_DIRS - - source "$local_rvm_paths[1]" - -# Load package manager installed chruby into the shell session. -elif (( $+commands[chruby-exec] )); then - if (( ! $+functions[chruby] )); then - source "${commands[chruby-exec]:h:h}/share/chruby/chruby.sh" - fi - - if zstyle -t ':prezto:module:ruby:chruby' auto-switch; then - if (( ! $+functions[chruby_auto] )); then - source "${commands[chruby-exec]:h:h}/share/chruby/auto.sh" - fi - - # If a default ruby is set, switch to it. - chruby_auto - fi - -# Prepend local gems bin directories to PATH. -else - path=($HOME/.gem/ruby/*/bin(N) $path) -fi - -unset local_rbenv - -# Return if requirements are not found. -if (( ! $+commands[ruby] && ! $#functions[(i)r(benv|vm)] )); then - return 1 -fi - -# -# Aliases -# - -# General -alias rb='ruby' - -# Bundler -if (( $+commands[bundle] )); then - alias rbb='bundle' - alias rbbc='bundle clean' - alias rbbe='bundle exec' - alias rbbi='bundle install --path vendor/bundle' - alias rbbl='bundle list' - alias rbbo='bundle open' - alias rbbp='bundle package' - alias rbbu='bundle update' - alias rbbI='rbbi \ - && bundle package \ - && print .bundle >>! .gitignore \ - && print vendor/assets >>! .gitignore \ - && print vendor/bundle >>! .gitignore \ - && print vendor/cache >>! .gitignore' -fi diff --git a/.zprezto/modules/screen/README.md b/.zprezto/modules/screen/README.md deleted file mode 100644 index a1775f7..0000000 --- a/.zprezto/modules/screen/README.md +++ /dev/null @@ -1,40 +0,0 @@ -# GNU Screen - -Defines [GNU Screen][1] aliases and provides for auto launching it at start-up. - -## Settings - -### Auto-Start - -Starts a GNU Screen session automatically when Zsh is launched. - -To enable this feature when launching Zsh in a local terminal, add the following -line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:screen:auto-start' local 'yes' -``` - -To enable this feature when launching Zsh in a SSH connection, add the following -line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:screen:auto-start' remote 'yes' -``` - -## Aliases - -- `scr` is short for `screen`. -- `scrl` lists sessions/socket directory. -- `scrn` starts a new session. -- `scrr` attaches to a session if one exists or start a new one. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) -- [Georges Discry](https://github.com/gdiscry) - -[1]: https://www.gnu.org/software/screen/ -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/screen/init.zsh b/.zprezto/modules/screen/init.zsh deleted file mode 100644 index 0dee1c9..0000000 --- a/.zprezto/modules/screen/init.zsh +++ /dev/null @@ -1,42 +0,0 @@ -# -# Defines GNU Screen aliases and provides for auto launching it at start-up. -# -# Authors: -# Sorin Ionescu -# Georges Discry -# - -# Return if requirements are not found. -if (( ! $+commands[screen] )); then - return 1 -fi - -# -# Auto Start -# - -if [[ -z "$STY" && -z "$EMACS" && -z "$VIM" ]] && ( \ - ( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:screen:auto-start' remote ) || - ( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:screen:auto-start' local ) \ -); then - session="$( - screen -list 2> /dev/null \ - | sed '1d;$d' \ - | awk '{print $1}' \ - | head -1)" - - if [[ -n "$session" ]]; then - exec screen -x "$session" - else - exec screen -a -A -U -D -R -m "$SHELL" -l - fi -fi - -# -# Aliases -# - -alias scr='screen' -alias scrl='screen -list' -alias scrn='screen -U -S' -alias scrr='screen -a -A -U -D -R' diff --git a/.zprezto/modules/spectrum/README.md b/.zprezto/modules/spectrum/README.md deleted file mode 100644 index de393a7..0000000 --- a/.zprezto/modules/spectrum/README.md +++ /dev/null @@ -1,88 +0,0 @@ -# Spectrum - -Provides for easier use of 256 colors and effects. - -To learn more about text formatting, read [A Guide to 256 Color Codes][1]. - -## Variables - -- `BG` provides background colors. -- `FG` provides foreground colors. -- `FX` provides effects. - -### Background and Foreground - -Terminals support 8, 16, 88, and 256 colors. Check if a terminal supports 256 -colors with `tput colors` before use. - -The following colors are supported. - -- 0 to 255 -- black -- red -- green -- yellow -- blue -- magenta -- cyan -- white - -### Effects - -Though there are many effects, most terminals support at least bold formatting. - -**Not all effects work on all terminals; use them sparingly.** - -| Enable | Disable | -| ------------------------- | ---------------------------- | -| | none | -| | normal | -| bold | no-bold | -| faint | no-faint | -| standout | no-standout | -| underline | no-underline | -| blink | no-blink | -| fast-blink | no-fast-blink | -| reverse | no-reverse | -| conceal | no-conceal | -| strikethrough | no-strikethrough | -| gothic | no-gothic | -| double-underline | no-double-underline | -| proportional | no-proportional | -| overline | no-overline | -| | | -| | no-border | -| border-rectangle | no-border-rectangle | -| border-circle | no-border-circle | -| | | -| | no-ideogram-marking | -| underline-or-right | no-underline-or-right | -| double-underline-or-right | no-double-underline-or-right | -| overline-or-left | no-overline-or-left | -| double-overline-or-left | no-double-overline-or-left | -| stress | no-stress | -| | | -| | font-default | -| font-first | no-font-first | -| font-second | no-font-second | -| font-third | no-font-third | -| font-fourth | no-font-fourth | -| font-fifth | no-font-fifth | -| font-sixth | no-font-sixth | -| font-seventh | no-font-seventh | -| font-eighth | no-font-eighth | -| font-ninth | no-font-ninth | - -### Plain Text - -Use `$BG[none]`, `$FG[none]`, or `$FX[none]` to turn off formatting. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [P.C. Shyamshankar](https://github.com/sykora) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: http://lucentbeing.com/writing/archives/a-guide-to-256-color-codes/ -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/spectrum/init.zsh b/.zprezto/modules/spectrum/init.zsh deleted file mode 100644 index 78beaed..0000000 --- a/.zprezto/modules/spectrum/init.zsh +++ /dev/null @@ -1,69 +0,0 @@ -# -# Provides for easier use of 256 colors and effects. -# -# Authors: -# P.C. Shyamshankar -# Sorin Ionescu -# - -# Return if requirements are not found. -if [[ "$TERM" == 'dumb' ]]; then - return 1 -fi - -typeset -gA FX FG BG - -FX=( - none "\e[00m" - normal "\e[22m" - bold "\e[01m" no-bold "\e[22m" - faint "\e[02m" no-faint "\e[22m" - standout "\e[03m" no-standout "\e[23m" - underline "\e[04m" no-underline "\e[24m" - blink "\e[05m" no-blink "\e[25m" - fast-blink "\e[06m" no-fast-blink "\e[25m" - reverse "\e[07m" no-reverse "\e[27m" - conceal "\e[08m" no-conceal "\e[28m" - strikethrough "\e[09m" no-strikethrough "\e[29m" - gothic "\e[20m" no-gothic "\e[22m" - double-underline "\e[21m" no-double-underline "\e[22m" - proportional "\e[26m" no-proportional "\e[50m" - overline "\e[53m" no-overline "\e[55m" - - no-border "\e[54m" - border-rectangle "\e[51m" no-border-rectangle "\e[54m" - border-circle "\e[52m" no-border-circle "\e[54m" - - no-ideogram-marking "\e[65m" - underline-or-right "\e[60m" no-underline-or-right "\e[65m" - double-underline-or-right "\e[61m" no-double-underline-or-right "\e[65m" - overline-or-left "\e[62m" no-overline-or-left "\e[65m" - double-overline-or-left "\e[63m" no-double-overline-or-left "\e[65m" - stress "\e[64m" no-stress "\e[65m" - - font-default "\e[10m" - font-first "\e[11m" no-font-first "\e[10m" - font-second "\e[12m" no-font-second "\e[10m" - font-third "\e[13m" no-font-third "\e[10m" - font-fourth "\e[14m" no-font-fourth "\e[10m" - font-fifth "\e[15m" no-font-fifth "\e[10m" - font-sixth "\e[16m" no-font-sixth "\e[10m" - font-seventh "\e[17m" no-font-seventh "\e[10m" - font-eighth "\e[18m" no-font-eighth "\e[10m" - font-ninth "\e[19m" no-font-ninth "\e[10m" -) - -FG[none]="$FX[none]" -BG[none]="$FX[none]" -colors=(black red green yellow blue magenta cyan white) -for color in {0..255}; do - if (( $color >= 0 )) && (( $color < $#colors )); then - index=$(( $color + 1 )) - FG[$colors[$index]]="\e[38;5;${color}m" - BG[$colors[$index]]="\e[48;5;${color}m" - fi - - FG[$color]="\e[38;5;${color}m" - BG[$color]="\e[48;5;${color}m" -done -unset color{s,} index diff --git a/.zprezto/modules/ssh/README.md b/.zprezto/modules/ssh/README.md deleted file mode 100644 index 5b81409..0000000 --- a/.zprezto/modules/ssh/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# SSH - -Provides for an easier use of [SSH][1] by setting up [_ssh-agent_][2]. - -## Settings - -### Identities - -To load multiple identities, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:ssh:load' identities 'id_rsa' 'id_dsa' 'id_github' -``` - -## Authors - -_The authors of this module should be contacted via the [issue tracker][3]._ - -[Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://www.openssh.com -[2]: https://www.openbsd.org/cgi-bin/man.cgi?query=ssh-agent&sektion=1 -[3]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/ssh/init.zsh b/.zprezto/modules/ssh/init.zsh deleted file mode 100644 index b9567d4..0000000 --- a/.zprezto/modules/ssh/init.zsh +++ /dev/null @@ -1,62 +0,0 @@ -# -# Provides for an easier use of SSH by setting up ssh-agent. -# -# Authors: -# Sorin Ionescu -# - -# Return if requirements are not found. -if (( ! $+commands[ssh-agent] )); then - return 1 -fi - -# Set the path to the SSH directory. -_ssh_dir="$HOME/.ssh" - -# Set the path to the environment file if not set by another module. -_ssh_agent_env="${_ssh_agent_env:-${XDG_CACHE_HOME:-$HOME/.cache}/prezto/ssh-agent.env}" - -# Set the path to the persistent authentication socket. -_ssh_agent_sock="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/ssh-agent.sock" - -# Start ssh-agent if not started. -if [[ ! -S "$SSH_AUTH_SOCK" ]]; then - # Export environment variables. - source "$_ssh_agent_env" 2> /dev/null - - # Start ssh-agent if not started. - if ! ps -U "$LOGNAME" -o pid,ucomm | grep -q -- "${SSH_AGENT_PID:--1} ssh-agent"; then - mkdir -p "$_ssh_agent_env:h" - eval "$(ssh-agent | sed '/^echo /d' | tee "$_ssh_agent_env")" - fi -fi - -# Create a persistent SSH authentication socket. -if [[ -S "$SSH_AUTH_SOCK" && "$SSH_AUTH_SOCK" != "$_ssh_agent_sock" ]]; then - mkdir -p "$_ssh_agent_sock:h" - ln -sf "$SSH_AUTH_SOCK" "$_ssh_agent_sock" - export SSH_AUTH_SOCK="$_ssh_agent_sock" -fi - -# Load identities. -if ssh-add -l 2>&1 | grep -q 'The agent has no identities'; then - zstyle -a ':prezto:module:ssh:load' identities '_ssh_identities' - # ssh-add has strange requirements for running SSH_ASKPASS, so we duplicate - # them here. Essentially, if the other requirements are met, we redirect stdin - # from /dev/null in order to meet the final requirement. - # - # From ssh-add(1): - # If ssh-add needs a passphrase, it will read the passphrase from the current - # terminal if it was run from a terminal. If ssh-add does not have a terminal - # associated with it but DISPLAY and SSH_ASKPASS are set, it will execute the - # program specified by SSH_ASKPASS and open an X11 window to read the - # passphrase. - if [[ -n "$DISPLAY" && -x "$SSH_ASKPASS" ]]; then - ssh-add ${_ssh_identities:+$_ssh_dir/${^_ssh_identities[@]}} < /dev/null 2> /dev/null - else - ssh-add ${_ssh_identities:+$_ssh_dir/${^_ssh_identities[@]}} 2> /dev/null - fi -fi - -# Clean up. -unset _ssh_{dir,identities} _ssh_agent_{env,sock} diff --git a/.zprezto/modules/syntax-highlighting/README.md b/.zprezto/modules/syntax-highlighting/README.md deleted file mode 100644 index 3debb67..0000000 --- a/.zprezto/modules/syntax-highlighting/README.md +++ /dev/null @@ -1,78 +0,0 @@ -# Syntax Highlighting - -Integrates [zsh-syntax-highlighting][1] into Prezto. - -This module must be loaded _before_ the _`prompt`_ module. - -If this module is used in conjunction with the [_`history-substring-search`_][2] -module, this module must be loaded _before_ the _`history-substring-search`_ -module. - -Additionally, if this module is used in conjunction with the -[_`autosuggestions`_][3] module, this module must be loaded _before_ the -_`autosuggestions`_ module as well. - -To elaborate, the relative order of loading the modules would be -_`syntax-highlighting`_, _`history-substring-search`_, _`autosuggestions`_ and -_`prompt`_. - -## Contributors - -New features and bug fixes should be submitted to the -[zsh-syntax-highlighting][1] project according to its rules and regulations. -This module will be synchronized against it. - -## Settings - -### Highlighting - -To enable highlighting for this module only, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:syntax-highlighting' color 'yes' -``` - -### Highlighters - -Syntax highlighting is accomplished by pluggable [highlighters][4]. This module -only enables the _main_ highlighter by default. - -To enable all highlighters, add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_. - -```sh -zstyle ':prezto:module:syntax-highlighting' highlighters \ - 'main' \ - 'brackets' \ - 'pattern' \ - 'line' \ - 'cursor' \ - 'root' -``` - -### Highlighting Styles - -Each syntax highlighter defines styles used to highlight tokens. - -To highlight, for example, builtins, commands, and functions in blue instead of -green, add the following to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:syntax-highlighting' styles \ - 'builtin' 'bg=blue' \ - 'command' 'bg=blue' \ - 'function' 'bg=blue' -``` - -## Authors - -_The authors of this module should be contacted via the [issue tracker][5]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: https://github.com/zsh-users/zsh-syntax-highlighting -[2]: ../history-substring-search#readme -[3]: ../autosuggestions#readme -[4]: https://github.com/zsh-users/zsh-syntax-highlighting/tree/master/highlighters -[5]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/syntax-highlighting/external b/.zprezto/modules/syntax-highlighting/external deleted file mode 160000 index 932e29a..0000000 --- a/.zprezto/modules/syntax-highlighting/external +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 932e29a0c75411cb618f02995b66c0a4a25699bc diff --git a/.zprezto/modules/syntax-highlighting/init.zsh b/.zprezto/modules/syntax-highlighting/init.zsh deleted file mode 100644 index 52cc0c3..0000000 --- a/.zprezto/modules/syntax-highlighting/init.zsh +++ /dev/null @@ -1,36 +0,0 @@ -# -# Integrates zsh-syntax-highlighting into Prezto. -# -# Authors: -# Sorin Ionescu -# - -# Return if requirements are not found. -if ! zstyle -t ':prezto:module:syntax-highlighting' color; then - return 1 -fi - -# Source module files. -source "${0:h}/external/zsh-syntax-highlighting.zsh" || return 1 - -# Set highlighters. -zstyle -a ':prezto:module:syntax-highlighting' highlighters 'ZSH_HIGHLIGHT_HIGHLIGHTERS' -if (( ${#ZSH_HIGHLIGHT_HIGHLIGHTERS[@]} == 0 )); then - ZSH_HIGHLIGHT_HIGHLIGHTERS=(main) -fi - -# Set highlighting styles. -typeset -A syntax_highlighting_styles -zstyle -a ':prezto:module:syntax-highlighting' styles 'syntax_highlighting_styles' -for syntax_highlighting_style in "${(k)syntax_highlighting_styles[@]}"; do - ZSH_HIGHLIGHT_STYLES[$syntax_highlighting_style]="$syntax_highlighting_styles[$syntax_highlighting_style]" -done -unset syntax_highlighting_style{s,} - -# Set pattern highlighting styles. -typeset -A syntax_pattern_styles -zstyle -a ':prezto:module:syntax-highlighting' pattern 'syntax_pattern_styles' -for syntax_pattern_style in "${(k)syntax_pattern_styles[@]}"; do - ZSH_HIGHLIGHT_PATTERNS[$syntax_pattern_style]="$syntax_pattern_styles[$syntax_pattern_style]" -done -unset syntax_pattern_style{s,} diff --git a/.zprezto/modules/terminal/README.md b/.zprezto/modules/terminal/README.md deleted file mode 100644 index be4e3a1..0000000 --- a/.zprezto/modules/terminal/README.md +++ /dev/null @@ -1,54 +0,0 @@ -# Terminal - -Sets terminal window and tab titles. - -## Settings - -### Auto-Title - -To auto set the terminal window and tab titles with the current command or -directory, add the following to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:terminal' auto-title 'yes' -``` - -Auto titling is disabled inside terminal multiplexers (except inside dvtm) since -it interferes with window names defined in configuration files and profile -managers. This can be overridden by setting it to `always`. - -```sh -zstyle ':prezto:module:terminal' auto-title 'always' -``` - -### Title formats - -To format terminal window and tab titles, add the following to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_. - -```sh -zstyle ':prezto:module:terminal:window-title' format '%n@%m: %s' -zstyle ':prezto:module:terminal:tab-title' format '%m: %s' -zstyle ':prezto:module:terminal:multiplexer-title' format '%s' -``` - -`%s` will be replaced with the current working directory path or the currently -executing program name. - -For a list of sequences, see [Expansion of Prompt Sequences][1]. - -## Functions - -- `set-tab-title` sets the terminal tab title. -- `set-window-title` sets the terminal window title. -- `set-multiplexer-title` sets the terminal multiplexer title. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) -- [Olaf Conradi](https://github.com/oohlaf) - -[1]: https://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html#Expansion-of-Prompt-Sequences -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/terminal/init.zsh b/.zprezto/modules/terminal/init.zsh deleted file mode 100644 index 2a5b9be..0000000 --- a/.zprezto/modules/terminal/init.zsh +++ /dev/null @@ -1,129 +0,0 @@ -# -# Sets terminal window and tab titles. -# -# Authors: -# Sorin Ionescu -# Olaf Conradi -# - -# Return if requirements are not found. -if [[ "$TERM" == (dumb|linux|*bsd*|eterm*) ]]; then - return 1 -fi - -# Sets the terminal window title. -function set-window-title { - local title_format{,ted} - zstyle -s ':prezto:module:terminal:window-title' format 'title_format' || title_format="%s" - zformat -f title_formatted "$title_format" "s:$argv" - printf '\e]2;%s\a' "${(V%)title_formatted}" -} - -# Sets the terminal tab title. -function set-tab-title { - local title_format{,ted} - zstyle -s ':prezto:module:terminal:tab-title' format 'title_format' || title_format="%s" - zformat -f title_formatted "$title_format" "s:$argv" - printf '\e]1;%s\a' "${(V%)title_formatted}" -} - -# Sets the terminal multiplexer tab title. -function set-multiplexer-title { - local title_format{,ted} - zstyle -s ':prezto:module:terminal:multiplexer-title' format 'title_format' || title_format="%s" - zformat -f title_formatted "$title_format" "s:$argv" - printf '\ek%s\e\\' "${(V%)title_formatted}" -} - -# Sets the tab and window titles with a given command. -function _terminal-set-titles-with-command { - emulate -L zsh - setopt EXTENDED_GLOB - - # Get the command name that is under job control. - if [[ "${2[(w)1]}" == (fg|%*)(\;|) ]]; then - # Get the job name, and, if missing, set it to the default %+. - local job_name="${${2[(wr)%*(\;|)]}:-%+}" - - # Make a local copy for use in the subshell. - local -A jobtexts_from_parent_shell - jobtexts_from_parent_shell=(${(kv)jobtexts}) - - jobs "$job_name" 2> /dev/null > >( - read index discarded - # The index is already surrounded by brackets: [1]. - _terminal-set-titles-with-command "${(e):-\$jobtexts_from_parent_shell$index}" - ) - else - # Set the command name, or in the case of sudo or ssh, the next command. - local cmd="${${2[(wr)^(*=*|sudo|ssh|-*)]}:t}" - local truncated_cmd="${cmd/(#m)?(#c15,)/${MATCH[1,12]}...}" - unset MATCH - - if [[ "$TERM" == screen* ]]; then - set-multiplexer-title "$truncated_cmd" - fi - set-tab-title "$truncated_cmd" - set-window-title "$cmd" - fi -} - -# Sets the tab and window titles with a given path. -function _terminal-set-titles-with-path { - emulate -L zsh - setopt EXTENDED_GLOB - - local absolute_path="${${1:a}:-$PWD}" - local abbreviated_path="${absolute_path/#$HOME/~}" - local truncated_path="${abbreviated_path/(#m)?(#c15,)/...${MATCH[-12,-1]}}" - unset MATCH - - if [[ "$TERM" == screen* ]]; then - set-multiplexer-title "$truncated_path" - fi - set-tab-title "$truncated_path" - set-window-title "$abbreviated_path" -} - -# Do not override precmd/preexec; append to the hook array. -autoload -Uz add-zsh-hook - -# Set up the Apple Terminal. -if [[ "$TERM_PROGRAM" == 'Apple_Terminal' ]] \ - && ( ! [[ -n "$STY" || -n "$TMUX" || -n "$DVTM" ]] ) -then - # Sets the Terminal.app current working directory before the prompt is - # displayed. - function _terminal-set-terminal-app-proxy-icon { - printf '\e]7;%s\a' "file://${HOST}${PWD// /%20}" - } - add-zsh-hook precmd _terminal-set-terminal-app-proxy-icon - - # Unsets the Terminal.app current working directory when a terminal - # multiplexer or remote connection is started since it can no longer be - # updated, and it becomes confusing when the directory displayed in the title - # bar is no longer synchronized with real current working directory. - function _terminal-unset-terminal-app-proxy-icon { - if [[ "${2[(w)1]:t}" == (screen|tmux|dvtm|ssh|mosh) ]]; then - print '\e]7;\a' - fi - } - add-zsh-hook preexec _terminal-unset-terminal-app-proxy-icon - - # Do not set the tab and window titles in Terminal.app since it sets the tab - # title to the currently running process by default and the current working - # directory is set separately. - return -fi - -# Set up non-Apple terminals. -if zstyle -t ':prezto:module:terminal' auto-title 'always' \ - || (zstyle -t ':prezto:module:terminal' auto-title \ - && ( ! [[ -n "$STY" || -n "$TMUX" ]] )) -then - # Sets titles before the prompt is displayed. - add-zsh-hook precmd _terminal-set-titles-with-path - - # Sets titles before command execution. - add-zsh-hook preexec _terminal-set-titles-with-command -fi diff --git a/.zprezto/modules/tmux/README.md b/.zprezto/modules/tmux/README.md deleted file mode 100644 index e7ae929..0000000 --- a/.zprezto/modules/tmux/README.md +++ /dev/null @@ -1,88 +0,0 @@ -# Tmux - -Defines [_tmux_][1] aliases and provides for auto launching it at start-up. - -## Settings - -### Auto-Start - -Starts a tmux session automatically when Zsh is launched. - -To enable this feature when launching Zsh in a local terminal, add the following -line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:tmux:auto-start' local 'yes' -``` - -To enable this feature when launching Zsh in a SSH connection, add the following -line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:tmux:auto-start' remote 'yes' -``` - -In both cases, it will create a background session named _prezto_ if the tmux -server is not started. - -You can change the default session name with: - -```sh -zstyle ':prezto:module:tmux:session' name '' -``` - -With `auto-start` enabled, you may want to control how multiple sessions are -managed. The `destroy-unattached` option of tmux controls if the unattached -sessions must be kept alive, making sessions available for later use, configured -in _tmux.conf_: - -```conf -set-option -g destroy-unattached [on | off] -``` - -#### iTerm2 Integration - -[iTerm2][6] offers significant integration with tmux. This can be enabled by -adding the following line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:tmux:iterm' integrate 'yes' -``` - -Read [iTerm2 and tmux Integration][7] for more information. - -## Aliases - -- `tmuxa` attaches or switches to a tmux session. -- `tmuxl` lists sessions managed by the tmux server. - -## Caveats - -On macOS, launching tmux can cause the error **launch_msg(...): Socket is not -connected** to be displayed, which can be fixed by installing -[reattach-to-user-namespace][3], available in [Homebrew][4], and adding the -following to _tmux.conf_: - -```conf -set-option -g default-command "reattach-to-user-namespace -l $SHELL -l" -``` - -Furthermore, tmux is known to cause **kernel panics** on macOS. A discussion -about this and Prezto has already been [opened][2]. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][5]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) -- [Colin Hebert](https://github.com/ColinHebert) -- [Georges Discry](https://github.com/gdiscry) -- [Xavier Cambar](https://github.com/xcambar) - -[1]: https://tmux.github.io/ -[2]: https://github.com/sorin-ionescu/prezto/issues/62 -[3]: https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard -[4]: https://github.com/mxcl/homebrew -[5]: https://github.com/sorin-ionescu/prezto/issues -[6]: https://iterm2.com -[7]: https://gitlab.com/gnachman/iterm2/wikis/TmuxIntegration diff --git a/.zprezto/modules/tmux/init.zsh b/.zprezto/modules/tmux/init.zsh deleted file mode 100644 index 5c51855..0000000 --- a/.zprezto/modules/tmux/init.zsh +++ /dev/null @@ -1,49 +0,0 @@ -# -# Defines tmux aliases and provides for auto launching it at start-up. -# -# Authors: -# Sorin Ionescu -# Colin Hebert -# Georges Discry -# Xavier Cambar -# - -# Return if requirements are not found. -if (( ! $+commands[tmux] )); then - return 1 -fi - -# -# Auto Start -# - -if ([[ "$TERM_PROGRAM" = 'iTerm.app' ]] && \ - zstyle -t ':prezto:module:tmux:iterm' integrate \ -); then - _tmux_iterm_integration='-CC' -fi - -if [[ -z "$TMUX" && -z "$EMACS" && -z "$VIM" && -z "$INSIDE_EMACS" && "$TERM_PROGRAM" != "vscode" ]] && ( \ - ( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' remote ) || - ( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' local ) \ -); then - tmux start-server - - # Create a 'prezto' session if no session has been defined in tmux.conf. - if ! tmux has-session 2> /dev/null; then - zstyle -s ':prezto:module:tmux:session' name tmux_session || tmux_session='prezto' - tmux \ - new-session -d -s "$tmux_session" \; \ - set-option -t "$tmux_session" destroy-unattached off &> /dev/null - fi - - # Attach to the 'prezto' session or to the last session used. (detach first) - exec tmux $_tmux_iterm_integration attach-session -d -fi - -# -# Aliases -# - -alias tmuxa="tmux $_tmux_iterm_integration new-session -A" -alias tmuxl='tmux list-sessions' diff --git a/.zprezto/modules/utility/README.md b/.zprezto/modules/utility/README.md deleted file mode 100644 index 142b1ea..0000000 --- a/.zprezto/modules/utility/README.md +++ /dev/null @@ -1,225 +0,0 @@ -# Utility - -Defines general aliases and functions. - -This module must be loaded _before_ the [_`completion`_][1] module so that the -provided completion definitions are loaded automatically by _`completion`_ -module. - -**Note:** Some of the utilities configured in this module might be provided via -GNU utilities with incompatible arguments on non-GNU systems. In such cases, -using [_`gnu-utility`_][2] module is recommended and it must be loaded -_before_ this module. - -To elaborate, the relative order of loading the modules would be -_`gnu-utility`_, _`utility`_ and _`completion`_. - -## Settings - -### Highlighting - -If you have enabled color globally in _`${ZDOTDIR:-$HOME}/.zpreztorc`_, you may -disable it selectively for certain commands. - -To disable `ls` color, add the following to _`${ZDOTDIR:-$HOME}/.zpreztorc`_. -When coloring is disabled, type indicators (`\*`, `/`, `=>`, `@`, `=`, `|`, `%`) -will be appended to entries. - -```sh -zstyle ':prezto:module:utility:ls' color 'no' -``` - -To disable GNU coreutils `ls` to list directories grouped first, add the -following line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:utility:ls' dirs-first 'no' -``` - -To disable `grep` highlighting, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:utility:grep' color 'no' -``` - -To disable `diff` highlighting, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:utility:diff' color 'no' -``` - -To disable `wdiff` highlighting, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:utility:wdiff' color 'no' -``` - -To disable `make` highlighting, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:utility:make' color 'no' -``` - -### Download Helper - -To configure the download helper to be used with alias `get`, add the following -to _`${ZDOTDIR:-$HOME}/.zpreztorc`_, and replace `''` with `'curl'`, -`'wget'` or `'aria2c'`. - -```sh -zstyle -s ':prezto:module:utility:download' helper '' -``` - -## Aliases - -### Disabled Spelling Correction - -- `ack` -- `cd` -- `cp` -- `ebuild` -- `gcc` -- `gist` -- `grep` -- `heroku` -- `ln` -- `man` -- `mkdir` -- `mv` -- `mysql` -- `rm` - -To disable all spelling corrections, add the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:utility' correct 'no' -``` - -### Disabled File Globbing - -- `bower` -- `fc` -- `find` -- `ftp` -- `history` -- `locate` -- `rake` -- `rsync` (selectively enabled for local files) -- `scp` (selectively enabled for local files) -- `sftp` - -### General - -- `_` executes a command as another user (`sudo`). -- `b` opens the default web browser. -- `diffu` shorthand for `diff --unified`. -- `e` opens the default editor. -- `mkdir` creates directories, including intermediary directories. -- `p` opens the default pager. -- `po` removes a directory from the stack and changes to it (`popd`). -- `pu` changes the directory and pushes the old directory onto the stack - (`pushd`). -- `sa` search aliases for a word. -- `type` displays all the attribute values of a shell parameter. - -### Files and Directories - -- `ls` lists with directories grouped first (GNU only). -- `l` lists in one column, hidden files. -- `ll` lists human readable sizes. -- `lr` lists human readable sizes, recursively. -- `la` lists human readable sizes, hidden files. -- `lm` lists human readable sizes, hidden files through pager. -- `lx` lists sorted by extension (GNU only). -- `lk` lists sorted by size, largest last. -- `lt` lists sorted by date, most recent last. -- `lc` lists sorted by date, most recent last, shows change time. -- `lu` lists sorted by date, most recent last, shows access time. -- `sl` lists directory contents (correction for `ls`). - -### macOS Everywhere - -- `o` opens files and directories (`open` or `xdg-open`). -- `get` downloads files (`curl`, `wget` or `aria2c`). -- `pbcopy` copies to the pasteboard (`pbcopy`, `xclip` or `xsel`). -- `pbpaste` pastes from the pasteboard (`pbcopy`, `xclip` or `xsel`). -- `pbc` copies to the pasteboard (`pbcopy`). -- `pbp` pastes from the pasteboard (`pbpaste`). - -### Resource Usage - -- `df` displays free disk space using human readable units (aliases to `pydf`, - if installed). -- `du` displays disk usage using human readable units. -- `top` displays information about processes. -- `topc` displays information about processes sorted by CPU usage. -- `topm` displays information about processes sorted by RAM usage. - -### Safe ops - -By default, `cp`,`ln`, `mv` and `rm` are aliased to their interactive variants. -If this is not desired, it can be disabled by adding the following line to -_`${ZDOTDIR:-$HOME}/.zpreztorc`_: - -```sh -zstyle ':prezto:module:utility' safe-ops 'no'. -``` - -In addition, the following aliases have been added: - -- `cpi` copies files and directories interactively. -- `lni` links files and directories interactively. -- `mvi` moves files and directories interactively. -- `rmi` removes files and directories interactively. - -### Miscellaneous - -- `http-serve` serves a directory via HTTP. - -## Functions - -### General - -- `slit` prints columns _1, 2, 3 ... n_. - -### Files and Directories - -- `cdls` changes to a directory and lists its contents. -- `dut` displays the grand total disk usage using human readable units. -- `find-exec` finds files and executes a command on them. -- `mkdcd` makes a directory and changes to it. -- `popdls` pops an entry off the directory stack and lists its contents. -- `pushdls` pushes an entry onto the directory stack and lists its contents. -- `noremoteglob` enable local path globbing but disable remote path globbing. - -### Developer - -- `diff` highlights diff output (requires `colordiff`). -- `make` highlights make output (requires `colormake`). -- `wdiff` highlights wdiff output (requires `wdiff` or `git`). - -### Resource usage - -- `psu` displays user owned processes status. - -### Search and Replace - -- `prep` provides a grep-like pattern search. -- `psub` provides a sed-like pattern substitution. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][3]._ - -- [Robby Russell](https://github.com/robbyrussell) -- [Suraj N. Kurapati](https://github.com/sunaku) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: ../completion#readme -[2]: ../gnu-utility#readme -[3]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/utility/functions/_cdls_popdls_pushdls b/.zprezto/modules/utility/functions/_cdls_popdls_pushdls deleted file mode 100644 index 5f0fe60..0000000 --- a/.zprezto/modules/utility/functions/_cdls_popdls_pushdls +++ /dev/null @@ -1,11 +0,0 @@ -#compdef cdls popdls pushdls -#autoload - -# -# Completes cdls, popdls, and pushdls. -# -# Authors: -# Sorin Ionescu -# - -_cd diff --git a/.zprezto/modules/utility/functions/_dut b/.zprezto/modules/utility/functions/_dut deleted file mode 100644 index 180dde7..0000000 --- a/.zprezto/modules/utility/functions/_dut +++ /dev/null @@ -1,11 +0,0 @@ -#compdef dut -#autoload - -# -# Completes dut. -# -# Authors: -# Sorin Ionescu -# - -_du diff --git a/.zprezto/modules/utility/functions/_mkdcd b/.zprezto/modules/utility/functions/_mkdcd deleted file mode 100644 index 5273651..0000000 --- a/.zprezto/modules/utility/functions/_mkdcd +++ /dev/null @@ -1,13 +0,0 @@ -#compdef mkdcd -#autoload - -# -# Completes mkdcd. -# -# Authors: -# Sorin Ionescu -# - -local expl - -_wanted directories expl 'directory' _path_files -/ || _message 'directory' diff --git a/.zprezto/modules/utility/functions/_noremoteglob b/.zprezto/modules/utility/functions/_noremoteglob deleted file mode 100644 index de5290e..0000000 --- a/.zprezto/modules/utility/functions/_noremoteglob +++ /dev/null @@ -1,11 +0,0 @@ -#compdef noremoteglob -#autoload - -# -# Completes noremoteglob. -# -# Authors: -# Indrajit Raychaudhuri -# - -_precommand diff --git a/.zprezto/modules/utility/functions/_prep b/.zprezto/modules/utility/functions/_prep deleted file mode 100644 index c9d6eda..0000000 --- a/.zprezto/modules/utility/functions/_prep +++ /dev/null @@ -1,18 +0,0 @@ -#compdef prep -#autoload - -# -# Completes prep. -# -# Authors: -# Sorin Ionescu -# - -_arguments \ - '-i[ignore case]' \ - '-m[^ and $ match the start and the end of a line]' \ - '-s[. matches newline]' \ - '-v[invert match]' \ - '-x[ignore whitespace and comments]' \ - '1::pattern:' \ - '2::files:_files' && return 0 diff --git a/.zprezto/modules/utility/functions/_psub b/.zprezto/modules/utility/functions/_psub deleted file mode 100644 index c79899e..0000000 --- a/.zprezto/modules/utility/functions/_psub +++ /dev/null @@ -1,19 +0,0 @@ -#compdef psub -#autoload - -# -# Completes psub. -# -# Authors: -# Sorin Ionescu -# - -_arguments \ - '-g[match globally]' \ - '-i[ignore case]' \ - '-m[^ and $ match the start and the end of a line]' \ - '-s[. matches newline]' \ - '-x[ignore whitespace and comments]' \ - '1::pattern:' \ - '2::replacement:' \ - '3::files:_files' && return 0 diff --git a/.zprezto/modules/utility/functions/diff b/.zprezto/modules/utility/functions/diff deleted file mode 100644 index 2e812f2..0000000 --- a/.zprezto/modules/utility/functions/diff +++ /dev/null @@ -1,17 +0,0 @@ -# -# Highlights diff output. -# -# Authors: -# Sorin Ionescu -# - -# function diff { - -if zstyle -t ':prezto:module:utility:diff' color \ - && (( $+commands[colordiff] )); then - command diff "$@" | colordiff -else - command diff "$@" -fi - -# } diff --git a/.zprezto/modules/utility/functions/dut b/.zprezto/modules/utility/functions/dut deleted file mode 100644 index 1474197..0000000 --- a/.zprezto/modules/utility/functions/dut +++ /dev/null @@ -1,27 +0,0 @@ -# -# Displays the grand total disk usage using human readable units. -# -# Authors: -# Suraj N. Kurapati -# Sorin Ionescu -# - -# function dut { - -(( $# == 0 )) && set -- * - -if [[ ${(@M)${(f)"$(du --version 2>&1)"}:#*GNU *} ]]; then - du -khsc "$@" | sort -h -r -else - local line size name - local -a record - - while IFS=$'\n' read line; do - record=(${(z)line}) - size="$(($record[1] / 1024.0))" - name="$record[2,-1]" - printf "%9.1LfM %s\n" "$size" "$name" - done < <(du -kcs "$@") | sort -n -r -fi - -# } diff --git a/.zprezto/modules/utility/functions/make b/.zprezto/modules/utility/functions/make deleted file mode 100644 index 7cda8a6..0000000 --- a/.zprezto/modules/utility/functions/make +++ /dev/null @@ -1,17 +0,0 @@ -# -# Highlights make output. -# -# Authors: -# Sorin Ionescu -# - -# function make { - -if zstyle -t ':prezto:module:utility:make' color \ - && (( $+commands[colormake] )); then - command colormake "$@" -else - command make "$@" -fi - -# } diff --git a/.zprezto/modules/utility/functions/prep b/.zprezto/modules/utility/functions/prep deleted file mode 100644 index d6448ae..0000000 --- a/.zprezto/modules/utility/functions/prep +++ /dev/null @@ -1,56 +0,0 @@ -# -# Provides a grep-like pattern search. -# -# Authors: -# Sorin Ionescu -# - -# function prep { - -local usage pattern modifiers invert - -usage="$( -cat <&2 - print "$usage" >&2 - return 1 - ;; - ([?]) - print "$0: unknown option: $OPTARG" >&2 - print "$usage" >&2 - return 1 - ;; - esac -done -shift $(( $OPTIND - 1 )) - -if (( $# < 1 )); then - print "$usage" >&2 - return 1 -fi - -pattern="$1" -shift - -perl -n -l -e "print if ${invert:+not} m/${pattern//\//\\/}/${modifiers}" "$@" - -# } diff --git a/.zprezto/modules/utility/functions/psub b/.zprezto/modules/utility/functions/psub deleted file mode 100644 index af191fd..0000000 --- a/.zprezto/modules/utility/functions/psub +++ /dev/null @@ -1,57 +0,0 @@ -# -# Provides a sed-like pattern substitution. -# -# Authors: -# Sorin Ionescu -# - -# function psub { - -local usage pattern replacement modifiers - -usage="$( -cat <&2 - print "$usage" >&2 - return 1 - ;; - ([?]) - print "$0: unknown option: $OPTARG" >&2 - print "$usage" >&2 - return 1 - ;; - esac -done -shift $(( $OPTIND - 1 )) - -if (( $# < 2 )); then - print "$usage" >&2 - return 1 -fi - -pattern="$1" -replacement="$2" -repeat 2 shift - -perl -i'.orig' -n -l -e "s/${pattern//\//\\/}/${replacement//\//\\/}/${modifiers}; print" "$@" - -# } diff --git a/.zprezto/modules/utility/functions/wdiff b/.zprezto/modules/utility/functions/wdiff deleted file mode 100644 index f1de659..0000000 --- a/.zprezto/modules/utility/functions/wdiff +++ /dev/null @@ -1,32 +0,0 @@ -# -# Highlights wdiff output. -# -# Authors: -# Sorin Ionescu -# Indrajit Raychaudhuri -# - -# function wdiff { - -if zstyle -t ':prezto:module:utility:wdiff' color; then - if (( $+commands[wdiff] )); then - command wdiff \ - --avoid-wraps \ - --start-delete="$(print -n $FG[red])" \ - --end-delete="$(print -n $FG[none])" \ - --start-insert="$(print -n $FG[green])" \ - --end-insert="$(print -n $FG[none])" \ - "$@" \ - | sed 's/^\(@@\( [+-][[:digit:]]*,[[:digit:]]*\)\{2\} @@\)$/;5;6m\10m/g' - elif (( $+commands[git] )); then - command git --no-pager diff --no-ext-diff --no-index --color=auto --color-words "$@" - else - command wdiff "$@" - fi -elif (( ! $+commands[wdiff] && $+commands[git] )); then - command git --no-pager diff --no-ext-diff --no-index --color=never "$@" -else - command wdiff "$@" -fi - -# } diff --git a/.zprezto/modules/utility/functions/zsh-help b/.zprezto/modules/utility/functions/zsh-help deleted file mode 100644 index f6605ea..0000000 --- a/.zprezto/modules/utility/functions/zsh-help +++ /dev/null @@ -1,102 +0,0 @@ -# -# Provides a much easier way to search and access ZSH's manual. First checks for -# terms at the start of the manual, then checks if it's at start of a line allowing -# whitespace. -# -# Authors: -# Samantha McVey -# - -# function zsh-help { - -local usage="$( -cat <&2; fi - if man --pager='' ${i} | grep -E ${case} "${pattern}" > /dev/null; then - printf "%s" "${i}"; return 0; - fi - done - return 1 - } - # By default search only things at start of line - local first_prefix='^' - local prefix='^\s*' - if [[ ${1} == '--zsh-help-debug' ]]; then - shift; debug=1 - fi - if [[ ${1} == "--all" ]]; then - shift; first_prefix='' # We're searching everything, so remove the prefix - fi - if [[ $# < 1 || $1 == "--help" ]]; then - printf "%s\n" "${usage}" - unfunction _zsh-help-join; unfunction _zsh-help-try-query; # unfunction so it's not in the global scope - return 1 - fi - if [[ ${1} == "test" && $# == 1 ]]; then - case='' - pattern='^CONDITIONAL EXPRESSIONS$' - elif [[ ($1 == "-eq" || $1 == "-ne" || $1 == "-lt" || $1 == "-gt" || $1 == "-le" || $1 == "-ge") && $# == 1 ]]; then - case='' - pattern="${prefix}exp1\s+${1}\s+exp2" - elif [[ $1 == 'zstyle' ]]; then - pattern=$(_zsh-help-join '\s+' "$@") - section=ZSHMODULES - fi - # If it wasn't one of the special-cased things, check ZSHBUILTINS first. If - # not found there, we will search ZSHALL - if [[ ${pattern} == "" ]]; then - pattern="$(_zsh-help-join '\s+' "$@")" - # search for sections at the start of the man page first - section=$(_zsh-help-try-query "${case}" "${first_prefix}${pattern}") - # If it exists there, keep ZSHBUILTINS as the section - if (( $? == 0 )); then - pattern="${first_prefix}${pattern}" - elif [[ "${prefix}" ]]; then - # if not found, search for the term preceeded by whitetext - section=$(_zsh-help-try-query "${case}" "${prefix}${pattern}") - if (( $? == 0 )); then - pattern="${prefix}${pattern}" - else - pattern="" - fi - fi - if [[ ! ${pattern} ]]; then # Otherwise we use zshall - printf "Can't find term\n" 2>&1 - unfunction _zsh-help-join; unfunction _zsh-help-try-query; # unfunction so it's not in the global scope - return 1; - fi - fi - local command="man --pager=\"less ${case} -p '${pattern}'\" \"${section}\"" - if [[ ${debug} ]]; then - printf "\nFinal search term is:\n"; printf "%s\n" "${command}"; - else - eval $command - fi - local rtrn=$? - unfunction _zsh-help-join; unfunction _zsh-help-try-query; # unfunction so it's not in the global scope - return $? -#} diff --git a/.zprezto/modules/utility/init.zsh b/.zprezto/modules/utility/init.zsh deleted file mode 100644 index c6dc3c0..0000000 --- a/.zprezto/modules/utility/init.zsh +++ /dev/null @@ -1,269 +0,0 @@ -# -# Defines general aliases and functions. -# -# Authors: -# Robby Russell -# Suraj N. Kurapati -# Sorin Ionescu -# - -# Load dependencies. -pmodload 'helper' 'spectrum' - -# Correct commands. -if zstyle -T ':prezto:module:utility' correct; then - setopt CORRECT -fi - -# Load 'run-help' function. -autoload -Uz run-help-{ip,openssl,sudo} - -# -# Aliases -# - -# Disable correction. -alias ack='nocorrect ack' -alias cd='nocorrect cd' -alias cp='nocorrect cp' -alias ebuild='nocorrect ebuild' -alias gcc='nocorrect gcc' -alias gist='nocorrect gist' -alias grep='nocorrect grep' -alias heroku='nocorrect heroku' -alias ln='nocorrect ln' -alias man='nocorrect man' -alias mkdir='nocorrect mkdir' -alias mv='nocorrect mv' -alias mysql='nocorrect mysql' -alias rm='nocorrect rm' - -# Disable globbing. -alias bower='noglob bower' -alias fc='noglob fc' -alias find='noglob find' -alias ftp='noglob ftp' -alias history='noglob history' -alias locate='noglob locate' -alias rake='noglob rake' -alias rsync='noglob rsync' -alias scp='noglob scp' -alias sftp='noglob sftp' - -# Define general aliases. -alias _='sudo' -alias b='${(z)BROWSER}' - -alias diffu="diff --unified" -alias e='${(z)VISUAL:-${(z)EDITOR}}' -alias mkdir="${aliases[mkdir]:-mkdir} -p" -alias p='${(z)PAGER}' -alias po='popd' -alias pu='pushd' -alias sa='alias | grep -i' -alias type='type -a' - -# Safe ops. Ask the user before doing anything destructive. -alias cpi="${aliases[cp]:-cp} -i" -alias lni="${aliases[ln]:-ln} -i" -alias mvi="${aliases[mv]:-mv} -i" -alias rmi="${aliases[rm]:-rm} -i" -if zstyle -T ':prezto:module:utility' safe-ops; then - alias cp="${aliases[cp]:-cp} -i" - alias ln="${aliases[ln]:-ln} -i" - alias mv="${aliases[mv]:-mv} -i" - alias rm="${aliases[rm]:-rm} -i" -fi - -# ls -if [[ ${(@M)${(f)"$(ls --version 2>&1)"}:#*GNU *} ]]; then - # GNU Core Utilities - - if zstyle -T ':prezto:module:utility:ls' dirs-first; then - alias ls="${aliases[ls]:-ls} --group-directories-first" - fi - - if zstyle -t ':prezto:module:utility:ls' color; then - # Define colors for GNU ls if they're not already defined - if (( ! $+LS_COLORS )); then - # Try dircolors when available - if is-callable 'dircolors'; then - eval "$(dircolors --sh $HOME/.dir_colors(.N))" - else - export LS_COLORS='di=34:ln=35:so=32:pi=33:ex=31:bd=36;01:cd=33;01:su=31;40;07:sg=36;40;07:tw=32;40;07:ow=33;40;07:' - fi - fi - - alias ls="${aliases[ls]:-ls} --color=auto" - else - alias ls="${aliases[ls]:-ls} -F" - fi -else - # BSD Core Utilities - - if zstyle -t ':prezto:module:utility:ls' color; then - # Define colors for BSD ls if they're not already defined - if (( ! $+LSCOLORS )); then - export LSCOLORS='exfxcxdxbxGxDxabagacad' - fi - - alias ls="${aliases[ls]:-ls} -G" - else - alias ls="${aliases[ls]:-ls} -F" - fi -fi - -alias l='ls -1A' # Lists in one column, hidden files. -alias ll='ls -lh' # Lists human readable sizes. -alias lr='ll -R' # Lists human readable sizes, recursively. -alias la='ll -A' # Lists human readable sizes, hidden files. -alias lm='la | "$PAGER"' # Lists human readable sizes, hidden files through pager. -alias lk='ll -Sr' # Lists sorted by size, largest last. -alias lt='ll -tr' # Lists sorted by date, most recent last. -alias lc='lt -c' # Lists sorted by date, most recent last, shows change time. -alias lu='lt -u' # Lists sorted by date, most recent last, shows access time. -alias sl='ls' # Correction for common spelling error. - -if [[ ${(@M)${(f)"$(ls --version 2>&1)"}:#*GNU *} ]]; then - alias lx='ll -XB' # Lists sorted by extension (GNU only). -fi - -# Grep -if zstyle -t ':prezto:module:utility:grep' color; then - export GREP_COLOR=${GREP_COLOR:-'37;45'} # BSD. - export GREP_COLORS=${GREP_COLORS:-"mt=$GREP_COLOR"} # GNU. - - alias grep="${aliases[grep]:-grep} --color=auto" -fi - -# macOS Everywhere -if is-darwin; then - alias o='open' -elif is-cygwin; then - alias o='cygstart' - alias pbcopy='tee > /dev/clipboard' - alias pbpaste='cat /dev/clipboard' -elif is-termux; then - alias o='termux-open' - alias pbcopy='termux-clipboard-set' - alias pbpaste='termux-clipboard-get' -else - alias o='xdg-open' - - if (( $+commands[xclip] )); then - alias pbcopy='xclip -selection clipboard -in' - alias pbpaste='xclip -selection clipboard -out' - elif (( $+commands[xsel] )); then - alias pbcopy='xsel --clipboard --input' - alias pbpaste='xsel --clipboard --output' - fi -fi - -alias pbc='pbcopy' -alias pbp='pbpaste' - -# File Download -zstyle -s ':prezto:module:utility:download' helper '_download_helper' || _download_helper='curl' - -typeset -A _download_helpers=( - aria2c 'aria2c --continue --remote-time --max-tries=0' - curl 'curl --continue-at - --location --progress-bar --remote-name --remote-time' - wget 'wget --continue --progress=bar --timestamping' -) - -if (( $+commands[$_download_helper] && $+_download_helpers[$_download_helper] )); then - alias get="$_download_helpers[$_download_helper]" -elif (( $+commands[curl] )); then - alias get="$_download_helpers[curl]" -fi - -unset _download_helper{,s} - -# Resource Usage -alias df='df -kh' -alias du='du -kh' - -if is-darwin || is-bsd; then - alias topc='top -o cpu' - alias topm='top -o vsize' -else - alias topc='top -o %CPU' - alias topm='top -o %MEM' -fi - -# Miscellaneous - -# Serves a directory via HTTP. -if (( $#commands[(i)python(|[23])] )); then - autoload -Uz is-at-least - if is-at-least 3 ${"$(python --version 2>&1)"[(w)2]}; then - alias http-serve='python -m http.server' - elif (( $+commands[python3] )); then - alias http-serve='python3 -m http.server' - else - alias http-serve='$commands[(i)python(|2)] -m SimpleHTTPServer' - fi -fi - -# -# Functions -# - -# Makes a directory and changes to it. -function mkdcd { - [[ -n "$1" ]] && mkdir -p "$1" && builtin cd "$1" -} - -# Changes to a directory and lists its contents. -function cdls { - builtin cd "$argv[-1]" && ls "${(@)argv[1,-2]}" -} - -# Pushes an entry onto the directory stack and lists its contents. -function pushdls { - builtin pushd "$argv[-1]" && ls "${(@)argv[1,-2]}" -} - -# Pops an entry off the directory stack and lists its contents. -function popdls { - builtin popd "$argv[-1]" && ls "${(@)argv[1,-2]}" -} - -# Prints columns 1 2 3 ... n. -function slit { - awk "{ print ${(j:,:):-\$${^@}} }" -} - -# Finds files and executes a command on them. -function find-exec { - find . -type f -iname "*${1:-}*" -exec "${2:-file}" '{}' \; -} - -# Displays user owned processes status. -function psu { - ps -U "${1:-$LOGNAME}" -o 'pid,%cpu,%mem,command' "${(@)argv[2,-1]}" -} - -# Enables globbing selectively on path arguments. -# Globbing is enabled on local paths (starting in '/' and './') and disabled -# on remote paths (containing ':' but not starting in '/' and './'). This is -# useful for programs that have their own globbing for remote paths. -# Currently, this is used by default for 'rsync' and 'scp'. -# Example: -# - Local: '*.txt', './foo:2017*.txt', '/var/*:log.txt' -# - Remote: user@localhost:foo/ -# -# NOTE: This function is buggy and is not used anywhere until we can make sure -# it's fixed. See https://github.com/sorin-ionescu/prezto/issues/1443 and -# https://github.com/sorin-ionescu/prezto/issues/1521 for more information. -function noremoteglob { - local -a argo - local cmd="$1" - for arg in ${argv:2}; do case $arg in - ( ./* ) argo+=( ${~arg} ) ;; # local relative, glob - ( /* ) argo+=( ${~arg} ) ;; # local absolute, glob - ( *:* ) argo+=( ${arg} ) ;; # remote, noglob - ( * ) argo+=( ${~arg} ) ;; # default, glob - esac; done - command $cmd "${(@)argo}" -} diff --git a/.zprezto/modules/wakeonlan/README.md b/.zprezto/modules/wakeonlan/README.md deleted file mode 100644 index ca4095a..0000000 --- a/.zprezto/modules/wakeonlan/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# Wake-on-LAN - -This module provides a wrapper around the [wakeonlan][1] tool. - -## Usage - -To use this wrapper, create the _`~/.wakeonlan`_ directory, and place in it one -file for each device you would like to be able to wake. Give the file a name -that describes the device, such as its hostname. - -Each file should contain a line with the MAC address of the target device and -the network broadcast address. For instance, there might be a file -_`~/.wakeonlan/leto`_ with the following contents: - -```conf -00:11:22:33:44:55:66 192.168.0.255 -``` - -To wake that device, use the following command: - -```console -wake leto -``` - -For more information on the configuration file format, read the -[wakeonlan man page][2]. - -## Authors - -_The authors of this module should be contacted via [issue tracker][3]._ - -- [Paul Dann](https://github.com/giddie) -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: http://gsd.di.uminho.pt/jpo/software/wakeonlan/ -[2]: https://man.cx/wakeonlan -[3]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/wakeonlan/functions/_wake b/.zprezto/modules/wakeonlan/functions/_wake deleted file mode 100644 index 87e1a36..0000000 --- a/.zprezto/modules/wakeonlan/functions/_wake +++ /dev/null @@ -1,12 +0,0 @@ -#compdef wake -#autoload - -# -# Completes wake. -# -# Authors: -# Paul Gideon Dann -# Sorin Ionescu -# - -_arguments "1:device to wake:_files -W '$HOME/.wakeonlan'" && return 0 diff --git a/.zprezto/modules/wakeonlan/functions/wake b/.zprezto/modules/wakeonlan/functions/wake deleted file mode 100644 index 6f7d6c5..0000000 --- a/.zprezto/modules/wakeonlan/functions/wake +++ /dev/null @@ -1,24 +0,0 @@ -# -# Wakes devices via wakeonlan. -# -# Authors: -# Paul Gideon Dann -# Sorin Ionescu -# - -# function wake { - -local config_file="$HOME/.wakeonlan/$1" -if [[ ! -s "$config_file" ]]; then - print "$0: invalid device file: $1" >&2 - return 1 -fi - -if (( ! $+commands[wakeonlan] )); then - print "$0: command not found: wakeonlan" >&2 - return 1 -fi - -wakeonlan -f "$config_file" - -# } diff --git a/.zprezto/modules/yum/README.md b/.zprezto/modules/yum/README.md deleted file mode 100644 index 850b1c1..0000000 --- a/.zprezto/modules/yum/README.md +++ /dev/null @@ -1,25 +0,0 @@ -# Yum - -Defines [_yum_][1] aliases. - -## Aliases - -- `yumc` removes package(s) and leaves. -- `yumi` installs package(s). -- `yumh` displays history. -- `yuml` lists packages. -- `yumL` lists installed packages. -- `yumq` displays package information. -- `yumr` removes package(s). -- `yums` searches for a package. -- `yumu` updates packages. -- `yumU` upgrades packages. - -## Authors - -_The authors of this module should be contacted via the [issue tracker][2]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: http://yum.baseurl.org -[2]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/modules/yum/init.zsh b/.zprezto/modules/yum/init.zsh deleted file mode 100644 index 2f5427d..0000000 --- a/.zprezto/modules/yum/init.zsh +++ /dev/null @@ -1,27 +0,0 @@ -# -# Defines yum aliases. -# -# Authors: -# Simon -# Sorin Ionescu -# - -# Return if requirements are not found. -if (( ! $+commands[yum] )); then - return 1 -fi - -# -# Aliases -# - -alias yumc='sudo yum clean all' # Cleans the cache. -alias yumh='yum history' # Displays history. -alias yumi='sudo yum install' # Installs package(s). -alias yuml='yum list' # Lists packages. -alias yumL='yum list installed' # Lists installed packages. -alias yumq='yum info' # Displays package information. -alias yumr='sudo yum remove' # Removes package(s). -alias yums='yum search' # Searches for a package. -alias yumu='sudo yum update' # Updates packages. -alias yumU='sudo yum upgrade' # Upgrades packages. diff --git a/.zprezto/runcoms/README.md b/.zprezto/runcoms/README.md deleted file mode 100644 index 39feb7d..0000000 --- a/.zprezto/runcoms/README.md +++ /dev/null @@ -1,77 +0,0 @@ -# Configuration Files - -Zsh has several system-wide and user-local configuration files. - -Additionally, Prezto has one user-local configuration file. - -System-wide configuration files are installation-dependent but are installed -in _`/etc`_ by default. - -User-local configuration files have the same name as their global counterparts -but are prefixed with a dot (hidden). Zsh looks for these files in the path -stored in the `$ZDOTDIR` environment variable. However, if said variable is -not defined, Zsh will use the user's home directory. - -## File Descriptions - -The [configuration files][1] are read in the following order: - -1. _`/etc/zshenv`_ -2. _`${ZDOTDIR:-$HOME}/.zshenv`_ -3. _`/etc/zprofile`_ -4. _`${ZDOTDIR:-$HOME}/.zprofile`_ -5. _`/etc/zshrc`_ -6. _`${ZDOTDIR:-$HOME}/.zshrc`_ -7. _`${ZDOTDIR:-$HOME}/.zpreztorc`_ -8. _`/etc/zlogin`_ -9. _`${ZDOTDIR:-$HOME}/.zlogin`_ -10. _`${ZDOTDIR:-$HOME}/.zlogout`_ -11. _`/etc/zlogout`_ - -### zshenv - -This file is sourced by all instances of Zsh, and thus, it should be kept as -small as possible and should only define environment variables. - -### zprofile - -This file is similar to _zlogin_, but it is sourced before _zshrc_. It was added -for [KornShell][2] fans. See the description of _zlogin_ below for what it may -contain. - -_zprofile_ and _zlogin_ are not meant to be used together but can be done so. - -### zshrc - -This file is sourced by interactive shells. It should define aliases, functions, -shell options, and key bindings. - -### zpreztorc - -This file configures Prezto. - -### zlogin - -This file is sourced by login shells after _zshrc_. Thus, it should contain -commands that need to execute at login. It is usually used for messages such as -[_`fortune`_][3], [_`msgs`_][4], or for the creation of files. - -This is not the file to define aliases, functions, shell options, and key -bindings. It should not change the shell environment. - -### zlogout - -This file is sourced by login shells during logout. It should be used for -displaying messages and for deletion of files. - -## Authors - -_The authors of these files should be contacted via the [issue tracker][5]._ - -- [Sorin Ionescu](https://github.com/sorin-ionescu) - -[1]: http://zsh.sourceforge.net/Intro/intro_3.html#SEC3 -[2]: https://www.kornshell.com -[3]: https://en.wikipedia.org/wiki/Fortune_(Unix) -[4]: https://www.manpagez.com/man/1/msgs -[5]: https://github.com/sorin-ionescu/prezto/issues diff --git a/.zprezto/runcoms/zlogin b/.zprezto/runcoms/zlogin deleted file mode 100644 index ac4d342..0000000 --- a/.zprezto/runcoms/zlogin +++ /dev/null @@ -1,26 +0,0 @@ -# -# Executes commands at login post-zshrc. -# -# Authors: -# Sorin Ionescu -# - -# Execute code that does not affect the current session in the background. -{ - # Compile the completion dump to increase startup speed. - zcompdump="${XDG_CACHE_HOME:-$HOME/.cache}/prezto/zcompdump" - if [[ -s "$zcompdump" && (! -s "${zcompdump}.zwc" || "$zcompdump" -nt "${zcompdump}.zwc") ]]; then - zcompile "$zcompdump" - fi -} &! - -# Execute code only if STDERR is bound to a TTY. -if [[ -o INTERACTIVE && -t 2 ]]; then - - # Print a random, hopefully interesting, adage. - if (( $+commands[fortune] )); then - fortune -s - print - fi - -fi >&2 diff --git a/.zprezto/runcoms/zlogout b/.zprezto/runcoms/zlogout deleted file mode 100644 index b5d9858..0000000 --- a/.zprezto/runcoms/zlogout +++ /dev/null @@ -1,19 +0,0 @@ -# -# Executes commands at logout. -# -# Authors: -# Sorin Ionescu -# - -# Execute code only if STDERR is bound to a TTY. -[[ -o INTERACTIVE && -t 2 ]] && { - -SAYINGS=( - "So long and thanks for all the fish.\n -- Douglas Adams" - "Good morning! And in case I don't see ya, good afternoon, good evening and goodnight.\n --Truman Burbank" -) - -# Print a randomly-chosen message: -echo $SAYINGS[$(($RANDOM % ${#SAYINGS} + 1))] - -} >&2 diff --git a/.zprezto/runcoms/zpreztorc b/.zprezto/runcoms/zpreztorc deleted file mode 100644 index 5242c67..0000000 --- a/.zprezto/runcoms/zpreztorc +++ /dev/null @@ -1,228 +0,0 @@ -# -# Sets Prezto options. -# -# Authors: -# Sorin Ionescu -# - -# -# General -# - -# Set case-sensitivity for completion, history lookup, etc. -# zstyle ':prezto:*:*' case-sensitive 'yes' - -# Color output (auto set to 'no' on dumb terminals). -zstyle ':prezto:*:*' color 'yes' - -# Add additional directories to load prezto modules from -# zstyle ':prezto:load' pmodule-dirs $HOME/.zprezto-contrib - -# Allow module overrides when pmodule-dirs causes module name collisions -# zstyle ':prezto:load' pmodule-allow-overrides 'yes' - -# Set the Zsh modules to load (man zshmodules). -# zstyle ':prezto:load' zmodule 'attr' 'stat' - -# Set the Zsh functions to load (man zshcontrib). -# zstyle ':prezto:load' zfunction 'zargs' 'zmv' - -# Set the Prezto modules to load (browse modules). -# The order matters. -zstyle ':prezto:load' pmodule \ - 'environment' \ - 'terminal' \ - 'editor' \ - 'history' \ - 'directory' \ - 'spectrum' \ - 'utility' \ - 'completion' \ - 'history-substring-search' \ - 'prompt' - -# -# Autosuggestions -# - -# Set the query found color. -# zstyle ':prezto:module:autosuggestions:color' found '' - -# -# Completions -# - -# Set the entries to ignore in static '/etc/hosts' for host completion. -# zstyle ':prezto:module:completion:*:hosts' etc-host-ignores \ -# '0.0.0.0' '127.0.0.1' - -# -# Editor -# - -# Set the key mapping style to 'emacs' or 'vi'. -zstyle ':prezto:module:editor' key-bindings 'emacs' - -# Auto convert .... to ../.. -# zstyle ':prezto:module:editor' dot-expansion 'yes' - -# Allow the zsh prompt context to be shown. -#zstyle ':prezto:module:editor' ps-context 'yes' - -# -# Git -# - -# Ignore submodules when they are 'dirty', 'untracked', 'all', or 'none'. -# zstyle ':prezto:module:git:status:ignore' submodules 'all' - -# -# GNU Utility -# - -# Set the command prefix on non-GNU systems. -# zstyle ':prezto:module:gnu-utility' prefix 'g' - -# -# History Substring Search -# - -# Set the query found color. -# zstyle ':prezto:module:history-substring-search:color' found '' - -# Set the query not found color. -# zstyle ':prezto:module:history-substring-search:color' not-found '' - -# Set the search globbing flags. -# zstyle ':prezto:module:history-substring-search' globbing-flags '' - -# -# macOS -# - -# Set the keyword used by `mand` to open man pages in Dash.app -# zstyle ':prezto:module:osx:man' dash-keyword 'manpages' - -# -# Pacman -# - -# Set the Pacman frontend. -# zstyle ':prezto:module:pacman' frontend 'yaourt' - -# -# Prompt -# - -# Set the prompt theme to load. -# Setting it to 'random' loads a random theme. -# Auto set to 'off' on dumb terminals. -zstyle ':prezto:module:prompt' theme 'powerlevel10k' - -# Set the working directory prompt display length. -# By default, it is set to 'short'. Set it to 'long' (without '~' expansion) -# for longer or 'full' (with '~' expansion) for even longer prompt display. -# zstyle ':prezto:module:prompt' pwd-length 'short' - -# Set the prompt to display the return code along with an indicator for non-zero -# return codes. This is not supported by all prompts. -# zstyle ':prezto:module:prompt' show-return-val 'yes' - -# -# Python -# - -# Auto switch the Python virtualenv on directory change. -# zstyle ':prezto:module:python:virtualenv' auto-switch 'yes' - -# Automatically initialize virtualenvwrapper if pre-requisites are met. -# zstyle ':prezto:module:python:virtualenv' initialize 'yes' - -# -# Ruby -# - -# Auto switch the Ruby version on directory change. -# zstyle ':prezto:module:ruby:chruby' auto-switch 'yes' - -# -# Screen -# - -# Auto start a session when Zsh is launched in a local terminal. -# zstyle ':prezto:module:screen:auto-start' local 'yes' - -# Auto start a session when Zsh is launched in a SSH connection. -# zstyle ':prezto:module:screen:auto-start' remote 'yes' - -# -# SSH -# - -# Set the SSH identities to load into the agent. -# zstyle ':prezto:module:ssh:load' identities 'id_rsa' 'id_rsa2' 'id_github' - -# -# Syntax Highlighting -# - -# Set syntax highlighters. -# By default, only the main highlighter is enabled. -# zstyle ':prezto:module:syntax-highlighting' highlighters \ -# 'main' \ -# 'brackets' \ -# 'pattern' \ -# 'line' \ -# 'cursor' \ -# 'root' -# -# Set syntax highlighting styles. -# zstyle ':prezto:module:syntax-highlighting' styles \ -# 'builtin' 'bg=blue' \ -# 'command' 'bg=blue' \ -# 'function' 'bg=blue' -# -# Set syntax pattern styles. -# zstyle ':prezto:module:syntax-highlighting' pattern \ -# 'rm*-rf*' 'fg=white,bold,bg=red' - -# -# Terminal -# - -# Auto set the tab and window titles. -# zstyle ':prezto:module:terminal' auto-title 'yes' - -# Set the window title format. -# zstyle ':prezto:module:terminal:window-title' format '%n@%m: %s' - -# Set the tab title format. -# zstyle ':prezto:module:terminal:tab-title' format '%m: %s' - -# Set the terminal multiplexer title format. -# zstyle ':prezto:module:terminal:multiplexer-title' format '%s' - -# -# Tmux -# - -# Auto start a session when Zsh is launched in a local terminal. -# zstyle ':prezto:module:tmux:auto-start' local 'yes' - -# Auto start a session when Zsh is launched in a SSH connection. -# zstyle ':prezto:module:tmux:auto-start' remote 'yes' - -# Integrate with iTerm2. -# zstyle ':prezto:module:tmux:iterm' integrate 'yes' - -# Set the default session name: -# zstyle ':prezto:module:tmux:session' name 'YOUR DEFAULT SESSION NAME' - -# -# Utility -# - -# Enabled safe options. This aliases cp, ln, mv and rm so that they prompt -# before deleting or overwriting files. Set to 'no' to disable this safer -# behavior. -# zstyle ':prezto:module:utility' safe-ops 'yes' diff --git a/.zprezto/runcoms/zprofile b/.zprezto/runcoms/zprofile deleted file mode 100644 index 0ce353a..0000000 --- a/.zprezto/runcoms/zprofile +++ /dev/null @@ -1,64 +0,0 @@ -# -# Executes commands at login pre-zshrc. -# -# Authors: -# Sorin Ionescu -# - -# -# Browser -# - -if [[ "$OSTYPE" == darwin* ]]; then - export BROWSER='open' -fi - -# -# Editors -# - -export EDITOR='nano' -export VISUAL='nano' -export PAGER='less' - -# -# Language -# - -if [[ -z "$LANG" ]]; then - export LANG='en_US.UTF-8' -fi - -# -# Paths -# - -# Ensure path arrays do not contain duplicates. -typeset -gU cdpath fpath mailpath path - -# Set the list of directories that cd searches. -# cdpath=( -# $cdpath -# ) - -# Set the list of directories that Zsh searches for programs. -path=( - /usr/local/{bin,sbin} - $path -) - -# -# Less -# - -# Set the default Less options. -# Mouse-wheel scrolling has been disabled by -X (disable screen clearing). -# Remove -X to enable it. -export LESS='-g -i -M -R -S -w -X -z-4' - -# Set the Less input preprocessor. -# Try both `lesspipe` and `lesspipe.sh` as either might exist on a system. -if (( $#commands[(i)lesspipe(|.sh)] )); then - export LESSOPEN="| /usr/bin/env $commands[(i)lesspipe(|.sh)] %s 2>&-" -fi -_byobu_sourced=1 . /usr/bin/byobu-launch 2>/dev/null || true diff --git a/.zprezto/runcoms/zshenv b/.zprezto/runcoms/zshenv deleted file mode 100644 index 2dbf12a..0000000 --- a/.zprezto/runcoms/zshenv +++ /dev/null @@ -1,11 +0,0 @@ -# -# Defines environment variables. -# -# Authors: -# Sorin Ionescu -# - -# Ensure that a non-login, non-interactive shell has a defined environment. -if [[ ( "$SHLVL" -eq 1 && ! -o LOGIN ) && -s "${ZDOTDIR:-$HOME}/.zprofile" ]]; then - source "${ZDOTDIR:-$HOME}/.zprofile" -fi diff --git a/.zprezto/runcoms/zshrc b/.zprezto/runcoms/zshrc deleted file mode 100644 index 6960dce..0000000 --- a/.zprezto/runcoms/zshrc +++ /dev/null @@ -1,34 +0,0 @@ -#cd ~ -# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. -# Initialization code that may require console input (password prompts, [y/n] -# confirmations, etc.) must go above this block; everything else may go below. -if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then - source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" -fi - -# -# Executes commands at the start of an interactive session. -# -# Authors: -# Sorin Ionescu -# - -# Source Prezto. -if [[ -s "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" ]]; then - source "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" -fi - -# Customize to your needs... - -# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. -[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh -eval `dircolors ~/.dircolors` -. $HOME/.asdf/asdf.sh -alias cat=batcat -alias vim=nvim -source /usr/share/doc/fzf/examples/key-bindings.zsh -eval "$(direnv hook zsh)" -export EDITOR=vim -export VISUAL=vim - -[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh From c646c4bb99e18cb32726d6872858723a8990ac94 Mon Sep 17 00:00:00 2001 From: Brian Cullen Date: Fri, 21 Mar 2025 21:20:34 +0000 Subject: [PATCH 02/10] Tmux conf --- .mydot | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ .tmux.conf | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ init.sh | 5 +++++ 3 files changed, 111 insertions(+) create mode 100644 .mydot create mode 100644 .tmux.conf create mode 100644 init.sh diff --git a/.mydot b/.mydot new file mode 100644 index 0000000..b1b2ec6 --- /dev/null +++ b/.mydot @@ -0,0 +1,53 @@ +set -g mouse on + +set -g prefix C-Space +bind Space send-prefix + +bind-key v split-window -h -l 90 -c '#{pane_current_path}' +bind-key s split-window -v -l 20 -c '#{pane_current_path}' +bind-key V split-window -h -c '#{pane_current_path}' +bind-key S split-window -v -c '#{pane_current_path}' +bind-key c new-window -c "#{pane_current_path}" + +bind -n S-Left select-pane -L +bind -n S-Right select-pane -R +bind -n S-Up select-pane -U +bind -n S-Down select-pane -D + +bind-key -T copy-mode-vi v send-keys -X begin-selection +bind-key -T copy-mode-vi Escape send-keys -X cancel +bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "win32yank.exe -i" +bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "win32yank.exe -i" +bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "win32yank.exe -i" + +unbind-key -T prefix p +bind-key p run "win32yank.exe -o | tmux load-buffer - && tmux paste-buffer" +bind-key ] run "win32yank.exe -o | tmux load-buffer - && tmux paste-buffer" + +bind -n M-H resize-pane -L 5 +bind -n M-J resize-pane -D 5 +bind -n M-K resize-pane -U 5 +bind -n M-L resize-pane -R 5 + +bind -n M-Left previous-window +bind -n M-Right next-window + +bind -n C-S-Right switchc -n +bind -n C-S-Left switchc -p +bind -n C-S-F2 new-session + +bind-key r source-file ~/.tmux.conf + +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'christoomey/vim-tmux-navigator' +set -g @plugin 'laktak/extrakto' +set -g @plugin 'tmux-plugins/tmux-resurrect' +set -g @plugin 'tmux-plugins/tmux-yank' + +run-shell 'powerline-config tmux setup' + +run '~/.tmux/plugins/tpm/tpm' + +set-option -g default-terminal "screen-256color" + +set -sg escape-time 10 diff --git a/.tmux.conf b/.tmux.conf new file mode 100644 index 0000000..b1b2ec6 --- /dev/null +++ b/.tmux.conf @@ -0,0 +1,53 @@ +set -g mouse on + +set -g prefix C-Space +bind Space send-prefix + +bind-key v split-window -h -l 90 -c '#{pane_current_path}' +bind-key s split-window -v -l 20 -c '#{pane_current_path}' +bind-key V split-window -h -c '#{pane_current_path}' +bind-key S split-window -v -c '#{pane_current_path}' +bind-key c new-window -c "#{pane_current_path}" + +bind -n S-Left select-pane -L +bind -n S-Right select-pane -R +bind -n S-Up select-pane -U +bind -n S-Down select-pane -D + +bind-key -T copy-mode-vi v send-keys -X begin-selection +bind-key -T copy-mode-vi Escape send-keys -X cancel +bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "win32yank.exe -i" +bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "win32yank.exe -i" +bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "win32yank.exe -i" + +unbind-key -T prefix p +bind-key p run "win32yank.exe -o | tmux load-buffer - && tmux paste-buffer" +bind-key ] run "win32yank.exe -o | tmux load-buffer - && tmux paste-buffer" + +bind -n M-H resize-pane -L 5 +bind -n M-J resize-pane -D 5 +bind -n M-K resize-pane -U 5 +bind -n M-L resize-pane -R 5 + +bind -n M-Left previous-window +bind -n M-Right next-window + +bind -n C-S-Right switchc -n +bind -n C-S-Left switchc -p +bind -n C-S-F2 new-session + +bind-key r source-file ~/.tmux.conf + +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'christoomey/vim-tmux-navigator' +set -g @plugin 'laktak/extrakto' +set -g @plugin 'tmux-plugins/tmux-resurrect' +set -g @plugin 'tmux-plugins/tmux-yank' + +run-shell 'powerline-config tmux setup' + +run '~/.tmux/plugins/tpm/tpm' + +set-option -g default-terminal "screen-256color" + +set -sg escape-time 10 diff --git a/init.sh b/init.sh new file mode 100644 index 0000000..2e1c600 --- /dev/null +++ b/init.sh @@ -0,0 +1,5 @@ +#!/usr/bin/bash + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +ln ${SCRIPT_DIR}/.tmux.conf ~/.tmux.conf From f92a18f7f1af3af4715b5bf466cd8e7589cf859b Mon Sep 17 00:00:00 2001 From: Brian Date: Fri, 21 Mar 2025 23:09:09 +0000 Subject: [PATCH 03/10] fzf powerlevel --- .fzf.zsh | 13 + .gitmodules | 6 + .p10k.zsh | 1837 +++++++++++++++++++++++++++++++++++++++++++++++++ .zshrc | 28 + fzf | 1 + init.sh | 9 +- powerlevel10k | 1 + 7 files changed, 1894 insertions(+), 1 deletion(-) create mode 100644 .fzf.zsh create mode 100644 .gitmodules create mode 100644 .p10k.zsh create mode 100644 .zshrc create mode 160000 fzf mode change 100644 => 100755 init.sh create mode 160000 powerlevel10k diff --git a/.fzf.zsh b/.fzf.zsh new file mode 100644 index 0000000..ea997c4 --- /dev/null +++ b/.fzf.zsh @@ -0,0 +1,13 @@ +# Setup fzf +# --------- +if [[ ! "$PATH" == */home/${USER}/.fzf/bin* ]]; then + export PATH="${PATH:+${PATH}:}/home/${USER}/.fzf/bin" +fi + +# Auto-completion +# --------------- +[[ $- == *i* ]] && source "/home/${USER}/.fzf/shell/completion.zsh" 2> /dev/null + +# Key bindings +# ------------ +source "/home/${USER}/.fzf/shell/key-bindings.zsh" diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..28a8691 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,6 @@ +[submodule "fzf"] + path = fzf + url = https://github.com/junegunn/fzf.git +[submodule "powerlevel10k"] + path = powerlevel10k + url = https://github.com/romkatv/powerlevel10k.git diff --git a/.p10k.zsh b/.p10k.zsh new file mode 100644 index 0000000..d01514b --- /dev/null +++ b/.p10k.zsh @@ -0,0 +1,1837 @@ +# Generated by Powerlevel10k configuration wizard on 2025-03-21 at 22:32 GMT. +# Based on romkatv/powerlevel10k/config/p10k-rainbow.zsh, checksum 49619. +# Wizard options: nerdfont-v3 + powerline, large icons, rainbow, unicode, 24h time, +# angled separators, sharp heads, flat tails, 1 line, sparse, few icons, concise, +# instant_prompt=quiet. +# Type `p10k configure` to generate another config. +# +# Config for Powerlevel10k with powerline prompt style with colorful background. +# Type `p10k configure` to generate your own config based on it. +# +# Tip: Looking for a nice color? Here's a one-liner to print colormap. +# +# for i in {0..255}; do print -Pn "%K{$i} %k%F{$i}${(l:3::0:)i}%f " ${${(M)$((i%6)):#3}:+$'\n'}; done + +# Temporarily change options. +'builtin' 'local' '-a' 'p10k_config_opts' +[[ ! -o 'aliases' ]] || p10k_config_opts+=('aliases') +[[ ! -o 'sh_glob' ]] || p10k_config_opts+=('sh_glob') +[[ ! -o 'no_brace_expand' ]] || p10k_config_opts+=('no_brace_expand') +'builtin' 'setopt' 'no_aliases' 'no_sh_glob' 'brace_expand' + +() { + emulate -L zsh -o extended_glob + + # Unset all configuration options. This allows you to apply configuration changes without + # restarting zsh. Edit ~/.p10k.zsh and type `source ~/.p10k.zsh`. + unset -m '(POWERLEVEL9K_*|DEFAULT_USER)~POWERLEVEL9K_GITSTATUS_DIR' + + # Zsh >= 5.1 is required. + [[ $ZSH_VERSION == (5.<1->*|<6->.*) ]] || return + + # The list of segments shown on the left. Fill it with the most important segments. + typeset -g POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=( + # os_icon # os identifier + dir # current directory + vcs # git status + # prompt_char # prompt symbol + ) + + # The list of segments shown on the right. Fill it with less important segments. + # Right prompt on the last prompt line (where you are typing your commands) gets + # automatically hidden when the input line reaches it. Right prompt above the + # last prompt line gets hidden if it would overlap with left prompt. + typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=( + status # exit code of the last command + command_execution_time # duration of the last command + background_jobs # presence of background jobs + direnv # direnv status (https://direnv.net/) + asdf # asdf version manager (https://github.com/asdf-vm/asdf) + virtualenv # python virtual environment (https://docs.python.org/3/library/venv.html) + anaconda # conda environment (https://conda.io/) + pyenv # python environment (https://github.com/pyenv/pyenv) + goenv # go environment (https://github.com/syndbg/goenv) + nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv) + nvm # node.js version from nvm (https://github.com/nvm-sh/nvm) + nodeenv # node.js environment (https://github.com/ekalinin/nodeenv) + # node_version # node.js version + # go_version # go version (https://golang.org) + # rust_version # rustc version (https://www.rust-lang.org) + # dotnet_version # .NET version (https://dotnet.microsoft.com) + # php_version # php version (https://www.php.net/) + # laravel_version # laravel php framework version (https://laravel.com/) + # java_version # java version (https://www.java.com/) + # package # name@version from package.json (https://docs.npmjs.com/files/package.json) + rbenv # ruby version from rbenv (https://github.com/rbenv/rbenv) + rvm # ruby version from rvm (https://rvm.io) + fvm # flutter version management (https://github.com/leoafarias/fvm) + luaenv # lua version from luaenv (https://github.com/cehoffman/luaenv) + jenv # java version from jenv (https://github.com/jenv/jenv) + plenv # perl version from plenv (https://github.com/tokuhirom/plenv) + perlbrew # perl version from perlbrew (https://github.com/gugod/App-perlbrew) + phpenv # php version from phpenv (https://github.com/phpenv/phpenv) + scalaenv # scala version from scalaenv (https://github.com/scalaenv/scalaenv) + haskell_stack # haskell version from stack (https://haskellstack.org/) + kubecontext # current kubernetes context (https://kubernetes.io/) + terraform # terraform workspace (https://www.terraform.io) + # terraform_version # terraform version (https://www.terraform.io) + aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html) + aws_eb_env # aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/) + azure # azure account name (https://docs.microsoft.com/en-us/cli/azure) + gcloud # google cloud cli account and project (https://cloud.google.com/) + google_app_cred # google application credentials (https://cloud.google.com/docs/authentication/production) + toolbox # toolbox name (https://github.com/containers/toolbox) + context # user@hostname + nordvpn # nordvpn connection status, linux only (https://nordvpn.com/) + ranger # ranger shell (https://github.com/ranger/ranger) + yazi # yazi shell (https://github.com/sxyazi/yazi) + nnn # nnn shell (https://github.com/jarun/nnn) + lf # lf shell (https://github.com/gokcehan/lf) + xplr # xplr shell (https://github.com/sayanarijit/xplr) + vim_shell # vim shell indicator (:sh) + midnight_commander # midnight commander shell (https://midnight-commander.org/) + nix_shell # nix shell (https://nixos.org/nixos/nix-pills/developing-with-nix-shell.html) + chezmoi_shell # chezmoi shell (https://www.chezmoi.io/) + vi_mode # vi mode (you don't need this if you've enabled prompt_char) + # vpn_ip # virtual private network indicator + # load # CPU load + # disk_usage # disk usage + # ram # free RAM + # swap # used swap + todo # todo items (https://github.com/todotxt/todo.txt-cli) + timewarrior # timewarrior tracking status (https://timewarrior.net/) + taskwarrior # taskwarrior task count (https://taskwarrior.org/) + per_directory_history # Oh My Zsh per-directory-history local/global indicator + # cpu_arch # CPU architecture + time # current time + # ip # ip address and bandwidth usage for a specified network interface + # public_ip # public IP address + # proxy # system-wide http/https/ftp proxy + # battery # internal battery + # wifi # wifi speed + # example # example user-defined segment (see prompt_example function below) + ) + + # Defines character set used by powerlevel10k. It's best to let `p10k configure` set it for you. + typeset -g POWERLEVEL9K_MODE=nerdfont-v3 + # When set to `moderate`, some icons will have an extra space after them. This is meant to avoid + # icon overlap when using non-monospace fonts. When set to `none`, spaces are not added. + typeset -g POWERLEVEL9K_ICON_PADDING=moderate + + # When set to true, icons appear before content on both sides of the prompt. When set + # to false, icons go after content. If empty or not set, icons go before content in the left + # prompt and after content in the right prompt. + # + # You can also override it for a specific segment: + # + # POWERLEVEL9K_STATUS_ICON_BEFORE_CONTENT=false + # + # Or for a specific segment in specific state: + # + # POWERLEVEL9K_DIR_NOT_WRITABLE_ICON_BEFORE_CONTENT=false + typeset -g POWERLEVEL9K_ICON_BEFORE_CONTENT= + + # Add an empty line before each prompt. + typeset -g POWERLEVEL9K_PROMPT_ADD_NEWLINE=true + + # Connect left prompt lines with these symbols. You'll probably want to use the same color + # as POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_FOREGROUND below. + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_PREFIX='%242F╭─' + typeset -g POWERLEVEL9K_MULTILINE_NEWLINE_PROMPT_PREFIX='%242F├─' + typeset -g POWERLEVEL9K_MULTILINE_LAST_PROMPT_PREFIX='%242F╰─' + # Connect right prompt lines with these symbols. + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_SUFFIX='%242F─╮' + typeset -g POWERLEVEL9K_MULTILINE_NEWLINE_PROMPT_SUFFIX='%242F─┤' + typeset -g POWERLEVEL9K_MULTILINE_LAST_PROMPT_SUFFIX='%242F─╯' + + # Filler between left and right prompt on the first prompt line. You can set it to ' ', '·' or + # '─'. The last two make it easier to see the alignment between left and right prompt and to + # separate prompt from command output. You might want to set POWERLEVEL9K_PROMPT_ADD_NEWLINE=false + # for more compact prompt if using this option. + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR=' ' + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_BACKGROUND= + typeset -g POWERLEVEL9K_MULTILINE_NEWLINE_PROMPT_GAP_BACKGROUND= + if [[ $POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR != ' ' ]]; then + # The color of the filler. You'll probably want to match the color of POWERLEVEL9K_MULTILINE + # ornaments defined above. + typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_FOREGROUND=242 + # Start filler from the edge of the screen if there are no left segments on the first line. + typeset -g POWERLEVEL9K_EMPTY_LINE_LEFT_PROMPT_FIRST_SEGMENT_END_SYMBOL='%{%}' + # End filler on the edge of the screen if there are no right segments on the first line. + typeset -g POWERLEVEL9K_EMPTY_LINE_RIGHT_PROMPT_FIRST_SEGMENT_START_SYMBOL='%{%}' + fi + + # Separator between same-color segments on the left. + typeset -g POWERLEVEL9K_LEFT_SUBSEGMENT_SEPARATOR='\uE0B1' + # Separator between same-color segments on the right. + typeset -g POWERLEVEL9K_RIGHT_SUBSEGMENT_SEPARATOR='\uE0B3' + # Separator between different-color segments on the left. + typeset -g POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR='\uE0B0' + # Separator between different-color segments on the right. + typeset -g POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR='\uE0B2' + # To remove a separator between two segments, add "_joined" to the second segment name. + # For example: POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(os_icon context_joined) + + # The right end of left prompt. + typeset -g POWERLEVEL9K_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL='\uE0B0' + # The left end of right prompt. + typeset -g POWERLEVEL9K_RIGHT_PROMPT_FIRST_SEGMENT_START_SYMBOL='\uE0B2' + # The left end of left prompt. + typeset -g POWERLEVEL9K_LEFT_PROMPT_FIRST_SEGMENT_START_SYMBOL='' + # The right end of right prompt. + typeset -g POWERLEVEL9K_RIGHT_PROMPT_LAST_SEGMENT_END_SYMBOL='' + # Left prompt terminator for lines without any segments. + typeset -g POWERLEVEL9K_EMPTY_LINE_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL= + + #################################[ os_icon: os identifier ]################################## + # OS identifier color. + typeset -g POWERLEVEL9K_OS_ICON_FOREGROUND=232 + typeset -g POWERLEVEL9K_OS_ICON_BACKGROUND=7 + # Custom icon. + # typeset -g POWERLEVEL9K_OS_ICON_CONTENT_EXPANSION='⭐' + + ################################[ prompt_char: prompt symbol ]################################ + # Transparent background. + typeset -g POWERLEVEL9K_PROMPT_CHAR_BACKGROUND= + # Green prompt symbol if the last command succeeded. + typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=76 + # Red prompt symbol if the last command failed. + typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=196 + # Default prompt symbol. + typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIINS_CONTENT_EXPANSION='❯' + # Prompt symbol in command vi mode. + typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VICMD_CONTENT_EXPANSION='❮' + # Prompt symbol in visual vi mode. + typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIVIS_CONTENT_EXPANSION='V' + # Prompt symbol in overwrite vi mode. + typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIOWR_CONTENT_EXPANSION='▶' + typeset -g POWERLEVEL9K_PROMPT_CHAR_OVERWRITE_STATE=true + # No line terminator if prompt_char is the last segment. + typeset -g POWERLEVEL9K_PROMPT_CHAR_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL= + # No line introducer if prompt_char is the first segment. + typeset -g POWERLEVEL9K_PROMPT_CHAR_LEFT_PROMPT_FIRST_SEGMENT_START_SYMBOL= + # No surrounding whitespace. + typeset -g POWERLEVEL9K_PROMPT_CHAR_LEFT_{LEFT,RIGHT}_WHITESPACE= + + ##################################[ dir: current directory ]################################## + # Current directory background color. + typeset -g POWERLEVEL9K_DIR_BACKGROUND=4 + # Default current directory foreground color. + typeset -g POWERLEVEL9K_DIR_FOREGROUND=254 + # If directory is too long, shorten some of its segments to the shortest possible unique + # prefix. The shortened directory can be tab-completed to the original. + typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_unique + # Replace removed segment suffixes with this symbol. + typeset -g POWERLEVEL9K_SHORTEN_DELIMITER= + # Color of the shortened directory segments. + typeset -g POWERLEVEL9K_DIR_SHORTENED_FOREGROUND=250 + # Color of the anchor directory segments. Anchor segments are never shortened. The first + # segment is always an anchor. + typeset -g POWERLEVEL9K_DIR_ANCHOR_FOREGROUND=255 + # Display anchor directory segments in bold. + typeset -g POWERLEVEL9K_DIR_ANCHOR_BOLD=true + # Don't shorten directories that contain any of these files. They are anchors. + local anchor_files=( + .bzr + .citc + .git + .hg + .node-version + .python-version + .go-version + .ruby-version + .lua-version + .java-version + .perl-version + .php-version + .tool-versions + .mise.toml + .shorten_folder_marker + .svn + .terraform + CVS + Cargo.toml + composer.json + go.mod + package.json + stack.yaml + ) + typeset -g POWERLEVEL9K_SHORTEN_FOLDER_MARKER="(${(j:|:)anchor_files})" + # If set to "first" ("last"), remove everything before the first (last) subdirectory that contains + # files matching $POWERLEVEL9K_SHORTEN_FOLDER_MARKER. For example, when the current directory is + # /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first) + # or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers + # and other directories don't. + # + # Optionally, "first" and "last" can be followed by ":" where is an integer. + # This moves the truncation point to the right (positive offset) or to the left (negative offset) + # relative to the marker. Plain "first" and "last" are equivalent to "first:0" and "last:0" + # respectively. + typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false + # Don't shorten this many last directory segments. They are anchors. + typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1 + # Shorten directory if it's longer than this even if there is space for it. The value can + # be either absolute (e.g., '80') or a percentage of terminal width (e.g, '50%'). If empty, + # directory will be shortened only when prompt doesn't fit or when other parameters demand it + # (see POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS and POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT below). + # If set to `0`, directory will always be shortened to its minimum length. + typeset -g POWERLEVEL9K_DIR_MAX_LENGTH=80 + # When `dir` segment is on the last prompt line, try to shorten it enough to leave at least this + # many columns for typing commands. + typeset -g POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS=40 + # When `dir` segment is on the last prompt line, try to shorten it enough to leave at least + # COLUMNS * POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT * 0.01 columns for typing commands. + typeset -g POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT=50 + # If set to true, embed a hyperlink into the directory. Useful for quickly + # opening a directory in the file manager simply by clicking the link. + # Can also be handy when the directory is shortened, as it allows you to see + # the full directory that was used in previous commands. + typeset -g POWERLEVEL9K_DIR_HYPERLINK=false + + # Enable special styling for non-writable and non-existent directories. See POWERLEVEL9K_LOCK_ICON + # and POWERLEVEL9K_DIR_CLASSES below. + typeset -g POWERLEVEL9K_DIR_SHOW_WRITABLE=v3 + + # The default icon shown next to non-writable and non-existent directories when + # POWERLEVEL9K_DIR_SHOW_WRITABLE is set to v3. + # typeset -g POWERLEVEL9K_LOCK_ICON='⭐' + + # POWERLEVEL9K_DIR_CLASSES allows you to specify custom icons and colors for different + # directories. It must be an array with 3 * N elements. Each triplet consists of: + # + # 1. A pattern against which the current directory ($PWD) is matched. Matching is done with + # extended_glob option enabled. + # 2. Directory class for the purpose of styling. + # 3. An empty string. + # + # Triplets are tried in order. The first triplet whose pattern matches $PWD wins. + # + # If POWERLEVEL9K_DIR_SHOW_WRITABLE is set to v3, non-writable and non-existent directories + # acquire class suffix _NOT_WRITABLE and NON_EXISTENT respectively. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_DIR_CLASSES=( + # '~/work(|/*)' WORK '' + # '~(|/*)' HOME '' + # '*' DEFAULT '') + # + # Whenever the current directory is ~/work or a subdirectory of ~/work, it gets styled with one + # of the following classes depending on its writability and existence: WORK, WORK_NOT_WRITABLE or + # WORK_NON_EXISTENT. + # + # Simply assigning classes to directories doesn't have any visible effects. It merely gives you an + # option to define custom colors and icons for different directory classes. + # + # # Styling for WORK. + # typeset -g POWERLEVEL9K_DIR_WORK_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_DIR_WORK_BACKGROUND=4 + # typeset -g POWERLEVEL9K_DIR_WORK_FOREGROUND=254 + # typeset -g POWERLEVEL9K_DIR_WORK_SHORTENED_FOREGROUND=250 + # typeset -g POWERLEVEL9K_DIR_WORK_ANCHOR_FOREGROUND=255 + # + # # Styling for WORK_NOT_WRITABLE. + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_BACKGROUND=4 + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_FOREGROUND=254 + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_SHORTENED_FOREGROUND=250 + # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_ANCHOR_FOREGROUND=255 + # + # # Styling for WORK_NON_EXISTENT. + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_BACKGROUND=4 + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_FOREGROUND=254 + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_SHORTENED_FOREGROUND=250 + # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_ANCHOR_FOREGROUND=255 + # + # If a styling parameter isn't explicitly defined for some class, it falls back to the classless + # parameter. For example, if POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_FOREGROUND is not set, it falls + # back to POWERLEVEL9K_DIR_FOREGROUND. + # + typeset -g POWERLEVEL9K_DIR_CLASSES=() + + # Custom prefix. + # typeset -g POWERLEVEL9K_DIR_PREFIX='in ' + + #####################################[ vcs: git status ]###################################### + # Version control background colors. + typeset -g POWERLEVEL9K_VCS_CLEAN_BACKGROUND=2 + typeset -g POWERLEVEL9K_VCS_MODIFIED_BACKGROUND=3 + typeset -g POWERLEVEL9K_VCS_UNTRACKED_BACKGROUND=2 + typeset -g POWERLEVEL9K_VCS_CONFLICTED_BACKGROUND=3 + typeset -g POWERLEVEL9K_VCS_LOADING_BACKGROUND=8 + + # Branch icon. Set this parameter to '\UE0A0 ' for the popular Powerline branch icon. + typeset -g POWERLEVEL9K_VCS_BRANCH_ICON= + + # Untracked files icon. It's really a question mark, your font isn't broken. + # Change the value of this parameter to show a different icon. + typeset -g POWERLEVEL9K_VCS_UNTRACKED_ICON='?' + + # Formatter for Git status. + # + # Example output: master wip ⇣42⇡42 *42 merge ~42 +42 !42 ?42. + # + # You can edit the function to customize how Git status looks. + # + # VCS_STATUS_* parameters are set by gitstatus plugin. See reference: + # https://github.com/romkatv/gitstatus/blob/master/gitstatus.plugin.zsh. + function my_git_formatter() { + emulate -L zsh + + if [[ -n $P9K_CONTENT ]]; then + # If P9K_CONTENT is not empty, use it. It's either "loading" or from vcs_info (not from + # gitstatus plugin). VCS_STATUS_* parameters are not available in this case. + typeset -g my_git_format=$P9K_CONTENT + return + fi + + # Styling for different parts of Git status. + local meta='%7F' # white foreground + local clean='%0F' # black foreground + local modified='%0F' # black foreground + local untracked='%0F' # black foreground + local conflicted='%1F' # red foreground + + local res + + if [[ -n $VCS_STATUS_LOCAL_BRANCH ]]; then + local branch=${(V)VCS_STATUS_LOCAL_BRANCH} + # If local branch name is at most 32 characters long, show it in full. + # Otherwise show the first 12 … the last 12. + # Tip: To always show local branch name in full without truncation, delete the next line. + (( $#branch > 32 )) && branch[13,-13]="…" # <-- this line + res+="${clean}${(g::)POWERLEVEL9K_VCS_BRANCH_ICON}${branch//\%/%%}" + fi + + if [[ -n $VCS_STATUS_TAG + # Show tag only if not on a branch. + # Tip: To always show tag, delete the next line. + && -z $VCS_STATUS_LOCAL_BRANCH # <-- this line + ]]; then + local tag=${(V)VCS_STATUS_TAG} + # If tag name is at most 32 characters long, show it in full. + # Otherwise show the first 12 … the last 12. + # Tip: To always show tag name in full without truncation, delete the next line. + (( $#tag > 32 )) && tag[13,-13]="…" # <-- this line + res+="${meta}#${clean}${tag//\%/%%}" + fi + + # Display the current Git commit if there is no branch and no tag. + # Tip: To always display the current Git commit, delete the next line. + [[ -z $VCS_STATUS_LOCAL_BRANCH && -z $VCS_STATUS_TAG ]] && # <-- this line + res+="${meta}@${clean}${VCS_STATUS_COMMIT[1,8]}" + + # Show tracking branch name if it differs from local branch. + if [[ -n ${VCS_STATUS_REMOTE_BRANCH:#$VCS_STATUS_LOCAL_BRANCH} ]]; then + res+="${meta}:${clean}${(V)VCS_STATUS_REMOTE_BRANCH//\%/%%}" + fi + + # Display "wip" if the latest commit's summary contains "wip" or "WIP". + if [[ $VCS_STATUS_COMMIT_SUMMARY == (|*[^[:alnum:]])(wip|WIP)(|[^[:alnum:]]*) ]]; then + res+=" ${modified}wip" + fi + + if (( VCS_STATUS_COMMITS_AHEAD || VCS_STATUS_COMMITS_BEHIND )); then + # ⇣42 if behind the remote. + (( VCS_STATUS_COMMITS_BEHIND )) && res+=" ${clean}⇣${VCS_STATUS_COMMITS_BEHIND}" + # ⇡42 if ahead of the remote; no leading space if also behind the remote: ⇣42⇡42. + (( VCS_STATUS_COMMITS_AHEAD && !VCS_STATUS_COMMITS_BEHIND )) && res+=" " + (( VCS_STATUS_COMMITS_AHEAD )) && res+="${clean}⇡${VCS_STATUS_COMMITS_AHEAD}" + elif [[ -n $VCS_STATUS_REMOTE_BRANCH ]]; then + # Tip: Uncomment the next line to display '=' if up to date with the remote. + # res+=" ${clean}=" + fi + + # ⇠42 if behind the push remote. + (( VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" ${clean}⇠${VCS_STATUS_PUSH_COMMITS_BEHIND}" + (( VCS_STATUS_PUSH_COMMITS_AHEAD && !VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" " + # ⇢42 if ahead of the push remote; no leading space if also behind: ⇠42⇢42. + (( VCS_STATUS_PUSH_COMMITS_AHEAD )) && res+="${clean}⇢${VCS_STATUS_PUSH_COMMITS_AHEAD}" + # *42 if have stashes. + (( VCS_STATUS_STASHES )) && res+=" ${clean}*${VCS_STATUS_STASHES}" + # 'merge' if the repo is in an unusual state. + [[ -n $VCS_STATUS_ACTION ]] && res+=" ${conflicted}${VCS_STATUS_ACTION}" + # ~42 if have merge conflicts. + (( VCS_STATUS_NUM_CONFLICTED )) && res+=" ${conflicted}~${VCS_STATUS_NUM_CONFLICTED}" + # +42 if have staged changes. + (( VCS_STATUS_NUM_STAGED )) && res+=" ${modified}+${VCS_STATUS_NUM_STAGED}" + # !42 if have unstaged changes. + (( VCS_STATUS_NUM_UNSTAGED )) && res+=" ${modified}!${VCS_STATUS_NUM_UNSTAGED}" + # ?42 if have untracked files. It's really a question mark, your font isn't broken. + # See POWERLEVEL9K_VCS_UNTRACKED_ICON above if you want to use a different icon. + # Remove the next line if you don't want to see untracked files at all. + (( VCS_STATUS_NUM_UNTRACKED )) && res+=" ${untracked}${(g::)POWERLEVEL9K_VCS_UNTRACKED_ICON}${VCS_STATUS_NUM_UNTRACKED}" + # "─" if the number of unstaged files is unknown. This can happen due to + # POWERLEVEL9K_VCS_MAX_INDEX_SIZE_DIRTY (see below) being set to a non-negative number lower + # than the number of files in the Git index, or due to bash.showDirtyState being set to false + # in the repository config. The number of staged and untracked files may also be unknown + # in this case. + (( VCS_STATUS_HAS_UNSTAGED == -1 )) && res+=" ${modified}─" + + typeset -g my_git_format=$res + } + functions -M my_git_formatter 2>/dev/null + + # Don't count the number of unstaged, untracked and conflicted files in Git repositories with + # more than this many files in the index. Negative value means infinity. + # + # If you are working in Git repositories with tens of millions of files and seeing performance + # sagging, try setting POWERLEVEL9K_VCS_MAX_INDEX_SIZE_DIRTY to a number lower than the output + # of `git ls-files | wc -l`. Alternatively, add `bash.showDirtyState = false` to the repository's + # config: `git config bash.showDirtyState false`. + typeset -g POWERLEVEL9K_VCS_MAX_INDEX_SIZE_DIRTY=-1 + + # Don't show Git status in prompt for repositories whose workdir matches this pattern. + # For example, if set to '~', the Git repository at $HOME/.git will be ignored. + # Multiple patterns can be combined with '|': '~(|/foo)|/bar/baz/*'. + typeset -g POWERLEVEL9K_VCS_DISABLED_WORKDIR_PATTERN='~' + + # Disable the default Git status formatting. + typeset -g POWERLEVEL9K_VCS_DISABLE_GITSTATUS_FORMATTING=true + # Install our own Git status formatter. + typeset -g POWERLEVEL9K_VCS_CONTENT_EXPANSION='${$((my_git_formatter()))+${my_git_format}}' + # Enable counters for staged, unstaged, etc. + typeset -g POWERLEVEL9K_VCS_{STAGED,UNSTAGED,UNTRACKED,CONFLICTED,COMMITS_AHEAD,COMMITS_BEHIND}_MAX_NUM=-1 + + # Custom icon. + typeset -g POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_EXPANSION= + # Custom prefix. + # typeset -g POWERLEVEL9K_VCS_PREFIX='on ' + + # Show status of repositories of these types. You can add svn and/or hg if you are + # using them. If you do, your prompt may become slow even when your current directory + # isn't in an svn or hg repository. + typeset -g POWERLEVEL9K_VCS_BACKENDS=(git) + + ##########################[ status: exit code of the last command ]########################### + # Enable OK_PIPE, ERROR_PIPE and ERROR_SIGNAL status states to allow us to enable, disable and + # style them independently from the regular OK and ERROR state. + typeset -g POWERLEVEL9K_STATUS_EXTENDED_STATES=true + + # Status on success. No content, just an icon. No need to show it if prompt_char is enabled as + # it will signify success by turning green. + typeset -g POWERLEVEL9K_STATUS_OK=true + typeset -g POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_EXPANSION='✔' + typeset -g POWERLEVEL9K_STATUS_OK_FOREGROUND=2 + typeset -g POWERLEVEL9K_STATUS_OK_BACKGROUND=0 + + # Status when some part of a pipe command fails but the overall exit status is zero. It may look + # like this: 1|0. + typeset -g POWERLEVEL9K_STATUS_OK_PIPE=true + typeset -g POWERLEVEL9K_STATUS_OK_PIPE_VISUAL_IDENTIFIER_EXPANSION='✔' + typeset -g POWERLEVEL9K_STATUS_OK_PIPE_FOREGROUND=2 + typeset -g POWERLEVEL9K_STATUS_OK_PIPE_BACKGROUND=0 + + # Status when it's just an error code (e.g., '1'). No need to show it if prompt_char is enabled as + # it will signify error by turning red. + typeset -g POWERLEVEL9K_STATUS_ERROR=true + typeset -g POWERLEVEL9K_STATUS_ERROR_VISUAL_IDENTIFIER_EXPANSION='✘' + typeset -g POWERLEVEL9K_STATUS_ERROR_FOREGROUND=3 + typeset -g POWERLEVEL9K_STATUS_ERROR_BACKGROUND=1 + + # Status when the last command was terminated by a signal. + typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL=true + # Use terse signal names: "INT" instead of "SIGINT(2)". + typeset -g POWERLEVEL9K_STATUS_VERBOSE_SIGNAME=false + typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_VISUAL_IDENTIFIER_EXPANSION='✘' + typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_FOREGROUND=3 + typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_BACKGROUND=1 + + # Status when some part of a pipe command fails and the overall exit status is also non-zero. + # It may look like this: 1|0. + typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE=true + typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_VISUAL_IDENTIFIER_EXPANSION='✘' + typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_FOREGROUND=3 + typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_BACKGROUND=1 + + ###################[ command_execution_time: duration of the last command ]################### + # Execution time color. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FOREGROUND=0 + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_BACKGROUND=3 + # Show duration of the last command if takes at least this many seconds. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD=3 + # Show this many fractional digits. Zero means round to seconds. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION=0 + # Duration format: 1d 2h 3m 4s. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FORMAT='d h m s' + # Custom icon. + typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_VISUAL_IDENTIFIER_EXPANSION= + # Custom prefix. + # typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PREFIX='took ' + + #######################[ background_jobs: presence of background jobs ]####################### + # Background jobs color. + typeset -g POWERLEVEL9K_BACKGROUND_JOBS_FOREGROUND=6 + typeset -g POWERLEVEL9K_BACKGROUND_JOBS_BACKGROUND=0 + # Don't show the number of background jobs. + typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VERBOSE=false + # Custom icon. + # typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #######################[ direnv: direnv status (https://direnv.net/) ]######################## + # Direnv color. + typeset -g POWERLEVEL9K_DIRENV_FOREGROUND=3 + typeset -g POWERLEVEL9K_DIRENV_BACKGROUND=0 + # Custom icon. + # typeset -g POWERLEVEL9K_DIRENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###############[ asdf: asdf version manager (https://github.com/asdf-vm/asdf) ]############### + # Default asdf color. Only used to display tools for which there is no color override (see below). + # Tip: Override these parameters for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_FOREGROUND and + # POWERLEVEL9K_ASDF_${TOOL}_BACKGROUND. + typeset -g POWERLEVEL9K_ASDF_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_BACKGROUND=7 + + # There are four parameters that can be used to hide asdf tools. Each parameter describes + # conditions under which a tool gets hidden. Parameters can hide tools but not unhide them. If at + # least one parameter decides to hide a tool, that tool gets hidden. If no parameter decides to + # hide a tool, it gets shown. + # + # Special note on the difference between POWERLEVEL9K_ASDF_SOURCES and + # POWERLEVEL9K_ASDF_PROMPT_ALWAYS_SHOW. Consider the effect of the following commands: + # + # asdf local python 3.8.1 + # asdf global python 3.8.1 + # + # After running both commands the current python version is 3.8.1 and its source is "local" as + # it takes precedence over "global". If POWERLEVEL9K_ASDF_PROMPT_ALWAYS_SHOW is set to false, + # it'll hide python version in this case because 3.8.1 is the same as the global version. + # POWERLEVEL9K_ASDF_SOURCES will hide python version only if the value of this parameter doesn't + # contain "local". + + # Hide tool versions that don't come from one of these sources. + # + # Available sources: + # + # - shell `asdf current` says "set by ASDF_${TOOL}_VERSION environment variable" + # - local `asdf current` says "set by /some/not/home/directory/file" + # - global `asdf current` says "set by /home/username/file" + # + # Note: If this parameter is set to (shell local global), it won't hide tools. + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_SOURCES. + typeset -g POWERLEVEL9K_ASDF_SOURCES=(shell local global) + + # If set to false, hide tool versions that are the same as global. + # + # Note: The name of this parameter doesn't reflect its meaning at all. + # Note: If this parameter is set to true, it won't hide tools. + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_PROMPT_ALWAYS_SHOW. + typeset -g POWERLEVEL9K_ASDF_PROMPT_ALWAYS_SHOW=false + + # If set to false, hide tool versions that are equal to "system". + # + # Note: If this parameter is set to true, it won't hide tools. + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_SHOW_SYSTEM. + typeset -g POWERLEVEL9K_ASDF_SHOW_SYSTEM=true + + # If set to non-empty value, hide tools unless there is a file matching the specified file pattern + # in the current directory, or its parent directory, or its grandparent directory, and so on. + # + # Note: If this parameter is set to empty value, it won't hide tools. + # Note: SHOW_ON_UPGLOB isn't specific to asdf. It works with all prompt segments. + # Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_SHOW_ON_UPGLOB. + # + # Example: Hide nodejs version when there is no package.json and no *.js files in the current + # directory, in `..`, in `../..` and so on. + # + # typeset -g POWERLEVEL9K_ASDF_NODEJS_SHOW_ON_UPGLOB='*.js|package.json' + typeset -g POWERLEVEL9K_ASDF_SHOW_ON_UPGLOB= + + # Ruby version from asdf. + typeset -g POWERLEVEL9K_ASDF_RUBY_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_RUBY_BACKGROUND=1 + # typeset -g POWERLEVEL9K_ASDF_RUBY_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_RUBY_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Python version from asdf. + typeset -g POWERLEVEL9K_ASDF_PYTHON_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_PYTHON_BACKGROUND=4 + # typeset -g POWERLEVEL9K_ASDF_PYTHON_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_PYTHON_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Go version from asdf. + typeset -g POWERLEVEL9K_ASDF_GOLANG_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_GOLANG_BACKGROUND=4 + # typeset -g POWERLEVEL9K_ASDF_GOLANG_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_GOLANG_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Node.js version from asdf. + typeset -g POWERLEVEL9K_ASDF_NODEJS_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_NODEJS_BACKGROUND=2 + # typeset -g POWERLEVEL9K_ASDF_NODEJS_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_NODEJS_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Rust version from asdf. + typeset -g POWERLEVEL9K_ASDF_RUST_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_RUST_BACKGROUND=208 + # typeset -g POWERLEVEL9K_ASDF_RUST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_RUST_SHOW_ON_UPGLOB='*.foo|*.bar' + + # .NET Core version from asdf. + typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_BACKGROUND=5 + # typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Flutter version from asdf. + typeset -g POWERLEVEL9K_ASDF_FLUTTER_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_FLUTTER_BACKGROUND=4 + # typeset -g POWERLEVEL9K_ASDF_FLUTTER_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_FLUTTER_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Lua version from asdf. + typeset -g POWERLEVEL9K_ASDF_LUA_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_LUA_BACKGROUND=4 + # typeset -g POWERLEVEL9K_ASDF_LUA_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_LUA_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Java version from asdf. + typeset -g POWERLEVEL9K_ASDF_JAVA_FOREGROUND=1 + typeset -g POWERLEVEL9K_ASDF_JAVA_BACKGROUND=7 + # typeset -g POWERLEVEL9K_ASDF_JAVA_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_JAVA_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Perl version from asdf. + typeset -g POWERLEVEL9K_ASDF_PERL_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_PERL_BACKGROUND=4 + # typeset -g POWERLEVEL9K_ASDF_PERL_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_PERL_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Erlang version from asdf. + typeset -g POWERLEVEL9K_ASDF_ERLANG_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_ERLANG_BACKGROUND=1 + # typeset -g POWERLEVEL9K_ASDF_ERLANG_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_ERLANG_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Elixir version from asdf. + typeset -g POWERLEVEL9K_ASDF_ELIXIR_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_ELIXIR_BACKGROUND=5 + # typeset -g POWERLEVEL9K_ASDF_ELIXIR_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_ELIXIR_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Postgres version from asdf. + typeset -g POWERLEVEL9K_ASDF_POSTGRES_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_POSTGRES_BACKGROUND=6 + # typeset -g POWERLEVEL9K_ASDF_POSTGRES_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_POSTGRES_SHOW_ON_UPGLOB='*.foo|*.bar' + + # PHP version from asdf. + typeset -g POWERLEVEL9K_ASDF_PHP_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_PHP_BACKGROUND=5 + # typeset -g POWERLEVEL9K_ASDF_PHP_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_PHP_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Haskell version from asdf. + typeset -g POWERLEVEL9K_ASDF_HASKELL_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_HASKELL_BACKGROUND=3 + # typeset -g POWERLEVEL9K_ASDF_HASKELL_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_HASKELL_SHOW_ON_UPGLOB='*.foo|*.bar' + + # Julia version from asdf. + typeset -g POWERLEVEL9K_ASDF_JULIA_FOREGROUND=0 + typeset -g POWERLEVEL9K_ASDF_JULIA_BACKGROUND=2 + # typeset -g POWERLEVEL9K_ASDF_JULIA_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_ASDF_JULIA_SHOW_ON_UPGLOB='*.foo|*.bar' + + ##########[ nordvpn: nordvpn connection status, linux only (https://nordvpn.com/) ]########### + # NordVPN connection indicator color. + typeset -g POWERLEVEL9K_NORDVPN_FOREGROUND=7 + typeset -g POWERLEVEL9K_NORDVPN_BACKGROUND=4 + # Hide NordVPN connection indicator when not connected. + typeset -g POWERLEVEL9K_NORDVPN_{DISCONNECTED,CONNECTING,DISCONNECTING}_CONTENT_EXPANSION= + typeset -g POWERLEVEL9K_NORDVPN_{DISCONNECTED,CONNECTING,DISCONNECTING}_VISUAL_IDENTIFIER_EXPANSION= + # Custom icon. + # typeset -g POWERLEVEL9K_NORDVPN_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #################[ ranger: ranger shell (https://github.com/ranger/ranger) ]################## + # Ranger shell color. + typeset -g POWERLEVEL9K_RANGER_FOREGROUND=3 + typeset -g POWERLEVEL9K_RANGER_BACKGROUND=0 + # Custom icon. + # typeset -g POWERLEVEL9K_RANGER_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ####################[ yazi: yazi shell (https://github.com/sxyazi/yazi) ]##################### + # Yazi shell color. + typeset -g POWERLEVEL9K_YAZI_FOREGROUND=3 + typeset -g POWERLEVEL9K_YAZI_BACKGROUND=0 + # Custom icon. + # typeset -g POWERLEVEL9K_YAZI_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######################[ nnn: nnn shell (https://github.com/jarun/nnn) ]####################### + # Nnn shell color. + typeset -g POWERLEVEL9K_NNN_FOREGROUND=0 + typeset -g POWERLEVEL9K_NNN_BACKGROUND=6 + # Custom icon. + # typeset -g POWERLEVEL9K_NNN_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######################[ lf: lf shell (https://github.com/gokcehan/lf) ]####################### + # lf shell color. + typeset -g POWERLEVEL9K_LF_FOREGROUND=0 + typeset -g POWERLEVEL9K_LF_BACKGROUND=6 + # Custom icon. + # typeset -g POWERLEVEL9K_LF_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##################[ xplr: xplr shell (https://github.com/sayanarijit/xplr) ]################## + # xplr shell color. + typeset -g POWERLEVEL9K_XPLR_FOREGROUND=0 + typeset -g POWERLEVEL9K_XPLR_BACKGROUND=6 + # Custom icon. + # typeset -g POWERLEVEL9K_XPLR_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########################[ vim_shell: vim shell indicator (:sh) ]########################### + # Vim shell indicator color. + typeset -g POWERLEVEL9K_VIM_SHELL_FOREGROUND=0 + typeset -g POWERLEVEL9K_VIM_SHELL_BACKGROUND=2 + # Custom icon. + # typeset -g POWERLEVEL9K_VIM_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######[ midnight_commander: midnight commander shell (https://midnight-commander.org/) ]###### + # Midnight Commander shell color. + typeset -g POWERLEVEL9K_MIDNIGHT_COMMANDER_FOREGROUND=3 + typeset -g POWERLEVEL9K_MIDNIGHT_COMMANDER_BACKGROUND=0 + # Custom icon. + # typeset -g POWERLEVEL9K_MIDNIGHT_COMMANDER_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #[ nix_shell: nix shell (https://nixos.org/nixos/nix-pills/developing-with-nix-shell.html) ]## + # Nix shell color. + typeset -g POWERLEVEL9K_NIX_SHELL_FOREGROUND=0 + typeset -g POWERLEVEL9K_NIX_SHELL_BACKGROUND=4 + + # Display the icon of nix_shell if PATH contains a subdirectory of /nix/store. + # typeset -g POWERLEVEL9K_NIX_SHELL_INFER_FROM_PATH=false + + # Tip: If you want to see just the icon without "pure" and "impure", uncomment the next line. + # typeset -g POWERLEVEL9K_NIX_SHELL_CONTENT_EXPANSION= + + # Custom icon. + # typeset -g POWERLEVEL9K_NIX_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##################[ chezmoi_shell: chezmoi shell (https://www.chezmoi.io/) ]################## + # chezmoi shell color. + typeset -g POWERLEVEL9K_CHEZMOI_SHELL_FOREGROUND=0 + typeset -g POWERLEVEL9K_CHEZMOI_SHELL_BACKGROUND=4 + # Custom icon. + # typeset -g POWERLEVEL9K_CHEZMOI_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##################################[ disk_usage: disk usage ]################################## + # Colors for different levels of disk usage. + typeset -g POWERLEVEL9K_DISK_USAGE_NORMAL_FOREGROUND=3 + typeset -g POWERLEVEL9K_DISK_USAGE_NORMAL_BACKGROUND=0 + typeset -g POWERLEVEL9K_DISK_USAGE_WARNING_FOREGROUND=0 + typeset -g POWERLEVEL9K_DISK_USAGE_WARNING_BACKGROUND=3 + typeset -g POWERLEVEL9K_DISK_USAGE_CRITICAL_FOREGROUND=7 + typeset -g POWERLEVEL9K_DISK_USAGE_CRITICAL_BACKGROUND=1 + # Thresholds for different levels of disk usage (percentage points). + typeset -g POWERLEVEL9K_DISK_USAGE_WARNING_LEVEL=90 + typeset -g POWERLEVEL9K_DISK_USAGE_CRITICAL_LEVEL=95 + # If set to true, hide disk usage when below $POWERLEVEL9K_DISK_USAGE_WARNING_LEVEL percent. + typeset -g POWERLEVEL9K_DISK_USAGE_ONLY_WARNING=false + # Custom icon. + # typeset -g POWERLEVEL9K_DISK_USAGE_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ vi_mode: vi mode (you don't need this if you've enabled prompt_char) ]########### + # Foreground color. + typeset -g POWERLEVEL9K_VI_MODE_FOREGROUND=0 + # Text and color for normal (a.k.a. command) vi mode. + typeset -g POWERLEVEL9K_VI_COMMAND_MODE_STRING=NORMAL + typeset -g POWERLEVEL9K_VI_MODE_NORMAL_BACKGROUND=2 + # Text and color for visual vi mode. + typeset -g POWERLEVEL9K_VI_VISUAL_MODE_STRING=VISUAL + typeset -g POWERLEVEL9K_VI_MODE_VISUAL_BACKGROUND=4 + # Text and color for overtype (a.k.a. overwrite and replace) vi mode. + typeset -g POWERLEVEL9K_VI_OVERWRITE_MODE_STRING=OVERTYPE + typeset -g POWERLEVEL9K_VI_MODE_OVERWRITE_BACKGROUND=3 + # Text and color for insert vi mode. + typeset -g POWERLEVEL9K_VI_INSERT_MODE_STRING= + typeset -g POWERLEVEL9K_VI_MODE_INSERT_FOREGROUND=8 + # Custom icon. + # typeset -g POWERLEVEL9K_VI_MODE_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######################################[ ram: free RAM ]####################################### + # RAM color. + typeset -g POWERLEVEL9K_RAM_FOREGROUND=0 + typeset -g POWERLEVEL9K_RAM_BACKGROUND=3 + # Custom icon. + # typeset -g POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #####################################[ swap: used swap ]###################################### + # Swap color. + typeset -g POWERLEVEL9K_SWAP_FOREGROUND=0 + typeset -g POWERLEVEL9K_SWAP_BACKGROUND=3 + # Custom icon. + # typeset -g POWERLEVEL9K_SWAP_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######################################[ load: CPU load ]###################################### + # Show average CPU load over this many last minutes. Valid values are 1, 5 and 15. + typeset -g POWERLEVEL9K_LOAD_WHICH=5 + # Load color when load is under 50%. + typeset -g POWERLEVEL9K_LOAD_NORMAL_FOREGROUND=0 + typeset -g POWERLEVEL9K_LOAD_NORMAL_BACKGROUND=2 + # Load color when load is between 50% and 70%. + typeset -g POWERLEVEL9K_LOAD_WARNING_FOREGROUND=0 + typeset -g POWERLEVEL9K_LOAD_WARNING_BACKGROUND=3 + # Load color when load is over 70%. + typeset -g POWERLEVEL9K_LOAD_CRITICAL_FOREGROUND=0 + typeset -g POWERLEVEL9K_LOAD_CRITICAL_BACKGROUND=1 + # Custom icon. + # typeset -g POWERLEVEL9K_LOAD_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################[ todo: todo items (https://github.com/todotxt/todo.txt-cli) ]################ + # Todo color. + typeset -g POWERLEVEL9K_TODO_FOREGROUND=0 + typeset -g POWERLEVEL9K_TODO_BACKGROUND=8 + # Hide todo when the total number of tasks is zero. + typeset -g POWERLEVEL9K_TODO_HIDE_ZERO_TOTAL=true + # Hide todo when the number of tasks after filtering is zero. + typeset -g POWERLEVEL9K_TODO_HIDE_ZERO_FILTERED=false + + # Todo format. The following parameters are available within the expansion. + # + # - P9K_TODO_TOTAL_TASK_COUNT The total number of tasks. + # - P9K_TODO_FILTERED_TASK_COUNT The number of tasks after filtering. + # + # These variables correspond to the last line of the output of `todo.sh -p ls`: + # + # TODO: 24 of 42 tasks shown + # + # Here 24 is P9K_TODO_FILTERED_TASK_COUNT and 42 is P9K_TODO_TOTAL_TASK_COUNT. + # + # typeset -g POWERLEVEL9K_TODO_CONTENT_EXPANSION='$P9K_TODO_FILTERED_TASK_COUNT' + + # Custom icon. + # typeset -g POWERLEVEL9K_TODO_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ timewarrior: timewarrior tracking status (https://timewarrior.net/) ]############ + # Timewarrior color. + typeset -g POWERLEVEL9K_TIMEWARRIOR_FOREGROUND=255 + typeset -g POWERLEVEL9K_TIMEWARRIOR_BACKGROUND=8 + + # If the tracked task is longer than 24 characters, truncate and append "…". + # Tip: To always display tasks without truncation, delete the following parameter. + # Tip: To hide task names and display just the icon when time tracking is enabled, set the + # value of the following parameter to "". + typeset -g POWERLEVEL9K_TIMEWARRIOR_CONTENT_EXPANSION='${P9K_CONTENT:0:24}${${P9K_CONTENT:24}:+…}' + + # Custom icon. + # typeset -g POWERLEVEL9K_TIMEWARRIOR_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##############[ taskwarrior: taskwarrior task count (https://taskwarrior.org/) ]############## + # Taskwarrior color. + typeset -g POWERLEVEL9K_TASKWARRIOR_FOREGROUND=0 + typeset -g POWERLEVEL9K_TASKWARRIOR_BACKGROUND=6 + + # Taskwarrior segment format. The following parameters are available within the expansion. + # + # - P9K_TASKWARRIOR_PENDING_COUNT The number of pending tasks: `task +PENDING count`. + # - P9K_TASKWARRIOR_OVERDUE_COUNT The number of overdue tasks: `task +OVERDUE count`. + # + # Zero values are represented as empty parameters. + # + # The default format: + # + # '${P9K_TASKWARRIOR_OVERDUE_COUNT:+"!$P9K_TASKWARRIOR_OVERDUE_COUNT/"}$P9K_TASKWARRIOR_PENDING_COUNT' + # + # typeset -g POWERLEVEL9K_TASKWARRIOR_CONTENT_EXPANSION='$P9K_TASKWARRIOR_PENDING_COUNT' + + # Custom icon. + # typeset -g POWERLEVEL9K_TASKWARRIOR_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ######[ per_directory_history: Oh My Zsh per-directory-history local/global indicator ]####### + # Color when using local/global history. + typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_FOREGROUND=0 + typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_BACKGROUND=5 + typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_FOREGROUND=0 + typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_BACKGROUND=3 + + # Tip: Uncomment the next two lines to hide "local"/"global" text and leave just the icon. + # typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_CONTENT_EXPANSION='' + # typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_CONTENT_EXPANSION='' + + # Custom icon. + # typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################################[ cpu_arch: CPU architecture ]################################ + # CPU architecture color. + typeset -g POWERLEVEL9K_CPU_ARCH_FOREGROUND=0 + typeset -g POWERLEVEL9K_CPU_ARCH_BACKGROUND=3 + + # Hide the segment when on a specific CPU architecture. + # typeset -g POWERLEVEL9K_CPU_ARCH_X86_64_CONTENT_EXPANSION= + # typeset -g POWERLEVEL9K_CPU_ARCH_X86_64_VISUAL_IDENTIFIER_EXPANSION= + + # Custom icon. + # typeset -g POWERLEVEL9K_CPU_ARCH_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##################################[ context: user@hostname ]################################## + # Context color when running with privileges. + typeset -g POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND=1 + typeset -g POWERLEVEL9K_CONTEXT_ROOT_BACKGROUND=0 + # Context color in SSH without privileges. + typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_FOREGROUND=3 + typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_BACKGROUND=0 + # Default context color (no privileges, no SSH). + typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=3 + typeset -g POWERLEVEL9K_CONTEXT_BACKGROUND=0 + + # Context format when running with privileges: user@hostname. + typeset -g POWERLEVEL9K_CONTEXT_ROOT_TEMPLATE='%n@%m' + # Context format when in SSH without privileges: user@hostname. + typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_TEMPLATE='%n@%m' + # Default context format (no privileges, no SSH): user@hostname. + typeset -g POWERLEVEL9K_CONTEXT_TEMPLATE='%n@%m' + + # Don't show context unless running with privileges or in SSH. + # Tip: Remove the next line to always show context. + typeset -g POWERLEVEL9K_CONTEXT_{DEFAULT,SUDO}_{CONTENT,VISUAL_IDENTIFIER}_EXPANSION= + + # Custom icon. + # typeset -g POWERLEVEL9K_CONTEXT_VISUAL_IDENTIFIER_EXPANSION='⭐' + # Custom prefix. + # typeset -g POWERLEVEL9K_CONTEXT_PREFIX='with ' + + ###[ virtualenv: python virtual environment (https://docs.python.org/3/library/venv.html) ]### + # Python virtual environment color. + typeset -g POWERLEVEL9K_VIRTUALENV_FOREGROUND=0 + typeset -g POWERLEVEL9K_VIRTUALENV_BACKGROUND=4 + # Don't show Python version next to the virtual environment name. + typeset -g POWERLEVEL9K_VIRTUALENV_SHOW_PYTHON_VERSION=false + # If set to "false", won't show virtualenv if pyenv is already shown. + # If set to "if-different", won't show virtualenv if it's the same as pyenv. + typeset -g POWERLEVEL9K_VIRTUALENV_SHOW_WITH_PYENV=false + # Separate environment name from Python version only with a space. + typeset -g POWERLEVEL9K_VIRTUALENV_{LEFT,RIGHT}_DELIMITER= + # Custom icon. + # typeset -g POWERLEVEL9K_VIRTUALENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #####################[ anaconda: conda environment (https://conda.io/) ]###################### + # Anaconda environment color. + typeset -g POWERLEVEL9K_ANACONDA_FOREGROUND=0 + typeset -g POWERLEVEL9K_ANACONDA_BACKGROUND=4 + + # Anaconda segment format. The following parameters are available within the expansion. + # + # - CONDA_PREFIX Absolute path to the active Anaconda/Miniconda environment. + # - CONDA_DEFAULT_ENV Name of the active Anaconda/Miniconda environment. + # - CONDA_PROMPT_MODIFIER Configurable prompt modifier (see below). + # - P9K_ANACONDA_PYTHON_VERSION Current python version (python --version). + # + # CONDA_PROMPT_MODIFIER can be configured with the following command: + # + # conda config --set env_prompt '({default_env}) ' + # + # The last argument is a Python format string that can use the following variables: + # + # - prefix The same as CONDA_PREFIX. + # - default_env The same as CONDA_DEFAULT_ENV. + # - name The last segment of CONDA_PREFIX. + # - stacked_env Comma-separated list of names in the environment stack. The first element is + # always the same as default_env. + # + # Note: '({default_env}) ' is the default value of env_prompt. + # + # The default value of POWERLEVEL9K_ANACONDA_CONTENT_EXPANSION expands to $CONDA_PROMPT_MODIFIER + # without the surrounding parentheses, or to the last path component of CONDA_PREFIX if the former + # is empty. + typeset -g POWERLEVEL9K_ANACONDA_CONTENT_EXPANSION='${${${${CONDA_PROMPT_MODIFIER#\(}% }%\)}:-${CONDA_PREFIX:t}}' + + # Custom icon. + # typeset -g POWERLEVEL9K_ANACONDA_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################[ pyenv: python environment (https://github.com/pyenv/pyenv) ]################ + # Pyenv color. + typeset -g POWERLEVEL9K_PYENV_FOREGROUND=0 + typeset -g POWERLEVEL9K_PYENV_BACKGROUND=4 + # Hide python version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_PYENV_SOURCES=(shell local global) + # If set to false, hide python version if it's the same as global: + # $(pyenv version-name) == $(pyenv global). + typeset -g POWERLEVEL9K_PYENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide python version if it's equal to "system". + typeset -g POWERLEVEL9K_PYENV_SHOW_SYSTEM=true + + # Pyenv segment format. The following parameters are available within the expansion. + # + # - P9K_CONTENT Current pyenv environment (pyenv version-name). + # - P9K_PYENV_PYTHON_VERSION Current python version (python --version). + # + # The default format has the following logic: + # + # 1. Display just "$P9K_CONTENT" if it's equal to "$P9K_PYENV_PYTHON_VERSION" or + # starts with "$P9K_PYENV_PYTHON_VERSION/". + # 2. Otherwise display "$P9K_CONTENT $P9K_PYENV_PYTHON_VERSION". + typeset -g POWERLEVEL9K_PYENV_CONTENT_EXPANSION='${P9K_CONTENT}${${P9K_CONTENT:#$P9K_PYENV_PYTHON_VERSION(|/*)}:+ $P9K_PYENV_PYTHON_VERSION}' + + # Custom icon. + # typeset -g POWERLEVEL9K_PYENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################[ goenv: go environment (https://github.com/syndbg/goenv) ]################ + # Goenv color. + typeset -g POWERLEVEL9K_GOENV_FOREGROUND=0 + typeset -g POWERLEVEL9K_GOENV_BACKGROUND=4 + # Hide go version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_GOENV_SOURCES=(shell local global) + # If set to false, hide go version if it's the same as global: + # $(goenv version-name) == $(goenv global). + typeset -g POWERLEVEL9K_GOENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide go version if it's equal to "system". + typeset -g POWERLEVEL9K_GOENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_GOENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ nodenv: node.js version from nodenv (https://github.com/nodenv/nodenv) ]########## + # Nodenv color. + typeset -g POWERLEVEL9K_NODENV_FOREGROUND=2 + typeset -g POWERLEVEL9K_NODENV_BACKGROUND=0 + # Hide node version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_NODENV_SOURCES=(shell local global) + # If set to false, hide node version if it's the same as global: + # $(nodenv version-name) == $(nodenv global). + typeset -g POWERLEVEL9K_NODENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide node version if it's equal to "system". + typeset -g POWERLEVEL9K_NODENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_NODENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##############[ nvm: node.js version from nvm (https://github.com/nvm-sh/nvm) ]############### + # Nvm color. + typeset -g POWERLEVEL9K_NVM_FOREGROUND=0 + typeset -g POWERLEVEL9K_NVM_BACKGROUND=5 + # If set to false, hide node version if it's the same as default: + # $(nvm version current) == $(nvm version default). + typeset -g POWERLEVEL9K_NVM_PROMPT_ALWAYS_SHOW=false + # If set to false, hide node version if it's equal to "system". + typeset -g POWERLEVEL9K_NVM_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_NVM_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ############[ nodeenv: node.js environment (https://github.com/ekalinin/nodeenv) ]############ + # Nodeenv color. + typeset -g POWERLEVEL9K_NODEENV_FOREGROUND=2 + typeset -g POWERLEVEL9K_NODEENV_BACKGROUND=0 + # Don't show Node version next to the environment name. + typeset -g POWERLEVEL9K_NODEENV_SHOW_NODE_VERSION=false + # Separate environment name from Node version only with a space. + typeset -g POWERLEVEL9K_NODEENV_{LEFT,RIGHT}_DELIMITER= + # Custom icon. + # typeset -g POWERLEVEL9K_NODEENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##############################[ node_version: node.js version ]############################### + # Node version color. + typeset -g POWERLEVEL9K_NODE_VERSION_FOREGROUND=7 + typeset -g POWERLEVEL9K_NODE_VERSION_BACKGROUND=2 + # Show node version only when in a directory tree containing package.json. + typeset -g POWERLEVEL9K_NODE_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_NODE_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #######################[ go_version: go version (https://golang.org) ]######################## + # Go version color. + typeset -g POWERLEVEL9K_GO_VERSION_FOREGROUND=255 + typeset -g POWERLEVEL9K_GO_VERSION_BACKGROUND=2 + # Show go version only when in a go project subdirectory. + typeset -g POWERLEVEL9K_GO_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_GO_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #################[ rust_version: rustc version (https://www.rust-lang.org) ]################## + # Rust version color. + typeset -g POWERLEVEL9K_RUST_VERSION_FOREGROUND=0 + typeset -g POWERLEVEL9K_RUST_VERSION_BACKGROUND=208 + # Show rust version only when in a rust project subdirectory. + typeset -g POWERLEVEL9K_RUST_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_RUST_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###############[ dotnet_version: .NET version (https://dotnet.microsoft.com) ]################ + # .NET version color. + typeset -g POWERLEVEL9K_DOTNET_VERSION_FOREGROUND=7 + typeset -g POWERLEVEL9K_DOTNET_VERSION_BACKGROUND=5 + # Show .NET version only when in a .NET project subdirectory. + typeset -g POWERLEVEL9K_DOTNET_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_DOTNET_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #####################[ php_version: php version (https://www.php.net/) ]###################### + # PHP version color. + typeset -g POWERLEVEL9K_PHP_VERSION_FOREGROUND=0 + typeset -g POWERLEVEL9K_PHP_VERSION_BACKGROUND=5 + # Show PHP version only when in a PHP project subdirectory. + typeset -g POWERLEVEL9K_PHP_VERSION_PROJECT_ONLY=true + # Custom icon. + # typeset -g POWERLEVEL9K_PHP_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ laravel_version: laravel php framework version (https://laravel.com/) ]########### + # Laravel version color. + typeset -g POWERLEVEL9K_LARAVEL_VERSION_FOREGROUND=1 + typeset -g POWERLEVEL9K_LARAVEL_VERSION_BACKGROUND=7 + # Custom icon. + # typeset -g POWERLEVEL9K_LARAVEL_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #############[ rbenv: ruby version from rbenv (https://github.com/rbenv/rbenv) ]############## + # Rbenv color. + typeset -g POWERLEVEL9K_RBENV_FOREGROUND=0 + typeset -g POWERLEVEL9K_RBENV_BACKGROUND=1 + # Hide ruby version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_RBENV_SOURCES=(shell local global) + # If set to false, hide ruby version if it's the same as global: + # $(rbenv version-name) == $(rbenv global). + typeset -g POWERLEVEL9K_RBENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide ruby version if it's equal to "system". + typeset -g POWERLEVEL9K_RBENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_RBENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ####################[ java_version: java version (https://www.java.com/) ]#################### + # Java version color. + typeset -g POWERLEVEL9K_JAVA_VERSION_FOREGROUND=1 + typeset -g POWERLEVEL9K_JAVA_VERSION_BACKGROUND=7 + # Show java version only when in a java project subdirectory. + typeset -g POWERLEVEL9K_JAVA_VERSION_PROJECT_ONLY=true + # Show brief version. + typeset -g POWERLEVEL9K_JAVA_VERSION_FULL=false + # Custom icon. + # typeset -g POWERLEVEL9K_JAVA_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###[ package: name@version from package.json (https://docs.npmjs.com/files/package.json) ]#### + # Package color. + typeset -g POWERLEVEL9K_PACKAGE_FOREGROUND=0 + typeset -g POWERLEVEL9K_PACKAGE_BACKGROUND=6 + + # Package format. The following parameters are available within the expansion. + # + # - P9K_PACKAGE_NAME The value of `name` field in package.json. + # - P9K_PACKAGE_VERSION The value of `version` field in package.json. + # + # typeset -g POWERLEVEL9K_PACKAGE_CONTENT_EXPANSION='${P9K_PACKAGE_NAME//\%/%%}@${P9K_PACKAGE_VERSION//\%/%%}' + + # Custom icon. + # typeset -g POWERLEVEL9K_PACKAGE_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #######################[ rvm: ruby version from rvm (https://rvm.io) ]######################## + # Rvm color. + typeset -g POWERLEVEL9K_RVM_FOREGROUND=0 + typeset -g POWERLEVEL9K_RVM_BACKGROUND=240 + # Don't show @gemset at the end. + typeset -g POWERLEVEL9K_RVM_SHOW_GEMSET=false + # Don't show ruby- at the front. + typeset -g POWERLEVEL9K_RVM_SHOW_PREFIX=false + # Custom icon. + # typeset -g POWERLEVEL9K_RVM_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ fvm: flutter version management (https://github.com/leoafarias/fvm) ]############ + # Fvm color. + typeset -g POWERLEVEL9K_FVM_FOREGROUND=0 + typeset -g POWERLEVEL9K_FVM_BACKGROUND=4 + # Custom icon. + # typeset -g POWERLEVEL9K_FVM_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ luaenv: lua version from luaenv (https://github.com/cehoffman/luaenv) ]########### + # Lua color. + typeset -g POWERLEVEL9K_LUAENV_FOREGROUND=0 + typeset -g POWERLEVEL9K_LUAENV_BACKGROUND=4 + # Hide lua version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_LUAENV_SOURCES=(shell local global) + # If set to false, hide lua version if it's the same as global: + # $(luaenv version-name) == $(luaenv global). + typeset -g POWERLEVEL9K_LUAENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide lua version if it's equal to "system". + typeset -g POWERLEVEL9K_LUAENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_LUAENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###############[ jenv: java version from jenv (https://github.com/jenv/jenv) ]################ + # Java color. + typeset -g POWERLEVEL9K_JENV_FOREGROUND=1 + typeset -g POWERLEVEL9K_JENV_BACKGROUND=7 + # Hide java version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_JENV_SOURCES=(shell local global) + # If set to false, hide java version if it's the same as global: + # $(jenv version-name) == $(jenv global). + typeset -g POWERLEVEL9K_JENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide java version if it's equal to "system". + typeset -g POWERLEVEL9K_JENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_JENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ plenv: perl version from plenv (https://github.com/tokuhirom/plenv) ]############ + # Perl color. + typeset -g POWERLEVEL9K_PLENV_FOREGROUND=0 + typeset -g POWERLEVEL9K_PLENV_BACKGROUND=4 + # Hide perl version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_PLENV_SOURCES=(shell local global) + # If set to false, hide perl version if it's the same as global: + # $(plenv version-name) == $(plenv global). + typeset -g POWERLEVEL9K_PLENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide perl version if it's equal to "system". + typeset -g POWERLEVEL9K_PLENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_PLENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ perlbrew: perl version from perlbrew (https://github.com/gugod/App-perlbrew) ]############ + # Perlbrew color. + typeset -g POWERLEVEL9K_PERLBREW_FOREGROUND=67 + # Show perlbrew version only when in a perl project subdirectory. + typeset -g POWERLEVEL9K_PERLBREW_PROJECT_ONLY=true + # Don't show "perl-" at the front. + typeset -g POWERLEVEL9K_PERLBREW_SHOW_PREFIX=false + # Custom icon. + # typeset -g POWERLEVEL9K_PERLBREW_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ############[ phpenv: php version from phpenv (https://github.com/phpenv/phpenv) ]############ + # PHP color. + typeset -g POWERLEVEL9K_PHPENV_FOREGROUND=0 + typeset -g POWERLEVEL9K_PHPENV_BACKGROUND=5 + # Hide php version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_PHPENV_SOURCES=(shell local global) + # If set to false, hide php version if it's the same as global: + # $(phpenv version-name) == $(phpenv global). + typeset -g POWERLEVEL9K_PHPENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide PHP version if it's equal to "system". + typeset -g POWERLEVEL9K_PHPENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_PHPENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #######[ scalaenv: scala version from scalaenv (https://github.com/scalaenv/scalaenv) ]####### + # Scala color. + typeset -g POWERLEVEL9K_SCALAENV_FOREGROUND=0 + typeset -g POWERLEVEL9K_SCALAENV_BACKGROUND=1 + # Hide scala version if it doesn't come from one of these sources. + typeset -g POWERLEVEL9K_SCALAENV_SOURCES=(shell local global) + # If set to false, hide scala version if it's the same as global: + # $(scalaenv version-name) == $(scalaenv global). + typeset -g POWERLEVEL9K_SCALAENV_PROMPT_ALWAYS_SHOW=false + # If set to false, hide scala version if it's equal to "system". + typeset -g POWERLEVEL9K_SCALAENV_SHOW_SYSTEM=true + # Custom icon. + # typeset -g POWERLEVEL9K_SCALAENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ haskell_stack: haskell version from stack (https://haskellstack.org/) ]########### + # Haskell color. + typeset -g POWERLEVEL9K_HASKELL_STACK_FOREGROUND=0 + typeset -g POWERLEVEL9K_HASKELL_STACK_BACKGROUND=3 + + # Hide haskell version if it doesn't come from one of these sources. + # + # shell: version is set by STACK_YAML + # local: version is set by stack.yaml up the directory tree + # global: version is set by the implicit global project (~/.stack/global-project/stack.yaml) + typeset -g POWERLEVEL9K_HASKELL_STACK_SOURCES=(shell local) + # If set to false, hide haskell version if it's the same as in the implicit global project. + typeset -g POWERLEVEL9K_HASKELL_STACK_ALWAYS_SHOW=true + # Custom icon. + # typeset -g POWERLEVEL9K_HASKELL_STACK_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################[ terraform: terraform workspace (https://www.terraform.io) ]################# + # Don't show terraform workspace if it's literally "default". + typeset -g POWERLEVEL9K_TERRAFORM_SHOW_DEFAULT=false + # POWERLEVEL9K_TERRAFORM_CLASSES is an array with even number of elements. The first element + # in each pair defines a pattern against which the current terraform workspace gets matched. + # More specifically, it's P9K_CONTENT prior to the application of context expansion (see below) + # that gets matched. If you unset all POWERLEVEL9K_TERRAFORM_*CONTENT_EXPANSION parameters, + # you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_TERRAFORM_CLASSES defines the workspace class. Patterns are tried in order. The + # first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_TERRAFORM_CLASSES=( + # '*prod*' PROD + # '*test*' TEST + # '*' OTHER) + # + # If your current terraform workspace is "project_test", its class is TEST because "project_test" + # doesn't match the pattern '*prod*' but does match '*test*'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_TERRAFORM_TEST_FOREGROUND=2 + # typeset -g POWERLEVEL9K_TERRAFORM_TEST_BACKGROUND=0 + # typeset -g POWERLEVEL9K_TERRAFORM_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_TERRAFORM_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <' + typeset -g POWERLEVEL9K_TERRAFORM_CLASSES=( + # '*prod*' PROD # These values are examples that are unlikely + # '*test*' TEST # to match your needs. Customize them as needed. + '*' OTHER) + typeset -g POWERLEVEL9K_TERRAFORM_OTHER_FOREGROUND=4 + typeset -g POWERLEVEL9K_TERRAFORM_OTHER_BACKGROUND=0 + # typeset -g POWERLEVEL9K_TERRAFORM_OTHER_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #############[ terraform_version: terraform version (https://www.terraform.io) ]############## + # Terraform version color. + typeset -g POWERLEVEL9K_TERRAFORM_VERSION_FOREGROUND=4 + typeset -g POWERLEVEL9K_TERRAFORM_VERSION_BACKGROUND=0 + # Custom icon. + # typeset -g POWERLEVEL9K_TERRAFORM_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################[ terraform_version: It shows active terraform version (https://www.terraform.io) ]################# + typeset -g POWERLEVEL9K_TERRAFORM_VERSION_SHOW_ON_COMMAND='terraform|tf' + + #############[ kubecontext: current kubernetes context (https://kubernetes.io/) ]############# + # Show kubecontext only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show kubecontext. + typeset -g POWERLEVEL9K_KUBECONTEXT_SHOW_ON_COMMAND='kubectl|helm|kubens|kubectx|oc|istioctl|kogito|k9s|helmfile|flux|fluxctl|stern|kubeseal|skaffold|kubent|kubecolor|cmctl|sparkctl' + + # Kubernetes context classes for the purpose of using different colors, icons and expansions with + # different contexts. + # + # POWERLEVEL9K_KUBECONTEXT_CLASSES is an array with even number of elements. The first element + # in each pair defines a pattern against which the current kubernetes context gets matched. + # More specifically, it's P9K_CONTENT prior to the application of context expansion (see below) + # that gets matched. If you unset all POWERLEVEL9K_KUBECONTEXT_*CONTENT_EXPANSION parameters, + # you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_KUBECONTEXT_CLASSES defines the context class. Patterns are tried in order. The + # first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_KUBECONTEXT_CLASSES=( + # '*prod*' PROD + # '*test*' TEST + # '*' DEFAULT) + # + # If your current kubernetes context is "deathray-testing/default", its class is TEST + # because "deathray-testing/default" doesn't match the pattern '*prod*' but does match '*test*'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_FOREGROUND=0 + # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_BACKGROUND=2 + # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <' + typeset -g POWERLEVEL9K_KUBECONTEXT_CLASSES=( + # '*prod*' PROD # These values are examples that are unlikely + # '*test*' TEST # to match your needs. Customize them as needed. + '*' DEFAULT) + typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_FOREGROUND=7 + typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_BACKGROUND=5 + # typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # Use POWERLEVEL9K_KUBECONTEXT_CONTENT_EXPANSION to specify the content displayed by kubecontext + # segment. Parameter expansions are very flexible and fast, too. See reference: + # http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion. + # + # Within the expansion the following parameters are always available: + # + # - P9K_CONTENT The content that would've been displayed if there was no content + # expansion defined. + # - P9K_KUBECONTEXT_NAME The current context's name. Corresponds to column NAME in the + # output of `kubectl config get-contexts`. + # - P9K_KUBECONTEXT_CLUSTER The current context's cluster. Corresponds to column CLUSTER in the + # output of `kubectl config get-contexts`. + # - P9K_KUBECONTEXT_NAMESPACE The current context's namespace. Corresponds to column NAMESPACE + # in the output of `kubectl config get-contexts`. If there is no + # namespace, the parameter is set to "default". + # - P9K_KUBECONTEXT_USER The current context's user. Corresponds to column AUTHINFO in the + # output of `kubectl config get-contexts`. + # + # If the context points to Google Kubernetes Engine (GKE) or Elastic Kubernetes Service (EKS), + # the following extra parameters are available: + # + # - P9K_KUBECONTEXT_CLOUD_NAME Either "gke" or "eks". + # - P9K_KUBECONTEXT_CLOUD_ACCOUNT Account/project ID. + # - P9K_KUBECONTEXT_CLOUD_ZONE Availability zone. + # - P9K_KUBECONTEXT_CLOUD_CLUSTER Cluster. + # + # P9K_KUBECONTEXT_CLOUD_* parameters are derived from P9K_KUBECONTEXT_CLUSTER. For example, + # if P9K_KUBECONTEXT_CLUSTER is "gke_my-account_us-east1-a_my-cluster-01": + # + # - P9K_KUBECONTEXT_CLOUD_NAME=gke + # - P9K_KUBECONTEXT_CLOUD_ACCOUNT=my-account + # - P9K_KUBECONTEXT_CLOUD_ZONE=us-east1-a + # - P9K_KUBECONTEXT_CLOUD_CLUSTER=my-cluster-01 + # + # If P9K_KUBECONTEXT_CLUSTER is "arn:aws:eks:us-east-1:123456789012:cluster/my-cluster-01": + # + # - P9K_KUBECONTEXT_CLOUD_NAME=eks + # - P9K_KUBECONTEXT_CLOUD_ACCOUNT=123456789012 + # - P9K_KUBECONTEXT_CLOUD_ZONE=us-east-1 + # - P9K_KUBECONTEXT_CLOUD_CLUSTER=my-cluster-01 + typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION= + # Show P9K_KUBECONTEXT_CLOUD_CLUSTER if it's not empty and fall back to P9K_KUBECONTEXT_NAME. + POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION+='${P9K_KUBECONTEXT_CLOUD_CLUSTER:-${P9K_KUBECONTEXT_NAME}}' + # Append the current context's namespace if it's not "default". + POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION+='${${:-/$P9K_KUBECONTEXT_NAMESPACE}:#/default}' + + # Custom prefix. + # typeset -g POWERLEVEL9K_KUBECONTEXT_PREFIX='at ' + + #[ aws: aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html) ]# + # Show aws only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show aws. + typeset -g POWERLEVEL9K_AWS_SHOW_ON_COMMAND='aws|awless|cdk|terraform|pulumi|terragrunt' + + # POWERLEVEL9K_AWS_CLASSES is an array with even number of elements. The first element + # in each pair defines a pattern against which the current AWS profile gets matched. + # More specifically, it's P9K_CONTENT prior to the application of context expansion (see below) + # that gets matched. If you unset all POWERLEVEL9K_AWS_*CONTENT_EXPANSION parameters, + # you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_AWS_CLASSES defines the profile class. Patterns are tried in order. The + # first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_AWS_CLASSES=( + # '*prod*' PROD + # '*test*' TEST + # '*' DEFAULT) + # + # If your current AWS profile is "company_test", its class is TEST + # because "company_test" doesn't match the pattern '*prod*' but does match '*test*'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_AWS_TEST_FOREGROUND=28 + # typeset -g POWERLEVEL9K_AWS_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_AWS_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <' + typeset -g POWERLEVEL9K_AWS_CLASSES=( + # '*prod*' PROD # These values are examples that are unlikely + # '*test*' TEST # to match your needs. Customize them as needed. + '*' DEFAULT) + typeset -g POWERLEVEL9K_AWS_DEFAULT_FOREGROUND=7 + typeset -g POWERLEVEL9K_AWS_DEFAULT_BACKGROUND=1 + # typeset -g POWERLEVEL9K_AWS_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # AWS segment format. The following parameters are available within the expansion. + # + # - P9K_AWS_PROFILE The name of the current AWS profile. + # - P9K_AWS_REGION The region associated with the current AWS profile. + typeset -g POWERLEVEL9K_AWS_CONTENT_EXPANSION='${P9K_AWS_PROFILE//\%/%%}${P9K_AWS_REGION:+ ${P9K_AWS_REGION//\%/%%}}' + + #[ aws_eb_env: aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/) ]# + # AWS Elastic Beanstalk environment color. + typeset -g POWERLEVEL9K_AWS_EB_ENV_FOREGROUND=2 + typeset -g POWERLEVEL9K_AWS_EB_ENV_BACKGROUND=0 + # Custom icon. + # typeset -g POWERLEVEL9K_AWS_EB_ENV_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ azure: azure account name (https://docs.microsoft.com/en-us/cli/azure) ]########## + # Show azure only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show azure. + typeset -g POWERLEVEL9K_AZURE_SHOW_ON_COMMAND='az|terraform|pulumi|terragrunt' + + # POWERLEVEL9K_AZURE_CLASSES is an array with even number of elements. The first element + # in each pair defines a pattern against which the current azure account name gets matched. + # More specifically, it's P9K_CONTENT prior to the application of context expansion (see below) + # that gets matched. If you unset all POWERLEVEL9K_AZURE_*CONTENT_EXPANSION parameters, + # you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_AZURE_CLASSES defines the account class. Patterns are tried in order. The + # first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_AZURE_CLASSES=( + # '*prod*' PROD + # '*test*' TEST + # '*' OTHER) + # + # If your current azure account is "company_test", its class is TEST because "company_test" + # doesn't match the pattern '*prod*' but does match '*test*'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_AZURE_TEST_FOREGROUND=2 + # typeset -g POWERLEVEL9K_AZURE_TEST_BACKGROUND=0 + # typeset -g POWERLEVEL9K_AZURE_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_AZURE_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <' + typeset -g POWERLEVEL9K_AZURE_CLASSES=( + # '*prod*' PROD # These values are examples that are unlikely + # '*test*' TEST # to match your needs. Customize them as needed. + '*' OTHER) + + # Azure account name color. + typeset -g POWERLEVEL9K_AZURE_OTHER_FOREGROUND=7 + typeset -g POWERLEVEL9K_AZURE_OTHER_BACKGROUND=4 + # Custom icon. + # typeset -g POWERLEVEL9K_AZURE_OTHER_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ##########[ gcloud: google cloud account and project (https://cloud.google.com/) ]########### + # Show gcloud only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show gcloud. + typeset -g POWERLEVEL9K_GCLOUD_SHOW_ON_COMMAND='gcloud|gcs|gsutil' + # Google cloud color. + typeset -g POWERLEVEL9K_GCLOUD_FOREGROUND=7 + typeset -g POWERLEVEL9K_GCLOUD_BACKGROUND=4 + + # Google cloud format. Change the value of POWERLEVEL9K_GCLOUD_PARTIAL_CONTENT_EXPANSION and/or + # POWERLEVEL9K_GCLOUD_COMPLETE_CONTENT_EXPANSION if the default is too verbose or not informative + # enough. You can use the following parameters in the expansions. Each of them corresponds to the + # output of `gcloud` tool. + # + # Parameter | Source + # -------------------------|-------------------------------------------------------------------- + # P9K_GCLOUD_CONFIGURATION | gcloud config configurations list --format='value(name)' + # P9K_GCLOUD_ACCOUNT | gcloud config get-value account + # P9K_GCLOUD_PROJECT_ID | gcloud config get-value project + # P9K_GCLOUD_PROJECT_NAME | gcloud projects describe $P9K_GCLOUD_PROJECT_ID --format='value(name)' + # + # Note: ${VARIABLE//\%/%%} expands to ${VARIABLE} with all occurrences of '%' replaced with '%%'. + # + # Obtaining project name requires sending a request to Google servers. This can take a long time + # and even fail. When project name is unknown, P9K_GCLOUD_PROJECT_NAME is not set and gcloud + # prompt segment is in state PARTIAL. When project name gets known, P9K_GCLOUD_PROJECT_NAME gets + # set and gcloud prompt segment transitions to state COMPLETE. + # + # You can customize the format, icon and colors of gcloud segment separately for states PARTIAL + # and COMPLETE. You can also hide gcloud in state PARTIAL by setting + # POWERLEVEL9K_GCLOUD_PARTIAL_VISUAL_IDENTIFIER_EXPANSION and + # POWERLEVEL9K_GCLOUD_PARTIAL_CONTENT_EXPANSION to empty. + typeset -g POWERLEVEL9K_GCLOUD_PARTIAL_CONTENT_EXPANSION='${P9K_GCLOUD_PROJECT_ID//\%/%%}' + typeset -g POWERLEVEL9K_GCLOUD_COMPLETE_CONTENT_EXPANSION='${P9K_GCLOUD_PROJECT_NAME//\%/%%}' + + # Send a request to Google (by means of `gcloud projects describe ...`) to obtain project name + # this often. Negative value disables periodic polling. In this mode project name is retrieved + # only when the current configuration, account or project id changes. + typeset -g POWERLEVEL9K_GCLOUD_REFRESH_PROJECT_NAME_SECONDS=60 + + # Custom icon. + # typeset -g POWERLEVEL9K_GCLOUD_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #[ google_app_cred: google application credentials (https://cloud.google.com/docs/authentication/production) ]# + # Show google_app_cred only when the command you are typing invokes one of these tools. + # Tip: Remove the next line to always show google_app_cred. + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_SHOW_ON_COMMAND='terraform|pulumi|terragrunt' + + # Google application credentials classes for the purpose of using different colors, icons and + # expansions with different credentials. + # + # POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES is an array with even number of elements. The first + # element in each pair defines a pattern against which the current kubernetes context gets + # matched. More specifically, it's P9K_CONTENT prior to the application of context expansion + # (see below) that gets matched. If you unset all POWERLEVEL9K_GOOGLE_APP_CRED_*CONTENT_EXPANSION + # parameters, you'll see this value in your prompt. The second element of each pair in + # POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES defines the context class. Patterns are tried in order. + # The first match wins. + # + # For example, given these settings: + # + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES=( + # '*:*prod*:*' PROD + # '*:*test*:*' TEST + # '*' DEFAULT) + # + # If your current Google application credentials is "service_account deathray-testing x@y.com", + # its class is TEST because it doesn't match the pattern '* *prod* *' but does match '* *test* *'. + # + # You can define different colors, icons and content expansions for different classes: + # + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_FOREGROUND=28 + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐' + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_CONTENT_EXPANSION='$P9K_GOOGLE_APP_CRED_PROJECT_ID' + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES=( + # '*:*prod*:*' PROD # These values are examples that are unlikely + # '*:*test*:*' TEST # to match your needs. Customize them as needed. + '*' DEFAULT) + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_FOREGROUND=7 + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_BACKGROUND=4 + # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # Use POWERLEVEL9K_GOOGLE_APP_CRED_CONTENT_EXPANSION to specify the content displayed by + # google_app_cred segment. Parameter expansions are very flexible and fast, too. See reference: + # http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion. + # + # You can use the following parameters in the expansion. Each of them corresponds to one of the + # fields in the JSON file pointed to by GOOGLE_APPLICATION_CREDENTIALS. + # + # Parameter | JSON key file field + # ---------------------------------+--------------- + # P9K_GOOGLE_APP_CRED_TYPE | type + # P9K_GOOGLE_APP_CRED_PROJECT_ID | project_id + # P9K_GOOGLE_APP_CRED_CLIENT_EMAIL | client_email + # + # Note: ${VARIABLE//\%/%%} expands to ${VARIABLE} with all occurrences of '%' replaced by '%%'. + typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_CONTENT_EXPANSION='${P9K_GOOGLE_APP_CRED_PROJECT_ID//\%/%%}' + + ##############[ toolbox: toolbox name (https://github.com/containers/toolbox) ]############### + # Toolbox color. + typeset -g POWERLEVEL9K_TOOLBOX_FOREGROUND=0 + typeset -g POWERLEVEL9K_TOOLBOX_BACKGROUND=3 + # Don't display the name of the toolbox if it matches fedora-toolbox-*. + typeset -g POWERLEVEL9K_TOOLBOX_CONTENT_EXPANSION='${P9K_TOOLBOX_NAME:#fedora-toolbox-*}' + # Custom icon. + # typeset -g POWERLEVEL9K_TOOLBOX_VISUAL_IDENTIFIER_EXPANSION='⭐' + # Custom prefix. + # typeset -g POWERLEVEL9K_TOOLBOX_PREFIX='in ' + + ###############################[ public_ip: public IP address ]############################### + # Public IP color. + typeset -g POWERLEVEL9K_PUBLIC_IP_FOREGROUND=7 + typeset -g POWERLEVEL9K_PUBLIC_IP_BACKGROUND=0 + # Custom icon. + # typeset -g POWERLEVEL9K_PUBLIC_IP_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ########################[ vpn_ip: virtual private network indicator ]######################### + # VPN IP color. + typeset -g POWERLEVEL9K_VPN_IP_FOREGROUND=0 + typeset -g POWERLEVEL9K_VPN_IP_BACKGROUND=6 + # When on VPN, show just an icon without the IP address. + # Tip: To display the private IP address when on VPN, remove the next line. + typeset -g POWERLEVEL9K_VPN_IP_CONTENT_EXPANSION= + # Regular expression for the VPN network interface. Run `ifconfig` or `ip -4 a show` while on VPN + # to see the name of the interface. + typeset -g POWERLEVEL9K_VPN_IP_INTERFACE='(gpd|wg|(.*tun)|tailscale)[0-9]*|(zt.*)' + # If set to true, show one segment per matching network interface. If set to false, show only + # one segment corresponding to the first matching network interface. + # Tip: If you set it to true, you'll probably want to unset POWERLEVEL9K_VPN_IP_CONTENT_EXPANSION. + typeset -g POWERLEVEL9K_VPN_IP_SHOW_ALL=false + # Custom icon. + # typeset -g POWERLEVEL9K_VPN_IP_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ###########[ ip: ip address and bandwidth usage for a specified network interface ]########### + # IP color. + typeset -g POWERLEVEL9K_IP_BACKGROUND=4 + typeset -g POWERLEVEL9K_IP_FOREGROUND=0 + # The following parameters are accessible within the expansion: + # + # Parameter | Meaning + # ----------------------+------------------------------------------- + # P9K_IP_IP | IP address + # P9K_IP_INTERFACE | network interface + # P9K_IP_RX_BYTES | total number of bytes received + # P9K_IP_TX_BYTES | total number of bytes sent + # P9K_IP_RX_BYTES_DELTA | number of bytes received since last prompt + # P9K_IP_TX_BYTES_DELTA | number of bytes sent since last prompt + # P9K_IP_RX_RATE | receive rate (since last prompt) + # P9K_IP_TX_RATE | send rate (since last prompt) + typeset -g POWERLEVEL9K_IP_CONTENT_EXPANSION='${P9K_IP_RX_RATE:+⇣$P9K_IP_RX_RATE }${P9K_IP_TX_RATE:+⇡$P9K_IP_TX_RATE }$P9K_IP_IP' + # Show information for the first network interface whose name matches this regular expression. + # Run `ifconfig` or `ip -4 a show` to see the names of all network interfaces. + typeset -g POWERLEVEL9K_IP_INTERFACE='[ew].*' + # Custom icon. + # typeset -g POWERLEVEL9K_IP_VISUAL_IDENTIFIER_EXPANSION='⭐' + + #########################[ proxy: system-wide http/https/ftp proxy ]########################## + # Proxy color. + typeset -g POWERLEVEL9K_PROXY_FOREGROUND=4 + typeset -g POWERLEVEL9K_PROXY_BACKGROUND=0 + # Custom icon. + # typeset -g POWERLEVEL9K_PROXY_VISUAL_IDENTIFIER_EXPANSION='⭐' + + ################################[ battery: internal battery ]################################# + # Show battery in red when it's below this level and not connected to power supply. + typeset -g POWERLEVEL9K_BATTERY_LOW_THRESHOLD=20 + typeset -g POWERLEVEL9K_BATTERY_LOW_FOREGROUND=1 + # Show battery in green when it's charging or fully charged. + typeset -g POWERLEVEL9K_BATTERY_{CHARGING,CHARGED}_FOREGROUND=2 + # Show battery in yellow when it's discharging. + typeset -g POWERLEVEL9K_BATTERY_DISCONNECTED_FOREGROUND=3 + # Battery pictograms going from low to high level of charge. + typeset -g POWERLEVEL9K_BATTERY_STAGES='\UF008E\UF007A\UF007B\UF007C\UF007D\UF007E\UF007F\UF0080\UF0081\UF0082\UF0079' + # Don't show the remaining time to charge/discharge. + typeset -g POWERLEVEL9K_BATTERY_VERBOSE=false + typeset -g POWERLEVEL9K_BATTERY_BACKGROUND=0 + + #####################################[ wifi: wifi speed ]##################################### + # WiFi color. + typeset -g POWERLEVEL9K_WIFI_FOREGROUND=0 + typeset -g POWERLEVEL9K_WIFI_BACKGROUND=4 + # Custom icon. + # typeset -g POWERLEVEL9K_WIFI_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # Use different colors and icons depending on signal strength ($P9K_WIFI_BARS). + # + # # Wifi colors and icons for different signal strength levels (low to high). + # typeset -g my_wifi_fg=(0 0 0 0 0) # <-- change these values + # typeset -g my_wifi_icon=('WiFi' 'WiFi' 'WiFi' 'WiFi' 'WiFi') # <-- change these values + # + # typeset -g POWERLEVEL9K_WIFI_CONTENT_EXPANSION='%F{${my_wifi_fg[P9K_WIFI_BARS+1]}}$P9K_WIFI_LAST_TX_RATE Mbps' + # typeset -g POWERLEVEL9K_WIFI_VISUAL_IDENTIFIER_EXPANSION='%F{${my_wifi_fg[P9K_WIFI_BARS+1]}}${my_wifi_icon[P9K_WIFI_BARS+1]}' + # + # The following parameters are accessible within the expansions: + # + # Parameter | Meaning + # ----------------------+--------------- + # P9K_WIFI_SSID | service set identifier, a.k.a. network name + # P9K_WIFI_LINK_AUTH | authentication protocol such as "wpa2-psk" or "none"; empty if unknown + # P9K_WIFI_LAST_TX_RATE | wireless transmit rate in megabits per second + # P9K_WIFI_RSSI | signal strength in dBm, from -120 to 0 + # P9K_WIFI_NOISE | noise in dBm, from -120 to 0 + # P9K_WIFI_BARS | signal strength in bars, from 0 to 4 (derived from P9K_WIFI_RSSI and P9K_WIFI_NOISE) + + ####################################[ time: current time ]#################################### + # Current time color. + typeset -g POWERLEVEL9K_TIME_FOREGROUND=0 + typeset -g POWERLEVEL9K_TIME_BACKGROUND=7 + # Format for the current time: 09:51:02. See `man 3 strftime`. + typeset -g POWERLEVEL9K_TIME_FORMAT='%D{%H:%M:%S}' + # If set to true, time will update when you hit enter. This way prompts for the past + # commands will contain the start times of their commands as opposed to the default + # behavior where they contain the end times of their preceding commands. + typeset -g POWERLEVEL9K_TIME_UPDATE_ON_COMMAND=false + # Custom icon. + typeset -g POWERLEVEL9K_TIME_VISUAL_IDENTIFIER_EXPANSION= + # Custom prefix. + # typeset -g POWERLEVEL9K_TIME_PREFIX='at ' + + # Example of a user-defined prompt segment. Function prompt_example will be called on every + # prompt if `example` prompt segment is added to POWERLEVEL9K_LEFT_PROMPT_ELEMENTS or + # POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS. It displays an icon and yellow text on red background + # greeting the user. + # + # Type `p10k help segment` for documentation and a more sophisticated example. + function prompt_example() { + p10k segment -b 1 -f 3 -i '⭐' -t 'hello, %n' + } + + # User-defined prompt segments may optionally provide an instant_prompt_* function. Its job + # is to generate the prompt segment for display in instant prompt. See + # https://github.com/romkatv/powerlevel10k#instant-prompt. + # + # Powerlevel10k will call instant_prompt_* at the same time as the regular prompt_* function + # and will record all `p10k segment` calls it makes. When displaying instant prompt, Powerlevel10k + # will replay these calls without actually calling instant_prompt_*. It is imperative that + # instant_prompt_* always makes the same `p10k segment` calls regardless of environment. If this + # rule is not observed, the content of instant prompt will be incorrect. + # + # Usually, you should either not define instant_prompt_* or simply call prompt_* from it. If + # instant_prompt_* is not defined for a segment, the segment won't be shown in instant prompt. + function instant_prompt_example() { + # Since prompt_example always makes the same `p10k segment` calls, we can call it from + # instant_prompt_example. This will give us the same `example` prompt segment in the instant + # and regular prompts. + prompt_example + } + + # User-defined prompt segments can be customized the same way as built-in segments. + typeset -g POWERLEVEL9K_EXAMPLE_FOREGROUND=3 + typeset -g POWERLEVEL9K_EXAMPLE_BACKGROUND=1 + # typeset -g POWERLEVEL9K_EXAMPLE_VISUAL_IDENTIFIER_EXPANSION='⭐' + + # Transient prompt works similarly to the builtin transient_rprompt option. It trims down prompt + # when accepting a command line. Supported values: + # + # - off: Don't change prompt when accepting a command line. + # - always: Trim down prompt when accepting a command line. + # - same-dir: Trim down prompt when accepting a command line unless this is the first command + # typed after changing current working directory. + typeset -g POWERLEVEL9K_TRANSIENT_PROMPT=off + + # Instant prompt mode. + # + # - off: Disable instant prompt. Choose this if you've tried instant prompt and found + # it incompatible with your zsh configuration files. + # - quiet: Enable instant prompt and don't print warnings when detecting console output + # during zsh initialization. Choose this if you've read and understood + # https://github.com/romkatv/powerlevel10k#instant-prompt. + # - verbose: Enable instant prompt and print a warning when detecting console output during + # zsh initialization. Choose this if you've never tried instant prompt, haven't + # seen the warning, or if you are unsure what this all means. + typeset -g POWERLEVEL9K_INSTANT_PROMPT=quiet + + # Hot reload allows you to change POWERLEVEL9K options after Powerlevel10k has been initialized. + # For example, you can type POWERLEVEL9K_BACKGROUND=red and see your prompt turn red. Hot reload + # can slow down prompt by 1-2 milliseconds, so it's better to keep it turned off unless you + # really need it. + typeset -g POWERLEVEL9K_DISABLE_HOT_RELOAD=true + + # If p10k is already loaded, reload configuration. + # This works even with POWERLEVEL9K_DISABLE_HOT_RELOAD=true. + (( ! $+functions[p10k] )) || p10k reload +} + +# Tell `p10k configure` which file it should overwrite. +typeset -g POWERLEVEL9K_CONFIG_FILE=${${(%):-%x}:a} + +(( ${#p10k_config_opts} )) && setopt ${p10k_config_opts[@]} +'builtin' 'unset' 'p10k_config_opts' diff --git a/.zshrc b/.zshrc new file mode 100644 index 0000000..644063a --- /dev/null +++ b/.zshrc @@ -0,0 +1,28 @@ +# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. +# Initialization code that may require console input (password prompts, [y/n] +# confirmations, etc.) must go above this block; everything else may go below. +if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then + source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" +fi + +source <(fzf --zsh) + +alias vim=nvim +. $HOME/.asdf/asdf.sh +# append completions to fpath +fpath=(${ASDF_DIR}/completions $fpath) +# # initialise completions with ZSH's compinit +# autoload -Uz compinit && compinit + +alias vim=nvim +alias cat=batcat +alias czf='fzf --preview "batcat --color=always --style=numbers --line-range=:500 {}"' + +if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] && [ -z "$TMUX" ]; then + exec tmux +fi + +source ~/.powerlevel10k/powerlevel10k.zsh-theme + +# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. +[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh diff --git a/fzf b/fzf new file mode 160000 index 0000000..7e4dbb5 --- /dev/null +++ b/fzf @@ -0,0 +1 @@ +Subproject commit 7e4dbb5f3b93d38b20545a1e5a668e44cab440ce diff --git a/init.sh b/init.sh old mode 100644 new mode 100755 index 2e1c600..f1c7518 --- a/init.sh +++ b/init.sh @@ -2,4 +2,11 @@ SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) -ln ${SCRIPT_DIR}/.tmux.conf ~/.tmux.conf +ln -s ${SCRIPT_DIR}/.tmux.conf ~/.tmux.conf +ln -s ${SCRIPT_DIR}/.zshrc ~/.zshrc +ln -s ${SCRIPT_DIR}/powerlevel10k ~/.powerlevel10k +ln -s ${SCRIPT_DIR}/.p10k.zsh ~/.p10k.zsh +ln -s ${SCRIPT_DIR}/fzf ~/.fzf + +~/.fzf/install + diff --git a/powerlevel10k b/powerlevel10k new file mode 160000 index 0000000..8fa10f4 --- /dev/null +++ b/powerlevel10k @@ -0,0 +1 @@ +Subproject commit 8fa10f43a0f65a5e15417128be63e68e1d5b1f66 From 73b2d0b538d567aa489c2515d8a1e8906c9cd56d Mon Sep 17 00:00:00 2001 From: Brian Date: Fri, 21 Mar 2025 23:34:12 +0000 Subject: [PATCH 04/10] Remove plugins --- .gitmodules | 3 +++ .zsh/.zsh | 1 + .zsh/zsh-autosuggestions | 1 + .zsh/zsh-syntax-highlighting | 1 + init.sh | 7 +++++-- 5 files changed, 11 insertions(+), 2 deletions(-) create mode 120000 .zsh/.zsh create mode 160000 .zsh/zsh-autosuggestions create mode 160000 .zsh/zsh-syntax-highlighting diff --git a/.gitmodules b/.gitmodules index 28a8691..565f68f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "powerlevel10k"] path = powerlevel10k url = https://github.com/romkatv/powerlevel10k.git +[submodule ".zsh/zsh-syntax-highlighting"] + path = .zsh/zsh-syntax-highlighting + url = https://github.com/zsh-users/zsh-syntax-highlighting.git diff --git a/.zsh/.zsh b/.zsh/.zsh new file mode 120000 index 0000000..cbdb37c --- /dev/null +++ b/.zsh/.zsh @@ -0,0 +1 @@ +/home/brian/.mydot/.zsh \ No newline at end of file diff --git a/.zsh/zsh-autosuggestions b/.zsh/zsh-autosuggestions new file mode 160000 index 0000000..0e810e5 --- /dev/null +++ b/.zsh/zsh-autosuggestions @@ -0,0 +1 @@ +Subproject commit 0e810e5afa27acbd074398eefbe28d13005dbc15 diff --git a/.zsh/zsh-syntax-highlighting b/.zsh/zsh-syntax-highlighting new file mode 160000 index 0000000..5eb677b --- /dev/null +++ b/.zsh/zsh-syntax-highlighting @@ -0,0 +1 @@ +Subproject commit 5eb677bb0fa9a3e60f0eff031dc13926e093df92 diff --git a/init.sh b/init.sh index f1c7518..ed90fc0 100755 --- a/init.sh +++ b/init.sh @@ -6,7 +6,10 @@ ln -s ${SCRIPT_DIR}/.tmux.conf ~/.tmux.conf ln -s ${SCRIPT_DIR}/.zshrc ~/.zshrc ln -s ${SCRIPT_DIR}/powerlevel10k ~/.powerlevel10k ln -s ${SCRIPT_DIR}/.p10k.zsh ~/.p10k.zsh -ln -s ${SCRIPT_DIR}/fzf ~/.fzf +ln -s ${SCRIPT_DIR}/.zsh ~/.zsh -~/.fzf/install +if [ ! -d "~/.fzf/" ]; then + ln -s ${SCRIPT_DIR}/fzf ~/.fzf + ~/.fzf/install +fi From c0a7812f906e6af0502acc920c5900239ffdb441 Mon Sep 17 00:00:00 2001 From: Brian Date: Fri, 21 Mar 2025 23:35:55 +0000 Subject: [PATCH 05/10] Update --- .zshrc | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.zshrc b/.zshrc index 644063a..9adc72d 100644 --- a/.zshrc +++ b/.zshrc @@ -5,8 +5,6 @@ if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]] source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" fi -source <(fzf --zsh) - alias vim=nvim . $HOME/.asdf/asdf.sh # append completions to fpath @@ -22,7 +20,12 @@ if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && exec tmux fi +# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. source ~/.powerlevel10k/powerlevel10k.zsh-theme -# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. [[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh + +[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh + +source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh +source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh From 3a9359ce72bf54874afdccd67bfcefdd8e8ea97a Mon Sep 17 00:00:00 2001 From: Brian Date: Fri, 21 Mar 2025 23:40:35 +0000 Subject: [PATCH 06/10] Fix plugins --- .gitmodules | 3 +++ .zsh/.zsh | 1 - 2 files changed, 3 insertions(+), 1 deletion(-) delete mode 120000 .zsh/.zsh diff --git a/.gitmodules b/.gitmodules index 565f68f..887f823 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule ".zsh/zsh-syntax-highlighting"] path = .zsh/zsh-syntax-highlighting url = https://github.com/zsh-users/zsh-syntax-highlighting.git +[submodule ".zsh/zsh-autosuggestions"] + path = .zsh/zsh-autosuggestions + url = https://github.com/zsh-users/zsh-autosuggestions.git diff --git a/.zsh/.zsh b/.zsh/.zsh deleted file mode 120000 index cbdb37c..0000000 --- a/.zsh/.zsh +++ /dev/null @@ -1 +0,0 @@ -/home/brian/.mydot/.zsh \ No newline at end of file From ba18e7d34b74c0b95f48ee467309680c2baf6c9e Mon Sep 17 00:00:00 2001 From: Brian Date: Fri, 21 Mar 2025 23:47:25 +0000 Subject: [PATCH 07/10] fzf preview --- .zshrc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.zshrc b/.zshrc index 9adc72d..58ca60a 100644 --- a/.zshrc +++ b/.zshrc @@ -29,3 +29,13 @@ source ~/.powerlevel10k/powerlevel10k.zsh-theme source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh + + +export FZF_CTRL_T_OPTS=" + --walker-skip .git,node_modules,target + --preview 'batcat -n --color=always --style=numbers --line-range=:500 {}' + --bind 'ctrl-/:change-preview-window(down|hidden|)'" + +export FZF_ALT_C_OPTS=" + --walker-skip .git,node_modules,target + --preview 'tree -C {}'" From 3b282f351179bd73e5e147db8fd683ce29629b94 Mon Sep 17 00:00:00 2001 From: Brian Date: Sat, 22 Mar 2025 00:16:42 +0000 Subject: [PATCH 08/10] History --- .zsh/history/init.zsh | 27 +++++++++++++++++++++++++++ .zshrc | 1 + 2 files changed, 28 insertions(+) create mode 100644 .zsh/history/init.zsh diff --git a/.zsh/history/init.zsh b/.zsh/history/init.zsh new file mode 100644 index 0000000..461dbe9 --- /dev/null +++ b/.zsh/history/init.zsh @@ -0,0 +1,27 @@ +setopt BANG_HIST # Treat the '!' character specially during expansion. +setopt EXTENDED_HISTORY # Write the history file in the ':start:elapsed;command' format. +setopt SHARE_HISTORY # Share history between all sessions. +setopt HIST_EXPIRE_DUPS_FIRST # Expire a duplicate event first when trimming history. +setopt HIST_IGNORE_DUPS # Do not record an event that was just recorded again. +setopt HIST_IGNORE_ALL_DUPS # Delete an old recorded event if a new event is a duplicate. +setopt HIST_FIND_NO_DUPS # Do not display a previously found event. +setopt HIST_IGNORE_SPACE # Do not record an event starting with a space. +setopt HIST_SAVE_NO_DUPS # Do not write a duplicate event to the history file. +setopt HIST_VERIFY # Do not execute immediately upon history expansion. +setopt HIST_BEEP # Beep when accessing non-existent history. + +# +# Variables +# +HISTFILE="${HOME}/.zsh_history" # The path to the history file. +HISTSIZE=10000 # The maximum number of events to save in the internal history. +HIST=$HISTSIZE # The maximum number of events to save in the history file. + +# +# Aliases +# + +if ! zstyle -t ':prezto:module:history:alias' skip; then + # Lists the ten most used commands. + alias history-stat="history 0 | awk '{print \$2}' | sort | uniq -c | sort -n -r | head" +fi diff --git a/.zshrc b/.zshrc index 58ca60a..1a85e32 100644 --- a/.zshrc +++ b/.zshrc @@ -29,6 +29,7 @@ source ~/.powerlevel10k/powerlevel10k.zsh-theme source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source ~/.zsh/history/init.zsh export FZF_CTRL_T_OPTS=" From 5501c6899e14b338625b315b37f4a6a4ac13cbf3 Mon Sep 17 00:00:00 2001 From: Brian Date: Sat, 22 Mar 2025 00:21:34 +0000 Subject: [PATCH 09/10] Directory --- .zsh/directory/init.zsh | 9 +++++++++ .zshrc | 1 + 2 files changed, 10 insertions(+) create mode 100644 .zsh/directory/init.zsh diff --git a/.zsh/directory/init.zsh b/.zsh/directory/init.zsh new file mode 100644 index 0000000..59ea1bd --- /dev/null +++ b/.zsh/directory/init.zsh @@ -0,0 +1,9 @@ +setopt AUTO_CD # Auto changes to a directory without typing cd. +setopt AUTO_PUSHD # Push the old directory onto the stack on cd. +setopt PUSHD_IGNORE_DUPS # Do not store duplicates in the stack. +setopt PUSHD_SILENT # Do not print the directory stack after pushd or popd. +setopt PUSHD_TO_HOME # Push to home directory when no argument is given. +setopt CDABLE_VARS # Change directory to a path stored in a variable. +setopt MULTIOS # Write to multiple descriptors. +setopt EXTENDED_GLOB # Use extended globbing syntax. +unsetopt CLOBBER diff --git a/.zshrc b/.zshrc index 1a85e32..bc49d22 100644 --- a/.zshrc +++ b/.zshrc @@ -30,6 +30,7 @@ source ~/.powerlevel10k/powerlevel10k.zsh-theme source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh source ~/.zsh/history/init.zsh +source ~/.zsh/directory/init.zsh export FZF_CTRL_T_OPTS=" From 2e3cf5a4216797a72e1baa7886d38f7199e578ae Mon Sep 17 00:00:00 2001 From: Brian Date: Mon, 24 Mar 2025 10:44:07 +0000 Subject: [PATCH 10/10] Specific folder for vim config --- .zsh/completion/init.zsh | 184 +++++++++++++++++++++++++++++++++++++++ .zshrc | 3 +- 2 files changed, 186 insertions(+), 1 deletion(-) create mode 100644 .zsh/completion/init.zsh diff --git a/.zsh/completion/init.zsh b/.zsh/completion/init.zsh new file mode 100644 index 0000000..934c87f --- /dev/null +++ b/.zsh/completion/init.zsh @@ -0,0 +1,184 @@ +# +# Sets completion options. +# +# Authors: +# Robby Russell +# Sorin Ionescu +# + +# Return if requirements are not found. +if [[ $TERM == dumb ]]; then + return 1 +fi + +# Add zsh-completions to $fpath. +fpath=(${0:h}/external/src $fpath) + +# Add completion for keg-only brewed curl on macOS when available. +if (( $+commands[brew] )); then + brew_prefix=${HOMEBREW_PREFIX:-${HOMEBREW_REPOSITORY:-$commands[brew]:A:h:h}} + # $HOMEBREW_PREFIX defaults to $HOMEBREW_REPOSITORY but is explicitly set to + # /usr/local when $HOMEBREW_REPOSITORY is /usr/local/Homebrew. + # https://github.com/Homebrew/brew/blob/2a850e02d8f2dedcad7164c2f4b95d340a7200bb/bin/brew#L66-L69 + [[ $brew_prefix == '/usr/local/Homebrew' ]] && brew_prefix=$brew_prefix:h + fpath=($brew_prefix/opt/curl/share/zsh/site-functions(/N) $fpath) + unset brew_prefix +fi + +# +# Options +# + +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 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. +setopt EXTENDED_GLOB # Needed for file modification glob modifiers with compinit. +unsetopt MENU_COMPLETE # Do not autoselect the first completion entry. +unsetopt FLOW_CONTROL # Disable start/stop characters in shell editor. + +# +# Variables +# + +# Standard style used by default for 'list-colors' +LS_COLORS=${LS_COLORS:-'di=34:ln=35:so=32:pi=33:ex=31:bd=36;01:cd=33;01:su=31;40;07:sg=36;40;07:tw=32;40;07:ow=33;40;07:'} + +# +# Initialization +# + +# Load and initialize the completion system ignoring insecure directories with a +# cache time of 20 hours, so it should almost always regenerate the first time a +# shell is opened each day. +autoload -Uz compinit +_comp_path="${XDG_CACHE_HOME:-$HOME/.cache}/zcompdump" +# #q expands globs in conditional expressions +if [[ $_comp_path(#qNmh-20) ]]; then + # -C (skip function check) implies -i (skip security check). + compinit -C -d "$_comp_path" +else + mkdir -p "$_comp_path:h" + compinit -i -d "$_comp_path" + # Keep $_comp_path younger than cache time even if it isn't regenerated. + touch "$_comp_path" +fi +unset _comp_path + +# +# Styles +# + +# Defaults. +zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS} +zstyle ':completion:*:default' list-prompt '%S%M matches%s' + +# Use caching to make completion for commands such as dpkg and apt usable. +zstyle ':completion::complete:*' use-cache on +zstyle ':completion::complete:*' cache-path "${XDG_CACHE_HOME:-$HOME/.cache}/zcompcache" + +zstyle ':completion:*' matcher-list 'm:{[:lower:]}={[:upper:]}' 'm:{[:upper:]}={[:lower:]}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*' +unsetopt CASE_GLOB + +# Group matches and describe. +zstyle ':completion:*:*:*:*:*' menu select +zstyle ':completion:*:matches' group 'yes' +zstyle ':completion:*:options' description 'yes' +zstyle ':completion:*:options' auto-description '%d' +zstyle ':completion:*:corrections' format ' %F{green}-- %d (errors: %e) --%f' +zstyle ':completion:*:descriptions' format ' %F{yellow}-- %d --%f' +zstyle ':completion:*:messages' format ' %F{purple} -- %d --%f' +zstyle ':completion:*:warnings' format ' %F{red}-- no matches found --%f' +zstyle ':completion:*' format ' %F{yellow}-- %d --%f' +zstyle ':completion:*' group-name '' +zstyle ':completion:*' verbose yes + +# Fuzzy match mistyped completions. +zstyle ':completion:*' completer _complete _match _approximate +zstyle ':completion:*:match:*' original only +zstyle ':completion:*:approximate:*' max-errors 1 numeric + +# Increase the number of errors based on the length of the typed word. But make +# sure to cap (at 7) the max-errors to avoid hanging. +zstyle -e ':completion:*:approximate:*' max-errors 'reply=($((($#PREFIX+$#SUFFIX)/3>7?7:($#PREFIX+$#SUFFIX)/3))numeric)' + +# Don't complete unavailable commands. +zstyle ':completion:*:functions' ignored-patterns '(_*|pre(cmd|exec))' + +# Array completion element sorting. +zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters + +# Directories +zstyle ':completion:*:*:cd:*' tag-order local-directories directory-stack path-directories +zstyle ':completion:*:*:cd:*:directory-stack' menu yes select +zstyle ':completion:*:-tilde-:*' group-order 'named-directories' 'path-directories' 'users' 'expand' +zstyle ':completion:*' squeeze-slashes true + +# History +zstyle ':completion:*:history-words' stop yes +zstyle ':completion:*:history-words' remove-all-dups yes +zstyle ':completion:*:history-words' list false +zstyle ':completion:*:history-words' menu yes + +# Environment Variables +zstyle ':completion::*:(-command-|export):*' fake-parameters ${${${_comps[(I)-value-*]#*,}%%,*}:#-*-} + +# Populate hostname completion. But allow ignoring custom entries from static +# */etc/hosts* which might be uninteresting. +zstyle -a ':prezto:module:completion:*:hosts' etc-host-ignores '_etc_host_ignores' + +zstyle -e ':completion:*:hosts' hosts 'reply=( + ${=${=${=${${(f)"$(cat {/etc/ssh/ssh_,~/.ssh/}known_hosts(|2)(N) 2> /dev/null)"}%%[#| ]*}//\]:[0-9]*/ }//,/ }//\[/ } + ${=${(f)"$(cat /etc/hosts(|)(N) <<(ypcat hosts 2> /dev/null))"}%%(\#${_etc_host_ignores:+|${(j:|:)~_etc_host_ignores}})*} + ${=${${${${(@M)${(f)"$(cat ~/.ssh/config 2> /dev/null)"}:#Host *}#Host }:#*\**}:#*\?*}} +)' + +# Don't complete uninteresting users... +zstyle ':completion:*:*:*:users' ignored-patterns \ + adm amanda apache avahi beaglidx bin cacti canna clamav daemon \ + dbus distcache dovecot fax ftp games gdm gkrellmd gopher \ + hacluster haldaemon halt hsqldb ident junkbust ldap lp mail \ + mailman mailnull mldonkey mysql nagios \ + named netdump news nfsnobody nobody nscd ntp nut nx openvpn \ + operator pcap postfix postgres privoxy pulse pvm quagga radvd \ + rpc rpcuser rpm shutdown squid sshd sync uucp vcsa xfs '_*' + +# ... unless we really want to. +zstyle '*' single-ignored show + +# Ignore multiple entries. +zstyle ':completion:*:(rm|kill|diff):*' ignore-line other +zstyle ':completion:*:rm:*' file-patterns '*:all-files' + +# Kill +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 +zstyle ':completion:*:*:kill:*' insert-ids single + +# Man +zstyle ':completion:*:manuals' separate-sections true +zstyle ':completion:*:manuals.(^1*)' insert-sections true + +# Media Players +zstyle ':completion:*:*:mpg123:*' file-patterns '*.(mp3|MP3):mp3\ files *(-/):directories' +zstyle ':completion:*:*:mpg321:*' file-patterns '*.(mp3|MP3):mp3\ files *(-/):directories' +zstyle ':completion:*:*:ogg123:*' file-patterns '*.(ogg|OGG|flac):ogg\ files *(-/):directories' +zstyle ':completion:*:*:mocp:*' file-patterns '*.(wav|WAV|mp3|MP3|ogg|OGG|flac):ogg\ files *(-/):directories' + +# Mutt +if [[ -s "$HOME/.mutt/aliases" ]]; then + zstyle ':completion:*:*:mutt:*' menu yes select + zstyle ':completion:*:mutt:*' users ${${${(f)"$(<"$HOME/.mutt/aliases")"}#alias[[:space:]]}%%[[:space:]]*} +fi + +# SSH/SCP/RSYNC +zstyle ':completion:*:(ssh|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:*' 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::*' diff --git a/.zshrc b/.zshrc index bc49d22..328560d 100644 --- a/.zshrc +++ b/.zshrc @@ -12,7 +12,7 @@ fpath=(${ASDF_DIR}/completions $fpath) # # initialise completions with ZSH's compinit # autoload -Uz compinit && compinit -alias vim=nvim +alias vim='NVIM_APPNAME=nvim-brian nvim' alias cat=batcat alias czf='fzf --preview "batcat --color=always --style=numbers --line-range=:500 {}"' @@ -31,6 +31,7 @@ source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh source ~/.zsh/history/init.zsh source ~/.zsh/directory/init.zsh +source ~/.zsh/completion/init.zsh export FZF_CTRL_T_OPTS="