[fix] Edit .scripts, bashrc, vimrc & other
[dotfiles_afify.git] / .bashrc
blobd264349d5433b64a8253ce9ac448f7eceb76f194
1 #!/usr/bin/env bash
3 ###############################################################################
4 # BASH CONFIGURATION FILE
5 ###############################################################################
7 export EDITOR=vim
8 export VISUAL=vim
9 stty -ixon # Disable ctrl-s and ctrl-q.
11 ###############################################################################
12 # ALIAS
13 ###############################################################################
15 alias ll='ls -lahG --color=auto --group-directories-first'
16 alias k='clear'
17 alias mv='mv -i'
18 alias cp='cp -ir'
19 alias rm='rm -i'
20 alias df='df -h'
21 alias du='du -bh'
22 alias ka='killall'
23 alias sed='sed -E'
24 alias grep='grep -E'
25 alias mkdir='mkdir -p'
26 alias mk="makepkg -sri"
27 alias f="/home/hassan/.scripts/find.sh"
28 alias xc='xclip -sel clip <'
29 alias pacman_clean="sudo pacman -Rns $(pacman -Qtdq)"
31 alias gic="sh /home/hassan/.scripts/git_init_c.sh"
32 alias github="eval \"$(ssh-agent -s)\"; ssh-add /home/hassan/.ssh/github"
34 alias ya="youtube-dl -i --add-metadata -f bestaudio"
35 alias yv="youtube-dl -i --add-metadata -f best"
36 alias yvp="youtube-dl -i --add-metadata -f webm -o \"%(autonumber)s-%(title)s.%(ext)s\""
38 ###############################################################################
39 # PROMPT
40 ###############################################################################
42 esc="\[\033"
43 white="$esc[97m\]"
44 black="$esc[30m\]"
45 bold="$esc[1m\]"
46 restore="$esc[00m\]"
48 bg_blue="$esc[48;5;27m\]"
49 bg_red="$esc[48;5;88m\]"
50 bg_mag="$esc[48;5;53m\]"
52 export PS1="$white$bg_blue \W $bg_red\$(__git_ps1 ' %s ')$bg_mag $ $restore "
54 ###############################################################################
55 # HISTORY CONFIG
56 ###############################################################################
58 export HISTSIZE=10000
59 export HISTFILESIZE=10000
60 export HISTTIMEFORMAT='%b %d %I:%M %p '
61 export HISTCONTROL=ignoreboth
62 export HISTIGNORE="history:pwd:exit:df:ls:ls -lahG:ll"
64 ###############################################################################
65 # GREP COLOR CODE
66 ###############################################################################
68 export GREP_COLOR="30;47"
69 export GREP_OPTIONS="--color=auto"
71 ###############################################################################
72 # Archive extractor
73 ###############################################################################
75 ex (){
76 if [ -f $1 ] ; then
77 case $1 in
78 *.tar.bz2) tar xjf $1 ;;
79 *.tar.gz) tar xzf $1 ;;
80 *.bz2) bunzip2 $1 ;;
81 *.rar) unrar x $1 ;;
82 *.gz) gunzip $1 ;;
83 *.tar) tar xf $1 ;;
84 *.tbz2) tar xjf $1 ;;
85 *.tgz) tar xzf $1 ;;
86 *.zip) unzip $1 ;;
87 *.Z) uncompress $1;;
88 *.7z) 7z x $1 ;;
89 *) echo "'$1' cannot be extracted via ex()" ;;
90 esac
91 else
92 echo "'$1' is not a valid file"
96 ###############################################################################
97 # GIT
98 ###############################################################################
100 if [ -f /home/hassan/.git-completion.bash ]; then
101 source /home/hassan/.git-completion.bash
104 if [ -f /home/hassan/.git-prompt.sh ]; then
105 source /home/hassan/.git-prompt.sh
108 ###############################################################################
109 # MAN
110 ###############################################################################
112 export LESS_TERMCAP_mb=$'\e[1;32m'
113 export LESS_TERMCAP_md=$'\e[1;32m'
114 export LESS_TERMCAP_me=$'\e[0m'
115 export LESS_TERMCAP_so=$'\e[01;33m'
116 export LESS_TERMCAP_se=$'\e[0m'
117 export LESS_TERMCAP_us=$'\e[1;4;31m'
118 export LESS_TERMCAP_ue=$'\e[0m'