]> git.netwichtig.de Git - user/henk/vcsh/zsh.git/blob - .zshrc
Needs to be set before compinit or completer functions won’t be loaded
[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 # where zsh looks for functions
27 fpath=(~/.zsh_functions $fpath)
28
29
30 # hashed directories are usually independent and standalone
31 # so they can stay at the top
32 hash -d diary=~/Data/henksfiles/workinprogress/Dokumente/diary
33 hash -d lifedocs=~/Data/henksfiles/workinprogress/Dokumente/Leben
34 hash -d bewerbung=~/Data/henksfiles/workinprogress/Dokumente/bewerbung
35 hash -d rezepte=~/Data/henksfiles/workinprogress/Dokumente/rezepte/cuisine
36 hash -d templates=~/Data/henksfiles/workinprogress/templates
37 hash -d gitignore=~/Data/public/software/gitignore
38 hash -d doc=/usr/share/doc
39 hash -d TODO=~/Data/henksfiles/TODO/
40 hash -d fortunes=~/Data/henksfiles/workinprogress/Dokumente/fortunes/
41
42
43 # aliases are usually independent and standalone
44 source ~/.zsh_aliases
45 # TODO break this up or make functions or get rid?
46 source ~/.zsh_qemu
47
48
49 # options are usually independent and standalone
50 # so they can stay at the top
51 setopt AUTO_CD
52 setopt CHASE_LINKS
53
54 setopt AUTO_NAME_DIRS
55
56 setopt BRACE_CCL
57 #setopt EXTENDED_GLOB
58 setopt MARK_DIRS
59 setopt NUMERIC_GLOB_SORT
60 setopt RC_EXPAND_PARAM
61 #setopt WARN_CREATE_GLOBAL
62 setopt GLOB_DOTS
63
64 # remove previous entries from history
65 setopt HIST_IGNORE_ALL_DUPS
66 # do not write lines starting with a space to history file
67 setopt HIST_IGNORE_SPACE
68 # Remove superfluous blanks
69 setopt HIST_REDUCE_BLANKS
70 # expand history expansion for verification
71 setopt HIST_VERIFY
72 # save timestamp and runtime as well
73 setopt EXTENDED_HISTORY
74 # write line to history file when finished, not when started, to have correct runtime
75 setopt INC_APPEND_HISTORY_TIME
76
77 setopt NO_CLOBBER
78 setopt CORRECT
79 setopt CORRECT_ALL
80 #unsetopt NOMATCH
81 setopt PRINT_EXIT_VALUE
82
83 setopt AUTO_CONTINUE
84 setopt NO_BG_NICE
85 #setopt LONG_LIST_JOBS
86
87
88 # initialize completion system before loading plugins and external configs
89 source ~/.zsh_comprc
90
91
92 # TODO break this up
93 source ~/.zsh_zinit
94
95
96 # TODO reconsider this
97 # source /usr/share/autojump/autojump.sh
98
99
100 # autoload all functions defined by me
101 # since only filenames are required we
102 # * follow symlinks
103 # * work only on plainfiles
104 # * take only the filename part without dir
105 autoload ~/.zsh_functions/[^_]*(-.:t)
106
107
108 autoload -Uz vcs_info
109 autoload -Uz zcalc
110 autoload -Uz zargs
111
112
113 # spawn editor on current command line
114 autoload -Uz edit-command-line
115 zle -N edit-command-line
116 bindkey -M vicmd '^X^E' edit-command-line
117 bindkey -M viins '^X^E' edit-command-line
118
119
120 # source ~/.zsh_taskwarrior
121 # source ~/.zsh_functions
122 # source ~/.zsh_functions_media
123 # source ~/.zsh_functions_taskwarrior
124
125
126 # TODO break this up
127 source ~/.zsh_local
128
129 # TODO break this up
130 source ~/.env_*
131
132
133 #zle -N zle-line-init
134 #zle -N zle-keymap-select
135
136
137 # keybindings might have been changed by plugins, etc.
138 # so they go more to the bottom
139
140
141 # commands to run after initialization is complete
142 #task awaiting
143 cat ~/.motd
144 # zprof