dotfiles/.bashrc

160 lines
4.5 KiB
Bash

# .bashrc
# Author: jukka<dot>lankinen<at>gmail<dot>com
# Last Edited: 6.03.2012
#
# Description:
# Changes the prompt, adds aliases, colorizes all output and includes shell
# completion. Additionally it does many other useful things.
#
# Check for an interactive session
[ -z "$PS1" ] && return
shopt -s checkwinsize
# disable control echo ^C
stty -ctlecho
# I want to see some fortune
# command fortune
# Prompt
#PS1='[\[\e[0;32m\]\u\[\e[m\]@\[\e[0;32m\]\h\[\e[m\]:\[\e[1;34m\]\w\[\e[m\]\[\e[m\]\[\e[1;32m\]\[\e[m\]] \[\e[m\]\[\e[1;37m\]' # Local
PS1='\[\e[m\]\[\e[1;32m\][\[\e[1;34m\]\w\[\e[m\]\[\e[1;32m\]] \[\e[m\]\[\e[1;37m\]' # Local
#PS1='[\[\e[1;31m\]\u\[\e[m\]@\[\e[1;31m\]\h\[\e[m\]:\[\e[1;34m\]\w\[\e[m\]\[\e[1;32m\]\[\e[m\]] \[\e[m\]\[\e[1;37m\]' # Others
# Aliases
if [ -n "$DISPLAY" ]
then
export EDITOR='gvim --nofork'
else
export EDITOR=vim
fi
export SHELL=/bin/bash
export VISUAL=$EDITOR
if [ "$TERM" != "dumb" ]; then
# Colorize and humanize
alias ls='ls --color=auto --time-style=long-iso -h'
eval `dircolors -b`
#alias diff='colordiff'
#alias diff='vimdiff'
alias grep='grep --color=auto'
export GREP_COLOR="1;33"
# Colorize svn diff
svndiff()
{
svn diff "${@}" | colordiff
}
fi
alias top='htop'
#alias nano='nano -wcxO' # use -i for auto-indenting
alias ll="ls -lh"
alias la="ls -a"
alias exit="clear; exit"
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# Shell auto completion
# See .inputrc
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
# History search
set show-all-if-ambiguous on # make it fast
HISTCONTROL=ignoredups:ignorespace
HISTCONTROL=ignoreboth
HISTSIZE=1000
HISTFILESIZE=2000
# Append to hist
shopt -s histappend
# fix directories
fixperm ()
{
find * -type d -print0 | xargs -0 chmod 0755 # for directories
find . -type f -print0 | xargs -0 chmod 0644 # for files
}
# extract with correct tool automagically
extract ()
{
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xvjf $1 ;;
*.tar.xz) tar xvJf $1 ;;
*.tar.gz) tar xvzf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) unrar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xvf $1 ;;
*.tbz2) tar xvjf $1 ;;
*.tgz) tar xvzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*) echo "don't know how to extract '$1'..." ;;
esac
else
echo "'$1' is not a valid file!"
fi
}
# END
###
# Optional but cool
#
# HTTP PROXY
# export http_proxy="http://www-cache.lut.fi:8080"
# ITLABCPP
# export LD_LIBRARY_PATH=/home/julankin/Work/Research/svn/itlabcpp/trunk/base/lib
# CVS
# export CVSROOT=":pserver:julankin@regulus.it.lut.fi:/net/regulus/project/cvsroot"
# export CVSROOT=":pserver:julankin@www2.it.lut.fi:/srv/cvsroot"
pacs() {
local CL='\\e['
local RS='\\e[0;0m'
echo -e "$(pacman -Ss "$@" | sed "
/^core/ s,.*,${CL}1;31m&${RS},
/^extra/ s,.*,${CL}0;32m&${RS},
/^community/ s,.*,${CL}1;35m&${RS},
/^[^[:space:]]/ s,.*,${CL}0;36m&${RS},
")"
}
aursearch() {
#OUTPUT=$(cower --format "%n %o" -s "$1" | grep "$1" | grep -v extension | sort -nrk 2 | column -t | head -n 10)
OUTPUT=$(cower --format "%n %o" -s "$1" | grep "$1" | grep -v extension | sort -nrk 2)
echo -e "Package Votes\n$OUTPUT" | column -t
}
alias win='rdesktop -g 1280x960 -k fi -d LUT rdesktop.win.lut.fi'
alias pwi='WINEDEBUG=-all WINEPREFIX="/home/lanxu/Pelit/Wine/PWI" wine "C:\\Perfect World Entertainment\\Perfect World International\\launcher\\launcher.exe"'
alias cdmine='cd ~/Asiakirjat/Work/github/minetest'
alias pena2sshmysqltunnel='ssh -N -p 26 lanxu@pena2.dy.fi -L 3306:localhost:3306'
alias fixsteam='find ~/.steam/root/ \( -name "libgcc_s.so*" -o -name "libstdc++.so*" -o -name "libxcb.so*" \) -print -delete'
alias steamgamesdir='cd ~/.local/share/Steam/SteamApps/common'
export WINEARCH=win32
# Add environment variable COCOS_CONSOLE_ROOT for cocos2d-x
export COCOS_CONSOLE_ROOT=/home/lanxu/Sovellukset/cocos2d-js-v3.6.1/tools/cocos2d-console/bin
export IONIC_INSTALL=/home/lanxu/Asiakirjat/Work/Android/ionic/node_modules/.bin
export PATH=$IONIC_INSTALL:$COCOS_CONSOLE_ROOT:$PATH
# NPM no sudo
# https://github.com/sindresorhus/guides/blob/master/npm-global-without-sudo.md
NPM_PACKAGES="${HOME}/.npm-packages"
NODE_PATH="$NPM_PACKAGES/lib/node_modules:$NODE_PATH"
PATH="$NPM_PACKAGES/bin:$PATH"
# Unset manpath so we can inherit from /etc/manpath via the `manpath`
# command
unset MANPATH # delete if you already modified MANPATH elsewhere in your config
MANPATH="$NPM_PACKAGES/share/man:$(manpath)"