X-Git-Url: https://git.danix.xyz/?p=my-dotfiles.git;a=blobdiff_plain;f=bashrc;h=64257a2c460d618f9a224465f348ef594d548cf7;hp=776707bf3c502458fdba8e00cabc04301aa3991e;hb=HEAD;hpb=fdd76fc572da832be1ed186c6dc1396117b10c4c diff --git a/bashrc b/bashrc index 776707b..6eade8a 100644 --- a/bashrc +++ b/bashrc @@ -1,50 +1,65 @@ -export GIT_PS1_SHOWCOLORHINTS=true -export GIT_PS1_SHOWUNTRACKEDFILES=true -export GIT_PS1_SHOWDIRTYSTATE=true -export GIT_PS1_SHOWSTASHSTATE=true - # turns on bash autocompletion if [ -f /etc/profile.d/bash_completion.sh ]; then . /etc/profile.d/bash_completion.sh fi -# actual theme "MATERIAL DARK" -#if [ "$TERM" = "linux" ]; then -# echo -en "\e]P0303030" -# echo -en "\e]P1d32f2f" -# echo -en "\e]P2388e3c" -# echo -en "\e]P3f57c00" -# echo -en "\e]P4303f9f" -# echo -en "\e]P5c51162" -# echo -en "\e]P61976d2" -# echo -en "\e]P7bdbdbd" -# echo -en "\e]P8424242" -# echo -en "\e]P9e57373" -# echo -en "\e]PA81c784" -# echo -en "\e]PBffb74d" -# echo -en "\e]PC7986cb" -# echo -en "\e]PDff4081" -# echo -en "\e]PE64b5f6" -# echo -en "\e]PFf5f5f5" -# clear -#fi - user_color=32m if [ ${UID} -eq 0 ] then user_color=31m fi -PS1='[\[\e[$user_color\]\u\[\e[37m\]@\[\e[34m\]\h \[\e[37m\]- \w] \d \t\n$(__git_ps1)\\$ ' +bash_prompt() { + local NONE="\[\033[0m\]" # unsets color to term's fg color + + # regular colors + local K="\[\033[0;30m\]" # black + local R="\[\033[0;31m\]" # red + local G="\[\033[0;32m\]" # green + local Y="\[\033[0;33m\]" # yellow + local B="\[\033[0;34m\]" # blue + local M="\[\033[0;35m\]" # magenta + local C="\[\033[0;36m\]" # cyan + local W="\[\033[0;37m\]" # white + + # emphasized (bolded) colors + local EMK="\[\033[1;30m\]" + local EMR="\[\033[1;31m\]" + local EMG="\[\033[1;32m\]" + local EMY="\[\033[1;33m\]" + local EMB="\[\033[1;34m\]" + local EMM="\[\033[1;35m\]" + local EMC="\[\033[1;36m\]" + local EMW="\[\033[1;37m\]" + + # background colors + local BGK="\[\033[40m\]" + local BGR="\[\033[41m\]" + local BGG="\[\033[42m\]" + local BGY="\[\033[43m\]" + local BGB="\[\033[44m\]" + local BGM="\[\033[45m\]" + local BGC="\[\033[46m\]" + local BGW="\[\033[47m\]" + + local UC=$EMG + [ $UID -eq "0" ] && UC=$EMR + + PS1="${UC}\u ${NONE}@ ${EMB}\h ${NONE}{ ${M}\d ${NONE}} ${W}${BGY}${EMK}[ \w ]${NONE}\n\#$(__git_ps1) ${UC}\\$> ${NONE}" +} +export PROMPT_COMMAND=bash_prompt +printf "\033]0;%s@%s\007" "${LOGNAME}" "${HOSTNAME%%.*}" -case "$TERM" in - xterm*|*rxvt*) - PROMPT_COMMAND='echo -ne "\033]0;${USER}@`echo $HOSTNAME|cut -d"." -f1`: ${PWD}\007"' - ;; - *) - PROMPT_COMMAND="" - ;; -esac +# turns on git prompt +if [ -f /home/danix/.git-prompt.sh ]; then + GIT_PS1_SHOWDIRTYSTATE=true + GIT_PS1_SHOWSTASHSTATE=true + GIT_PS1_SHOWUNTRACKEDFILES=true + GIT_PS1_SHOWUPSTREAM="auto" + GIT_PS1_HIDE_IF_PWD_IGNORED=true + GIT_PS1_SHOWCOLORHINTS=true + . /home/danix/.git-prompt.sh +fi alias su="su -" alias ls="ls --color -lh" @@ -59,21 +74,41 @@ alias df="df -h" alias du="du -sh" alias diff='diff --color=auto' alias grep='grep --color=auto' +alias path='(IFS=:;ls -1d $PATH | nl)' + +# history as big as possible!! +HISTSIZE=1000000 +HISTFILESIZE=2000000 +# HISTIGNORE='hf *' +# unix.stackexchange.com/a/18443 +# history: erase duplicates... +HISTCONTROL=ignoreboth:erasedups +shopt -s histappend + -export PATH=~/.local/bin:~/bin:$PATH +#export PATH=~/.platformio/penv/bin:~/.config/composer/vendor/bin:~/.local/bin:~/bin:$PATH +#export PATH=~/.config/composer/vendor/bin:~/.local/bin:~/bin:$PATH export INTEL_BATCH=1 export QT_QPA_PLATFORMTHEME="lxqt" export QT_STYLE_OVERRIDE="kvantum-dark" export XDG_DATA_DIRS="/usr/local/share/:/usr/share/" +export CM_LAUNCHER=rofi # Tailoring LESS +# If any syntax highlighters are available, use them. +# # pygmentize does more, but source-highlight is still good. +if command -v pygmentize > /dev/null 2>&1; then + export LESSCOLOURIZER="pygmentize -f terminal" +elif command -v source-highlight > /dev/null 2>&1; then + export LESSCOLOURIZER="source-highlight --failsafe --infer-lang -f esc --style-file=esc.style -i" +fi alias more='less' -export LESS='-R' +export LESS=' -R' export LESSOPEN='|~/.lessfilter %s' export PAGER=less export SVN_EDITOR=vim -export LESSCHARSET='latin1' +export LESSCHARSET='utf-8' man() { LESS_TERMCAP_md=$'\e[01;31m' \ @@ -88,21 +123,29 @@ man() { # sudo password helper export SUDO_ASKPASS=/usr/bin/lxsudo +# password store directory +export PASSWORD_STORE_DIR=/home/danix/Programming/GIT/password_store/ + # logdate appends a date to a script output logdate() { - while IFS= read -r line; do - echo "$(date +"%F_%R.%S") $line" - done + while IFS= read -r line; do + echo "$(date +"%F_%R.%S") $line" + done } +# start gpg-agent for ssh authentication as well as key management unset GPG_AGENT_INFO unset SSH_AGENT_PID if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then - export SSH_AUTH_SOCK="${HOME}/.gnupg/S.gpg-agent.ssh" + export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)" fi -GPG_TTY=$(tty) -export GPG_TTY +export GPG_TTY=$(tty) if [ -x "$(which gpg-connect-agent)" ]; then - gpg-connect-agent updatestartuptty /bye >& /dev/null + gpg-connect-agent updatestartuptty /bye > /dev/null fi +mount-fs () { + ( echo Filesystem Mountpoint Fstype; + mount | \grep -E '^[^[:lower:]_-]+' | awk '{print $1,$3,$5}' + ) | column -t +}