isync: move mbsyncrc to $XDG_CONFIG_HOME/isync
[~bandali/configs] / .bashrc
... / ...
CommitLineData
1# If not running interactively, don't do anything else
2[[ $- != *i* ]] && return
3
4# from https://unix.stackexchange.com/a/55935
5a_prompt() {
6 cwd=$(sed -e "s:$HOME:~:" -e "s:\(\.\?[^/]\)[^/]*/:\1/:g" <<<$PWD)
7 printf $cwd
8}
9PS1="\u@\h \$(a_prompt)> "
10
11# i-beam cursor
12# echo -e "\033[5 q" # blinking
13echo -e "\033[6 q" # non-blinking
14
15# various bash tweaks
16shopt -s histappend
17shopt -s cmdhist
18HISTSIZE=
19HISTFILESIZE=
20HISTCONTROL=ignoreboth
21HISTIGNORE='ls:l:s:g:[bf]g:history'
22HISTTIMEFORMAT='%F %T '
23stty stop ""
24
25# aliases
26alias ls='ls --color=auto'
27alias l='ls -lh' # long format and human-readable sizes
28alias ll='l -A' # long format, all files
29alias g='git'
30include /usr/share/bash-completion/completions/git && __git_complete g _git
31alias mpv="mpv --ytdl-format mp4"
32alias mv="mv -iv"
33alias cp="cp -iv"
34alias scl=systemctl
35alias jcl=journalctl
36alias mbsync='mbsync -c "$XDG_CONFIG_HOME"/isync/mbsyncrc'
37alias m="mbsync csclub; mbsync uwaterloo; mbsync amin"
38alias best="youtube-dl -f best"
39
40aur() {
41 cd ~/usr/builds
42 [ -d ${1} ] || git clone https://aur.archlinux.org/${1}.git
43 cd ${1}
44}
45
46# fzf
47include /usr/share/fzf/key-bindings.bash
48include /usr/share/fzf/completion.bash
49
50if ! pgrep -u "$USER" ssh-agent > /dev/null; then
51 ssh-agent > ~/.ssh-agent-thing
52fi
53if [[ ! "$SSH_AUTH_SOCK" ]]; then
54 eval "$(<~/.ssh-agent-thing)"
55fi