Expand description
Like IntelliSense, but for shells!
IntelliShell is a command-line tool that acts as a smart bookmark manager. It helps you find, organize, and reuse complex shell commands without ever leaving your terminal.
§Features
- Standalone & Dependency-Free: Distributed as a single binary with no external runtimes or dependencies
- Seamless Shell Integration: Search commands with
ctrl+space
or bookmark them withctrl+b
- Flexible Interface: Choose between a non-intrusive (inline) or an immersive (full-screen) TUI
- Dynamic Variables: Create command templates with
{{variables}}
and replace them on the fly - Highly Configurable: Tailor search modes, keybindings, themes, and even search-ranking algorithms
- Workspace-Aware Commands: Automatically discovers and loads commands from your workspace’s directory
- Import/Export: Share your command library by importing or exporting to files, HTTP endpoints, or even Gists
- TLDR Integration: Fetch and import command examples from tldr pages
To get started, check out the repository or read the IntelliShell Book for comprehensive guides and examples.
Modules§
- app
- Contains the main application logic and orchestration.
- cli
- Defines and parses the command-line interface (CLI) for the application.
- component
- Provides the building blocks and interface for interactive Terminal User Interface (TUI) elements.
- config
- Configuration management for the application.
- errors
- Centralized error and panic handling for the application.
- logging
- Tracing and logs management for the application.
- model
- Defines the core data structures and models for the application’s business domain.
- process
- Defines and implements the distinct operational processes or commands the application can run.
- service
- Encapsulates the core business logic and operations of the application.
- storage
- Provides the data access layer for the application, abstracting the underlying storage implementation.
- tui
- Provides a Terminal User Interface (TUI) management system.
- utils
- Provides various utility functions and extension traits for common tasks.
- widgets
- Contains custom implementations of
ratatui
widgets used by components.
Macros§
- format_
error - Macro to format an error message with theme’s error style.
- format_
msg - Macro to format an information message with theme’s style.
- trace_
dbg - Similar to the
std::dbg!
macro, but generatestracing
events rather than printing to stdout. - using
- Declares a
mod
and uses it