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
56
57
58
59
60
# Example ~/.zsh/plugins.toml file
# --------------------------------
# Global matches, if a plugin doesn't provide a `use` field then the first one
# of the following that matches more than zero files will be used.
= [
"{{ name }}.zsh",
"*.zsh",
"*.sh",
]
# Global templates to apply by default, if a plugin doesn't provide an `apply`
# field then these will be used.
= ["PATH", "source"]
# Custom user defined templates, the `each` field means that these will be
# applied for all matched files.
[]
= { = 'ln -sf "{{ file }}" "{{ root }}/functions/{{ name }}"', = true }
= { = 'ln -sf "{{ file }}" "{{ root }}/functions/prompt_{{ name }}_setup"', = true }
[]
# `github` sources provide the repository in the form {username}/{repository}.
= "mafredri/zsh-async"
# `github', `git`, or `gist` sources may provide a `branch`, `tag`, or `rev`.
= "v1.7.1"
# All plugins can specify the template names that will be applied.
= ["function"]
[]
# `git` sources must provide the Git URL.
= "https://github.com/sindresorhus/pure"
# All plugins can specify the template names that will be applied.
= ["prompt"]
# All plugins can specify which files templates should be applied to.
= ["{{ name }}.zsh"]
[]
# `local` sources must provide the path to the source directory.
= "~/.dotfiles/plugins/pyenv"
[]
# `inline` plugins should provide the raw source.
= """
# Get ip netns information
ip_netns_prompt_info() {
if (( $+commands[ip] )); then
local ref="$(ip netns identify $$)"
if [[ ! -z "$ref" ]]; then
echo "${ZSH_THEME_IP_NETNS_PREFIX:=(}${ref}${ZSH_THEME_IP_NETNS_SUFFIX:=)}"
fi
fi
}
"""
[]
# `gist` sources must be provide the Gist identifier.
= "79ee61f7c140c63d2786"
# All plugins can specify the template names that will be applied.
= ["PATH"]