User Package Troubleshooting
Help query: "Why isn't my plugin loading?" / "user.dll build failed" / "command missing from palette"
Plugin does not appear
- Confirm
pub mod …exists inuser/lib.rs - Confirm
…::package()is listed inpackages() - Rebuild:
cargo build -p volt-user - Check
cargo run -p volt -- --bootstrap-demolists the package name - Confirm Volt is loading the library you just built (
VOLT_USER_LIBRARY, release vs debug, staged hot path)
See After scaffold.
Build failures
bash
cargo build -p volt-user
cargo xtask clippyRemember workspace policy:
- no
unsafe - no
todo!,dbg!, orunwrap()
Command missing from palette
- Rebuild not applied / wrong DLL loaded
- Typo in
PluginCommandname - Package
auto_loadisfalseand never loaded
Keybinding does nothing
- Wrong
PluginKeymapScopefor the focused UI - Vim mode filter excludes the current mode
- Chord conflicts with a higher-priority binding
- Oil/terminal chords may live in YAML instead of Rust — check Configuration
Evaluate / buffer plugin broken
- Handler id mismatch between
with_evaluate_handlerandrun_plugin_buffer_evaluator - Missing match arm in
UserLibraryImpl - Using outdated
PluginBufferSectionsconstructor — prefer thevec![PluginBufferSection::new(...)]form fromuser/calculator.rs
Hot reload / Windows DLL issues
Use workspace.compile staging under volt-user-hot/ instead of overwriting a mapped user.dll. See Hot reload.
Config not applying
- YAML syntax error keeps previous settings
- Edited the wrong file / wrong install tree
- Expected a Rust metadata change but only edited YAML
Still stuck?
Collect Volt commit, redacted YAML, cargo build -p volt-user output, and --bootstrap-demo text, then open an issue on samwdp/volt.