Mercurial > hg > zsh-env
annotate zshrc @ 12:13e0030ddaad
ignore duplicate history entries
author | Dirk Olmes <dirk@xanthippe.ping.de> |
---|---|
date | Tue, 06 Dec 2011 15:43:46 +0100 |
parents | 6c4ab833e66d |
children | f6fdf0fe99c3 |
rev | line source |
---|---|
0
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
1 # |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
2 # This is the main zshrc file. |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
3 # |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
4 |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
5 if [ -d $HOME/.oh-my-zsh ]; then |
6 | 6 ZSH=$HOME/.oh-my-zsh |
0
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
7 . $HOME/.zsh-env/oh-my-zsh |
3
d31291a406ed
look for oh-my-zsh in a system wide folder
Dirk Olmes <dirk.olmes@exentra.de>
parents:
1
diff
changeset
|
8 elif [ -d /var/lib/zsh/oh-my-zsh ]; then |
6 | 9 ZSH=/var/lib/zsh/oh-my-zsh |
10 . $HOME/.zsh-env/oh-my-zsh | |
0
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
11 fi |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
12 |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
13 # get rid of some unwanted aliases from the oh-my-zsh env |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
14 unalias l |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
15 unalias lsa |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
16 |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
17 # custom function that should work on all platforms |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
18 cd() { builtin cd "$@"; print -D $PWD; } |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
19 ff() { find $2 -print0 | xargs -0 grep $1 } |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
20 hgrep() { history | grep $* } |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
21 mcd() { mkdir $1; cd $1 } |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
22 psg() { ps auxww | grep -v grep | grep -i "$@" } |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
23 |
10
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
24 # no history handling for now ... or find a better way to save history per shell not across all shells |
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
25 export HISTFILE= |
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
26 |
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
27 # emulate tcsh's behaviour for forked processes: do not warn, do not kill when shell is closed |
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
28 setopt nohup |
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
29 setopt no_check_jobs |
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
30 |
12
13e0030ddaad
ignore duplicate history entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
10
diff
changeset
|
31 setopt hist_ignore_all_dups |
13e0030ddaad
ignore duplicate history entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
10
diff
changeset
|
32 |
10
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
33 # $HOST can either be just the host name or the FQDN. Standardize on the raw host name |
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
34 export HOST=`echo $HOST | awk -F '.' '{ print $1 }'` |
6c4ab833e66d
emulate tcsh's subprocess behaviour: automatically nohup the jobs, do not warn when exiting the shell
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
9
diff
changeset
|
35 |
0
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
36 # utility function that is used by various other modules |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
37 removeFromPath() { |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
38 search_term="$1" |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
39 split_path=(${(s/:/)PATH}) |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
40 clean_path="" |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
41 for element in ${split_path} |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
42 do |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
43 if [[ "${element}" =~ "${search_term}" ]]; then |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
44 continue |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
45 fi |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
46 |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
47 if [ ${#clean_path} -eq 0 ]; then |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
48 clean_path="${element}" |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
49 else |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
50 clean_path="${clean_path}:${element}" |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
51 fi |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
52 done |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
53 echo "${clean_path}" |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
54 } |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
55 |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
56 # include a zshrc per OS type |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
57 local os_zshrc=$HOME/.zsh-env/zshrc-$OSTYPE |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
58 if [ -f ${os_zshrc} ]; then |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
59 . ${os_zshrc} |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
60 fi |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
61 |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
62 # include a zshrc per host |
1
e12c50e8ea8c
use the builtin HOST variable
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
0
diff
changeset
|
63 local host_zshrc=$HOME/.zsh-env/zshrc-${HOST} |
0
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
64 if [ -r ${host_zshrc} ]; then |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
65 . ${host_zshrc} |
8b245298349a
zsh environment - initial import
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff
changeset
|
66 fi |