Minimalistic .zshrc configuration file designed to provide all the necessary settings for a comfortable terminal experience
- Multi-Line Prompt: The prompt is divided into three lines for better readability. The first line separates the previous command's output from the prompt, the second line provides detailed path information, and the third line is for input.
- Multiple Prompt Levels: Configurations for secondary and tertiary prompt levels (
PS2andPS3) are included. - SSH Status Indicator: Displays an indicator when an SSH connection is established.
- VCS (Version Control System) Integration: Supports Git, SVN, and Mercurial for showing branch and repository status directly in the prompt.
- Git Integration: Shows branch name, staged and unstaged changes, and untracked files.
- SVN and Mercurial Integration: Shows branch name and repository status.
- Completion Enhancements: Advanced completion settings, including menu completion, caching, and various completion styles and formats.
- LS_COLORS Configuration: Configures
LS_COLORSfor both BSD and GNU systems to enhance directory listings. - LESS and MAN Configuration: Customizes the behavior and appearance of
lessandmanpages.
These features make ultima.zsh-theme a powerful and versatile theme for Z shell users, enhancing both functionality and aesthetics.
Requires git
-
Clone the repository:
git clone https://github.com/egorlem/ultima.zsh-theme ~/ultima-shell -
Update your
.zshrcfile:echo 'source ~/ultima-shell/ultima.zsh-theme' >> ~/.zshrc
-
Clone the repository:
git clone https://github.com/egorlem/ultima.zsh-theme ~/ultima-shell -
Move the file to the Oh My Zsh theme folder:
mv ~/ultima-shell/ultima.zsh-theme $ZSH/themes/ultima.zsh-theme
-
Edit your
~/.zshrcfile and setZSH_THEME="ultima"
-
Update your
.zimrcfile:echo 'zmodule egorlem/ultima.zsh-theme -n ultima' >> ~/.zimrc
-
Add the following to your
~/.zshrcfile:zcomet load egorlem/ultima.zsh-theme
Make sure you have
zcomet compinitsomewhere after it.
For the best experience, use the Ghostty terminal together with the Guezwhoz color scheme.
Guezwhoz is a balanced dark color scheme designed with a focus on visual comfort and readability.
The theme meets the WCAG 2.1 AA accessibility standard and is based on the principles of analogous color harmony, providing a pleasant, cohesive color experience during long terminal sessions.
For Ghostty and Wezterm users:
Set the color scheme to guezwhoz in your terminal configuration. Guezwhoz is bundled by default with Ghostty and Wezterm—no additional installation required.
For other terminals:
You can install the Guezwhoz theme from the @mbadolato/iTerm2-Color-Schemes repository.
These recommendations ensure optimal appearance and compatibility for this project. Using other terminals or color schemes may result in a different visual experience.
Not all fonts include the U+203A Unicode character (Single Right-Pointing Angle Quotation Mark). Unless your system font supports this character, install one of the standard fonts, such as Arial, Consolas, or Impact.
For comfortable work, I recommend JetBrains Mono.
This font already includes all the characters used in the theme and is ideal for full compatibility.
We welcome contributions to improve ultima.zsh-theme! Here’s how you can help:
-
Fork the Repository: Click the "Fork" button at the top right of this repository to create a copy under your GitHub account.
-
Clone Your Fork: Clone your forked repository to your local machine:
git clone https://github.com/<your-username>/ultima.zsh-theme.git
Replace
<your-username>with your GitHub username. -
Create a Branch: Create a new branch for your changes:
git checkout -b feature/your-feature-name
Replace
your-feature-namewith a descriptive name for your feature or fix. -
Make Changes: Make your changes to the codebase. Ensure your code follows the project's coding standards and conventions.
-
Commit Changes: Commit your changes with a descriptive commit message:
git add . git commit -m "Add feature: your feature description"
-
Push Changes: Push your changes to your forked repository:
git push origin feature/your-feature-name
-
Open a Pull Request: Go to the original repository and click the "New Pull Request" button. Select your branch from the dropdown and create the pull request. Provide a clear and detailed description of your changes.
If you find any bugs or have feature requests, please open an issue on the GitHub repository. Provide as much detail as possible to help us understand and resolve the issue.
If you need any help, feel free to reach out by opening an issue or starting a discussion in the repository.
Special thanks to the ZSH community for their support and contributions. Ultima's minimalistic approach has inspired derivative works, including:
- Suprima ASRA — expands on Ultima's minimalism with practical status indicators: battery level, active Python venv, Node.js version, Docker status, and more.
Contributions, ideas, and derivative works are welcome.
This project is licensed under the Do What The F*ck You Want To Public License. See the LICENSE file for details.
Maintained by Egor Lem
