]> git.netwichtig.de Git - user/henk/vcsh/zsh.git/blobdiff - .zshrc
add: function for reloading autoloaded functions
[user/henk/vcsh/zsh.git] / .zshrc
diff --git a/.zshrc b/.zshrc
index b182e0ad76f8e4cf75c65319ec726434740d645d..739dac548b2e6911f9d58f77bacb9357e2c4ede6 100644 (file)
--- a/.zshrc
+++ b/.zshrc
@@ -13,6 +13,10 @@ export SAVEHIST=1000000000
 export ANSIBLE_NOCOWS=1
 export ANSIBLE_STRATEGY=mitogen_linear
 
+export TEXMFCNF=${HOME}/.texlive:
+
+export FZF_DEFAULT_COMMAND='fdfind --type f'
+
 # what is that for exactly? maybe taskwarrior? or timewarrior?
 REPORTTIME=10
 
@@ -29,7 +33,83 @@ export PATH=${PATH}:~/bin
 
 # colors for newt/whiptail (for debconf, needrestart, etc.)
 # works better with selenized colorscheme
-export NEWT_COLORS='checkbox=yellow,;roottext=yellow,'
+# everything that seems irrelevant is set to brown
+NEWT_COLORS=''
+# foreground seems irrelevant
+NEWT_COLORS="${NEWT_COLORS};root=brown,blue"
+# text in the root window
+NEWT_COLORS="${NEWT_COLORS};roottext=yellow,blue"
+
+# box/window/button shadows
+NEWT_COLORS="${NEWT_COLORS};shadow=brown,black"
+
+# boxes/windows themselves
+NEWT_COLORS="${NEWT_COLORS};window=brown,lightgray"
+# box/window titles
+NEWT_COLORS="${NEWT_COLORS};title=yellow,lightgray"
+# box/window borders
+NEWT_COLORS="${NEWT_COLORS};border=gray,lightgray"
+
+# full buttons
+NEWT_COLORS="${NEWT_COLORS};button=black,red"
+# compact buttons
+NEWT_COLORS="${NEWT_COLORS};compactbutton=black,lightgray"
+# selected/active button
+NEWT_COLORS="${NEWT_COLORS};actbutton=green,gray"
+
+# checkbox itself and text
+NEWT_COLORS="${NEWT_COLORS};checkbox=black,blue"
+# selection marker for checkbox
+NEWT_COLORS="${NEWT_COLORS};actcheckbox=yellow,gray"
+
+# TODO FIXME: no clue what that is
+NEWT_COLORS="${NEWT_COLORS};entry=yellow,brown"
+# TODO FIXME: no clue what that is
+NEWT_COLORS="${NEWT_COLORS};disentry=brown,yellow"
+
+# TODO FIXME: no clue what that is
+NEWT_COLORS="${NEWT_COLORS};label=yellow,red"
+
+# unselected entries in menus
+NEWT_COLORS="${NEWT_COLORS};listbox=lightgray,gray"
+# selected entries in menus
+NEWT_COLORS="${NEWT_COLORS};actsellistbox=yellow,blue"
+# TODO FIXME: no clue what that is
+NEWT_COLORS="${NEWT_COLORS};actlistbox=brown,red"
+# TODO FIXME: no clue what that is
+NEWT_COLORS="${NEWT_COLORS};sellistbox=black,brown"
+
+NEWT_COLORS="${NEWT_COLORS};textbox=black,lightgray"
+NEWT_COLORS="${NEWT_COLORS};acttextbox=brown,green"
+
+# TODO FIXME: no clue what that is
+NEWT_COLORS="${NEWT_COLORS};helpline=yellow,brown"
+
+# probably for gauges
+NEWT_COLORS="${NEWT_COLORS};emptyscale=red"
+NEWT_COLORS="${NEWT_COLORS};fullscale=blue"
+
+export NEWT_COLORS
+
+# black
+# darkgray
+# brown
+# yellow
+#
+# blue
+# cyan
+# gray
+# green
+# magenta
+# red
+#
+# lightblue
+# lightcyan
+# lightgray
+# lightgreen
+# lightmagenta
+# lightred
+
 
 # where zsh looks for functions
 fpath=(~/.zsh_functions $fpath)
@@ -55,17 +135,20 @@ source ~/.zsh_qemu
 
 
 # load plugin manager after all 'static' stuff is done
-source ~/Data/public/software/zinit/zinit.zsh
+# source ~/Data/public/software/zinit/zinit.zsh
+source "${HOME}/.zgenom/zgenom.zsh"
+# Check for plugin and zgenom updates every 7 days
+# This does not increase the startup time.
+zgenom autoupdate
 
 
 # mostly static stuff, env vars
-zinit load 'https://github.com/joel-porquet/zsh-dircolors-solarized'
-zinit load "https://github.com/greymd/tmux-xpanes"
+# zinit load 'https://github.com/joel-porquet/zsh-dircolors-solarized'
+# zinit load "https://github.com/greymd/tmux-xpanes"
+zgenom load 'https://github.com/joel-porquet/zsh-dircolors-solarized'
+zgenom load "https://github.com/greymd/tmux-xpanes"
 
 
-# load sane options plugin before setting my own options
-zinit load 'https://github.com/willghatch/zsh-saneopt'
-
 # options are usually independent and standalone
 # so they can stay at the top
 setopt AUTO_CD
@@ -74,7 +157,7 @@ setopt CHASE_LINKS
 setopt AUTO_NAME_DIRS
 
 setopt BRACE_CCL
-#setopt EXTENDED_GLOB
+setopt EXTENDED_GLOB
 setopt MARK_DIRS
 setopt NUMERIC_GLOB_SORT
 setopt RC_EXPAND_PARAM
@@ -102,11 +185,25 @@ setopt PRINT_EXIT_VALUE
 
 setopt AUTO_CONTINUE
 setopt NO_BG_NICE
-#setopt LONG_LIST_JOBS
+# display PID when suspending processes as well
+setopt LONG_LIST_JOBS
+# Report the status of background jobs immediately, rather than waiting until just before printing a prompt.
+setopt NOTIFY
+# Whenever  a  command completion or spelling correction is attempted, make sure the entire command path is hashed first.  This makes the first completion slower but avoids false reports of spelling errors.
+setopt HASH_LIST_ALL
+# If unset, the cursor is set to the end of the word if completion is started. Otherwise it stays there and completion is done from both ends.
+setopt COMPLETE_IN_WORD
+# use zsh field splitting
+setopt NO_SH_WORD_SPLIT
+# unset parameters should cause an error
+# CONFLICTS WITH ZINIT
+# CONFLICTS WITH ZGENOM
+# setopt NO_UNSET
 
 
 # load before completion system initialization
-zinit load 'https://github.com/zsh-users/zsh-completions'
+# zinit load 'https://github.com/zsh-users/zsh-completions'
+zgenom load 'https://github.com/zsh-users/zsh-completions'
 
 # initialize completion system before loading plugins and external configs
 source ~/.zsh_comprc
@@ -137,10 +234,12 @@ bindkey -M viins '^X^E' edit-command-line
 
 
 #this mainly sets vars, binds keys, does zle stuff
-zinit load 'https://github.com/laurenkt/zsh-vimto'
+# zinit load 'https://github.com/laurenkt/zsh-vimto'
+zgenom load 'https://github.com/laurenkt/zsh-vimto'
 
 # functions and an autoload, should be fine here
-zinit load 'https://github.com/MichaelAquilina/zsh-you-should-use'
+# zinit load 'https://github.com/MichaelAquilina/zsh-you-should-use'
+zgenom load 'https://github.com/MichaelAquilina/zsh-you-should-use'
 
 
 # source ~/.zsh_taskwarrior
@@ -153,7 +252,10 @@ zinit load 'https://github.com/MichaelAquilina/zsh-you-should-use'
 source ~/.zsh_local
 
 # TODO break this up
-source ~/.env_*
+for f in ~/.env_*(N)
+do
+       source $f
+done
 
 
 typeset -U path
@@ -167,13 +269,29 @@ typeset -U path
 
 
 # should probably be closer to the bottom than the top?
-zinit load 'https://github.com/nojhan/liquidprompt'
+# zinit load 'https://github.com/nojhan/liquidprompt'
+zgenom load 'https://github.com/nojhan/liquidprompt'
 
 
 # needs to be loaded close to the end because it hooks into other stuff
 # see https://github.com/zsh-users/zsh-syntax-highlighting
-zinit load 'https://github.com/zsh-users/zsh-syntax-highlighting'
-
+source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
+
+source /usr/share/doc/fzf/examples/key-bindings.zsh
+source /usr/share/doc/fzf/examples/completion.zsh
+
+# Use fd (https://github.com/sharkdp/fd) instead of the default find
+# command for listing path candidates.
+# - The first argument to the function ($1) is the base path to start traversal
+# - See the source code (completion.{bash,zsh}) for the details.
+_fzf_compgen_path() {
+  fdfind --hidden --follow --exclude ".git" . "$1"
+}
+
+# Use fd to generate the list for directory completion
+_fzf_compgen_dir() {
+  fdfind --type d --hidden --follow --exclude ".git" . "$1"
+}
 
 # commands to run after initialization is complete
 #task awaiting