commit 46f1861e3db0ce38fd0b103b08cf94d567f2d70c Author: Matthias Kretschmann Date: Sat May 7 20:56:50 2016 +0200 initial diff --git a/.bash_aliases b/.bash_aliases new file mode 100644 index 0000000..15304cc --- /dev/null +++ b/.bash_aliases @@ -0,0 +1,19 @@ + +# some more ls aliases +alias ll='ls -alF' +alias la='ls -A' +alias l='ls -CF' + +# Easier navigation: .., ..., ~ +alias ..="cd .." +alias ...="cd ../.." +alias ~="cd ~" + +# Update All The Things +alias update='sudo apt-get update && sudo apt-get upgrade -y' + +# Copy public key to pasteboard +alias pubkey="more ~/.ssh/id_rsa.pub | pbcopy | printf '=> Public key copied to pasteboard.\n'" + +# When there's need for nyaning around +alias nyan="telnet nyancat.dakko.us" diff --git a/.bashrc b/.bashrc new file mode 100644 index 0000000..308e430 --- /dev/null +++ b/.bashrc @@ -0,0 +1,186 @@ +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return;; +esac + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +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 + +if [[ $COLORTERM = gnome-* && $TERM = xterm ]] && infocmp gnome-256color >/dev/null 2>&1; then + export TERM='gnome-256color'; +elif infocmp xterm-256color >/dev/null 2>&1; then + export TERM='xterm-256color'; +fi; + +prompt_git() { + local s=''; + local branchName=''; + + # Check if the current directory is in a Git repository. + if [ $(git rev-parse --is-inside-work-tree &>/dev/null; echo "${?}") == '0' ]; then + + # check if the current directory is in .git before running git checks + if [ "$(git rev-parse --is-inside-git-dir 2> /dev/null)" == 'false' ]; then + + # Ensure the index is up to date. + git update-index --really-refresh -q &>/dev/null; + + # Check for uncommitted changes in the index. + if ! $(git diff --quiet --ignore-submodules --cached); then + s+='+'; + fi; + + # Check for unstaged changes. + if ! $(git diff-files --quiet --ignore-submodules --); then + s+='!'; + fi; + + # Check for untracked files. + if [ -n "$(git ls-files --others --exclude-standard)" ]; then + s+='?'; + fi; + + # Check for stashed files. + if $(git rev-parse --verify refs/stash &>/dev/null); then + s+='$'; + fi; + + fi; + + # Get the short symbolic ref. + # If HEAD isn’t a symbolic ref, get the short SHA for the latest commit + # Otherwise, just give up. + branchName="$(git symbolic-ref --quiet --short HEAD 2> /dev/null || \ + git rev-parse --short HEAD 2> /dev/null || \ + echo '(unknown)')"; + + [ -n "${s}" ] && s=" ${s}"; + + echo -e "${1}${branchName}${orange}${s}"; + else + return; + fi; +} + +if tput setaf 1 &> /dev/null; then + tput sgr0; # reset colors + bold=$(tput bold); + dim=$(tput setaf 240); + reset=$(tput sgr0); + # Tomorrow colors, taken from https://github.com/Slava/vim-colors-tomorrow/blob/master/colors/tomorrow.vim + black=$(tput setaf 236); + gray=$(tput setaf 242); + blue=$(tput setaf 109); + green=$(tput setaf 143); + cyan=$(tput setaf 110); + orange=$(tput setaf 173); + purple=$(tput setaf 125); + red=$(tput setaf 167); + magenta=$(tput setaf 139); + violet=$(tput setaf 139); + white=$(tput setaf 15); + yellow=$(tput setaf 136); +else + bold=''; + reset="\e[0m"; + black="\e[1;30m"; + blue="\e[1;34m"; + cyan="\e[1;36m"; + green="\e[1;32m"; + orange="\e[1;33m"; + purple="\e[1;35m"; + red="\e[1;31m"; + violet="\e[1;35m"; + white="\e[1;37m"; + yellow="\e[1;33m"; +fi; + +# Highlight the user name when logged in as root. +if [[ "${USER}" == "root" ]]; then + userStyle="${red}"; +else + userStyle="${orange}"; +fi; + +# Highlight the hostname when connected via SSH. +if [[ "${SSH_TTY}" ]]; then + hostStyle="${bold}${cyan}"; +else + hostStyle="${cyan}"; +fi; + +# Set the terminal title to the current working directory. +PS1="\[\033]0;\w\007\]"; +PS1+="\n"; +#PS1+="\[${orange}\]\w"; # working directory +PS1+="\[${bold}\]\n"; # newline +PS1+="\[${userStyle}\]\u"; # username +PS1+="\[${dim}\] at "; +PS1+="\[${hostStyle}\]\h"; # host +PS1+="\[${dim}\] in "; +PS1+="\[${blue}\]\w"; # working directory full path +PS1+="\$(prompt_git \" \[${gray}\]\")"; # Git repository details +PS1+="\n"; +PS1+="\[${dim}\]→ \[${reset}\]"; # `→` (and reset color) +export PS1; + +PS2="\[${dim}\]→ \[${reset}\]"; +export PS2; + +# LSCOLORS +export CLICOLOR=1 +export LSCOLORS=gxfxcxdxbxegedabagacad + +# 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 + + +# Add an "alert" alias for long running commands. Use like so: +# sleep 10; alert +alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' + +# 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 + +# 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 ! shopt -oq posix; then + if [ -f /usr/share/bash-completion/bash_completion ]; then + . /usr/share/bash-completion/bash_completion + elif [ -f /etc/bash_completion ]; then + . /etc/bash_completion + fi +fi diff --git a/.vimrc b/.vimrc new file mode 100644 index 0000000..d7e7337 --- /dev/null +++ b/.vimrc @@ -0,0 +1,2 @@ +colo pablo +syntax on