summaryrefslogtreecommitdiff
path: root/_posts/2008-06-18-keep-your-zshrc-simple.md
diff options
context:
space:
mode:
Diffstat (limited to '_posts/2008-06-18-keep-your-zshrc-simple.md')
-rw-r--r--_posts/2008-06-18-keep-your-zshrc-simple.md37
1 files changed, 37 insertions, 0 deletions
diff --git a/_posts/2008-06-18-keep-your-zshrc-simple.md b/_posts/2008-06-18-keep-your-zshrc-simple.md
new file mode 100644
index 0000000..bbfe4d2
--- /dev/null
+++ b/_posts/2008-06-18-keep-your-zshrc-simple.md
@@ -0,0 +1,37 @@
+---
+layout: post
+title: keep your zshrc simple
+summary: In which I explain how I maintain my zsh configuration
+---
+
+Keep your .zshrc simple. Mine looks like this :
+
+```sh
+autoload -U compinit zrecompile
+zsh_cache=${HOME}/.zsh_cache
+mkdir -p $zsh_cache
+compinit -d $zsh_cache/zcomp-$HOST
+for f in ~/.zshrc $zsh_cache/zcomp-$HOST; do
+ zrecompile -p $f && rm -f $f.zwc.old
+done
+setopt extended_glob
+for zshrc_snipplet in ~/.zsh.d/S[0-9][0-9]*[^~] ; do
+ source $zshrc_snipplet
+done
+function history-all { history -E 1 }
+```
+
+and then, in my **.zsh.d** directory, I've got:
+
+```
+S10_zshopts
+S20_environment
+S30_binds
+S40_completion
+S50_aliases
+S60_prompt
+S71_ssh
+S72_git
+```
+
+All my aliases are in the same file, it's much easier to search/find/add.