zfull - Full Bundle Builder¶
Builds a complete bundle containing the ZSHAND framework plus user configuration files into a single optimized .zwc file for maximum startup performance.
Overview¶
zfull concatenates all framework directories and user config into one source file, then compiles it to bytecode. The resulting bundle is placed in $ZSHAND_CACHE_DIR/zshand-full.zwc and loaded as a single file at startup when ZSHAND_AUTO_FULL=1 or ZSHAND_USE_MONOLITHIC=1 is set.
When to use: After changing any framework or user config files, when you want the fastest possible startup (~42ms).
Usage¶
Options¶
-q,--quiet: Reduce output verbosity-h,--help: Show help message
Examples¶
# Build full bundle with progress output
zfull
# Build silently (for scripts or automation)
zfull --quiet
# Enable at startup by adding to env.zsh
export ZSHAND_USE_MONOLITHIC=1
exec zsh
What It Does¶
- Builds per-directory bundles if they don't already exist
- Concatenates framework and user directories in zshrc load order
- Compiles the combined source to
.zwcbytecode - Reports bundle contents and activation instructions
Bundle Contents¶
The full bundle includes (in load order):
- Framework: shared_functions, startup, core, functions, widgets, hooks
- User env: env.zsh, secrets.zsh, config.toml settings
- User dirs: init.d, rc.d, functions, widgets, hooks, aliases, post.d
- Path injection from path.txt (resolved at compile time)
User files with the same basename as framework files replace the framework version.
Output Files¶
$ZSHAND_CACHE_DIR/zshand-full.zsh— concatenated source$ZSHAND_CACHE_DIR/zshand-full.zwc— compiled bytecode
Dependencies¶
- Required:
ZSHANDframework,build/compile_full_bundle.zsh,zcompile - Required:
ZSHAND_CONFIG_DIR(user configuration directory)
See Also¶
- zmono — Framework-only monolithic bundle (no user config)
- zfresh — Clean rebuild with shell restart
- zr — Standard incremental rebuild
- Auto-Full Mode — Automatic bundle management