emacs: use conf-mode .*rc files, but use sh-mode for .bashrc
[~bandali/configs] / .bashrc
diff --git a/.bashrc b/.bashrc
index f4fa270..5928570 100644 (file)
--- a/.bashrc
+++ b/.bashrc
@@ -1,6 +1,15 @@
 # If not running interactively, don't do anything else
 [[ $- != *i* ]] && return
 
 # If not running interactively, don't do anything else
 [[ $- != *i* ]] && return
 
+[[ $TERM = "eterm-color" || $TERM = "screen" ]] && source ~/.bash_profile
+
+# from https://unix.stackexchange.com/a/55935
+a_prompt() {
+    cwd=$(sed -e "s:$HOME:~:" -e "s:\(\.\?[^/]\)[^/]*/:\1/:g" <<<$PWD)
+    printf $cwd
+}
+PS1="\u@\h \$(a_prompt)> "
+
 # i-beam cursor
 # echo -e "\033[5 q"              # blinking
 echo -e "\033[6 q"              # non-blinking
 # i-beam cursor
 # echo -e "\033[5 q"              # blinking
 echo -e "\033[6 q"              # non-blinking
@@ -26,12 +35,16 @@ alias mv="mv -iv"
 alias cp="cp -iv"
 alias scl=systemctl
 alias jcl=journalctl
 alias cp="cp -iv"
 alias scl=systemctl
 alias jcl=journalctl
-alias m="mbsync csclub; mbsync uwaterloo; mbsync amin"
+alias mbsync='mbsync -c "$XDG_CONFIG_HOME"/isync/mbsyncrc'
+alias getmail='getmail --getmaildir "$XDG_CONFIG_HOME"/getmail --rcfile getmailrc'
+alias mb="mbsync csclub; mbsync uwaterloo; mbsync amin"
+alias gm="getmail"
+alias m="mb; gm"
 alias best="youtube-dl -f best"
 
 aur() {
    cd ~/usr/builds
 alias best="youtube-dl -f best"
 
 aur() {
    cd ~/usr/builds
-   git clone https://aur.archlinux.org/${1}.git
+   [ -d ${1} ] || git clone https://aur.archlinux.org/${1}.git
    cd ${1}
 }
 
    cd ${1}
 }
 
@@ -39,9 +52,9 @@ aur() {
 include /usr/share/fzf/key-bindings.bash
 include /usr/share/fzf/completion.bash
 
 include /usr/share/fzf/key-bindings.bash
 include /usr/share/fzf/completion.bash
 
-# from https://unix.stackexchange.com/a/55935
-a_prompt() {
-    cwd=$(sed -e "s:$HOME:~:" -e "s:\(\.\?[^/]\)[^/]*/:\1/:g" <<<$PWD)
-    printf $cwd
-}
-PS1="\u@\h \$(a_prompt)> "
+if ! pgrep -u "$USER" ssh-agent > /dev/null; then
+    ssh-agent > ~/.ssh-agent-thing
+fi
+if [[ ! "$SSH_AUTH_SOCK" ]]; then
+    eval "$(<~/.ssh-agent-thing)"
+fi