-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdot_zsh_plugins.txt.tmpl
More file actions
55 lines (49 loc) · 2.46 KB
/
dot_zsh_plugins.txt.tmpl
File metadata and controls
55 lines (49 loc) · 2.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# =============================================================================
# Zsh Plugin List — managed by antidote
# Source: dot_zsh_plugins.txt.tmpl (chezmoi template)
# Compiled to: ~/.zsh_plugins.zsh (static bundle, regenerated on change)
#
# LOADING STRATEGY:
# eager (default) — loaded synchronously during zshrc, adds to startup time
# kind:defer — loaded after first prompt via zsh-defer (romkatv/zsh-defer)
# safe for anything not needed before the prompt appears
# kind:fpath — only adds to fpath, never sourced (completion scripts)
#
# PERFORMANCE NOTES (zprof, Apple Silicon, 2026-03):
# __antidote_setup: ~12ms — irreducible floor for loading any plugins
# compdef calls: ~17ms — driven by kubectl/helm/ansible alias generation
# → kubectl/helm/ansible moved to kind:defer, saving ~3ms at startup
# → git/docker kept eager: their aliases are used from the first command
#
# TO PROFILE: zsh -i -c 'zmodload zsh/zprof; source ~/.zshrc; zprof'
# TO REBUILD: antidote bundle < ~/.zsh_plugins.txt > ~/.zsh_plugins.zsh
# =============================================================================
# OMZ compatibility layer (required first -- sets up $ZSH, compinit, etc.)
getantidote/use-omz
# OMZ plugins — eager (aliases used immediately at first prompt)
ohmyzsh/ohmyzsh path:plugins/git
ohmyzsh/ohmyzsh path:plugins/docker
ohmyzsh/ohmyzsh path:plugins/docker-compose
# kubectl/helm/ansible deferred: _build_kubectl_out_alias triggers ~17ms of
# compdef calls at startup. Deferring pushes this after the first prompt
# renders — no user-visible difference since these are rarely the first command.
ohmyzsh/ohmyzsh path:plugins/kubectl kind:defer
ohmyzsh/ohmyzsh path:plugins/helm kind:defer
ohmyzsh/ohmyzsh path:plugins/ansible kind:defer
{{ if eq .chezmoi.os "darwin" -}}
ohmyzsh/ohmyzsh path:plugins/iterm2
ohmyzsh/ohmyzsh path:plugins/macos
{{ else if eq .chezmoi.os "linux" -}}
ohmyzsh/ohmyzsh path:plugins/systemd
ohmyzsh/ohmyzsh path:plugins/archlinux
{{ end -}}
# Completions (fpath only, no sourcing)
# NOTE: belak/zsh-utils was removed -- it triggered a duplicate compinit call.
# use-omz already handles compinit; zsh-completions adds extra fpath entries.
zsh-users/zsh-completions path:src kind:fpath
# NVM (deferred loading for speed)
# Theme
romkatv/powerlevel10k
# UX plugins (deferred for speed -- load after prompt)
zsh-users/zsh-autosuggestions kind:defer
zdharma-continuum/fast-syntax-highlighting kind:defer