zstyle ':completion:*' menu select # Path to your oh-my-zsh configuration. ZSH=$HOME/.oh-my-zsh # Set name of the theme to load. # Look in ~/.oh-my-zsh/themes/ # Optionally, if you set this to "random", it'll load a random theme each # time that oh-my-zsh is loaded. ZSH_THEME="robbyrussell" # Set to this to use case-sensitive completion # CASE_SENSITIVE="true" # Comment this out to disable bi-weekly auto-update checks # DISABLE_AUTO_UPDATE="true" # Uncomment to change how many often would you like to wait before auto-updates occur? (in days) # export UPDATE_ZSH_DAYS=13 # Uncomment following line if you want to disable colors in ls # DISABLE_LS_COLORS="true" # Uncomment following line if you want to disable autosetting terminal title. # DISABLE_AUTO_TITLE="true" # Uncomment following line if you want red dots to be displayed while waiting for completion COMPLETION_WAITING_DOTS="true" # Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*) # Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ # Example format: plugins=(rails git textmate ruby lighthouse) plugins=(git) source $ZSH/oh-my-zsh.sh # 256 color mode if [ -n "$TMUX" ]; then export TERM=screen-256color else export TERM=xterm-256color fi # cabal export PATH=$PATH:~/.cabal/bin # ruby export PATH=$PATH:$HOME/.gem/ruby/2.2.0/bin # vim export EDITOR=vim # xclip alias xclip="xclip -selection c" alias open="xdg-open" function noproxy { unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY ftp_proxy FTP_PROXY no_proxy # change dconf dconf reset -f /system/proxy/ proxy_update } function setproxy { base_proxy="proxy.domain.com" base_proxy_port=8080 dconf_proxy="'$base_proxy'" env_proxy="http://$base_proxy:$base_proxy_port" http_proxy=$env_proxy HTTP_PROXY=$env_proxy https_proxy=$env_proxy HTTPS_PROXY=$env_proxy ftp_proxy=$env_proxy FTP_PROXY=$env_proxy no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com" export http_proxy https_proxy HTTP_PROXY HTTPS_PROXY ftp_proxy FTP_PROXY no_proxy # change dconf dconf write /system/proxy/mode "'manual'" dconf write /system/proxy/ignore-hosts "['localhost', '127.0.0.0/8', '10.0.0.0/8', '192.168.0.0/16', '172.16.0.0/12']" dconf write /system/proxy/http/enabled true dconf write /system/proxy/http/host "$dconf_proxy" dconf write /system/proxy/http/port "$base_proxy_port" dconf write /system/proxy/https/host "$dconf_proxy" dconf write /system/proxy/https/port "$base_proxy_port" dconf write /system/proxy/ftp/host "$dconf_proxy" dconf write /system/proxy/ftp/port "$base_proxy_port" proxy_update } # restart/reload applications for proxy settings to take effect function proxy_update { # dropbox killall -q dropbox dropbox-cli start } # set lid closing action to sleep function set_closing_sleep { get_closing_action if [ $? -eq 0 ]; then head -n -2 /etc/systemd/logind.conf | sudo tee /etc/systemd/logind.conf > /dev/null echo "Closing action set to sleep if lid is closed." sudo systemctl restart systemd-logind.service else echo "Already set to sleep if lid is closed." fi } # set lid closing action to nothing function set_closing_nothing { get_closing_action if [ $? -eq 1 ]; then cat <<'EOF' | sudo tee -a /etc/systemd/logind.conf > /dev/null #custom HandleLidSwitch=ignore EOF echo "Closing action set to _not_ sleep if lid is closed." sudo systemctl restart systemd-logind.service else echo "Already set to _not_ sleep if lid is closed." fi } # 0 is nothing, 1 is sleep function get_closing_action { grep -q '#custom' /etc/systemd/logind.conf return $? } function toggle_laptop_closing_action { get_closing_action if [ $? -eq 1 ]; then set_closing_nothing else set_closing_sleep fi } function update_and_sleep { get_closing_action save=$? set_closing_nothing yaourt -Syu --noconfirm if [ $save -eq 1 ]; then set_closing_sleep fi systemctl suspend } function 256color_test { ( x=`tput op` y=`printf %$((${COLUMNS}-6))s`; for i in {0..256}; do o=00$i; echo -e ${o:${#o}-3:3} `tput setaf $i;tput setab $i`${y// /=}$x; done ) } ## run on startup if type "archey" > /dev/null; then archey # nice system information and arch logo fi if [ -e "$HOME/TODO" ]; then cat "$HOME/TODO" fi