Mercurial > ec-dotfiles
annotate rc/bashrc @ 725:0a896ffe3029
Switch to tgz
bsdunzip doesn't seem to unzip from stdin.
| author | nanaya <me@nanaya.net> |
|---|---|
| date | Mon, 19 Aug 2024 17:03:52 +0900 |
| parents | 3f0fd2156612 |
| children | 4d037b0a9f41 |
| rev | line source |
|---|---|
| 43 | 1 #!/usr/bin/env bash |
| 2 | |
|
242
ebfa844d2ef8
[bash] Also ensures interactive terminal.
Edho Arief <edho@myconan.net>
parents:
238
diff
changeset
|
3 case "${-}" in |
|
ebfa844d2ef8
[bash] Also ensures interactive terminal.
Edho Arief <edho@myconan.net>
parents:
238
diff
changeset
|
4 *i*) ;; |
|
ebfa844d2ef8
[bash] Also ensures interactive terminal.
Edho Arief <edho@myconan.net>
parents:
238
diff
changeset
|
5 *) return;; |
|
ebfa844d2ef8
[bash] Also ensures interactive terminal.
Edho Arief <edho@myconan.net>
parents:
238
diff
changeset
|
6 esac |
|
ebfa844d2ef8
[bash] Also ensures interactive terminal.
Edho Arief <edho@myconan.net>
parents:
238
diff
changeset
|
7 |
|
533
77c1f9e624a3
Rename prefix to `.ec.` instead of `.ecos_`.
edogawaconan <me@myconan.net>
parents:
530
diff
changeset
|
8 if [ "${EC_BASH_LOADED}" != "yes" ]; then |
|
77c1f9e624a3
Rename prefix to `.ec.` instead of `.ecos_`.
edogawaconan <me@myconan.net>
parents:
530
diff
changeset
|
9 EC_BASH_LOADED="yes" |
|
122
eacc854eae67
Export should be used since it inherited to subshell (eg. tmux). Also hasten exit instead of fi on the bottom of file.
Edho Prima Arief <edho@myconan.net>
parents:
117
diff
changeset
|
10 else |
|
eacc854eae67
Export should be used since it inherited to subshell (eg. tmux). Also hasten exit instead of fi on the bottom of file.
Edho Prima Arief <edho@myconan.net>
parents:
117
diff
changeset
|
11 return |
|
eacc854eae67
Export should be used since it inherited to subshell (eg. tmux). Also hasten exit instead of fi on the bottom of file.
Edho Prima Arief <edho@myconan.net>
parents:
117
diff
changeset
|
12 fi |
|
117
548cf46e9cb4
Ensures no double loading using C-style variable test.
Edho Prima Arief <edho@myconan.net>
parents:
112
diff
changeset
|
13 |
|
533
77c1f9e624a3
Rename prefix to `.ec.` instead of `.ecos_`.
edogawaconan <me@myconan.net>
parents:
530
diff
changeset
|
14 [ -f "${HOME}/.ec.bash.before" ] && . "${HOME}/.ec.bash.before" |
|
49
b924652e169d
[bash] Various tweaks: prompt, unset for check variables, etc
Edho Prima Arief <me@myconan.net>
parents:
48
diff
changeset
|
15 |
| 385 | 16 _org_path="${PATH}" |
| 386 | 17 |
|
587
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
18 # ensure correct window size at all time |
|
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
19 # noticeably in FreebSD + tmux + vim: |
|
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
20 # 1. start tmux |
|
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
21 # 2. start vim in the session |
|
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
22 # 3. split pane |
|
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
23 # 4. quit vim |
|
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
24 # 5. wrong COLUMNS or LINES |
|
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
25 shopt -s checkwinsize |
|
394f19c180a2
Ensure correct terminal size variables
nanaya <me@myconan.net>
parents:
584
diff
changeset
|
26 |
| 610 | 27 set +H |
| 28 | |
| 386 | 29 # Basic PATH |
| 468 | 30 export PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/games" |
| 385 | 31 |
|
520
a60af1e859e4
set PATH before calling uname.
edogawaconan <me@myconan.net>
parents:
516
diff
changeset
|
32 _os="$(uname -s)" |
|
a60af1e859e4
set PATH before calling uname.
edogawaconan <me@myconan.net>
parents:
516
diff
changeset
|
33 |
| 385 | 34 # pkgsrc |
| 35 if test -d /usr/pkg; then | |
| 36 PATH="${PATH}:/usr/pkg/bin:/usr/pkg/sbin" | |
| 37 if test -d /usr/pkg/java/openjdk7; then | |
| 38 # OpenJDK 7 in pkgsrc | |
| 39 PATH="${PATH}:/usr/pkg/java/openjdk7/bin" | |
| 40 fi | |
| 41 fi | |
| 460 | 42 |
| 387 | 43 # OpenBSD X11 |
| 44 test -d /usr/X11R6/bin && PATH="${PATH}:/usr/X11R6/bin" | |
| 45 # PostgreSQL Yum | |
|
440
abbdb936a36a
Automated pgsql yum version detect.
Edho Arief <edho@myconan.net>
parents:
439
diff
changeset
|
46 # Defaults to last version available. |
| 521 | 47 for _pgbindir in /usr/pgsql-*/bin; do test; done |
|
440
abbdb936a36a
Automated pgsql yum version detect.
Edho Arief <edho@myconan.net>
parents:
439
diff
changeset
|
48 test -d "${_pgbindir}" && PATH="${_pgbindir}:${PATH}" |
|
abbdb936a36a
Automated pgsql yum version detect.
Edho Arief <edho@myconan.net>
parents:
439
diff
changeset
|
49 unset _pgbindir |
| 385 | 50 |
| 439 | 51 # PostgreSQL EnterpriseDB |
| 52 # Defaults to last version available. | |
| 521 | 53 for _pgbindir in /opt/PostgreSQL/*/bin; do test; done |
| 439 | 54 test -d "${_pgbindir}" && PATH="${_pgbindir}:${PATH}" |
| 55 unset _pgbindir | |
| 56 | |
| 372 | 57 # Nuke currently defined functions |
| 396 | 58 unset -f $(set | grep ' \(\)$' | cut -d ' ' -f 1) |
| 372 | 59 |
| 374 | 60 # Nuke bash-completion |
| 61 complete -r | |
| 62 | |
| 380 | 63 # Nuke aliases |
| 64 unalias -a | |
| 65 | |
|
111
fd8dbd4bb758
ls color for freebsd, history control.
Edho Prima Arief <edho@myconan.net>
parents:
106
diff
changeset
|
66 shopt -s histappend |
| 499 | 67 HISTSIZE=20000 |
| 68 HISTFILESIZE=$HISTSIZE | |
| 69 HISTCONTROL=ignorespace:ignoredups:erasedups | |
| 70 PROMPT_COMMAND='history -a; history -c; history -r' | |
|
111
fd8dbd4bb758
ls color for freebsd, history control.
Edho Prima Arief <edho@myconan.net>
parents:
106
diff
changeset
|
71 |
| 414 | 72 export PAGER=more |
| 73 export EDITOR=vi | |
|
89
29bd7f6ef58a
Explicit LANG declaration.
Edho Prima Arief <me@myconan.net>
parents:
60
diff
changeset
|
74 export LANG="en_US.UTF-8" |
| 461 | 75 export LC_CTYPE="en_US.UTF-8" |
| 355 | 76 # The en_US.UTF-8 causes weird sorting. |
| 77 # (not really, but I prefer C based sort.) | |
| 414 | 78 export LC_COLLATE=C |
|
413
fda660f86df3
Don't set lc_messages to utf-8. Just use plain C.
Edho Arief <edho@myconan.net>
parents:
407
diff
changeset
|
79 export LC_MESSAGES=C |
|
267
e35a36bb832e
Always export LSCOLORS and CLICOLOR
Edho Arief <edho@myconan.net>
parents:
266
diff
changeset
|
80 export CLICOLOR= |
|
342
4a37643931c4
[rc/bashrc] Better color for solarized and general (blue -> cyan).
Edho Arief <edho@myconan.net>
parents:
335
diff
changeset
|
81 export LSCOLORS="gxfxcxdxbxegedabagacad" |
| 307 | 82 export LS_COLORS= |
|
309
592605e4d3bb
Use SI whenever possible. Use 1KiB instead otherwise.
Edho Arief <edho@myconan.net>
parents:
308
diff
changeset
|
83 export BLOCKSIZE=1K |
|
592605e4d3bb
Use SI whenever possible. Use 1KiB instead otherwise.
Edho Arief <edho@myconan.net>
parents:
308
diff
changeset
|
84 export BLOCK_SIZE=si |
|
49
b924652e169d
[bash] Various tweaks: prompt, unset for check variables, etc
Edho Prima Arief <me@myconan.net>
parents:
48
diff
changeset
|
85 |
| 62 | 86 alias ls="ls -F" |
| 288 | 87 alias rd="rdesktop -g 1280x600 -K -a 15 -x m -z -P -r sound:off -r clipboard:CLIPBOARD -5" |
| 593 | 88 alias man="LANG=C LC_ALL=C LC_CTYPE=C man" |
| 477 | 89 alias be="bundle exec" |
| 90 alias ll="ls -l" | |
| 91 alias la="ls -A" | |
| 712 | 92 alias htop="TERM=xterm htop -M" |
|
53
b9db5d89aae3
[bash] POSIX grep, GNU grep, standardized quote (" unless ' required).
Edho Prima Arief <me@myconan.net>
parents:
52
diff
changeset
|
93 |
| 43 | 94 _has_gnu_ls= |
|
53
b9db5d89aae3
[bash] POSIX grep, GNU grep, standardized quote (" unless ' required).
Edho Prima Arief <me@myconan.net>
parents:
52
diff
changeset
|
95 _has_gnu_grep= |
|
238
5dcbf6ab0109
Prioritize gnuls over colorls on OpenBSD. Modified GNU ls alias to allow different executable name.
Edho Arief <edho@myconan.net>
parents:
141
diff
changeset
|
96 _ls="ls" |
|
270
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
97 _grep="grep" |
|
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
98 _has_posix_grep=y |
|
691
7dda86be7a60
[bashrc] Support -A with gnu ls root
nanaya <me@nanaya.pro>
parents:
683
diff
changeset
|
99 _uid=$(id -u) |
|
270
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
100 |
| 501 | 101 case "${_os}" in |
| 43 | 102 Linux) |
| 103 _has_gnu_ls=y | |
|
96
26c9dc482051
Merge. Linux obviously has gnu grep.
Edho Prima Arief <edho@myconan.net>
parents:
75
diff
changeset
|
104 _has_gnu_grep=y |
| 43 | 105 ;; |
| 106 SunOS) | |
| 714 | 107 if [ -f /usr/share/lib/terminfo/s/screen ]; then |
| 108 export TERMINFO=/usr/share/lib/terminfo | |
| 109 elif [ -f /opt/csw/share/terminfo/s/screen ]; then | |
| 110 export TERMINFO=/opt/csw/share/terminfo | |
| 111 else | |
| 112 unset TERMINFO | |
| 113 export TERM=dtterm | |
| 114 fi | |
| 115 | |
| 116 [ xterm = "${TERM}" ] && export TERM=xterm-256color | |
|
270
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
117 _has_posix_grep=n |
| 43 | 118 [ -x /usr/gnu/bin/ls ] && _has_gnu_ls=y |
|
53
b9db5d89aae3
[bash] POSIX grep, GNU grep, standardized quote (" unless ' required).
Edho Prima Arief <me@myconan.net>
parents:
52
diff
changeset
|
119 [ -x /usr/gnu/bin/grep ] && _has_gnu_grep=y |
|
253
e6de49d70fe7
(Not so) simplified solaris path add.
Edho Arief <edho@myconan.net>
parents:
252
diff
changeset
|
120 # Higher priority directories |
|
e6de49d70fe7
(Not so) simplified solaris path add.
Edho Arief <edho@myconan.net>
parents:
252
diff
changeset
|
121 for i in {/opt/csw,/usr/gnu}/{,s}bin; do |
|
e6de49d70fe7
(Not so) simplified solaris path add.
Edho Arief <edho@myconan.net>
parents:
252
diff
changeset
|
122 [ -d "${i}" ] && PATH="${i}:${PATH}" |
|
e6de49d70fe7
(Not so) simplified solaris path add.
Edho Arief <edho@myconan.net>
parents:
252
diff
changeset
|
123 done |
|
e6de49d70fe7
(Not so) simplified solaris path add.
Edho Arief <edho@myconan.net>
parents:
252
diff
changeset
|
124 for i in /usr/{sfw,xpg4}/bin; do |
|
e6de49d70fe7
(Not so) simplified solaris path add.
Edho Arief <edho@myconan.net>
parents:
252
diff
changeset
|
125 [ -d "${i}" ] && PATH="${PATH}:${i}" |
|
e6de49d70fe7
(Not so) simplified solaris path add.
Edho Arief <edho@myconan.net>
parents:
252
diff
changeset
|
126 done |
|
333
aeb51856e281
[rc/bash] Solaris: additional path, removed useless test.
Edho Arief <edho@myconan.net>
parents:
326
diff
changeset
|
127 [ -d "/opt/csw/gnu" ] && PATH="/opt/csw/gnu:${PATH}" |
|
511
ce21ebae61b4
Add /opt/local beforehand in sunos.
edogawaconan <me@myconan.net>
parents:
510
diff
changeset
|
128 [ -d "/opt/local/sbin" ] && PATH="/opt/local/sbin:${PATH}" |
|
ce21ebae61b4
Add /opt/local beforehand in sunos.
edogawaconan <me@myconan.net>
parents:
510
diff
changeset
|
129 [ -d "/opt/local/bin" ] && PATH="/opt/local/bin:${PATH}" |
|
57
ada5b9534765
[bash] Sanitize sunos ping.
Edho Prima Arief <me@myconan.net>
parents:
56
diff
changeset
|
130 alias ping="ping -s" |
|
ada5b9534765
[bash] Sanitize sunos ping.
Edho Prima Arief <me@myconan.net>
parents:
56
diff
changeset
|
131 alias ping6="ping -A inet6" |
| 43 | 132 ;; |
| 275 | 133 FreeBSD) |
| 278 | 134 # Multi CPU awesomeness. |
| 135 alias top="top -P" | |
|
697
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
136 # The grep isn't GNU grep but supports all of its commands |
|
453
c3bfb45757e9
FreeBSD grep is GNU grep. Well, up to 9.x.
Edho Arief <edho@myconan.net>
parents:
440
diff
changeset
|
137 _has_gnu_grep=y |
| 275 | 138 ;; |
|
351
001cdf389aaf
NetBSD and DFBSD use similar package directory structure (pkgsrc).
Edho Arief <edho@myconan.net>
parents:
345
diff
changeset
|
139 NetBSD|DragonFly) |
|
697
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
140 # The grep isn't GNU grep but supports all of its commands |
|
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
141 _has_gnu_grep=y |
| 249 | 142 ;; |
| 67 | 143 CYGWIN*) |
| 144 export PATH="${PATH}:${_org_path}" | |
| 145 ;; | |
| 581 | 146 MSYS_NT-*) |
| 147 _has_gnu_ls=y | |
| 148 export PATH="${PATH}:${_org_path}" | |
| 149 ;; | |
| 43 | 150 esac |
| 151 | |
|
697
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
152 if command -v gls > /dev/null 2>&1; then |
|
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
153 _has_gnu_ls=y |
|
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
154 _ls="gls" |
|
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
155 elif command -v colorls > /dev/null 2>&1; then |
|
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
156 alias ls="colorls -F" |
|
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
157 fi |
|
7359a8dbab5c
[bashrc] Simplify grep check and unify ls check
nanaya <me@nanaya.pro>
parents:
696
diff
changeset
|
158 |
| 696 | 159 if command -v ggrep > /dev/null 2>&1; then |
| 160 _has_gnu_grep=y | |
| 161 _grep="ggrep" | |
| 162 fi | |
| 163 | |
| 314 | 164 if [ "${_has_gnu_ls}" = y ]; then |
|
691
7dda86be7a60
[bashrc] Support -A with gnu ls root
nanaya <me@nanaya.pro>
parents:
683
diff
changeset
|
165 _root_opt="" |
|
7dda86be7a60
[bashrc] Support -A with gnu ls root
nanaya <me@nanaya.pro>
parents:
683
diff
changeset
|
166 if [ "${_uid}" = "0" ]; then |
|
7dda86be7a60
[bashrc] Support -A with gnu ls root
nanaya <me@nanaya.pro>
parents:
683
diff
changeset
|
167 _root_opt=" -A" |
|
7dda86be7a60
[bashrc] Support -A with gnu ls root
nanaya <me@nanaya.pro>
parents:
683
diff
changeset
|
168 fi |
|
698
8c2ba562b15a
[bashrc] group directories first if using gnu ls
nanaya <me@nanaya.pro>
parents:
697
diff
changeset
|
169 alias ls="${_ls}${_root_opt} -F --color=auto --group-directories-first" |
| 703 | 170 unset _root_opt |
|
516
6ef4bbc171eb
Revert to default LS_COLORS. From ubuntu 14.04.
edogawaconan <me@myconan.net>
parents:
514
diff
changeset
|
171 LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:'; |
| 314 | 172 export LS_COLORS |
| 173 fi | |
|
270
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
174 if [ "${_has_gnu_grep}" = y ]; then |
|
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
175 alias grep="${_grep} --color=auto" |
|
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
176 _has_posix_grep=y |
|
523
b88f621b6bd8
Add always-colored grep aliases.
edogawaconan <me@myconan.net>
parents:
521
diff
changeset
|
177 |
|
b88f621b6bd8
Add always-colored grep aliases.
edogawaconan <me@myconan.net>
parents:
521
diff
changeset
|
178 alias cgrep="${_grep} --color=always" |
|
b88f621b6bd8
Add always-colored grep aliases.
edogawaconan <me@myconan.net>
parents:
521
diff
changeset
|
179 alias cegrep="cgrep -E" |
|
b88f621b6bd8
Add always-colored grep aliases.
edogawaconan <me@myconan.net>
parents:
521
diff
changeset
|
180 alias cfgrep="cgrep -F" |
|
270
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
181 fi |
|
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
182 if [ "${_has_posix_grep}" = y ]; then |
|
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
183 alias fgrep="grep -F" |
|
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
184 alias egrep="grep -E" |
|
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
185 fi |
|
53
b9db5d89aae3
[bash] POSIX grep, GNU grep, standardized quote (" unless ' required).
Edho Prima Arief <me@myconan.net>
parents:
52
diff
changeset
|
186 |
| 524 | 187 # FIXME: missing test for hg and xargs -0 |
| 188 _xargs_grep="${_grep}" | |
| 189 [ "${_has_gnu_grep}" = y ] && _xargs_grep="${_grep} --color=always" | |
| 190 alias hggrep="hg locate -0 | xargs -0 ${_xargs_grep}" | |
| 191 unset _xargs_grep | |
| 192 | |
|
49
b924652e169d
[bash] Various tweaks: prompt, unset for check variables, etc
Edho Prima Arief <me@myconan.net>
parents:
48
diff
changeset
|
193 unset _has_gnu_ls |
| 58 | 194 unset _has_gnu_grep |
|
270
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
195 unset _has_posix_grep |
|
238
5dcbf6ab0109
Prioritize gnuls over colorls on OpenBSD. Modified GNU ls alias to allow different executable name.
Edho Arief <edho@myconan.net>
parents:
141
diff
changeset
|
196 unset _ls |
|
270
0e41725e7d38
Grep, GNU Grep, Solaris Grep, etc.
Edho Arief <edho@myconan.net>
parents:
269
diff
changeset
|
197 unset _grep |
|
49
b924652e169d
[bash] Various tweaks: prompt, unset for check variables, etc
Edho Prima Arief <me@myconan.net>
parents:
48
diff
changeset
|
198 |
| 261 | 199 # Custom application I usually install and safe to prioritize |
| 573 | 200 for i in {"${HOME}/apps","/opt"{,"/${USER:-$LOGNAME}"}}/{tmux,ruby19,python26,node,tarsnap,symon,nginx,p7zip,composer}/{bin,sbin}; do |
| 261 | 201 [ -d "${i}" ] && PATH="${i}:${PATH}" |
| 202 done | |
| 304 | 203 # New(?) rubygems bin PATH |
| 543 | 204 for i in {"${HOME}/apps","/opt"{,"/${USER:-$LOGNAME}"}}/ruby19/lib/ruby/gems/1.9.1/bin; do |
| 304 | 205 [ -d "${i}" ] && PATH="${i}:${PATH}" |
| 206 done | |
| 261 | 207 |
|
264
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
208 # MySQL in common locations highest priority since new = better. Also no compatibility problem. |
|
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
209 # Cluster is superset of Enterprise/GPL so it gets highest priority. |
|
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
210 # And use only one. |
| 703 | 211 for i in {"${HOME}",/apps,/opt}/mysql/{{cluster,enterprise}/mysql/,}bin; do |
| 212 if [ -d "${i}" ]; then | |
| 213 PATH="${i}:${PATH}" | |
|
264
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
214 break |
|
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
215 fi |
|
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
216 done |
|
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
217 |
| 261 | 218 # Mercurial is optional since it will be inconsistent with ssh ... hg if this one gets priority. |
|
264
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
219 # And use only one. |
| 703 | 220 for i in {"${HOME}/apps","/opt"}/mercurial{,/bin}; do |
| 221 _hgbin="${i}/hg" | |
| 222 if [ -x "${_hgbin}" ]; then | |
|
264
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
223 PATH="${PATH}:${hgdir}" |
| 703 | 224 alias nhg="${_hgbin}" |
|
264
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
225 break |
|
c6c322c57e0e
Paths for MySQL, instabreak for mercurial.
Edho Arief <edho@myconan.net>
parents:
262
diff
changeset
|
226 fi |
| 261 | 227 done |
| 703 | 228 unset _hgbin |
|
56
9343fa4dfd91
[bash] we have vim. Probably.
Edho Prima Arief <me@myconan.net>
parents:
55
diff
changeset
|
229 |
| 703 | 230 for i in {"${HOME}/apps","/opt"}/supervisor{,d}/bin; do |
| 231 if [ -d "${i}" ]; then | |
| 232 PATH="${PATH}:${i}" | |
|
273
cf23a637f3a5
Supervisor support. Added on last since I usually install it in virtualenv
Edho Arief <edho@myconan.net>
parents:
271
diff
changeset
|
233 break |
|
cf23a637f3a5
Supervisor support. Added on last since I usually install it in virtualenv
Edho Arief <edho@myconan.net>
parents:
271
diff
changeset
|
234 fi |
|
cf23a637f3a5
Supervisor support. Added on last since I usually install it in virtualenv
Edho Arief <edho@myconan.net>
parents:
271
diff
changeset
|
235 done |
|
cf23a637f3a5
Supervisor support. Added on last since I usually install it in virtualenv
Edho Arief <edho@myconan.net>
parents:
271
diff
changeset
|
236 |
|
436
d6ac822569c4
Updated the uncolored prompt style.
Edho Arief <edho@myconan.net>
parents:
435
diff
changeset
|
237 PS1='\u@\h:\w\$ ' |
| 59 | 238 case "${TERM}" in |
| 683 | 239 xterm*|screen*|dtterm*|tmux*) |
|
584
4130d41c6acb
Support for msys' USERNAME variable
nanaya <me@myconan.net>
parents:
582
diff
changeset
|
240 PROMPT_COMMAND='echo -ne "\033]0;'"${USER:-${LOGNAME:-$USERNAME}}@$(uname -n)"': ${PWD}\007";'"${PROMPT_COMMAND}" |
|
691
7dda86be7a60
[bashrc] Support -A with gnu ls root
nanaya <me@nanaya.pro>
parents:
683
diff
changeset
|
241 if [ "${_uid}" = "0" ]; then |
| 530 | 242 PS1='\[\e[1;31m\]\u@\h:\w\$\[\e[0m\] ' |
|
694
92c1a021e8a1
[bashrc] Let's just assume it's been fixed in dfbsd
nanaya <me@nanaya.pro>
parents:
693
diff
changeset
|
243 else |
|
435
4a71d0b1a4c6
Different, more compact style of prompt.
Edho Arief <edho@myconan.net>
parents:
434
diff
changeset
|
244 PS1='\[\e[0;33m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;36m\]\w\[\e[0m\]\$ ' |
|
352
038c28c748d0
The color prompt is broken-ish in DFBSD.
Edho Arief <edho@myconan.net>
parents:
351
diff
changeset
|
245 fi |
| 59 | 246 ;; |
| 247 esac | |
| 248 | |
| 501 | 249 # Priority PATHs. Always enable. |
|
533
77c1f9e624a3
Rename prefix to `.ec.` instead of `.ecos_`.
edogawaconan <me@myconan.net>
parents:
530
diff
changeset
|
250 PATH="${HOME}/bin:${HOME}/.ec.bin:/opt/local/bin:/opt/local/sbin:${PATH}" |
| 501 | 251 |
|
63
b7814634220a
[bash] branch merge, added EDITOR change to vim when detected.
Edho Prima Arief <me@myconan.net>
parents:
62
diff
changeset
|
252 if command -v vim > /dev/null 2>&1; then |
|
b7814634220a
[bash] branch merge, added EDITOR change to vim when detected.
Edho Prima Arief <me@myconan.net>
parents:
62
diff
changeset
|
253 alias vi=vim |
|
b7814634220a
[bash] branch merge, added EDITOR change to vim when detected.
Edho Prima Arief <me@myconan.net>
parents:
62
diff
changeset
|
254 export EDITOR=vim |
|
b7814634220a
[bash] branch merge, added EDITOR change to vim when detected.
Edho Prima Arief <me@myconan.net>
parents:
62
diff
changeset
|
255 fi |
| 266 | 256 |
| 296 | 257 if command -v less > /dev/null 2>&1; then |
|
395
c01d272af466
Moved less configuration declaration to environment variable.
Edho Arief <edho@myconan.net>
parents:
360
diff
changeset
|
258 export PAGER=less |
|
488
e3648f0482e5
Automatically exit less when the file is less than one screenful.
edogawaconan <me@myconan.net>
parents:
477
diff
changeset
|
259 export LESS=-FMRXginsz-2 |
| 296 | 260 fi |
| 261 | |
| 365 | 262 # Test if we have GNU rm prefixed by g (esp if on non-GNU system). |
| 263 # Usually on old Solaris and {Net,Open,DragonFly}BSD. | |
| 264 if command -v grm > /dev/null 2>&1; then | |
| 265 _rm="grm" | |
| 266 else | |
| 267 _rm="rm" | |
| 268 fi | |
| 269 # Test if the specified rm has "-I" parameter since it's much better. | |
|
695
26568ef0d05a
[bashrc] Use bash internal random variable
nanaya <me@nanaya.pro>
parents:
694
diff
changeset
|
270 if "${_rm}" -If "/tmp/.nonexistent.${RANDOM}" 2> /dev/null; then |
| 365 | 271 alias rm="${_rm} -I" |
| 272 else | |
| 273 alias rm="${_rm} -i" | |
| 274 fi | |
| 366 | 275 unset _rm |
| 266 | 276 |
|
402
a23b0f6ee8a2
Add alias for zeropaste posting.
Edho Arief <edho@myconan.net>
parents:
400
diff
changeset
|
277 if command -v curl > /dev/null 2>&1; then |
| 710 | 278 alias 0p="gzip | curl 'https://paste.myconan.net/pastes.txt' -F 'paste[paste_gzip]=@-'" |
| 279 alias 0pp="gzip | curl 'https://paste.myconan.net/pastes.txt' -F 'paste[is_private]=1' -F 'paste[paste_gzip]=@-'" | |
|
402
a23b0f6ee8a2
Add alias for zeropaste posting.
Edho Arief <edho@myconan.net>
parents:
400
diff
changeset
|
280 fi |
|
a23b0f6ee8a2
Add alias for zeropaste posting.
Edho Arief <edho@myconan.net>
parents:
400
diff
changeset
|
281 |
| 501 | 282 if command -v tmux > /dev/null 2>&1; then |
| 283 case "${_os}" in | |
| 284 OpenBSD) | |
| 628 | 285 _tmux_conf_ver=2.9 |
| 501 | 286 ;; |
| 287 *) | |
|
514
13deb0e1a2cc
tmux 1.3 doesn't have -V parameter.
edogawaconan <me@myconan.net>
parents:
511
diff
changeset
|
288 case "$(tmux -V 2> /dev/null)" in |
| 715 | 289 "tmux 2.9"|"tmux 2.9"[a-z]|"tmux "[3-9].[0-9]|"tmux "[3-9].[0-9][a-z]|"tmux "[1-9][0-9].[0-9]|"tmux "[1-9][0-9].[0-9][a-z]|"tmux next-"*) _tmux_conf_ver=2.9;; |
| 627 | 290 "tmux 2."[2-8]) _tmux_conf_ver=2.2;; |
|
591
23e326f74bfd
tmux point version only goes up to 9
nanaya <me@myconan.net>
parents:
590
diff
changeset
|
291 "tmux 1.9"|"tmux 2."[0-1]) _tmux_conf_ver=1.9;; |
| 559 | 292 "tmux 1."[4-8]) _tmux_conf_ver=1.4;; |
| 501 | 293 *) _tmux_conf_ver=1.3;; |
| 294 esac | |
| 295 ;; | |
| 296 esac | |
| 297 alias tmux="tmux -f '""${HOME}""/.tmux-""${_tmux_conf_ver}"".conf'" | |
| 298 unset _tmux_conf_ver | |
| 299 fi | |
| 300 | |
| 301 unset _os | |
|
691
7dda86be7a60
[bashrc] Support -A with gnu ls root
nanaya <me@nanaya.pro>
parents:
683
diff
changeset
|
302 unset _uid |
| 703 | 303 unset i |
| 464 | 304 |
| 654 | 305 # reset cursor shape |
| 306 # reference: https://conemu.github.io/en/AnsiEscapeCodes.html#Terminal_modes | |
| 307 printf '\033[2 q' | |
| 308 | |
|
533
77c1f9e624a3
Rename prefix to `.ec.` instead of `.ecos_`.
edogawaconan <me@myconan.net>
parents:
530
diff
changeset
|
309 [ -f "${HOME}/.ec.bash.after" ] && . "${HOME}/.ec.bash.after" |
