Crate intelli_shell

Source
Expand description

Like IntelliSense, but for shells!

intelli-shell demo

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 with ctrl+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 generates tracing events rather than printing to stdout.
using
Declares a mod and uses it