Zim Framework: The Zsh configuration framework with blazing speed and modular extensions.
4,684
stars
741
commits
Shell
primary language
Aug 17, 2026
updated
Zim Framework: The Zsh configuration framework with blazing speed and modular extensions.
Zim Framework is a Zsh configuration framework that bundles a plugin manager, useful modules and a wide variety of themes, without compromising on speed.
Check how Zim Framework compares to other frameworks and plugin managers:
Installing Zim Framework is easy. You can choose either the automatic or manual method below:
This will install a predefined set of modules and a theme for you.
With curl:
curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
With wget:
wget -nv -O - https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
Restart your terminal and you're done. Enjoy your Zsh IMproved! Take some time
to tweak your ~/.zshrc file and to also check the available
modules and themes you can add to your ~/.zimrc.
Install zimfw with brew:
brew install --formula zimfw
Add the following to your ~/.zshrc:
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source /opt/homebrew/opt/zimfw/share/zimfw.zsh init
fi
# Initialize modules.
source ${ZIM_HOME}/init.zsh
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source /usr/local/opt/zimfw/share/zimfw.zsh init
fi
# Initialize modules.
source ${ZIM_HOME}/init.zsh
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source /home/linuxbrew/.linuxbrew/opt/zimfw/share/zimfw.zsh init
fi
# Initialize modules.
source ${ZIM_HOME}/init.zsh
Restart your terminal and you're done. Enjoy your Zsh IMproved!
Install zimfw from AUR:
yay -S --noconfirm zimfw
Add the following to your ~/.zshrc:
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source /usr/share/zimfw/zimfw.zsh init
fi
# Initialize modules.
source ${ZIM_HOME}/init.zsh
Restart your terminal and you're done. Enjoy your Zsh IMproved!
Set Zsh as the default shell, if you haven't done so already:
chsh -s $(which zsh)
Restart your terminal and you're done. Enjoy your Zsh IMproved!
~/.zshrcAdd the lines below to your ~/.zshrc file, in the following order:
To set where the zimfw plugin manager configuration file will be located:
ZIM_CONFIG_FILE=~/.config/zsh/zimrc
This is optional. The value of ZIM_CONFIG_FILE can be any path your user
has at least read access to. By default, the file must be at ~/.zimrc, if
the ZDOTDIR environment variable is not defined. Otherwise, it must be at
${ZDOTDIR}/.zimrc.
To set the directory where the zimfw plugin manager will keep necessary files:
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
The value of ZIM_HOME can be any directory your user has write access to.
You can even set it to a cache directory like ${XDG_CACHE_HOME}/zim or
~/.cache/zim.
To automatically download the zimfw plugin manager if missing:
# Download zimfw plugin manager if missing.
if [[ ! -e ${ZIM_HOME}/zimfw.zsh ]]; then
curl -fsSL --create-dirs -o ${ZIM_HOME}/zimfw.zsh \
https://github.com/zimfw/zimfw/releases/latest/download/zimfw.zsh
fi
Or if you use wget instead of curl:
# Download zimfw plugin manager if missing.
if [[ ! -e ${ZIM_HOME}/zimfw.zsh ]]; then
mkdir -p ${ZIM_HOME} && wget -nv -O ${ZIM_HOME}/zimfw.zsh \
https://github.com/zimfw/zimfw/releases/latest/download/zimfw.zsh
fi
This is optional. Alternatively, the zimfw.zsh script can be installed with
a package manager or downloaded anywhere your user has write access to: just
replace the occurrences of ${ZIM_HOME}/zimfw.zsh by the preferred path,
like /usr/local/share/zimfw/zimfw.zsh for example. If you choose to not
include this step, you should install or manually download the zimfw.zsh
script once and keep it at the preferred path.
To automatically install missing modules and update the static initialization script if missing or outdated:
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source ${ZIM_HOME}/zimfw.zsh init
fi
This step is optional, but highly recommended. If you choose to not include
it, you must remember to manually run zimfw install every time you update
your ~/.zimrc file. If you have chosen to keep the zimfw.zsh script in a
different path as mentioned in the previous step, replace
${ZIM_HOME}/zimfw.zsh by the chosen path.
To source the static script, that will initialize your modules:
# Initialize modules.
source ${ZIM_HOME}/init.zsh
The zimfw plugin manager installs your modules at ${ZIM_HOME}/modules and
builds a static script at ${ZIM_HOME}/init.zsh that will initialize them. Your
modules are defined in your ~/.zimrc file.
The ~/.zimrc file must contain zmodule calls to define the modules to be
initialized. The modules will be initialized in the same order they're defined.
The ~/.zimrc file is not sourced during Zsh startup and it's only used to
configure the zimfw plugin manager.
Below are some usage examples:
zmodule archivezmodule StackExchange/blackboxzmodule https://gitlab.com/Spriithy/basher.gitzmodule /usr/local/share/zsh-autosuggestionszmodule zsh-users/zsh-completions --fpath srczmodule spaceship-prompt/spaceship-prompt --source spaceship.zsh --no-submodules or
zmodule spaceship-prompt/spaceship-prompt --name spaceship --no-submoduleszmodule sindresorhus/pure --source async.zsh --source pure.zsh. Separate
zmodule calls can also be used. In this equivalent example, the second call
automatically discovers the second file to be sourced:
zmodule sindresorhus/pure --source async.zsh
zmodule sindresorhus/pure
zmodule skywind3000/z.lua --cmd 'eval "$(lua {}/z.lua --init zsh enhanced once)"'zmodule skywind3000/z.lua --on-pull 'lua z.lua --init zsh enhanced once >! init.zsh'zmodule romkatv/powerlevel10k --use degitzmodule ohmyzsh/ohmyzsh --root plugins/vim-interactionzmodule sorin-ionescu/prezto --root modules/command-not-found
zmodule sorin-ionescu/prezto --root modules/gnu-utility
or
zmodule ohmyzsh/ohmyzsh --root plugins/perl
zmodule ohmyzsh/ohmyzsh --root plugins/vim-interaction
zmodule usage?Usage: zmodule <url> [-n|--name <module_name>] [-r|--root <path>] [options]
Add zmodule calls to your ~/.zimrc file to define the modules to be initialized. The initiali-
zation will be done in the same order it's defined.
<url> Module absolute path or repository URL. The following are equiva-
lent: 'foo', 'zimfw/foo', 'https://github.com/zimfw/foo.git'.
If an absolute path is given, the module is considered externally
installed and won't be installed or updated by zimfw.
-n, --name <module_name> Set a custom module name. Default: the last component in <url>.
Slashes can be used inside <module_name> to organize the module
into subdirectories. The module will be installed at
${ZIM_HOME}/<module_name>.
-r, --root <path> Relative path to the module root.
Per-module options:
-b, --branch <branch_name>
Use specified branch when installing and updating the module.
Overrides the tag option. Default: the repository default branch.
-t, --tag <tag_name> Use specified tag when installing and updating the module. Over-
rides the branch option.
-u, --use <tool_name> Install and update the module using the defined tool. Default is
either defined using zstyle ':zim:zmodule' use '<tool_name>' or
set to 'auto'. The tools available are:
'auto' tries to auto detect the tool to be used. When installing
a new module, 'git' will be used if the git command is available,
otherwise 'degit' will be used.
'git' uses the git command. Local changes are preserved on up-
dates.
'degit' uses curl or wget, and currently only works with GitHub
URLs. Modules install faster and take less disk space. Local
changes are lost on updates. Git submodules are not supported.
'mkdir' creates an empty directory. The <url> is only used to set
the module name. Use the -c, --cmd option or --on-pull option to
execute the desired command to generate the module files.
--no-submodules Don't install or update git submodules.
-z, --frozen Don't install or update the module.
The per-module options above are carried over multiple zmodule calls for the same module.
Modules are uniquely identified by their name.
Per-module-root options:
--if <test> Will only initialize module root if specified test returns a zero
exit status. The test is evaluated at every new terminal startup.
--if-command <command_name>
Will only initialize module root if specified external command is
available. This is evaluated at every new terminal startup.
Equivalent to --if '(( \${+commands[<command_name>]} ))'.
--if-ostype <ostype> Will only initialize module root if OSTYPE is equal to the given
expression. This is evaluated at every new terminal startup.
Equivalent to --if '[[ \${OSTYPE} == <ostype> ]]'.
--on-pull <command> Execute command after installing or updating the module. The com-
mand is executed in the module root directory.
-d, --disabled Don't initialize the module root or uninstall the module.
The per-module-root options above are carried over multiple zmodule calls for the same mod-
ule root.
Per-call initialization options:
-f, --fpath <path> Will add specified path to fpath. The path is relative to the
module root directory. Default: 'functions', if the subdirectory
exists and is non-empty.
-a, --autoload <function_name>
Will autoload specified function. Default: all valid names inside
the functions subdirectory, if any.
-s, --source <file_path> Will source specified file. The path is relative to the module
root directory. Default: 'init.zsh', if a non-empty functions
subdirectory exists, else the largest of the files matching the
glob (init.zsh|<name>.(zsh|plugin.zsh|zsh-theme|sh)), if any. The
<name> in the glob is resolved to the last component of the mod-
ule name and the last component of the path to the module root.
-c, --cmd <command> Will execute specified command. Occurrences of the {} placeholder
in the command are substituted by the module root directory path.
I.e., -s 'foo.zsh' and -c 'source {}/foo.zsh' are equivalent.
Setting any per-call initialization option above will disable the default values from the
other per-call initialization options, so only your provided values will be used. I.e. these
values are either all automatic or all manual in each zmodule call. To use default values
and also provided values, use separate zmodule calls.
The Zim Framework plugin manager:
~/.zimrc? Run zimfw install.~/.zimrc? Run zimfw uninstall.zimfw update.zimfw upgrade.zimfw --help.Set the path of the directory used by zimfw with the ZIM_HOME environment
variable:
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
By default, the zimfw plugin manager configuration file must be at ~/.zimrc,
if the ZDOTDIR environment variable is not defined. Otherwise, it must be at
${ZDOTDIR}/.zimrc. You can customize its full path and name with the
ZIM_CONFIG_FILE environment variable:
ZIM_CONFIG_FILE=~/.config/zsh/zimrc
The zimfw plugin manager will detect if git is installed and fall back to work
without git with its degit tool. If you want to take advantage of its degit
tool regardless for faster and lighter module installations, you can set degit
as the default tool with:
zstyle ':zim:zmodule' use 'degit'
By default, zimfw will check if it has a new version available every 30 days. If
the zimfw.zsh file cannot be upgraded, because your user does not have write
access to it, then this will be disabled. This can be manually disabled with:
zstyle ':zim' disable-version-check yes
By default, zimfw will disable color output when executed through a pipe or as a
non-TTY ssh command. To force disabling color output, prefix the zimfw call with
NO_COLOR=1, like:
NO_COLOR=1 zimfw install
or add the following to your .zshrc, which should also disable color output
for other tools. See https://no-color.org/
export NO_COLOR=1
The best way to remove Zim Framework is to manually delete ~/.zim, ~/.zimrc, and
remove the initialization lines from your ~/.zshenv, ~/.zshrc and ~/.zlogin.
Shell
65.7%
HTML
34.1%
Zim Framework: The Zsh configuration framework with blazing speed and modular extensions.
4,684
stars
741
commits
Shell
primary language
Aug 17, 2026
updated
Zim Framework: The Zsh configuration framework with blazing speed and modular extensions.
Zim Framework is a Zsh configuration framework that bundles a plugin manager, useful modules and a wide variety of themes, without compromising on speed.
Check how Zim Framework compares to other frameworks and plugin managers:
Installing Zim Framework is easy. You can choose either the automatic or manual method below:
This will install a predefined set of modules and a theme for you.
With curl:
curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
With wget:
wget -nv -O - https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
Restart your terminal and you're done. Enjoy your Zsh IMproved! Take some time
to tweak your ~/.zshrc file and to also check the available
modules and themes you can add to your ~/.zimrc.
Install zimfw with brew:
brew install --formula zimfw
Add the following to your ~/.zshrc:
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source /opt/homebrew/opt/zimfw/share/zimfw.zsh init
fi
# Initialize modules.
source ${ZIM_HOME}/init.zsh
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source /usr/local/opt/zimfw/share/zimfw.zsh init
fi
# Initialize modules.
source ${ZIM_HOME}/init.zsh
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source /home/linuxbrew/.linuxbrew/opt/zimfw/share/zimfw.zsh init
fi
# Initialize modules.
source ${ZIM_HOME}/init.zsh
Restart your terminal and you're done. Enjoy your Zsh IMproved!
Install zimfw from AUR:
yay -S --noconfirm zimfw
Add the following to your ~/.zshrc:
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source /usr/share/zimfw/zimfw.zsh init
fi
# Initialize modules.
source ${ZIM_HOME}/init.zsh
Restart your terminal and you're done. Enjoy your Zsh IMproved!
Set Zsh as the default shell, if you haven't done so already:
chsh -s $(which zsh)
Restart your terminal and you're done. Enjoy your Zsh IMproved!
~/.zshrcAdd the lines below to your ~/.zshrc file, in the following order:
To set where the zimfw plugin manager configuration file will be located:
ZIM_CONFIG_FILE=~/.config/zsh/zimrc
This is optional. The value of ZIM_CONFIG_FILE can be any path your user
has at least read access to. By default, the file must be at ~/.zimrc, if
the ZDOTDIR environment variable is not defined. Otherwise, it must be at
${ZDOTDIR}/.zimrc.
To set the directory where the zimfw plugin manager will keep necessary files:
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
The value of ZIM_HOME can be any directory your user has write access to.
You can even set it to a cache directory like ${XDG_CACHE_HOME}/zim or
~/.cache/zim.
To automatically download the zimfw plugin manager if missing:
# Download zimfw plugin manager if missing.
if [[ ! -e ${ZIM_HOME}/zimfw.zsh ]]; then
curl -fsSL --create-dirs -o ${ZIM_HOME}/zimfw.zsh \
https://github.com/zimfw/zimfw/releases/latest/download/zimfw.zsh
fi
Or if you use wget instead of curl:
# Download zimfw plugin manager if missing.
if [[ ! -e ${ZIM_HOME}/zimfw.zsh ]]; then
mkdir -p ${ZIM_HOME} && wget -nv -O ${ZIM_HOME}/zimfw.zsh \
https://github.com/zimfw/zimfw/releases/latest/download/zimfw.zsh
fi
This is optional. Alternatively, the zimfw.zsh script can be installed with
a package manager or downloaded anywhere your user has write access to: just
replace the occurrences of ${ZIM_HOME}/zimfw.zsh by the preferred path,
like /usr/local/share/zimfw/zimfw.zsh for example. If you choose to not
include this step, you should install or manually download the zimfw.zsh
script once and keep it at the preferred path.
To automatically install missing modules and update the static initialization script if missing or outdated:
# Install missing modules and update ${ZIM_HOME}/init.zsh if missing or outdated.
if [[ ! ${ZIM_HOME}/init.zsh -nt ${ZIM_CONFIG_FILE:-${ZDOTDIR:-${HOME}}/.zimrc} ]]; then
source ${ZIM_HOME}/zimfw.zsh init
fi
This step is optional, but highly recommended. If you choose to not include
it, you must remember to manually run zimfw install every time you update
your ~/.zimrc file. If you have chosen to keep the zimfw.zsh script in a
different path as mentioned in the previous step, replace
${ZIM_HOME}/zimfw.zsh by the chosen path.
To source the static script, that will initialize your modules:
# Initialize modules.
source ${ZIM_HOME}/init.zsh
The zimfw plugin manager installs your modules at ${ZIM_HOME}/modules and
builds a static script at ${ZIM_HOME}/init.zsh that will initialize them. Your
modules are defined in your ~/.zimrc file.
The ~/.zimrc file must contain zmodule calls to define the modules to be
initialized. The modules will be initialized in the same order they're defined.
The ~/.zimrc file is not sourced during Zsh startup and it's only used to
configure the zimfw plugin manager.
Below are some usage examples:
zmodule archivezmodule StackExchange/blackboxzmodule https://gitlab.com/Spriithy/basher.gitzmodule /usr/local/share/zsh-autosuggestionszmodule zsh-users/zsh-completions --fpath srczmodule spaceship-prompt/spaceship-prompt --source spaceship.zsh --no-submodules or
zmodule spaceship-prompt/spaceship-prompt --name spaceship --no-submoduleszmodule sindresorhus/pure --source async.zsh --source pure.zsh. Separate
zmodule calls can also be used. In this equivalent example, the second call
automatically discovers the second file to be sourced:
zmodule sindresorhus/pure --source async.zsh
zmodule sindresorhus/pure
zmodule skywind3000/z.lua --cmd 'eval "$(lua {}/z.lua --init zsh enhanced once)"'zmodule skywind3000/z.lua --on-pull 'lua z.lua --init zsh enhanced once >! init.zsh'zmodule romkatv/powerlevel10k --use degitzmodule ohmyzsh/ohmyzsh --root plugins/vim-interactionzmodule sorin-ionescu/prezto --root modules/command-not-found
zmodule sorin-ionescu/prezto --root modules/gnu-utility
or
zmodule ohmyzsh/ohmyzsh --root plugins/perl
zmodule ohmyzsh/ohmyzsh --root plugins/vim-interaction
zmodule usage?Usage: zmodule <url> [-n|--name <module_name>] [-r|--root <path>] [options]
Add zmodule calls to your ~/.zimrc file to define the modules to be initialized. The initiali-
zation will be done in the same order it's defined.
<url> Module absolute path or repository URL. The following are equiva-
lent: 'foo', 'zimfw/foo', 'https://github.com/zimfw/foo.git'.
If an absolute path is given, the module is considered externally
installed and won't be installed or updated by zimfw.
-n, --name <module_name> Set a custom module name. Default: the last component in <url>.
Slashes can be used inside <module_name> to organize the module
into subdirectories. The module will be installed at
${ZIM_HOME}/<module_name>.
-r, --root <path> Relative path to the module root.
Per-module options:
-b, --branch <branch_name>
Use specified branch when installing and updating the module.
Overrides the tag option. Default: the repository default branch.
-t, --tag <tag_name> Use specified tag when installing and updating the module. Over-
rides the branch option.
-u, --use <tool_name> Install and update the module using the defined tool. Default is
either defined using zstyle ':zim:zmodule' use '<tool_name>' or
set to 'auto'. The tools available are:
'auto' tries to auto detect the tool to be used. When installing
a new module, 'git' will be used if the git command is available,
otherwise 'degit' will be used.
'git' uses the git command. Local changes are preserved on up-
dates.
'degit' uses curl or wget, and currently only works with GitHub
URLs. Modules install faster and take less disk space. Local
changes are lost on updates. Git submodules are not supported.
'mkdir' creates an empty directory. The <url> is only used to set
the module name. Use the -c, --cmd option or --on-pull option to
execute the desired command to generate the module files.
--no-submodules Don't install or update git submodules.
-z, --frozen Don't install or update the module.
The per-module options above are carried over multiple zmodule calls for the same module.
Modules are uniquely identified by their name.
Per-module-root options:
--if <test> Will only initialize module root if specified test returns a zero
exit status. The test is evaluated at every new terminal startup.
--if-command <command_name>
Will only initialize module root if specified external command is
available. This is evaluated at every new terminal startup.
Equivalent to --if '(( \${+commands[<command_name>]} ))'.
--if-ostype <ostype> Will only initialize module root if OSTYPE is equal to the given
expression. This is evaluated at every new terminal startup.
Equivalent to --if '[[ \${OSTYPE} == <ostype> ]]'.
--on-pull <command> Execute command after installing or updating the module. The com-
mand is executed in the module root directory.
-d, --disabled Don't initialize the module root or uninstall the module.
The per-module-root options above are carried over multiple zmodule calls for the same mod-
ule root.
Per-call initialization options:
-f, --fpath <path> Will add specified path to fpath. The path is relative to the
module root directory. Default: 'functions', if the subdirectory
exists and is non-empty.
-a, --autoload <function_name>
Will autoload specified function. Default: all valid names inside
the functions subdirectory, if any.
-s, --source <file_path> Will source specified file. The path is relative to the module
root directory. Default: 'init.zsh', if a non-empty functions
subdirectory exists, else the largest of the files matching the
glob (init.zsh|<name>.(zsh|plugin.zsh|zsh-theme|sh)), if any. The
<name> in the glob is resolved to the last component of the mod-
ule name and the last component of the path to the module root.
-c, --cmd <command> Will execute specified command. Occurrences of the {} placeholder
in the command are substituted by the module root directory path.
I.e., -s 'foo.zsh' and -c 'source {}/foo.zsh' are equivalent.
Setting any per-call initialization option above will disable the default values from the
other per-call initialization options, so only your provided values will be used. I.e. these
values are either all automatic or all manual in each zmodule call. To use default values
and also provided values, use separate zmodule calls.
The Zim Framework plugin manager:
~/.zimrc? Run zimfw install.~/.zimrc? Run zimfw uninstall.zimfw update.zimfw upgrade.zimfw --help.Set the path of the directory used by zimfw with the ZIM_HOME environment
variable:
ZIM_HOME=${ZDOTDIR:-${HOME}}/.zim
By default, the zimfw plugin manager configuration file must be at ~/.zimrc,
if the ZDOTDIR environment variable is not defined. Otherwise, it must be at
${ZDOTDIR}/.zimrc. You can customize its full path and name with the
ZIM_CONFIG_FILE environment variable:
ZIM_CONFIG_FILE=~/.config/zsh/zimrc
The zimfw plugin manager will detect if git is installed and fall back to work
without git with its degit tool. If you want to take advantage of its degit
tool regardless for faster and lighter module installations, you can set degit
as the default tool with:
zstyle ':zim:zmodule' use 'degit'
By default, zimfw will check if it has a new version available every 30 days. If
the zimfw.zsh file cannot be upgraded, because your user does not have write
access to it, then this will be disabled. This can be manually disabled with:
zstyle ':zim' disable-version-check yes
By default, zimfw will disable color output when executed through a pipe or as a
non-TTY ssh command. To force disabling color output, prefix the zimfw call with
NO_COLOR=1, like:
NO_COLOR=1 zimfw install
or add the following to your .zshrc, which should also disable color output
for other tools. See https://no-color.org/
export NO_COLOR=1
The best way to remove Zim Framework is to manually delete ~/.zim, ~/.zimrc, and
remove the initialization lines from your ~/.zshenv, ~/.zshrc and ~/.zlogin.
Shell
65.7%
HTML
34.1%