From 7e5dbb35adb0aa466fdee90fad5a7284bb77d3f0 Mon Sep 17 00:00:00 2001 From: Renato Rosa Date: Wed, 22 Aug 2018 14:54:32 -0300 Subject: [PATCH] zshrc lenovo yoga 500 --- zshrc-ubuntu-lenovo-yoga500.sh | 259 +++++++++++++++++++++++++++++++++ 1 file changed, 259 insertions(+) create mode 100644 zshrc-ubuntu-lenovo-yoga500.sh diff --git a/zshrc-ubuntu-lenovo-yoga500.sh b/zshrc-ubuntu-lenovo-yoga500.sh new file mode 100644 index 0000000..7de2cda --- /dev/null +++ b/zshrc-ubuntu-lenovo-yoga500.sh @@ -0,0 +1,259 @@ +###################################################################### +# mako's zshrc file, v0.1 +# +# +###################################################################### + +# next lets set some enviromental/shell pref stuff up +# setopt NOHUP +#setopt NOTIFY +#setopt NO_FLOW_CONTROL +setopt APPEND_HISTORY +# setopt AUTO_LIST # these two should be turned off +# setopt AUTO_REMOVE_SLASH +# setopt AUTO_RESUME # tries to resume command of same name +unsetopt BG_NICE # do NOT nice bg commands +setopt CORRECT # command CORRECTION +setopt EXTENDED_HISTORY # puts timestamps in the history +# setopt HASH_CMDS # turns on hashing +setopt HIST_ALLOW_CLOBBER +setopt HIST_REDUCE_BLANKS +setopt INC_APPEND_HISTORY SHARE_HISTORY +setopt ALL_EXPORT + +setopt MENUCOMPLETE +# Set/unset shell options +setopt notify globdots correct pushdtohome cdablevars autolist +setopt correctall autocd recexact longlistjobs +setopt autoresume histignoredups pushdsilent noclobber +setopt autopushd pushdminus extendedglob rcquotes mailwarning +unsetopt bgnice autoparamslash + +# Autoload zsh modules when they are referenced +zmodload -a zsh/stat stat +zmodload -a zsh/zpty zpty +zmodload -a zsh/zprof zprof + +# mapfile : parameter already exists +#zmodload -ap zsh/mapfile mapfile + +# For MAC: +# ioreg -n AppleSmartBattery -r | awk '$1~/Capacity/{c[$1]=$3} END{OFMT="%.2f%%"; max=c["\"MaxCapacity\""]; print (max>0? 100*c["\"CurrentCapacity\""]/max: "?")}' +# ioreg -n AppleSmartBattery -r | awk '$1~/ExternalConnected/{gsub("Yes", "+");gsub("No", "%"); print substr($0, length, 1)}' + + +function battery_charge { + b_now=$(cat /sys/class/power_supply/BAT0/energy_now) + b_full=$(cat /sys/class/power_supply/BAT0/energy_full) + b_status=$(cat /sys/class/power_supply/BAT0/status) + # I am displaying 10 chars -> charge is in {0..9} + charge=$(expr $(expr $b_now \* 10) / $b_full) + + # choose the color according the charge or if we are charging then always green + if [[ charge -gt 5 || "Charging" == $b_status ]]; then + echo -n "%{$fg[green]%}" + elif [[ charge -gt 2 ]]; then + echo -n "%{$fg[yellow]%}" + else + echo -n "%{$fg[red]%}" + fi + + # display charge * '▸' and (10 - charge) * '▹' + i=0; + while [[ i -lt $charge ]] + do + i=$(expr $i + 1) + echo -n "▸" + done + while [[ i -lt 10 ]] + do + i=$(expr $i + 1) + echo -n "▹" + done + + # display a plus if we are charging + if [[ "Charging" == $b_status ]]; then + echo -n "%{$fg_bold[green]%} +" + fi + # and reset the color + echo -n "%{$reset_color%} " +} + +function battery_zsh { + BATDIR="/sys/class/power_supply/BAT0" + max=`cat $BATDIR/energy_full` + current=`cat $BATDIR/energy_now` + percent=$(( 100 * $current / $max )) + + color_green="%{%}" + color_yellow="%{%}" + color_red="%{%}" + color_reset="%{%}" + + if [ $percent -ge 80 ] ; then + color=$color_green; + elif [ $percent -ge 40 ] ; then + color=$color_yellow; + else + color=$color_red; + fi + echo $color$percent%%$color_reset +} + +PATH="/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/sbin/:$PATH" +TZ="America/Sao_Paulo" +HISTFILE=$HOME/.zhistory +HISTSIZE=1000 +SAVEHIST=1000 +HOSTNAME="`hostname`" +PAGER='less' +EDITOR='vim' + autoload colors zsh/terminfo + if [[ "$terminfo[colors]" -ge 8 ]]; then + colors + fi + for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE; do + eval PR_$color='%{$terminfo[bold]$fg[${(L)color}]%}' + eval PR_LIGHT_$color='%{$fg[${(L)color}]%}' + (( count = $count + 1 )) + done + PR_NO_COLOR="%{$terminfo[sgr0]%}" +PS1="[$PR_MAGENTA%n$PR_NO_COLOR@$PR_GREEN%U%m%u$PR_NO_COLOR:$PR_RED%2c$PR_NO_COLOR]%(!.#.$) " +RPS1="$(battery_charge) $(battery_zsh) $PR_MAGENTA(%D{%d-%m-%y %H:%M})$PR_NO_COLOR" +#LANGUAGE= +LC_ALL='pt_BR.UTF-8' +LANG='pt_BR.UTF-8' +LC_CTYPE=C +DISPLAY=:0 + +if [ $SSH_TTY ]; then + MUTT_EDITOR=vim +else + MUTT_EDITOR=emacsclient.emacs-snapshot +fi + +unsetopt ALL_EXPORT +# # -------------------------------------------------------------------- +# # aliases +# # -------------------------------------------------------------------- +alias slrn="slrn -n" +alias man='LC_ALL=PT-BR LANG=PT-BR man' +alias f=finger +alias ll='ls -ashpGl --color ' +alias ls='ls -G --color ' +alias offlineimap-tty='offlineimap -u TTY.TTYUI' +alias hnb-partecs='hnb $HOME/partecs/partecs-hnb.xml' +alias rest2html-css='rst2html --embed-stylesheet --stylesheet-path=/usr/share/python-docutils/s5_html/themes/default/print.css' +alias dmesg="sudo dmesg" +#if [[ $HOSTNAME == "kamna" ]] { +# alias emacs='emacs -l ~/.emacs.kamna' +#} + +# alias =clear +stty erase ^H &>/dev/null +bindkey "^[[3~" delete-char +#chpwd() { +# [[ -t 1 ]] || return +# case $TERM in +# sun-cmd) print -Pn "\e]l%~\e\\" +# ;; +# *xterm*|screen|rxvt|(dt|k|E)term) print -Pn "\e]2;%~\a" +# ;; +# esac +#} + +#chpwd + +autoload -U compinit +compinit +bindkey '^r' history-incremental-search-backward +bindkey "^[[5~" up-line-or-history +bindkey "^[[6~" down-line-or-history +bindkey "^[[H" beginning-of-line +bindkey "^[[1~" beginning-of-line +bindkey "^[[F" end-of-line +bindkey "^[[4~" end-of-line +bindkey ' ' magic-space # also do history expansion on space +bindkey '^I' complete-word # complete on tab, leave expansion to _expand + +zstyle ':completion::complete:*' use-cache on +zstyle ':completion::complete:*' cache-path ~/.zsh/cache/$HOST + +zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} +zstyle ':completion:*' list-prompt '%SAt %p: Hit TAB for more, or the character to insert%s' +zstyle ':completion:*' menu select=1 _complete _ignored _approximate +zstyle -e ':completion:*:approximate:*' max-errors \ + 'reply=( $(( ($#PREFIX+$#SUFFIX)/2 )) numeric )' +zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s' +zstyle ':completion:*:processes' command 'ps -axw' +zstyle ':completion:*:processes-names' command 'ps -awxho command' +# Completion Styles +zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31' +# list of completers to use +zstyle ':completion:*::::' completer _expand _complete _ignored _approximate + +# allow one error for every three characters typed in approximate completer +zstyle -e ':completion:*:approximate:*' max-errors \ + 'reply=( $(( ($#PREFIX+$#SUFFIX)/2 )) numeric )' + +# insert all expansions for expand completer +zstyle ':completion:*:expand:*' tag-order all-expansions +# +#NEW completion: +# 1. All /etc/hosts hostnames are in autocomplete +# 2. If you have a comment in /etc/hosts like #%foobar.domain, +# then foobar.domain will show up in autocomplete! +zstyle ':completion:*' hosts $(awk '/^[^#]/ {print $2 $3" "$4" "$5}' /etc/hosts | grep -v ip6- && grep "^#%" /etc/hosts | awk -F% '{print $2}') +# formatting and messages +zstyle ':completion:*' verbose yes +zstyle ':completion:*:descriptions' format '%B%d%b' +zstyle ':completion:*:messages' format '%d' +zstyle ':completion:*:warnings' format 'No matches for: %d' +zstyle ':completion:*:corrections' format '%B%d (errors: %e)%b' +zstyle ':completion:*' group-name '' + +# match uppercase from lowercase +zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}' + +# offer indexes before parameters in subscripts +zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters + +# command for process lists, the local web server details and host completion +#zstyle ':completion:*:processes' command 'ps -o pid,s,nice,stime,args' +#zstyle ':completion:*:urls' local 'www' '/var/www/htdocs' 'public_html' +zstyle '*' hosts $hosts + +# Filename suffixes to ignore during completion (except after rm command) +zstyle ':completion:*:*:(^rm):*:*files' ignored-patterns '*?.o' '*?.c~' \ + '*?.old' '*?.pro' +# the same for old style completion +#fignore=(.o .c~ .old .pro) + +# ignore completion functions (until the _ignored completer) +zstyle ':completion:*:functions' ignored-patterns '_*' +zstyle ':completion:*:scp:*' tag-order \ + files users 'hosts:-host hosts:-domain:domain hosts:-ipaddr"IP\ Address *' +zstyle ':completion:*:scp:*' group-order \ + files all-files users hosts-domain hosts-host hosts-ipaddr +zstyle ':completion:*:ssh:*' tag-order \ + users 'hosts:-host hosts:-domain:domain hosts:-ipaddr"IP\ Address *' +zstyle ':completion:*:ssh:*' group-order \ + hosts-domain hosts-host users hosts-ipaddr +zstyle '*' single-ignored show + +source $HOME/.bash_aliases + +source $HOME/.profile + +PATH="$HOME/bin:$HOME/.local/bin:$HOME/.cabal/bin:$PATH" + + +#source /home/renato/WebApp/silvrosa.llm-node.google-api.sh +alias batt='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|to\ empty|percentage"' + +# Instalacao das Funcoes ZZ (www.funcoeszz.net) +# script +export ZZPATH=/usr/local/bin/funcoeszz +# pasta zz/ +export ZZDIR= +source /home/renato/.zzzshrc