A context-aware zsh completion engine powered by fuzzy finders like fzf, enabling customizable command-line completions.
pmy is a context-aware completion engine for the zsh shell that uses fuzzy finders like fzf to provide intelligent command-line suggestions. It solves the complexity of zsh's native completion system by allowing users to define custom rules via JSON or YAML configurations, making shell interactions faster and more intuitive.
zsh users, command-line power users, and developers who want to enhance their shell productivity with customizable, fuzzy-finder-driven completions.
Developers choose pmy for its simplicity and flexibility—it replaces zsh's intricate completion system with an easy-to-configure, fuzzy-finder-based approach, enabling highly tailored command-line workflows without deep shell scripting knowledge.
:rocket: General purpose context-aware zsh completion engine powered by fuzzy finder.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Completion triggers based on regex patterns matching the command-line buffer, enabling precise, intelligent suggestions for specific contexts, as shown in the rule examples for git and path completion.
Seamlessly works with popular fuzzy finders like fzf, peco, or fzy, providing an intuitive selection interface that enhances command-line navigation, as highlighted in the dependency and configuration sections.
Uses simple JSON or YAML files for defining rules, with environment variables for customization, making it easy to tailor completions without deep shell scripting knowledge, as demonstrated in the basic usage and rule configuration.
Supports dedicated rule files for commands like git or cd, improving performance and organization by reducing search time, as explained in the command-specific rule section.
The README explicitly states that caching of compiled regular expressions and customizing rule priorities are not yet implemented, which could lead to performance issues and limited flexibility in complex setups.
Requires installation of Go and a fuzzy finder, plus writing regex-based rules, which adds overhead and might be daunting for users unfamiliar with these tools, despite the aim of simplifying zsh completion.
Designed exclusively for zsh, so it cannot be used with other shells like bash or fish, restricting its utility in mixed or non-zsh environments, as noted in the project description.