Project Overview: Pure
Pure is a visually appealing, minimalistic, and fast prompt designed for the Fish shell, originally ported from the popular Zsh implementation by Sindre Sorhus. Pure aims to provide users with a streamlined and customizable command-line interface that enhances productivity while maintaining a clean aesthetic.
Key Features
Pure is notable for its extensive features and customizable options, which allow users to tailor their command-line experience to their preferences. Here's an overview of what Pure offers:
-
Customizable Appearance: Users can modify colors, symbols, and features easily. The default prompt symbol
❯
can be changed to red if the previous command fails, allowing users to quickly identify errors. -
Directory and SSH Session Indicators:
- The prompt can begin with the current working directory, helping users stay oriented in their file systems.
- It also displays the username and hostname when in an SSH session, ensuring users know they're working remotely.
-
Display Command Details:
- Command execution time is displayed if it exceeds five seconds, aiding in performance monitoring.
- Active Python virtual environments or AWS profiles are highlighted when enabled.
-
Version Control Assistance:
- Git branch names appear in the prompt, with additional symbols indicating repository status (dirty, stashed, ahead, or behind commits).
-
Integration with Container and Cloud Environments:
- Users can see Kubernetes context, namespace, and container status if applicable, making it easier to manage cloud-native and containerized applications.
-
Administrative and System Features:
- Running jobs, system time, and whether the user is operating as root can all be shown in the prompt.
-
Async Updates and Terminal Title: The prompt supports asynchronous updates and can modify the terminal title to reflect the current folder and command.
Installation and Requirements
To use Pure, certain prerequisites must be met. Users need Fish shell version 3.x or later and the Fisher plugin manager. Installation is straightforward, using the command:
fisher install pure-fish/pure
Configuration and Customization
Pure offers flexibility in configuration to accommodate different user preferences. Detailed documentation is available to guide users through setting up and customizing the prompt to match their individual needs.
Contribution and Community
The Pure project welcomes contributions from the community. Developers and enthusiasts are encouraged to submit their ideas and improvements via pull requests. For those interested in contributing, a detailed guide outlining conventions and requirements is available.
People Behind Pure
- Édouard Lopez serves as the product lead.
- Contributions to the project include efforts from notable collaborators such as [@andreiborisov] for Docker images, [@jorgebucaran] for Fishtape, and [@rafaelrinaldi], the original creator who published the initial releases.
License and Ports
Pure is open-source, available under the MIT License. It has been implemented in several programming languages beyond Fish, including Python, Go, Rust, PowerShell, and Bash, ensuring its accessibility across different platforms and environments.
For more information and detailed documentation on Pure, users can visit the official documentation site.