138 lines
4.0 KiB
Plaintext
138 lines
4.0 KiB
Plaintext
# ~/.bashrc: executed by bash(1) for non-login shells.
|
|
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
|
|
# for examples
|
|
|
|
# If not running interactively, don't do anything
|
|
[ -z "$PS1" ] && return
|
|
|
|
# don't put duplicate lines in the history. See bash(1) for more options
|
|
export HISTCONTROL=ignoredups
|
|
# ... and ignore same sucessive entries.
|
|
export HISTCONTROL=ignoreboth
|
|
# size
|
|
export HISTSIZE=10000
|
|
export HISTFILESIZE=100000
|
|
|
|
# check the window size after each command and, if necessary,
|
|
# update the values of LINES and COLUMNS.
|
|
shopt -s checkwinsize
|
|
|
|
# make less more friendly for non-text input files, see lesspipe(1)
|
|
#[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)"
|
|
|
|
# set variable identifying the chroot you work in (used in the prompt below)
|
|
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
|
|
debian_chroot=$(cat /etc/debian_chroot)
|
|
fi
|
|
|
|
# set a fancy prompt (non-color, unless we know we "want" color)
|
|
case "$TERM" in
|
|
xterm-color)
|
|
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
|
;;
|
|
*)
|
|
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
|
;;
|
|
esac
|
|
|
|
prompt_status()
|
|
{
|
|
if [[ "$?" == "0" ]]
|
|
then
|
|
echo -n '\[\033[1;32m\]>'
|
|
else
|
|
echo -n '\[\033[1;31m\]X'
|
|
fi
|
|
echo -n '\[\033[1;31m\]'
|
|
}
|
|
# Prompt
|
|
PS1="\[\033[1;31m\]>> \[\033[01;37m\](\[\033[0;37m\]\u@\[\033[0;32m\]\h\[\033[01;37m\]) \[\033[01;34m\]\w\[\033[00m\]\n\[\033[1;31m\]$(prompt_status)>\[\033[0;37m\] "
|
|
|
|
# If this is an xterm set the title to user@host:dir
|
|
case "$TERM" in
|
|
xterm*|rxvt*)
|
|
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"'
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
|
|
# Alias definitions.
|
|
# You may want to put all your additions into a separate file like
|
|
# ~/.bash_aliases, instead of adding them here directly.
|
|
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
|
|
|
|
if [ -f ~/.bash_aliases ]; then
|
|
. ~/.bash_aliases
|
|
fi
|
|
# host specific
|
|
if [ -f ~/.bash_aliases_$(hostname -s) ]; then
|
|
. ~/.bash_aliases_$(hostname -s)
|
|
fi
|
|
|
|
# enable color support of ls and also add handy aliases
|
|
if [ "$TERM" != "dumb" ]; then
|
|
[ -x /usr/bin/dircolors ] && eval "`dircolors -b`"
|
|
#alias dir='ls --color=auto --format=vertical'
|
|
#alias vdir='ls --color=auto --format=long'
|
|
fi
|
|
|
|
# enable programmable completion features (you don't need to enable
|
|
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
|
|
# sources /etc/bash.bashrc).
|
|
if [ -f /etc/bash_completion ]; then
|
|
. /etc/bash_completion
|
|
fi
|
|
|
|
# navigateur prefere
|
|
export BROWSER=firefox
|
|
|
|
# conserve l'historique lorsque l'on utilise plusieurs terminaux
|
|
shopt -s histappend
|
|
|
|
# editeur par defaut
|
|
export EDITOR=vim
|
|
export VISUAL=$EDITOR
|
|
|
|
# mutt background fix
|
|
COLORFGBG="default;default"
|
|
|
|
# pager man conserve affichage à l'écran
|
|
export MANPAGER="less -X"
|
|
|
|
# ls colors
|
|
export LSCOLORS="ExGxFxdxCxDxDxhbadExEx"
|
|
|
|
# youtube dl default dl dir
|
|
export YDL_TARGET=$HOME
|
|
|
|
# host specific
|
|
if [ -f ~/.bashrc_$(hostname -s) ]; then
|
|
. ~/.bashrc_$(hostname -s)
|
|
fi
|
|
|
|
# git
|
|
if [ -e /usr/local/share/git-core/contrib/completion/git-completion.bash ]; then
|
|
. /usr/local/share/git-core/contrib/completion/git-completion.bash
|
|
fi
|
|
if [ -e /usr/local/share/git-core/contrib/completion/git-prompt.sh ] || [ -e /usr/lib/git-core/git-sh-prompt ]; then
|
|
if [ -e /usr/lib/git-core/git-sh-prompt ]; then
|
|
. /usr/lib/git-core/git-sh-prompt
|
|
fi
|
|
if [ -e /usr/local/share/git-core/contrib/completion/git-prompt.sh ]; then
|
|
. /usr/local/share/git-core/contrib/completion/git-prompt.sh
|
|
fi
|
|
export GIT_PS1_SHOWDIRTYSTATE=1
|
|
export GIT_PS1_SHOWSTASHSTATE=1
|
|
export GIT_PS1_SHOWUNTRACKEDFILES=1
|
|
export GIT_PS1_SHOWUPSTREAM="auto"
|
|
export GIT_PS1_SHOWCOLORHINTS=1
|
|
export PROMPT_COMMAND='__git_ps1 "\[\033[1;31m\]>> \[\033[01;37m\](\[\033[0;37m\]\u@\[\033[0;32m\]\h\[\033[01;37m\]) \[\033[01;34m\]\w\[\033[00m\]" "\n\[\033[1;31m\]$(prompt_status)>\[\033[0;37m\] "'
|
|
fi
|
|
|
|
# Tmux + ssh agent forwarding
|
|
if [ -S "$SSH_AUTH_SOCK" ] && [ ! -h "$SSH_AUTH_SOCK" ]; then
|
|
ln -sf "$SSH_AUTH_SOCK" ~/.ssh/ssh_auth_sock
|
|
fi
|
|
export SSH_AUTH_SOCK=~/.ssh/ssh_auth_sock
|