root/dotfiles/bash/kana/dot.bash_profile

Revision 520, 2.9 kB (checked in by kana, 13 months ago)

dotfiles/bash/kana:
* Sync with my local repository.

  • Property svn:keywords set to Id
Line 
1# $Id$
2# MISC. INITIALIZATION {{{1
3
4_check_then_source() {  # script-path
5  if [ -e "$1" ]; then
6    source "$1"
7  fi
8}
9
10
11_report_error() {  # variable-name message
12  echo ".bash_profile: $2: Invalid $1=${!1}" >/dev/stderr
13}
14
15
16
17
18
19
20
21
22# ENVIRONMENT VARIABLES  {{{1
23# COMMON  {{{2
24
25# What machine am I working on?
26  # BUGS: The way to determine is not so good.
27if [ "$OSTYPE" == 'cygwin' ]; then
28  export ENV_WORKING='cygwin'
29elif [ "$HOSTNAME" == 'colinux' ]; then
30  export ENV_WORKING='colinux'
31else
32  export ENV_WORKING='linux'
33fi
34
35# What machine am I accessing to $ENV_WORKING?
36if [ "$TERM" == 'xterm-256color' ]; then
37  # FIXME: How to determine colinux or linux?
38  export ENV_ACCESS="$ENV_WORKING"
39else
40  export ENV_ACCESS='cygwin'
41fi
42
43# Suitable character encoding for $ENV_WORKING
44export ENCODING_colinux='utf-8'
45export ENCODING_cygwin='cp932'
46export ENCODING_linux='euc-jp'
47
48
49if [ -d "$HOME/bin" ]; then export PATH="$HOME/bin:$PATH"; fi
50if [ -d "$HOME/man" ]; then export MANPATH="$HOME/man:$MANPATH"; fi
51if [ -d "$HOME/info" ]; then export INFOPATH="$HOME/info:$INFOPATH"; fi
52
53# export DISPLAY=localhost:0.0  # Don't set to use some applications without X.
54export EDITOR=vim
55export PAGER=less
56export SHELL=/bin/bash
57export TZ=JST-9
58
59case "$ENV_ACCESS" in
60  cygwin)
61    export TERM=rxvt-cygwin-native
62    export LANG=
63    ;;
64  colinux|linux)
65    # export TERM=...  # Don't touch -- use the default values.
66    # export LANG=...  # Don't touch -- use the default values.
67    ;;
68  *)
69    _report_error ENV_ACCESS 'TERM/LANG'
70    ;;
71esac
72
73export CYGHOME="/c/cygwin$HOME"
74
75
76
77
78# COMMAND-SPECIFIC  {{{2
79
80# bash
81IGNOREEOF=1  # Don't export -- only set for the login shell.
82
83
84# cvs
85export CVS_RSH=ssh
86if [ "$ENV_WORKING" == 'cygwin' ]; then
87  export CVSROOT=$HOME/var/cvsroot
88fi
89
90
91# gzip
92export GZIP='--best --name --verbose'
93
94
95# less
96# -P '[?eEOF:?pB%pB\%..]  .?f%f:(stdin).?m (%i of %m).?lb  %lb?L/%L..'
97export LESS='-P [?eEOF:?PB%PB\%..]'
98case "$ENV_ACCESS" in
99  cygwin)
100    export JLESSCHARSET=japanese-sjis
101    ;;
102  colinux|linux)
103    # Don't set.
104    ;;
105  *)
106    _report_error ENV_ACCESS 'JLESSCHARSET'
107    ;;
108esac
109
110# make
111if [ "$ENV_WORKING" == 'cygwin' ]; then
112  export MAKE_MODE=unix
113fi
114
115
116
117
118
119
120
121
122# X SETTINGS  {{{1
123
124if [ "$ENV_WORKING" == 'linux' ] && [ -n "$DISPLAY" ]; then
125  setxkbmap us
126  xmodmap ~/.xmodmaprc
127  if ! xset q | grep $HOME >/dev/null; then
128    for dir in ~/share/fonts/*; do
129      xset fp+ $dir
130    done
131    xset fp rehash
132  fi
133fi
134
135
136
137
138
139
140
141
142# SYSTEM-WIDE SETTINGS  {{{1
143
144case "$ENV_WORKING" in
145  cygwin)
146    _check_then_source /etc/bash.bashrc
147    ;;
148  colinux)
149    _check_then_source /etc/bash.bashrc
150    ;;
151  linux)
152    _check_then_source /etc/bashrc
153    ;;
154  *)
155    _report_error ENV_WORKING 'SYSTEM-WIDE SETTINGS'
156    ;;
157esac
158
159
160
161
162
163
164
165
166# USER-SPECIFIC SETTINGS  {{{1
167
168_check_then_source ~/.bashrc
169
170
171
172
173
174
175
176
177# MISC. FINALIZATION  {{{1
178
179unset -f _check_then_source
180unset -f _report_error
181
182
183
184
185
186
187
188
189# __END__
190# vim: filetype=sh foldmethod=marker
Note: See TracBrowser for help on using the browser.