1
0

zgen.zsh 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. # guard against no zgen installed
  2. if [ ! -d "${HOME}/.zgen" ]; then
  3. echo "zgen not installed"
  4. return
  5. fi
  6. # load zgen
  7. source "${HOME}/.zgen/zgen.zsh"
  8. # if the init scipt doesn't exist
  9. if ! zgen saved; then
  10. # completions
  11. zgen load zsh-users/zsh-completions src
  12. # bulk load
  13. zgen loadall <<EOPLUGINS
  14. mreinhardt/sfz-prompt.zsh
  15. zsh-users/zsh-autosuggestions
  16. zsh-users/zsh-history-substring-search
  17. zsh-users/zsh-syntax-highlighting
  18. EOPLUGINS
  19. # ^ can't indent this EOPLUGINS
  20. # save all to init script
  21. zgen save
  22. fi
  23. # customise sfz-prompt
  24. PROMPT_SFZ_CHAR="›"
  25. setopt TRANSIENT_RPROMPT
  26. prompt_sfz_colors () {
  27. case $1 in
  28. grey) echo "{234}";;
  29. # used for pwd, light blue
  30. bgrey) echo "{045}";;
  31. red) echo "{126}";;
  32. bred) echo "{200}";;
  33. green) echo "{035}";;
  34. bgreen) echo "{048}";;
  35. yellow) echo "{148}";;
  36. byellow) echo "{190}";;
  37. # used for prompt character, light grey
  38. blue) echo "{250}";;
  39. bblue) echo "{069}";;
  40. magenta) echo "{092}";;
  41. bmagenta) echo "{099}";;
  42. cyan) echo "{074}";;
  43. bcyan) echo "{081}";;
  44. white) echo "{153}";;
  45. bwhite) echo "{195}";;
  46. esac
  47. }
  48. prompt_sfz_git_dirty() {
  49. # too expensive
  50. }
  51. # bind to zsh-history-substring-search
  52. bindkey '^[[A' history-substring-search-up
  53. bindkey '^[[B' history-substring-search-down
  54. # customize zsh-autosuggestions
  55. ZSH_AUTOSUGGEST_USE_ASYNC="true"
  56. ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE="60"
  57. # customise zsh-history-substring-search
  58. HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND="underline"
  59. HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND="none"
  60. # customise zsh-syntax-highlighting
  61. ZSH_HIGHLIGHT_STYLES[unknown-token]='none'
  62. ZSH_HIGHLIGHT_STYLES[path]='bold'
  63. ZSH_HIGHLIGHT_STYLES[builtin]='fg=82'
  64. ZSH_HIGHLIGHT_STYLES[command]='fg=121'
  65. ZSH_HIGHLIGHT_STYLES[alias]='fg=193'
  66. ZSH_HIGHLIGHT_STYLES[globbing]='fg=white'