Мой конфиг — Конфиг .zshrc
Уже больше года основным шеллом в системе стоит именно zsh, в первую очередь за счёт его удобства и гигантской функциональности. Из конфига неоднократно что то убиралось, потом что то добавлялось в итоге получился оптимальный на мой взгляд вариант, для более удобного считывания информации использую консольный колорайзер grc.
Так вот, собственно конфиг (часть алиасов и другой субъективной лабуды выпилена, оставлены только основные элементы):
Класть .zshrc нужно непосредственно в домашнюю директорию пользователя.
И вот как это выглядит на практике:
Перемещение в ls (и cd) по директориям как по меню с помощью стрелок:
Удобные подсказки по командам:
Ну и плюс разные другие приятные мелочи, типа продвинутой истории и хитрого автодополнения команд.
Надеюсь кому нибудь пригодится, удачи.
Так вот, собственно конфиг (часть алиасов и другой субъективной лабуды выпилена, оставлены только основные элементы):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 |
#!/usr/bin/zsh fg_green=$'%{\e[0;32m%}' fg_blue=$'%{\e[0;34m%}' fg_cyan=$'%{\e[0;36m%}' fg_red=$'%{\e[0;31m%}' fg_brown=$'%{\e[0;33m%}' fg_purple=$'%{\e[0;35m%}' fg_light_gray=$'%{\e[0;37m%}' fg_dark_gray=$'%{\e[1;30m%}' fg_light_blue=$'%{\e[1;34m%}' fg_light_green=$'%{\e[1;32m%}' fg_light_cyan=$'%{\e[1;36m%}' fg_light_red=$'%{\e[1;31m%}' fg_light_purple=$'%{\e[1;35m%}' fg_no_colour=$'%{\e[0m%}' fg_white=$'%{\e[1;37m%}' fg_black=$'%{\e[0;30m%}' #PS1="${fg_green}%*${fg_red} ${fg_red}${fg_dark_gray}%n${fg_cyan}@${fg_brown}%m${fg_white}:${fg_black}%~${fg_red}>${fg_black} " PS1="${fg_dark_gray}%*${fg_red} ${fg_red}${fg_black}%n${fg_red}@${fg_blue}%m${fg_black}:${fg_black}%~${fg_red}>${fg_black} " limit stack 8192 limit core 0 autoload -U compinit compinit zstyle ':completion:*' menu yes select zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS} zstyle ':completion:*:processes' command 'ps xua' zstyle ':completion:*:processes' sort false zstyle ':completion:*:processes-names' command 'ps xho command' zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31' HISTFILE=~/.zhistory SAVEHIST=5000 HISTSIZE=5000 DIRSTACKSIZE=20 setopt APPEND_HISTORY setopt HIST_IGNORE_ALL_DUPS setopt HIST_IGNORE_SPACE setopt HIST_REDUCE_BLANKS eval `dircolors` alias ls='ls --color=auto' export GREP_OPTIONS='--color=auto' export GREP_COLOR='1;32' if [ -f /usr/bin/grc ]; then alias ping="grc --colour=auto ping" alias traceroute="grc --colour=auto traceroute" alias make="grc --colour=auto make" alias diff="grc --colour=auto diff" alias cvs="grc --colour=auto cvs" alias netstat="grc --colour=auto netstat" fi case $TERM in xterm*|rxvt) precmd () { print -Pn "\e]0;%n@%m: %~\a" } preexec () { print -Pn "\e]0;%n@%m: $1\a" } ;; screen) precmd () { print -Pn "\033k%~\033\\" } preexec () { print -Pn "\033k$1\033\\" } ;; linux|screen|screen.linux) bindkey "^[[2~" yank bindkey "^[[3~" delete-char bindkey "^[[5~" up-line-or-history bindkey "^[[6~" down-line-or-history bindkey "^[[1~" beginning-of-line bindkey "^[[4~" end-of-line bindkey "^[e" expand-cmd-path # C-e for expanding path of typed command bindkey "^[[A" up-line-or-search # up arrow for back-history-search bindkey "^[[B" down-line-or-search # down arrow for fwd-history-search bindkey " " magic-space # do history expansion on space ;; *xterm*|rxvt|(dt|k|E)term) bindkey "^[[2~" yank bindkey "^[[3~" delete-char bindkey "^[[5~" up-line-or-history bindkey "^[[6~" down-line-or-history bindkey "^[[H" beginning-of-line bindkey "^[[F" end-of-line bindkey "^E" expand-cmd-path bindkey "^[[A" up-line-or-search bindkey "^[[B" down-line-or-search bindkey " " magic-space ;; esac #LSCOLORS='hxfxxxdxcxxxxxcxcxhxhx' LSCOLORS='gxfxxxdxcxxxxxcxcxhxhx' PATH='/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/home/phoen/bin:/usr/local/pilot/bin:' export PATH export LSCOLORS export EDITOR='/usr/bin/vim' alias ls='ls -aFG' alias df='df -h' alias du='du -h' alias viz='vim ~/.zshrc' alias mxterm='xterm -fn "-*-terminus-*-r-normal-*-12-120-*-*-*-*-*-cp1251"' alias mv='nocorrect mv -i' alias cp='nocorrect cp -iR' alias rm='nocorrect rm -i' alias rmf='nocorrect rm -f' alias rmrf='nocorrect rm -fR' alias mkdir='nocorrect mkdir' alias h=history alias grep=egrep alias df='df -m' alias less='less -M' alias ispell='ispell -d russian' alias ls='ls -F --color=auto' alias ll='ls -l' alias la='ls -A' alias li='ls -ial' alias lsd='ls -ld *(-/DN)' alias lsa='ls -ld .*' alias -g M='|more' alias -g L='|less' alias -g H='|head' alias -g T='|tail' alias -g N='2>/dev/null' |
Класть .zshrc нужно непосредственно в домашнюю директорию пользователя.
И вот как это выглядит на практике:
Перемещение в ls (и cd) по директориям как по меню с помощью стрелок:
Удобные подсказки по командам:
Ну и плюс разные другие приятные мелочи, типа продвинутой истории и хитрого автодополнения команд.
Надеюсь кому нибудь пригодится, удачи.