]> git.netwichtig.de Git - user/henk/vcsh/zsh.git/blob - .zshrc
8258f1abb5e1130d6b243806d88f81065fff8c8f
[user/henk/vcsh/zsh.git] / .zshrc
1 # zprof only makes sense at the very top
2 # zmodload zsh/zprof
3
4
5 # exports are usually independent and standalone
6 # so they can stay at the top
7
8 # where to write history
9 export HISTFILE=~/.zsh_history
10 export HISTSIZE=1000000000
11 export SAVEHIST=1000000000
12
13 # what is that for exactly? maybe taskwarrior? or timewarrior?
14 REPORTTIME=10
15
16 ## define word characters (for stuff like backward-word, forward-word, backward-kill-word,..)
17 ## these are NOT separators but chars considered part of a word
18 #WORDCHARS='*?_-.[]~=/&;!#$%^(){}<>' # the default
19
20 # zsh you-should-use
21 export YSU_MODE=ALL
22
23 # I want sbin executables available
24 export PATH=${PATH}:/usr/local/sbin:/sbin:/usr/sbin
25
26
27 # hashed directories are usually independent and standalone
28 # so they can stay at the top
29 hash -d diary=~/Data/henksfiles/workinprogress/Dokumente/diary
30 hash -d lifedocs=~/Data/henksfiles/workinprogress/Dokumente/Leben
31 hash -d bewerbung=~/Data/henksfiles/workinprogress/Dokumente/bewerbung
32 hash -d rezepte=~/Data/henksfiles/workinprogress/Dokumente/rezepte/cuisine
33 hash -d templates=~/Data/henksfiles/workinprogress/templates
34 hash -d gitignore=~/Data/public/software/gitignore
35 hash -d doc=/usr/share/doc
36 hash -d TODO=~/Data/henksfiles/TODO/
37 hash -d fortunes=~/Data/henksfiles/workinprogress/Dokumente/fortunes/
38
39
40 # aliases are usually independent and standalone
41 source ~/.zsh_aliases
42 # TODO break this up or make functions or get rid?
43 source ~/.zsh_qemu
44
45
46 # options are usually independent and standalone
47 # so they can stay at the top
48 setopt AUTO_CD
49 setopt CHASE_LINKS
50
51 setopt AUTO_NAME_DIRS
52
53 setopt BRACE_CCL
54 #setopt EXTENDED_GLOB
55 setopt MARK_DIRS
56 setopt NUMERIC_GLOB_SORT
57 setopt RC_EXPAND_PARAM
58 #setopt WARN_CREATE_GLOBAL
59 setopt GLOB_DOTS
60
61 # remove previous entries from history
62 setopt HIST_IGNORE_ALL_DUPS
63 # do not write lines starting with a space to history file
64 setopt HIST_IGNORE_SPACE
65 # Remove superfluous blanks
66 setopt HIST_REDUCE_BLANKS
67 # expand history expansion for verification
68 setopt HIST_VERIFY
69 # save timestamp and runtime as well
70 setopt EXTENDED_HISTORY
71 # write line to history file when finished, not when started, to have correct runtime
72 setopt INC_APPEND_HISTORY_TIME
73
74 setopt NO_CLOBBER
75 setopt CORRECT
76 setopt CORRECT_ALL
77 #unsetopt NOMATCH
78 setopt PRINT_EXIT_VALUE
79
80 setopt AUTO_CONTINUE
81 setopt NO_BG_NICE
82 #setopt LONG_LIST_JOBS
83
84
85 # initialize completion system before loading plugins and external configs
86 source ~/.zsh_comprc
87
88
89 # TODO break this up
90 source ~/.zsh_zinit
91
92
93 # TODO reconsider this
94 # source /usr/share/autojump/autojump.sh
95
96
97 # autoload all functions defined by me
98 # since only filenames are required we
99 # * follow symlinks
100 # * work only on plainfiles
101 # * take only the filename part without dir
102 fpath=(~/.zsh_functions $fpath)
103 autoload ~/.zsh_functions/[^_]*(-.:t)
104
105
106 autoload -Uz vcs_info
107 autoload -Uz zcalc
108 autoload -Uz zargs
109
110
111 # spawn editor on current command line
112 autoload -Uz edit-command-line
113 zle -N edit-command-line
114 bindkey -M vicmd '^X^E' edit-command-line
115 bindkey -M viins '^X^E' edit-command-line
116
117
118 # source ~/.zsh_taskwarrior
119 # source ~/.zsh_functions
120 # source ~/.zsh_functions_media
121 # source ~/.zsh_functions_taskwarrior
122
123
124 # TODO break this up
125 source ~/.zsh_local
126
127 # TODO break this up
128 source ~/.env_*
129
130
131 #zle -N zle-line-init
132 #zle -N zle-keymap-select
133
134
135 # keybindings might have been changed by plugins, etc.
136 # so they go more to the bottom
137
138
139 # commands to run after initialization is complete
140 #task awaiting
141 cat ~/.motd
142 # zprof