diff options
l--------- | .bash_completion.d/gentoo | 1 | ||||
-rw-r--r-- | .bash_logout | 9 | ||||
-rw-r--r-- | .bashrc | 136 | ||||
-rw-r--r-- | .profile | 56 |
4 files changed, 140 insertions, 62 deletions
diff --git a/.bash_completion.d/gentoo b/.bash_completion.d/gentoo deleted file mode 120000 index 6059b42..0000000 --- a/.bash_completion.d/gentoo +++ /dev/null @@ -1 +0,0 @@ -/usr/share/bash-completion/gentoo
\ No newline at end of file diff --git a/.bash_logout b/.bash_logout index 44b6f79..de4f5f7 100644 --- a/.bash_logout +++ b/.bash_logout @@ -1,6 +1,7 @@ -# /etc/skel/.bash_logout +# ~/.bash_logout: executed by bash(1) when login shell exits. -# This file is sourced when a login shell terminates. +# when leaving the console clear the screen to increase privacy -# Clear the screen for security's sake. -clear +if [ "$SHLVL" = 1 ]; then + [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q +fi @@ -1,40 +1,118 @@ -# ~/.bashrc -# /etc/skel/.bashrc -# -# This file is sourced by all *interactive* bash shells on startup, -# including some apparently interactive shells such as scp and rcp -# that can't tolerate any output. So make sure this doesn't display -# anything or bad things will happen ! - -# Test for an interactive shell. There is no need to set anything -# past this point for scp and rcp, and it's important to refrain from -# outputting anything in those cases. -if [[ $- != *i* ]] ; then - # Shell is non-interactive. Be done now! - return +# ~/.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 +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 + +# Vi key bindings +set -o vi + +# 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 + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh 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|*-256color) color_prompt=yes;; +esac -### bash settings {{{ -# no double entries in the shell history -export HISTCONTROL="$HISTCONTROL erasedups:ignoreboth" +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +force_color_prompt=yes -# prompt -export PS1="\[\033[01;33m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] " -### bash settings }}} +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 -### bash completion {{{ -# bash-completion -if [ -f /etc/profile.d/bash-completion.sh ]; then - . /etc/profile.d/bash-completion.sh +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# 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 + +# colored GCC warnings and errors +export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' + +# 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 -### bash completion }}} ### environment variables {{{ export EDITOR=vim - ### }}} @@ -42,15 +120,11 @@ export EDITOR=vim alias ll='ls -l' alias lf='ls -F' alias la='ls -A' +alias l='ls -CF' # ~/.bash_aliases [ -f ~/.bash_aliases ] && . ~/.bash_aliases ### aliases }}} -### run applications {{{ -# music player daemon (mpd) -[ ! -s ~/.mpd/pid ] && mpd >/dev/null 2>&1 -### run applications }}} - # vim: set ts=8 sw=4 tw=0 fenc=utf-8 ft=sh: # @@ -1,11 +1,16 @@ -########################################################### -# ~/.profile -# -########################################################### +# ~/.profile: executed by the command interpreter for login shells. +# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login +# exists. +# see /usr/share/doc/bash/examples/startup-files for examples. +# the files are located in the bash-doc package. + +# the default umask is set in /etc/profile; for setting the umask +# for ssh logins, install and configure the libpam-umask package. +#umask 022 ###### locale ###### -export LANG="en_US.utf8" -export LC_CTYPE="zh_CN.utf8" +export LANG="en_US.UTF-8" +export LC_CTYPE="zh_CN.UTF-8" export LC_COLLATE="C" ###### input method ###### @@ -16,9 +21,10 @@ export GTK3_IM_MODULE="fcitx" export QT_IM_MODULE="fcitx" export QT4_IM_MODULE="fcitx" + ###### PATH ###### # admin -if `groups | grep -qE '\b(wheel|adm|sudo)\b'`; then +if groups | grep -qE '\b(wheel|adm|sudo)\b'; then export PATH="$PATH:/usr/local/sbin:/usr/sbin:/sbin" fi # $HOME/bin @@ -26,27 +32,25 @@ if [ -d "$HOME/bin" ]; then export PATH="$HOME/bin:$PATH" fi # npm -if [ -d "$HOME/npm" ]; then - export PATH="$PATH:$HOME/npm" -fi -# TeXlive -if [ -d "/usr/local/texlive/bin/x86_64-linux" ]; then - export PATH="$PATH:/usr/local/texlive/bin/x86_64-linux" +if [ -d "$HOME/npm/bin" ]; then + export PATH="$PATH:$HOME/npm/bin" fi -###### gpg agent ###### -gpgenv="$HOME/.gnupg/gpg-agent.env" -if [ -e "${gpgenv}" ] && kill -0 $(grep GPG_AGENT_INFO "${gpgenv}" \ - | cut -d: -f 2) 2>/dev/null; then - eval "$(cat "${gpgenv}")" -else - eval "$(gpg-agent --daemon --enable-ssh-support --write-env-file "${gpgenv}")" -fi -export GPG_AGENT_INFO -export SSH_AUTH_SOCK # enable gpg-agent for ssh -# This file is sourced by bash for login shells. The following line -# runs your .bashrc and is recommended by the bash info pages. -[ -f ~/.bashrc ] && . ~/.bashrc +###### Xmodmap ###### +[ -f ~/.Xmodmap ] && xmodmap ~/.Xmodmap + + +###### ConTeXt ###### +export OSFONTDIR="/usr/local/share/fonts;$HOME/.fonts" + + +###### bash ###### +if [ -n "$BASH_VERSION" ]; then + # include .bashrc if it exists + if [ -f "$HOME/.bashrc" ]; then + . "$HOME/.bashrc" + fi +fi # vim: set ts=8 sw=4 tw=0 fenc=utf-8 ft=sh: # |