Browse Source

Initial commit

master
Kolan Sh 9 years ago
commit
866d2e28ba
  1. 97
      aliases.sh
  2. 6
      bindings.sh
  3. 41
      constants.sh
  4. 24
      extensions.sh
  5. 65
      functions.sh
  6. 48
      main.sh
  7. 15
      prompt.sh
  8. 56
      title.sh
  9. 5
      user.sh

97
aliases.sh

@ -0,0 +1,97 @@
#!/bin/zsh
# vim: set filetype=zsh
# list dir operations
alias ls='ls --classify --color --human-readable --group-directories-first'
alias la='ls -a'
alias ll='ls -l'
alias l='ll'
alias lh='ls -h'
alias lla='ls -la'
alias llh='ls -lh'
alias llah='ls -lah'
alias llha='llah'
alias fls="fls -rd"
# file operations
alias cp='nocorrect cp --verbose --recursive --preserve=all'
alias mv='nocorrect mv --verbose'
alias rm='nocorrect rm -v'
alias ln='ln -vi'
alias chmod='chmod -v'
alias chown='chown -v'
alias chgrp='chgrp -v'
alias mkdir='mkdir -v'
alias rmdir='rmdir -v'
# fs statistics
alias df='df -hT'
alias dfm='df -mT'
alias fs='du -shcx * .* | sort -h'
alias du='du --human-readable --total'
# process operations
alias nohup='nohup > /dev/null $1'
alias k='killall'
which sudo &>/dev/null && alias sk='sudo killall'
# autofixing
alias cd..='cd ..'
alias cd~='cd ~'
alias cd-='cd -'
alias v='vim'
which sudo &>/dev/null && alias sv='sudo vim'
alias grep='grep --color=always'
which grc &>/dev/null && {
alias grc='grc --colour=auto'
alias ping='grc ping'
alias last='grc last'
alias netstat='grc netstat'
alias traceroute='grc traceroute'
alias make='grc make'
alias gcc='grc gcc'
alias configure='grc ./configure'
alias configure='grc configure'
alias netstat='grc netstat'
alias ping='grc ping'
alias cat="grc cat"
alias tail="grc tail"
alias head="grc head"
}
alias killall="killall --interactive --verbose"
alias free="free -t -m"
which git &>/dev/null && alias git="nocorrect git"
which hg &>/dev/null && alias hg="nocorrect hg"
which scrot &>/dev/null && alias scrot="scrot --border --count --quality 75 $HOME'/screenshots/%d-%b-%y_%H-%M-%S_\$wx\$h.png' --exec 'du -h \$f'"
which sudo &>/dev/null && alias su='sudo su -'
which hd &>/dev/null && alias hd='hexdump -C'
which sudo &>/dev/null && alias krnlconfig="sudo make MENUCONFIG_MODE=single_menu MENUCONFIG_COLOR=mono menuconfig"
which valgrind &>/dev/null && alias valgrind='valgrind --tool=callgrind'
which cgdb &>/dev/null && alias cgdb='LANG=ru_RU.koi8-r cgdb'
which rsync &>/dev/null && alias cpb='rsync --progress -h' \
&& alias cpbs='rsync --progress -h -rax --delete-excluded'
which alsamixer &>/dev/null && alias alsamixer='alsamixer -g' && alias equilizer='alsamixer -D equal'
[ -x /usr/libexec/mc/mc-wrapper.sh ] && alias mc='. /usr/libexec/mc/mc-wrapper.sh -x'
which network.sh &>/dev/null && alias net='network.sh'
which colordiff &>/dev/null && alias diff='colordiff'
alias make="make -j$((`grep "^processor" /proc/cpuinfo | wc -l`+1)) 2>/dev/null"
which colormake &>/dev/null && alias make="colormake -j$((`grep "^processor" /proc/cpuinfo | wc -l`+1)) 2>/dev/null"
which colorgcc &>/dev/null && {
alias c++='/usr/lib/colorgcc/bin/c++'
alias cc='/usr/lib/colorgcc/bin/cc'
alias g++='/usr/lib/colorgcc/bin/g++'
alias gcc='/usr/lib/colorgcc/bin/gcc'
}
which astyle &>/dev/null && {
alias astyle-glib='astyle --style=gnu --indent=spaces=2 --max-instatement-indent=80 \
--indent-preprocessor --indent-col1-comments --break-blocks=all \
--pad-oper --pad-header --break-closing-brackets --add-brackets'
}

6
bindings.sh

@ -0,0 +1,6 @@
#!/bin/zsh
# vim: set filetype=zsh
bindkey -v
bindkey '\e[3~' delete-char
bindkey '^R' history-incremental-search-backward

41
constants.sh

@ -0,0 +1,41 @@
#!/bin/zsh
# vim: set filetype=zsh
ZDOTDIR=~/.zsh
export BC_ENV_ARGS="--quiet --mathlib"
export HISTTIMEFORMAT="%t%d.%m.%y %H:%M:%S%t"
export HISTCONTROL="ignoredupes"
export HISTIGNORE="&:ls:[bf]g:exit: cd \"\`*: PROMPT_COMMAND=\'*:cd \'/*"
export PROMPT_COMMAND='history -a'
export LS_COLORS="di=01;34:fi=0:ln=01;36:pi=43:so=45:bd=46:cd=40:or=05;41:mi=05;41:ex=01;32"
export PATH="$PATH:/sbin:/usr/sbin:/usr/local/sbin:/usr/local/bin:$HOME/scripts:$HOME/bin"
[ -x /usr/bin/src-hilite-lesspipe.sh ] && export LESSOPEN="| /usr/bin/src-hilite-lesspipe.sh %s"
export LESS=' -R '
[ -x /usr/bin/vim ] && export EDITOR=/usr/bin/vim
# type a directory's name to cd to it
compctl -/ cd
# tab completion for PID :D
zstyle ':completion:*:*:kill:*' menu yes select
zstyle ':completion:*:kill:*' force-list always
HISTFILE=~/.zsh/.histfile
HISTSIZE=1000
SAVEHIST=1000
export LANG="ru_RU.UTF-8"
export LC_PAPER="ru_RU.UTF-8"
export LC_MEASUREMENT="ru_RU.UTF-8"
export LC_TIME="ru_RU.UTF-8"
#export LC_ALL="en_US.UTF-8"
case $TERM in
screen)
export PROMPT_COMMAND='echo -n -e "\033k\033\\"'
;;
esac

24
extensions.sh

@ -0,0 +1,24 @@
#!/bin/zsh
# vim: set filetype=zsh
# file extensions
[[ -z $DISPLAY ]] && {
alias -s {jpg,jpeg,bmp,gif,png,svg,xbm,psd}="fbi"
alias -s {avi,mpeg,mpg,3gp}="mplayer"
alias -s {html,htm}="links -g"
alias -s {pdf}=apvlv
alias -s {txt,lst}="cat"
} || {
alias -s {jpg,jpeg,bmp,gif,png,svg}="nohup &>/dev/null gqview"
alias -s {pdf,djvu}="nohup &> /dev/null evince"
which gnome-mplayer &>/dev/null && alias -s {avi,mpeg,mpg,3gp}="nohup &>/dev/null gnome-mplayer" || alias -s {avi,mpeg,mpg,3gp}="nohup &>/dev/null mplayer"
alias -s {odt,doc,sxw,rtf,odf,xls,ppt}="nohup &> /dev/null soffice"
alias -s {html,htm}="firefox"
alias -s {txt,lst}="cat"
alias -s exe="wine"
}
alias -s {wav,mp3,ogg}="alsaplayer"
autoload -U pick-web-browser
alias -s {html,htm,xhtml}=pick-web-browser

65
functions.sh

@ -0,0 +1,65 @@
#!/bin/zsh
# vim: set filetype=zsh
cdl() { cd $1 && ls }
mkcd() { mkdir $1 && cd $1 }
rcd() { cd .. && rm -irfv $OLDPWD }
extract () {
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;;
*.tar.gz) tar xzf $1 ;;
*.tar.xz) tar xJf $1 ;;
*.bz2) bunzip2 $1 ;;
*.lbz2) lbunzip2 -kn$((`grep "^processor" /proc/cpuinfo | wc -l`+1)) $1 ;;
*.rar) unrar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xf $1 ;;
*.tbz2) tar xjf $1 ;;
*.tbz) tar -xjvf $1 ;;
*.tgz) tar xzf $1 ;;
*.txz) tar xJf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*) echo "I don't know how to extract '$1'..." ;;
esac
else
echo "'$1' is not a valid file"
fi
}
pk () {
if [ $1 ] ; then
case $1 in
tbz) tar cjvf $2.tar.bz2 $2 ;;
tgz) tar czvf $2.tar.gz $2 ;;
tgz) tar cJvf $2.tar.xz $2 ;;
tar) tar cpvf $2.tar $2 ;;
bz2) bzip2 $2 ;;
lbz2) lbzip2 -kn$((`grep "^processor" /proc/cpuinfo | wc -l`+1)) $2 ;;
gz) gzip -c -9 -n $2 > $2.gz ;;
xz) xz -c -9 $2 > $2.xz ;;
zip) zip -r $2.zip $2 ;;
7z) 7z a $2.7z $2 ;;
*) echo "'$1' cannot be packed via pk()" ;;
esac
else
echo "'$1' is not a valid file"
fi
}
calc() {
echo $* | bc
}
vcs_info_wrapper() {
vcs_info
if [ -n "$vcs_info_msg_0_" ]; then
echo "%{$fg[grey]%}${vcs_info_msg_0_}%{$reset_color%}$del"
fi
}

48
main.sh

@ -0,0 +1,48 @@
#!/bin/zsh
# vim: set filetype=zsh
umask 002
zstyle ':completion:*' completer _expand _complete _ignored
zstyle ':completion:*' group-name ''
zstyle ':completion:*' list-colors ''
zstyle ':completion:*' list-prompt '%SAt %p: Hit TAB for more, or the character to insert%s'
zstyle ':completion:*' max-errors 1
zstyle ':completion:*' menu select=long-list select=0
zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s'
zstyle ':completion:*' use-compctl false
zstyle ':completion:*' verbose true
zstyle :compinstall filename "/home/$USER/.zsh/.zshrc"
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
zstyle ':completion:history-words:*:history-words' stop yes
zstyle ':completion:history-words:*:history-words' list no
zstyle ':completion:history-words:*' remove-all-dups yes
zstyle ':completion:history-words:*' menu yes
autoload -Uz compinit
compinit
setopt appendhistory sharehistory autocd beep extendedglob nomatch notify
zstyle ':completion:*:processes' command 'ps -xuf'
zstyle ':completion:*:processes' sort false
zstyle ':completion:*:processes-names' command 'ps xho command'
setopt correctall
setopt noflowcontrol
# history
setopt hist_allow_clobber
setopt hist_ignore_dups
setopt hist_ignore_space
setopt hist_no_store
setopt hist_expire_dups_first
setopt hist_find_no_dups
setopt extended_history
setopt inc_append_history
unsetopt equals
stderred_lib_path=`whereis stderred.so | cut -d: -f2 | cut -d" " -f2`
[[ "" != "$stderred_lib_path" ]] && alias stderred="LD_PRELOAD=$stderred_lib_path"
unset stderred_lib_path

15
prompt.sh

@ -0,0 +1,15 @@
#!/bin/zsh
# vim: set filetype=zsh
setopt prompt_subst
autoload -Uz vcs_info
zstyle ':vcs_info:*' actionformats \
'%F{5}(%f%s%F{5})%F{3}-%F{5}[%F{2}%b%F{3}|%F{1}%a%F{5}]%f '
zstyle ':vcs_info:*' formats \
'%F{5}(%f%s%F{5})%F{3}-%F{5}[%F{2}%b%F{5}]%f '
zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat '%b%F{1}:%F{3}%r'
zstyle ':vcs_info:*' enable git hg cvs svn
zstyle ':vcs_info:*' disable-patterns "$HOME(/smb*|/.big/smb*)"
PROMPT=$'%B%{\e[0;36m%}┌─[%{\e[0;36m%}%n%{\e[0;36m%}@%{\e[0;32m%}%m%{\e[0;36m%} (%T)]──(%{\e[0;33m%}%~%{\e[0;36m%})\n└─[%{\e[0;39m%}%# %{\e[0;36m%}>%b '
RPROMPT=$'$(vcs_info_wrapper)'

56
title.sh

@ -0,0 +1,56 @@
#!/bin/zsh
# vim: set filetype=zsh
# Terminal title updating for Zsh by haa
# At prompt, display current path name
[[ ! -z $DISPLAY ]] && {
precmd () {
echo -n "\e]0;"
# Enable on remote servers to show hostname:
#print -Pn "%m: "
print -Pn '%(!.# .)' # Print # for root shell
case "$PWD" in
??????????????????????????????????????????????????*)
# Longer than 50, display "...endofpath"
# Change nonprintable characters into '?'s
echo -nE "...${(l:50:::::)PWD//[^[:print:]]/?}"
;;
*)
echo -nE "${PWD//[^[:print:]]/?}"
;;
esac
print -Pn " (%m)"
echo -n "\007"
}
# When running, display commandline
preexec () {
echo -n "\e]0;"
# Enable on remote servers to show hostname:
#print -Pn "%m: "
print -Pn '%(!.# .)' # Print # for root shell
case "$1" in
??????????????????????????????????????????????????*)
# Longer than 50, display "commandlinestart..."
echo -nE "${(r:50:::::)1//[^[:print:]]/?}..."
;;
*)
echo -nE "${1//[^[:print:]]/?}"
;;
esac
print -Pn " (%m)"
echo -n "\007"
}
# AddAlias by haa
# addalias aliasname command with parameters you just ran
addalias(){
echo -n "Comment> "
read comment
name="$1"
shift
echo "alias $name=\"$*\" # $comment" >> $HOME/.zshenv
alias $name="$*"
}
}

5
user.sh

@ -0,0 +1,5 @@
#!/bin/zsh
# vim: set filetype=zsh
export NAME="Kolan Sh."
export EMAIL=mecareful@gmail.com
Loading…
Cancel
Save