diff --git a/templates/bashrc b/templates/bashrc new file mode 100644 index 0000000..c74c26a --- /dev/null +++ b/templates/bashrc @@ -0,0 +1,107 @@ +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return;; +esac + +######################## +# ******************** # +# * * # +# * COMPLETION * # +# * * # +# ******************** # +######################## + +# enable bash completion in interactive shells +if [ -f /etc/bash_completion ]; then + . /etc/bash_completion +fi + +# if the command-not-found package is installed, use it +if [ -x /usr/lib/command-not-found ]; then + function command_not_found_handle { + # check because c-n-f could've been removed in the meantime + if [ -x /usr/lib/command-not-found ]; then + /usr/bin/python /usr/lib/command-not-found -- $1 + return $? + else + return 127 + fi + } +fi + +######################## +# ******************** # +# * * # +# * HISTORY * # +# * * # +# ******************** # +######################## + +# Eternal bash history. +# --------------------- +export HISTFILESIZE= +export HISTSIZE= +export HISTTIMEFORMAT="[%F %T] " +# Change the file location +export HISTFILE=~/.history +# Force prompt to write history after every command +PROMPT_COMMAND="history -a; $PROMPT_COMMAND" + + +# check the window size after each command +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# 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 +case "$TERM" in + xterm-color) color_prompt=yes;; +esac + +# colored prompt +force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +#unset color_prompt force_color_prompt + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + alias dir='dir --color=auto' + alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + + +# Alias definitions + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi diff --git a/tools/install.sh b/tools/install.sh index d6b1805..7aca3ed 100755 --- a/tools/install.sh +++ b/tools/install.sh @@ -12,38 +12,41 @@ if [ ! -n "$ZSH" ]; then ZSH=$ZCNF/tools/oh-my-zsh fi -echo "\033[0;34mCleaning...\033[0m" -if [ -d ~/.config ]; then - if [ -d ~/.config/zsh-config ]; then - rm -rf ~/.config/zsh-config - fi - if [ -d ~/.config/oh-my-zsh ]; then - rm -rf ~/.config/oh-my-zsh - fi - if [ -d ~/.config/antigen ]; then - rm -rf ~/.config/antigen - fi -fi -if [ -f ~/.zshrc ] || [ -h ~/.zshrc ]; then - rm ~/.zshrc -fi -if [ -f ~/.bash_aliases ] || [ -h ~/.bash_aliases ]; then - rm ~/.bash_aliases -fi - echo "\033[0;34mCloning Zsh Config...\033[0m" hash git >/dev/null 2>&1 && env git clone --depth=1 http://git.str8.biz/mj/zsh-config.git $ZCNF || { echo "can't clone repo.." } -echo "\033[0;34mLooking for an existing zsh config...\033[0m" -if [ -f ~/.zshrc ] || [ -h ~/.zshrc ]; then - echo "\033[0;33mFound ~/.zshrc.\033[0m \033[0;32mBacking up to ~/.zshrc.pre-zsh-cnf\033[0m"; - mv ~/.zshrc ~/.zshrc.pre-zsh-cnf; +echo "\033[0;34mCleaning...\033[0m" +if [ -d ~/.config/zsh-config ]; then + if [ -d ~/.config/zsh-config ]; then + rm -rf ~/.config/zsh-config + fi + if [ -d ~/.config/oh-my-zsh ]; then + rm -rf ~/.config/oh-my-zsh + fi + if [ -d ~/.config/antigen ]; then + rm -rf ~/.config/antigen + fi + if [ -f ~/.zshrc ] || [ -h ~/.zshrc ]; then + mv ~/.zshrc ~/.zshrc.pre-zsh-cnf + fi + + # + # BASH: + # + + if [ -f ~/.bashrc ] || [ -h ~/.bashrc ]; then + mv ~/.bashrc ~/.bashrc.pre-zsh-cnf + fi + if [ -f ~/.bash_aliases ] || [ -h ~/.bash_aliases ]; then + rm ~/.bash_aliases + fi fi echo "\033[0;34mUsing the Zsh Config template file and adding it to ~/.zshrc\033[0m" ln -s $ZCNF/templates/zshrc ~/.zshrc +ln -s $ZCNF/templates/bashrc ~/.bashrc ln -s $ZCNF/templates/bash_aliases ~/.bash_aliases sed -i -e "/^export ZSH=/ c\\ export ZSH=$ZSH @@ -56,7 +59,7 @@ export PATH=\"$PATH\" if [ "$SHELL" != "$(which zsh)" ]; then echo "\033[0;34mTime to change your default shell to zsh!\033[0m" - chsh -s `which zsh` + # chsh -s `which zsh` fi echo "\033[0;32m"' __ __ '"\033[0m"