A pure Swift implementation of Linenoise, providing a minimal, zero-config readline replacement for command-line applications.
Linenoise-Swift is a pure Swift library that implements the Linenoise functionality, serving as a minimal and dependency-free replacement for readline in command-line applications. It solves the problem of adding advanced line-editing, history, and completion features to terminal-based Swift tools without relying on external C libraries or complex configurations.
Swift developers building command-line tools, REPLs, or interactive terminal applications that require robust user input handling.
Developers choose Linenoise-Swift for its pure Swift implementation, which eliminates external dependencies and simplifies integration via Swift Package Manager, while providing a modern, Swifty API that mirrors the capabilities of the original Linenoise library.
A pure Swift replacement for readline
Built entirely in Swift with no external dependencies, ensuring seamless integration via Swift Package Manager, as emphasized in the README.
Provides a simple, zero-configuration API that mirrors Swift conventions, making it easy to replace standard readline, as shown in the quick start example.
Supports essential features like emacs keybindings, history handling, tab-completion, and hints, all detailed in the API section with examples.
Allows setting history limits, file persistence, and edit preservation, offering flexible history control as explained in the History section.
Only includes emacs-style keybindings; developers needing vi-mode or custom schemes must look elsewhere, which can be restrictive for diverse user preferences.
Explicitly supports only macOS and Linux, excluding Windows and other platforms, which hinders cross-platform Swift projects.
As a port of the minimalist Linenoise library, it lacks advanced readline capabilities like multi-line editing or extensive customization found in GNU readline.
Straightforward, type-safe argument parsing for Swift
Compose beautiful command line interfaces in Swift
A Swift framework for shell scripting.
A powerful framework for developing CLIs in Swift
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.