This repository has been archived by the owner on May 9, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
zacsh_exports
137 lines (118 loc) · 4.12 KB
/
zacsh_exports
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#!/usr/bin/env bash
#
# Run all env. `export` statements
#
# NOTE: This is intended to be run from inside ~/.bashrc (yes, nested shells).
# Hacks to somewhat allow "export ENV=...." to be run a million times without
# making a mess.
#
# $1=env var to export (eg: PYTHONPATH)
# $@=strings to colon-delimited prepend (eg: /my/pylib /sys/pylib)
exportPrependedOnce() {
set +u
local env_var="$1";shift
# TODO make this safe to run in script that has `set -u` -- ie: temporarily
# unset it if it's set
local to_prepend="$(
local -a found=( $(printf "${!env_var}" | tr : '\n') )
local isFirst=1
local part
for part in $@; do
printf '%s\n' "${found[@]}" | grep "$part" >/dev/null 2>&1 &&
continue
(( isFirst )) || printf ':'
isFirst=0
printf '%s' "$part"
done
)"
[ -z "$to_prepend" ] && return # nothing new
local toExport="$to_prepend"
[ -n "${!env_var}" ] && toExport="$toExport:"${!env_var}""
export "${env_var}=$toExport"
}
# tput trick from http://unix.stackexchange.com/a/147
# ANSI color table: https://en.wikipedia.org/wiki/ANSI_escape_code#Colors
export LESS_TERMCAP_mb=$(tput bold; tput setaf 2) # green: 2
export LESS_TERMCAP_md=$(tput bold; tput setaf 1) # cyan: 6
export LESS_TERMCAP_me=$(tput sgr0)
export LESS_TERMCAP_so=$(tput bold; tput setaf 3; tput setab 4) # yellow on blue
export LESS_TERMCAP_se=$(tput rmso; tput sgr0)
export LESS_TERMCAP_us=$(tput smul; tput bold; tput setaf 7) # white
export LESS_TERMCAP_ue=$(tput rmul; tput sgr0)
export LESS_TERMCAP_mr=$(tput rev)
export LESS_TERMCAP_mh=$(tput dim)
export LESS_TERMCAP_ZN=$(tput ssubm)
export LESS_TERMCAP_ZV=$(tput rsubm)
export LESS_TERMCAP_ZO=$(tput ssupm)
export LESS_TERMCAP_ZW=$(tput rsupm)
# Static/vanilla (not appending) env vars:
export EMAIL=jzacsh@gmail.com
export GPG_TTY="$(tty)"
export XDG_DATA_HOME=$HOME/.local/share
export XDG_CONFIG_HOME=$HOME/.config
export CSCOPE_DB=$HOME/.vim/cscope.out
export COWER='cower --color=auto'
export BROWSER=w3m
export SHOT_PUB='shot'
export SHOT_UPLOAD='ompload'
export TTS_CONFIG=~/.ttskeyrc
export PASTIE=clbin
export EDITOR=vim
if type nvim >/dev/null 2>&1;then export EDITOR=nvim;fi
export DIFF=' up '
export LESS=' XFR '
export RLWRAP=' AaN '
export PAGER=less
export RUBYOPT='w' #helpful ruby warnings
export GOPATH="$HOME/usr/lib/go/"
export JAVA_HOME='/usr/lib/jvm/java-8-openjdk-amd64/'
export GRADLE_USER_HOME="$XDG_CONFIG_HOME"/gradle/
export ECLIPSE_HOME="$HOME"/back/code/ide/eclipse/installations/java-mars
export ANDROID_HOME="$HOME"/usr/local/bin/android/sdk
export PUNCH_CARD="$(xdg-user-dir DOCUMENTS)/punchcard"
if [[ -d "$HOME"/tmp ]];then export TMPDIR="$HOME"/tmp; fi
tmuxSshSock="${TMPDIR:-"$HOME"/.ssh}"/ssh-auth-sock.tmux
if [[ "${SSH_AUTH_SOCK:-x}" != x ]] && [[ "$SSH_AUTH_SOCK" != "$tmuxSshSock" ]];then
rm -f "$tmuxSshSock"
ln -sf "$SSH_AUTH_SOCK" "$tmuxSshSock"
export SSH_AUTH_SOCK="$tmuxSshSock"
fi
unset tmuxSshSock
# prefer source highlighting over archive inspection
if type zacsh-highlight > /dev/null 2>&1;then
export LESSOPEN="| $(type -p zacsh-highlight) %s"
elif type pygmentize >/dev/null 2>&1;then
if echo $TERM | grep 256 >/dev/null 2>&1;then
# For more, see /usr/share/doc/python-pygments/formatters.html
termOpt=' -f terminal256 '
else
termOpt=''
fi
export LESSOPEN="| pygmentize -g $termOpt %s"
unset termOpt
elif type source-highlight >/dev/null 2>&1;then
export LESSOPEN='|source-highlight --data-dir=${TMPDIR:-/tmp/} %s'
elif type lesspipe >/dev/null 2>&1;then
export LESSOPEN='|lesspipe %s'
fi
exportPrependedOnce 'PATH' \
"$HOME/bin" \
"$HOME/bin/local" \
"$HOME/bin/share" \
"$HOME/bin/dist" \
"$HOME/bin/lib" \
"$GOPATH/bin" \
"$HOME/.local/bin/" \
"$JAVA_HOME/bin" \
"$HOME/usr/local/bin/android/sdk/platform-tools" \
"$HOME/usr/local/bin/android/sdk/tools" \
"$HOME/usr/local/bin/android/studio/bin" \
"$HOME/usr/local/bin/valgrind/bin" \
"/usr/lib/llvm-3.6/bin/" \
"/usr/local/go/bin/" \
"$HOME/.gem/ruby/2.4.0/bin/"
exportPrependedOnce 'PYTHONPATH' "$HOME/usr/lib/python"
exportPrependedOnce 'NODE_PATH' \
"/usr/local/lib/node_modules" \
"/usr/lib/node"
unset exportPrependedOnce