Rust Extension Pack for Vscode
Essential Rust development environment for VSCode - comprehensive tooling for modern systems programming
📦 What's Included
This extension pack includes 5 carefully selected extensions to enhance your rust development experience in vscode.
✅ Core Extensions (2)
These extensions are essential for rust development:
- rust-analyzer - Official Rust language server with IntelliSense, code completion, and refactoring
- CodeLLDB - Native debugger based on LLDB for debugging Rust applications
💡 Additional Extensions (3)
These extensions provide extra functionality and convenience:
- crates - Cargo.toml dependency management with version checking and updates
- Even Better TOML - TOML language support with syntax highlighting and validation
- Error Lens - Inline error and warning messages for better visibility
🚀 Installation
Method 1: Install from Marketplace
- Open Vscode
- Go to Extensions view (
Ctrl+Shift+X / Cmd+Shift+X)
- Search for "Rust Extension Pack for Vscode"
- Click "Install"
Method 2: Install via Command Line
code --install-extension @templ-project/rust-extension-pack
Method 3: Install from VSIX
- Download the latest
.vsix file from Releases
- Open Vscode
- Run
Extensions: Install from VSIX... command
- Select the downloaded file
⚙️ Configuration
After installation, you may want to configure some settings for optimal rust development:
rust-analyzer.check.command
{
"rust-analyzer.check.command": "clippy"
}
Use clippy for better linting (install with: rustup component add clippy)
rust-analyzer.cargo.features
{
"rust-analyzer.cargo.features": "all"
}
Enable all Cargo features for completions and analysis
rust-analyzer.inlayHints.parameterHints.enable
{
"rust-analyzer.inlayHints.parameterHints.enable": true
}
Show parameter hints inline for better code understanding
rust-analyzer.inlayHints.typeHints.enable
{
"rust-analyzer.inlayHints.typeHints.enable": true
}
Show type hints inline for variables and expressions
rust-analyzer.inlayHints.chainingHints.enable
{
"rust-analyzer.inlayHints.chainingHints.enable": true
}
Show type hints for chained method calls
rust-analyzer.lens.enable
{
"rust-analyzer.lens.enable": true
}
Enable code lenses for run/debug/test actions
rust-analyzer.lens.references.adt.enable
{
"rust-analyzer.lens.references.adt.enable": true
}
Show references for structs, enums, and unions
rust-analyzer.lens.references.enumVariant.enable
{
"rust-analyzer.lens.references.enumVariant.enable": true
}
Show references for enum variants
rust-analyzer.lens.references.method.enable
{
"rust-analyzer.lens.references.method.enable": true
}
Show references for methods
rust-analyzer.lens.references.trait.enable
{
"rust-analyzer.lens.references.trait.enable": true
}
Show references for traits
rust-analyzer.assist.importGranularity
{
"rust-analyzer.assist.importGranularity": "module"
}
How to organize imports (module, item, crate, preserve)
rust-analyzer.completion.autoimport.enable
{
"rust-analyzer.completion.autoimport.enable": true
}
Enable auto-import suggestions in completions
rust-analyzer.completion.autoself.enable
{
"rust-analyzer.completion.autoself.enable": true
}
Automatically add self when completing methods
rust-analyzer.diagnostics.enable
{
"rust-analyzer.diagnostics.enable": true
}
Enable error and warning diagnostics
rust-analyzer.hover.actions.enable
{
"rust-analyzer.hover.actions.enable": true
}
Show actions in hover documentation
rust-analyzer.hover.documentation.enable
{
"rust-analyzer.hover.documentation.enable": true
}
Show documentation on hover
[rust]
{
"[rust]": {"editor.defaultFormatter":"rust-lang.rust-analyzer","editor.formatOnSave":true,"editor.rulers":[100],"editor.tabSize":4,"editor.insertSpaces":true,"editor.semanticHighlighting.enabled":true}
}
Rust-specific editor configuration
[toml]
{
"[toml]": {"editor.defaultFormatter":"tamasfe.even-better-toml","editor.formatOnSave":true,"editor.tabSize":2,"editor.insertSpaces":true}
}
TOML-specific editor settings for Cargo.toml and config files
errorLens.enabledDiagnosticLevels
{
"errorLens.enabledDiagnosticLevels": ["error","warning","info"]
}
Which diagnostic levels to display inline
errorLens.followCursor
{
"errorLens.followCursor": "activeLine"
}
Show inline errors only on the active line
crates.listPreReleases
{
"crates.listPreReleases": false
}
Show pre-release versions in Cargo.toml
crates.compatibleDecorator
{
"crates.compatibleDecorator": "✓"
}
Decorator for compatible crate versions
crates.incompatibleDecorator
{
"crates.incompatibleDecorator": "⚠"
}
Decorator for incompatible crate versions
files.watcherExclude
{
"files.watcherExclude": {"**/target/**":true}
}
Exclude Rust build directory from file watching
files.exclude
{
"files.exclude": {"**/.git":true,"**/target":false}
}
Files to exclude from the explorer (show target directory)
⌨️ Recommended Keybindings
- Run Rust project with cargo run:
ctrl+shift+b
- Open Cargo.toml file:
ctrl+shift+t
- Open Rust documentation:
ctrl+shift+d
- Start debugging Rust application:
f5
📝 Extension Details
| Extension |
Publisher |
Description |
| rust-analyzer |
rust-lang |
Official Rust language server with IntelliSense, code completion, and refactoring |
| CodeLLDB |
vadimcn |
Native debugger based on LLDB for debugging Rust applications |
| crates |
serayuzgur |
Cargo.toml dependency management with version checking and updates |
| Even Better TOML |
tamasfe |
TOML language support with syntax highlighting and validation |
| Error Lens |
Alexander |
Inline error and warning messages for better visibility |
🏷️ Categories
rust cargo development systems-programming debugging toml
📄 License
Extension Pack License
This extension pack is licensed under the MIT License - see LICENSE.md for details.
Third-Party Extension Licenses
Important: Each extension included in this pack has its own license terms. templ-project is not responsible for the licensing, functionality, or security of third-party extensions.
| Extension |
Publisher |
License |
Description |
| rust-analyzer |
rust-lang |
MIT OR Apache-2.0 |
Official Rust language server with IntelliSense, code completion, and refactoring |
| CodeLLDB |
vadimcn |
MIT |
Native debugger based on LLDB for debugging Rust applications |
| crates |
serayuzgur |
MIT |
Cargo.toml dependency management with version checking and updates |
| Even Better TOML |
tamasfe |
MIT |
TOML language support with syntax highlighting and validation |
| Error Lens |
Alexander |
MIT |
Inline error and warning messages for better visibility |
Disclaimer
- We do not guarantee the functionality, security, or compatibility of included extensions
- We are not responsible for any issues caused by third-party extensions
- Users install and use extensions at their own risk
- Please review each extension's license and privacy policy before use
🤝 Contributing
Found an issue or want to suggest an extension? Please open an issue or submit a pull request.
📊 Extension Pack Stats
- Total Extensions: 5
- Required Extensions: 2
- Optional Extensions: 3
- Target IDE: vscode
- Language Focus: rust
This extension pack is maintained by templ-project and updated regularly to include the most useful rust development extensions.