| @@ -52,8 +52,8 @@ __safe_add_path_l \ | |||||
| test -f "${__dotdir}/rc.py" && export PYTHONSTARTUP="${__dotdir}/rc.py" | test -f "${__dotdir}/rc.py" && export PYTHONSTARTUP="${__dotdir}/rc.py" | ||||
| install -d "$HOME/.local/lib/python/site-packages" | |||||
| export PYTHONPATH="${PYTHONPATH}:${HOME}/.local/lib/python/site-packages" | |||||
| test -d "$HOME/.local/lib/python/site-packages" && \ | |||||
| export PYTHONPATH="${PYTHONPATH}:${HOME}/.local/lib/python/site-packages" | |||||
| export GEM_HOME="$HOME/.local/lib/gems" | export GEM_HOME="$HOME/.local/lib/gems" | ||||
| export RUBYLIB="$RUBYLIB:$HOME/.local/lib/gems/lib" | export RUBYLIB="$RUBYLIB:$HOME/.local/lib/gems/lib" | ||||
| @@ -127,8 +127,8 @@ fi | |||||
| __dotdir="`dirname "$__shrc"`" | __dotdir="`dirname "$__shrc"`" | ||||
| __homelocal="$HOME/.local" | __homelocal="$HOME/.local" | ||||
| __homevar="$HOME/.var" | __homevar="$HOME/.var" | ||||
| install -d "$__homelocal" | |||||
| install -d "$__homevar" | |||||
| test -d "$__homelocal" || install -d "$__homelocal" | |||||
| test -d "$__homevar" || install -d "$__homevar" | |||||
| ################################## | ################################## | ||||
| @@ -200,7 +200,7 @@ then | |||||
| fi | fi | ||||
| __match "$TMP" "${USER}-tmp" >/dev/null || export TMP="${TMP}/${USER}-tmp" | __match "$TMP" "${USER}-tmp" >/dev/null || export TMP="${TMP}/${USER}-tmp" | ||||
| export TEMP="$TMP" | export TEMP="$TMP" | ||||
| mkdir -p "$TMP" | |||||
| test -d "$TMP" || install -d "$TMP" | |||||
| ! iswindows && null type stty && { | ! iswindows && null type stty && { | ||||
| stty stop undef # unbind C-s to stop displaying output | stty stop undef # unbind C-s to stop displaying output | ||||
| @@ -216,10 +216,133 @@ then | |||||
| export CHIT_PATH="$HOME/dbx/.chit" | export CHIT_PATH="$HOME/dbx/.chit" | ||||
| fi | fi | ||||
| ########################## | |||||
| # Setups | |||||
| __download(){ | |||||
| # download <url> <file> | |||||
| if type wget >/dev/null 2>&1 | |||||
| then | |||||
| wget "$1" -O "$2" | |||||
| elif type curl >/dev/null 2>&1 | |||||
| then | |||||
| curl --url "$1" --output "$2" | |||||
| fi | |||||
| } | |||||
| __mysetup_fetch_script(){ | |||||
| url="$1" | |||||
| name="$2" | |||||
| type "$name" >/dev/null 2>&1 || { | |||||
| __download "$url" "$HOME/.local/bin/$name" && | |||||
| chmod u+x "$HOME/.local/bin/$name" | |||||
| } | |||||
| } | |||||
| __mysetup_darwin_set_defaults(){ | |||||
| isdarwin || return 1 | |||||
| # http://appdrill.net/60641/mac-boot-mute.html | |||||
| #sudo nvram SystemAudioVolume=%80 | |||||
| # add quit entry in menu | |||||
| defaults write com.apple.finder QuitMenuItem -bool YES | |||||
| # show full path on titlebar | |||||
| defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES | |||||
| # do not show desktop icons | |||||
| defaults write com.apple.finder CreateDesktop -boolean false | |||||
| killall Finder | |||||
| # disable dashboard | |||||
| #defaults write com.apple.dashboard mcx-disabled -bool YES | |||||
| } | |||||
| __mysetup_darwin_start_daemon(){ | |||||
| isdarwin || return 1 | |||||
| test "`launchctl getenv LC_ALL`" = C || sudo launchctl setenv LC_ALL C | |||||
| if ! (launchctl list | grep com.apple.locate) >/dev/null | |||||
| then | |||||
| sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist | |||||
| fi | |||||
| } | |||||
| __mysetup_git_config(){ | |||||
| if ! null type git | |||||
| then | |||||
| echo "git not found" | |||||
| return 1 | |||||
| fi | |||||
| _gitconfig="git config --global" | |||||
| $_gitconfig user.name '10sr' | |||||
| $_gitconfig user.email '8slashes+git@gmail.com' | |||||
| $_gitconfig core.autocrlf false | |||||
| $_gitconfig core.excludesfile '~/.gitignore' | |||||
| $_gitconfig color.ui auto | |||||
| $_gitconfig status.relativePaths false | |||||
| $_gitconfig status.showUntrackedFiles normal | |||||
| $_gitconfig log.date iso | |||||
| null type xz && \ | |||||
| $_gitconfig tar.txz.command "xz -c" | |||||
| $_gitconfig push.default current | |||||
| $_gitconfig alias.graph "log --graph --date-order -C -M --pretty=tformat:\"%C(green)%h%C(reset) %C(white)%ad%C(reset) %C(red)%an%C(reset)%C(yellow)%d%C(reset) %C(white bold)%s%C(reset)\" --all --date=iso -n 499" | |||||
| $_gitconfig alias.st "status -s -b" | |||||
| $_gitconfig alias.b "branch" | |||||
| $_gitconfig alias.sb "show-branch" | |||||
| $_gitconfig alias.ci "commit --verbose" | |||||
| $_gitconfig alias.co "checkout" | |||||
| $_gitconfig alias.cim "commit --verbose -m" | |||||
| $_gitconfig alias.di "diff --color" | |||||
| $_gitconfig alias.me "merge --no-ff --stat -v" | |||||
| $_gitconfig alias.gr "grep -n" | |||||
| $_gitconfig alias.ls "ls-files" | |||||
| # $_gitconfig alias.ls "ls-files -v --full-name" | |||||
| # $_gitconfig alias.ls "status -u -s ." | |||||
| $_gitconfig alias.sl "!sl" | |||||
| # $_gitconfig alias.my-ls "ls-files | xargs ls" | |||||
| # $_gitconfig alias.ll "!git ls-files | xargs ls -l -CFG --color=auto --time-style=long-iso" | |||||
| $_gitconfig alias.addi "add -i" | |||||
| $_gitconfig alias.clean-p "!test -z \"\$(git status -s -uno)\"" | |||||
| $_gitconfig alias.newb "checkout -b" | |||||
| $_gitconfig alias.endb \ | |||||
| "!sh -cx 'git stash && git checkout master && git merge --no-ff -'" | |||||
| #$_gitconfig alias.wc "!git ls-files -z | xargs -0 wc" | |||||
| # $_gitconfig push.default "simple" | |||||
| if iswindows; then | |||||
| $_gitconfig core.fileMode false | |||||
| fi | |||||
| } | |||||
| __mysetup_mkdirs(){ | |||||
| install -d "$HOME/.local/bin" | |||||
| } | |||||
| __mysetup(){ | |||||
| __mysetup_mkdirs | |||||
| __mysetup_fetch_script \ | |||||
| https://gist.github.com/10sr/6852317/raw/colortable16.sh colortable16.sh | |||||
| __mysetup_fetch_script \ | |||||
| https://gist.github.com/10sr/6852331/raw/256colors2.pl 256colors2.pl | |||||
| if isdarwin | |||||
| then | |||||
| __mysetup_darwin_set_defaults | |||||
| __mysetup_darwin_start_daemon | |||||
| fi | |||||
| } | |||||
| ####################### | ####################### | ||||
| # If not running interactively, don't do anything | |||||
| # issourced || exit | |||||
| isinteractive || return | |||||
| if ! isinteractive | |||||
| then | |||||
| if test "$1" = setup | |||||
| then | |||||
| __mysetup | |||||
| fi | |||||
| exit 0 | |||||
| fi | |||||
| ###################### | ###################### | ||||
| # Print welcome messages | # Print welcome messages | ||||
| @@ -776,12 +899,12 @@ di(){ | |||||
| } | } | ||||
| tb(){ | tb(){ | ||||
| local datenum=`date +%Y%m%d-%H%M%S` | |||||
| local tb="$HOME/.var/tb/$datenum" | |||||
| mkdir -p "$tb" | |||||
| __datenum=`date +%Y%m%d-%H%M%S` | |||||
| __tb="$HOME/.var/tb/$__datenum" | |||||
| install -d "$__tb" | |||||
| for file in "$@" | for file in "$@" | ||||
| do | do | ||||
| mv -t "$tb" "$file" | |||||
| mv -t "$__tb" "$file" | |||||
| done | done | ||||
| } | } | ||||
| @@ -794,7 +917,7 @@ mkcd(){ | |||||
| then | then | ||||
| echo "Dir \"$1\" already exists." | echo "Dir \"$1\" already exists." | ||||
| else | else | ||||
| mkdir -p "$1" | |||||
| install -d "$1" | |||||
| echo "Dir \"$1\" created." | echo "Dir \"$1\" created." | ||||
| fi | fi | ||||
| cd "$1" | cd "$1" | ||||