L2 Cache

Behold the power of |!

User Tools

Site Tools


configuration:zsh

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
configuration:zsh [2015/03/08 17:11]
sjorge [.zshrc]
configuration:zsh [2017/05/01 18:31]
sjorge [.zshrc]
Line 36: Line 36:
 ## .zshrc ## .zshrc
 # by Jorge Schrauwen <​jorge@blackdot.be>​ # by Jorge Schrauwen <​jorge@blackdot.be>​
-# Version ​20141225032+# Version ​20160621001
 #         ​YYYYMMDD###​ #         ​YYYYMMDD###​
  
Line 43: Line 43:
 # #
 # Change Log # Change Log
 +# - 20170501: --- - disabled auto update
 +# - 20160621: --- - optimizations
 +# - 20160621: fix - if .aliases is missing initial exit indicator was fasle
 +# - 20160320: fix - color ls on SmartOS, drop obd support
 +# - 20160219: fix - fix vncviewer alias
 +# - 20151128: --- - cleanup and removal of old code
 +# - 20151001: fix - support new pkgsrc layout on OSX
 # - 20141225: new - added '​developer'​ theme (same as dual but with git helpers) # - 20141225: new - added '​developer'​ theme (same as dual but with git helpers)
 # - 20141225: new - switched to promptinit, converted themes and renamed minimal # - 20141225: new - switched to promptinit, converted themes and renamed minimal
Line 80: Line 87:
 # {{{ updater # {{{ updater
     NZSHRC="​https://​docu.blackdot.be/​getRaw.php?​onlyCode=true&​id=configuration:​zsh"​     NZSHRC="​https://​docu.blackdot.be/​getRaw.php?​onlyCode=true&​id=configuration:​zsh"​
-    CHECK_UPDATE=1 +    CHECK_UPDATE=0 
-    AUTO_UPDATE=1+    AUTO_UPDATE=0
 # }}} # }}}
  
 # {{{ options # {{{ options
     ## change directory ​     ## change directory ​
-    setopt auto_cd ​     # drop cd+    setopt auto_cd
     ​     ​
     ## enable command correction     ## enable command correction
-    ​#setopt correct +    setopt correct 
-    setopt correct_all  ​+    ​#setopt correct_all  ​
  
     ## prevent file overwrite     ## prevent file overwrite
Line 99: Line 106:
  
     ## superglobs     ## superglobs
-    #setopt extended_glob 
     unsetopt case_glob     unsetopt case_glob
     ​     ​
Line 121: Line 127:
     ## make some commands safer     ## make some commands safer
     CMD_SAFE_WRAP=0     CMD_SAFE_WRAP=0
 +    setopt mark_dirs
  
     ## include local options     ## include local options
Line 292: Line 299:
   ​   ​
         # LX BrandZ         # LX BrandZ
-        [ -d /native/​usr/​bin ​&& ​export PATH=$PATH:/​native/​usr/​bin +        ​if [ -d /native ]; then 
-        [ -d /​native/​sbin ] && [[ -n $WANT_SBIN ]] && ​export PATH=$PATH:/​native/​sbin +            ​export PATH=$PATH:/​native/​usr/​bin 
-        [ -d /​native/​usr/​sbin ] && [[ -n $WANT_SBIN ]] && ​export PATH=$PATH:/​native/​usr/​sbin+            ​if ​[ -n $WANT_SBIN ]; then 
 +                ​export PATH=$PATH:/​native/​sbin 
 +                export PATH=$PATH:/​native/​usr/​sbin 
 +            fi 
 +        fi
     ;; esac     ;; esac
     case $OSTYPE in solaris*)     case $OSTYPE in solaris*)
Line 305: Line 316:
         # add /usr/sbin if wanted         # add /usr/sbin if wanted
         [ $(echo $PATH | grep -c '/​usr/​sbin:'​) ​ -eq 0 ] && ​         [ $(echo $PATH | grep -c '/​usr/​sbin:'​) ​ -eq 0 ] && ​
-            ​[[ -n $WANT_SBIN ​]] && export PATH=$PATH:/​usr/​sbin+            [ -n $WANT_SBIN ] && export PATH=$PATH:/​usr/​sbin
  
         # check for gnu         # check for gnu
         export PATH=$(echo $PATH | /bin/sed -r '​s#:/​usr/​gnu/​s?​bin##​g'​)         export PATH=$(echo $PATH | /bin/sed -r '​s#:/​usr/​gnu/​s?​bin##​g'​)
-        [ -d /usr/gnu/bin && ​export PATH=$PATH:/​usr/​gnu/​bin +        ​if [ -d /usr/gnu ]; then 
-        [ -d /​usr/​gnu/​sbin ] && [[ -n $WANT_SBIN ​]] && export PATH=$PATH:/​usr/​gnu/​sbin +            ​export PATH=$PATH:/​usr/​gnu/​bin 
-   +            [ -n $WANT_SBIN ] && export PATH=$PATH:/​usr/​gnu/​sbin 
-        check for obd repository (omnios) + 
-        ​export PATH=$(echo $PATH | /​bin/​sed ​-r 's#/opt/obd/​s?​bin:##​g'​) +            selective gnu / colorization 
-        export MANPATH=$(echo $MANPATH | /​bin/​sed ​-r 's#/opt/obd/share/man:##g') +            ​[ ​-/usr/gnu/​bin/​sed ​] && alias sed='/usr/gnu/bin/sed
-        [ -/opt/obd/bin ] && ​export PATH=$PATH:/opt/obd/bin +            [ -/usr/gnu/bin/diff ] && ​alias diff='/usr/gnu/bin/diff' 
-        [ -/opt/obd/sbin ] && ​[[ -n $WANT_SBIN ]] && export PATH=$PATH:/opt/obd/sbin +            [ -/usr/gnu/bin/​tar ​] && ​alias tar='/usr/gnu/bin/​tar'​ 
-        [ -/opt/obd/share/man ] && ​export MANPATH=$MANPATH:/opt/obd/share/man+            [ -/usr/gnu/bin/rm ] && ​alias rm='/usr/gnu/bin/rm' 
 +        fi
   ​   ​
         # check for pkgsrc (smartos)         # check for pkgsrc (smartos)
         export PATH=$(echo $PATH | /bin/sed -r '​s#/​opt/​local/​s?​bin:##​g'​)         export PATH=$(echo $PATH | /bin/sed -r '​s#/​opt/​local/​s?​bin:##​g'​)
-        [ -d /opt/local/bin && ​export ​PATH=/​opt/​local/​bin:$PATH +        ​export MANPATH=$(echo $MANPATH | /bin/sed -r '​s#/​opt/​local/​man:##​g'​) 
-        [ -d /opt/local/sbin ] && [[ -n $WANT_SBIN ​]] && export PATH=/​opt/​local/​sbin:​$PATH +        if [ -d /opt/local ]; then 
-        ​[ -d /​opt/​local/​man ] && export MANPATH=/​opt/​local/​man:​$MANPATH+            ​export ​MANPATH=/​opt/​local/​man:$MANPATH 
 +            export ​PATH=/opt/local/bin:$PATH 
 +            ​[ -n $WANT_SBIN ] && export PATH=/​opt/​local/​sbin:​$PATH 
 +        ​fi
  
         # check for omniti repository (omnios)         # check for omniti repository (omnios)
         export PATH=$(echo $PATH | /bin/sed -r '​s#/​opt/​omni/​s?​bin:##​g'​)         export PATH=$(echo $PATH | /bin/sed -r '​s#/​opt/​omni/​s?​bin:##​g'​)
         export MANPATH=$(echo $MANPATH | /bin/sed -r '​s#/​opt/​omni/​share/​man:##​g'​)         export MANPATH=$(echo $MANPATH | /bin/sed -r '​s#/​opt/​omni/​share/​man:##​g'​)
-        [ -d /opt/omni/​bin ​&& export PATH=$PATH:/​opt/​omni/​bin +        ​if [ -d /opt/local ]; then 
-        [ -d /​opt/​omni/​sbin ] && [[ -n $WANT_SBIN ]] && export PATH=$PATH:/​opt/​omni/​sbin +            export MANPATH=$MANPATH:/​opt/​omni/​share/​man 
-        [ -d /​opt/​omni/​share/​man ] && ​export MANPATH=$MANPATH:/​opt/​omni/​share/​man +            export PATH=$PATH:/​opt/omni/bin 
- +            [ -n $WANT_SBIN ​] && export PATH=$PATH:/​opt/omni/sbin 
-        # check for sfw +        fi
-        ​export PATH=$(echo ​$PATH | /bin/sed -r 's#:/usr/sfw/s?bin##g') +
-        [ -d /​usr/​sfw/​bin ​] && export PATH=$PATH:/​usr/sfw/bin+
  
         # check for local         # check for local
         export PATH=$(echo $PATH | /bin/sed -r '​s#/​usr/​local/​s?​bin:##​g'​)         export PATH=$(echo $PATH | /bin/sed -r '​s#/​usr/​local/​s?​bin:##​g'​)
-        [ -d /usr/local/bin && ​export PATH=/​usr/​local/​bin:​$PATH +        ​if [ -d /usr/local ]; then 
-        [ -d /​usr/​local/​sbin ] && [[ -n $WANT_SBIN ​]] && export PATH=/​usr/​local/​sbin:​$PATH+            ​export PATH=/​usr/​local/​bin:​$PATH 
 +            [ -n $WANT_SBIN ] && export PATH=/​usr/​local/​sbin:​$PATH 
 +        fi
  
         # check for opencsw         # check for opencsw
         export PATH=$(echo $PATH | /bin/sed -r '​s#:/​opt/​csw/​s?​bin##​g'​)         export PATH=$(echo $PATH | /bin/sed -r '​s#:/​opt/​csw/​s?​bin##​g'​)
-        [ -d /opt/csw/bin && ​export PATH=$PATH:/​opt/​csw/​gnu:/​opt/​csw/​bin +        ​if [ -d /opt/csw ]; then 
-        [ -d /​opt/​csw/​sbin ] && [[ -n $WANT_SBIN ​]] && export PATH=$PATH:/​opt/​csw/​sbin+            ​export PATH=$PATH:/​opt/​csw/​gnu:/​opt/​csw/​bin 
 +            [ -n $WANT_SBIN ] && export PATH=$PATH:/​opt/​csw/​sbin 
 +        fi
  
         # colorization         # colorization
-        ​[ "$(which ls)" = "/usr/bin/ls" ] && ​alias ls='ls --color'​ +        ​case $(which ls) in 
- +          ​/opt/local/bin/lsalias ls='ls --color' ​;; 
-        # selective gnu / colorization +          /usr/bin/lsalias ls='ls --color'​ ;; 
-        [ "​$(which ls)" = "/usr/gnu/bin/ls" ] && ​alias ls='/​usr/​gnu/​bin/​ls --color=auto'​ +          ​/​usr/​gnu/​bin/​ls) ls='ls --color=auto' ​;; 
-        ​[ -e /usr/gnu/​bin/​grep ​] && ​alias grep='/​usr/​gnu/​bin/​grep --color=auto'​ +        ​esac 
-        [ -e /​usr/​gnu/​bin/​sed ] && ​alias sed='/​usr/​gnu/​bin/​sed'​ +        case $(which grep) in 
-        [ -e /​usr/​gnu/​bin/​diff ] && alias diff='/​usr/​gnu/​bin/​diff'​ +          ​/opt/local/bin/grepalias grep='​grep --color=auto' ​;; 
-        [ -e /​usr/​gnu/​bin/​tar ] && alias tar='/​usr/​gnu/​bin/​tar'​ +          /​usr/​gnu/​bin/​grep) alias grep='grep --color=auto' ​;; 
-        ​[ -e /​usr/​gnu/​bin/​rm ] && alias rm='/​usr/​gnu/​bin/​rm'​+        ​esac
     ;; esac     ;; esac
     case $OSTYPE in openbsd*)     case $OSTYPE in openbsd*)
Line 385: Line 402:
   ​   ​
         # pkgsrc         # pkgsrc
-        if [ -e /​usr/​pkg/​bin/​pkgin ]; then+        if [ -e /​opt/​pkg/​bin/​pkgin ]; then 
 +            export PATH=/​opt/​pkg/​gnu/​bin:/​opt/​pkg/​bin:/​opt/​pkg/​sbin:​$PATH 
 +            export MANPATH=/​opt/​pkg/​man:​$MANPATH 
 +            if [ -f ~/​.dir_colors ]; then 
 +                eval $(dircolors -b ~/​.dir_colors) 
 +                export ZLSCOLORS="​${LS_COLORS}"​ 
 +                unalias ls &> /dev/null 
 +                alias ls='ls --color=auto'​ 
 +            fi 
 +            alias pkgin='​sudo pkgin'​ 
 +        elif [ -e /​usr/​pkg/​bin/​pkgin ]; then
             export PATH=/​usr/​pkg/​gnu/​bin:/​usr/​pkg/​bin:/​usr/​pkg/​sbin:​$PATH             export PATH=/​usr/​pkg/​gnu/​bin:/​usr/​pkg/​bin:/​usr/​pkg/​sbin:​$PATH
             export MANPATH=/​usr/​pkg/​man:​$MANPATH             export MANPATH=/​usr/​pkg/​man:​$MANPATH
Line 397: Line 424:
         fi         fi
         ​         ​
-        ## helpers +        ## helpers ​        
-        function trash() { +        function ​vnc() {
-            local trash_dir="​${HOME}/​.Trash"​ +
-            local temp_ifs="​$IFS"​ +
-            IFS=$'​\n'​ +
-            for item in "​$@";​ do +
-                if [[ -e "​$item"​ ]]; then +
-                    item_name="​$(basename $item)"​ +
-                    if [[ -e "​${trash_dir}/​${item_name}"​ ]]; then +
-                        mv -f "​$item"​ "​${trash_dir}/​${item_name} $(date "​+%H-%M-%S"​)"​ +
-                    else +
-                        mv -f "​$item"​ "​${trash_dir}/"​ +
-                    fi +
-                fi +
-            done +
-            IFS=$temp_ifs +
-        } +
-         +
-        function ​vncviewer() {+
             which vncviewer &> /dev/null             which vncviewer &> /dev/null
             if [ $? -eq 0 ]; then             if [ $? -eq 0 ]; then
Line 428: Line 438:
     case ${HOST:r} in     case ${HOST:r} in
         (axion*|tachyon*|photon*)         (axion*|tachyon*|photon*)
-            # add a little info banner 
-            if [[ $SHLVL -eq 1 ]] ; then 
-                clear 
-                echo 
-                print -P "​\e[1;​33m Welcome to: \e[1;​34m%m"​ 
-                print -P "​\e[1;​33m Running: \e[1;​34m`uname -srm`\e[1;​33m on \e[1;​34m%l"​ 
-                print -P "​\e[1;​33m It is:\e[1;34m %D{%r} \e[1;33m on \e[1;​34m%D{%A %b %f %G}" 
-                echo 
-                tput sgr0 
-            fi 
- 
             # proper UTF-8             # proper UTF-8
             export LANG=en_US.UTF-8             export LANG=en_US.UTF-8
Line 445: Line 444:
             PROMPT_HOST_COLOR=green             PROMPT_HOST_COLOR=green
         ;;         ;;
-        (exosphere*|core*)+        (exosphere*|crust*)
             PROMPT_HOST_COLOR=red             PROMPT_HOST_COLOR=red
         ;;         ;;
Line 648: Line 647:
     autoload -Uz promptinit && promptinit     autoload -Uz promptinit && promptinit
  
-    ## utf8 checkmarks+    ## checkmarks
     PROMPT_CO='​.'​     PROMPT_CO='​.'​
     PROMPT_CE='​!'​     PROMPT_CE='​!'​
-    case $LANG in *UTF-8) 
-        case $TERM in (xterm*) 
-            if [[ -z $NOFANCY_PROMPT ]] ; then 
-                PROMPT_CO='​✓'​ 
-                PROMPT_CE='​✗'​ 
-            fi 
-        ;; esac 
-    ;; esac 
  
     ## create themes     ## create themes
Line 716: Line 707:
     # preferences     # preferences
     which nano &> /dev/null ; [ $? -eq 0 ] && export EDITOR='​nano'​     which nano &> /dev/null ; [ $? -eq 0 ] && export EDITOR='​nano'​
 +    which vi &> /dev/null ; [ $? -eq 0 ] && export EDITOR='​vi'​
     which vim &> /dev/null ; [ $? -eq 0 ] && export EDITOR='​vim'​     which vim &> /dev/null ; [ $? -eq 0 ] && export EDITOR='​vim'​
     export PAGER='​less'​     export PAGER='​less'​
Line 728: Line 720:
  
     case $OSTYPE in solaris*)     case $OSTYPE in solaris*)
-        alias zfs_rsync='​rsync -avAPh+        alias zfs_rsync='​rsync -aviAPh
-        alias zfs_rsync+='​rsync -avAPh --delete'​+        alias zfs_rsync+='​rsync -aviAPh ​--delete'​
     ;; esac     ;; esac
  
     # include local aliases     # include local aliases
-    ​[[ -e ~/.aliasses ]] && mv ~/.aliasses ~/​.aliases +    [[ -e ~/.aliases ]] && source ~/​.aliases ​|| true
-    ​[[ -e ~/.aliases ]] && source ~/.aliases+
 # }}} # }}}
 </​code>​ </​code>​
  
configuration/zsh.txt · Last modified: 2017/05/01 18:32 by sjorge