mass update.
[my-dotfiles.git] / bashrc
1 # turns on bash autocompletion
2 if [ -f /etc/profile.d/bash_completion.sh ]; then
3 . /etc/profile.d/bash_completion.sh
4 fi
5
6 user_color=32m
7 if [ ${UID} -eq 0 ]
8 then
9 user_color=31m
10 fi
11
12 bash_prompt() {
13 local NONE="\[\033[0m\]" # unsets color to term's fg color
14
15 # regular colors
16 local K="\[\033[0;30m\]" # black
17 local R="\[\033[0;31m\]" # red
18 local G="\[\033[0;32m\]" # green
19 local Y="\[\033[0;33m\]" # yellow
20 local B="\[\033[0;34m\]" # blue
21 local M="\[\033[0;35m\]" # magenta
22 local C="\[\033[0;36m\]" # cyan
23 local W="\[\033[0;37m\]" # white
24
25 # emphasized (bolded) colors
26 local EMK="\[\033[1;30m\]"
27 local EMR="\[\033[1;31m\]"
28 local EMG="\[\033[1;32m\]"
29 local EMY="\[\033[1;33m\]"
30 local EMB="\[\033[1;34m\]"
31 local EMM="\[\033[1;35m\]"
32 local EMC="\[\033[1;36m\]"
33 local EMW="\[\033[1;37m\]"
34
35 # background colors
36 local BGK="\[\033[40m\]"
37 local BGR="\[\033[41m\]"
38 local BGG="\[\033[42m\]"
39 local BGY="\[\033[43m\]"
40 local BGB="\[\033[44m\]"
41 local BGM="\[\033[45m\]"
42 local BGC="\[\033[46m\]"
43 local BGW="\[\033[47m\]"
44
45 local UC=$EMG
46 [ $UID -eq "0" ] && UC=$EMR
47
48 PS1="${UC}\u ${NONE}@ ${EMB}\h ${NONE}{ ${M}\d ${NONE}} ${W}${BGY}${EMK}[ \w ]${NONE}\n\#$(__git_ps1) ${UC}\\$> ${NONE}"
49 }
50 export PROMPT_COMMAND=bash_prompt
51 printf "\033]0;%s@%s\007" "${LOGNAME}" "${HOSTNAME%%.*}"
52
53 # turns on git prompt
54 if [ -f /home/danix/.git-prompt.sh ]; then
55 GIT_PS1_SHOWDIRTYSTATE=true
56 GIT_PS1_SHOWSTASHSTATE=true
57 GIT_PS1_SHOWUNTRACKEDFILES=true
58 GIT_PS1_SHOWUPSTREAM="auto"
59 GIT_PS1_HIDE_IF_PWD_IGNORED=true
60 GIT_PS1_SHOWCOLORHINTS=true
61 . /home/danix/.git-prompt.sh
62 fi
63
64 alias su="su -"
65 alias ls="ls --color -lh"
66 alias cp="cp -v"
67 alias rm="rm -v"
68 alias mv="mv -v"
69 alias chmod="chmod -v"
70 alias chown="chown -v"
71 alias apropos="wtf is"
72 alias free="free -m"
73 alias df="df -h"
74 alias du="du -sh"
75 alias diff='diff --color=auto'
76 alias grep='grep --color=auto'
77 alias path='(IFS=:;ls -1d $PATH | nl)'
78
79 # history as big as possible!!
80 HISTSIZE=1000000
81 HISTFILESIZE=2000000
82 # HISTIGNORE='hf *'
83 # unix.stackexchange.com/a/18443
84 # history: erase duplicates...
85 HISTCONTROL=ignoreboth:erasedups
86 shopt -s histappend
87
88
89
90 #export PATH=~/.platformio/penv/bin:~/.config/composer/vendor/bin:~/.local/bin:~/bin:$PATH
91 #export PATH=~/.config/composer/vendor/bin:~/.local/bin:~/bin:$PATH
92 export INTEL_BATCH=1
93 export QT_QPA_PLATFORMTHEME="lxqt"
94 export QT_STYLE_OVERRIDE="kvantum-dark"
95 export XDG_DATA_DIRS="/usr/local/share/:/usr/share/"
96 export CM_LAUNCHER=rofi
97
98 # Tailoring LESS
99 # If any syntax highlighters are available, use them.
100 # # pygmentize does more, but source-highlight is still good.
101 if command -v pygmentize > /dev/null 2>&1; then
102 export LESSCOLOURIZER="pygmentize -f terminal"
103 elif command -v source-highlight > /dev/null 2>&1; then
104 export LESSCOLOURIZER="source-highlight --failsafe --infer-lang -f esc --style-file=esc.style -i"
105 fi
106 alias more='less'
107 export LESS=' -R'
108 export LESSOPEN='|~/.lessfilter %s'
109 export PAGER=less
110 export SVN_EDITOR=vim
111 export LESSCHARSET='utf-8'
112
113 man() {
114 LESS_TERMCAP_md=$'\e[01;31m' \
115 LESS_TERMCAP_me=$'\e[0m' \
116 LESS_TERMCAP_se=$'\e[0m' \
117 LESS_TERMCAP_so=$'\e[01;44;33m' \
118 LESS_TERMCAP_ue=$'\e[0m' \
119 LESS_TERMCAP_us=$'\e[01;32m' \
120 command man "$@"
121 }
122
123 # sudo password helper
124 export SUDO_ASKPASS=/usr/bin/lxsudo
125
126 # password store directory
127 export PASSWORD_STORE_DIR=/home/danix/Programming/GIT/password_store/
128
129 # logdate appends a date to a script output
130 logdate() {
131 while IFS= read -r line; do
132 echo "$(date +"%F_%R.%S") $line"
133 done
134 }
135
136 # start gpg-agent for ssh authentication as well as key management
137 unset GPG_AGENT_INFO
138 unset SSH_AGENT_PID
139 if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
140 export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
141 fi
142 export GPG_TTY=$(tty)
143 if [ -x "$(which gpg-connect-agent)" ]; then
144 gpg-connect-agent updatestartuptty /bye > /dev/null
145 fi
146
147 mount-fs () {
148 ( echo Filesystem Mountpoint Fstype;
149 mount | \grep -E '^[^[:lower:]_-]+' | awk '{print $1,$3,$5}'
150 ) | column -t
151 }