Oh My Zsh Wiki

repository·main·Indexed 42 days ago

https://github.com/ohmyzsh/wiki

Documentation for Oh My Zsh, featuring the `omz` CLI for installation management, built-in utility commands like `mkcd` and `take`, and guides for customization. Includes instructions for adding custom plugins and themes, overriding internal libraries, and contribution strategies for simple PRs or maintained forks.

Tokens
19.9K
Snippets
64
Records
164
Agent score
53%

What's inside Oh My Zsh

  1. Overview of external Oh My Zsh themes

    main

    This document lists several community-created themes for Oh My Zsh that provide specialized visual styles and features:

    • Keep It Simple: A variation of the jispwoso theme.
    • Hogwarts: A two-line prompt using Hogwarts house colors, featuring Git integration, Tmux indicators, and a real-time clock.
    • LCARS: A Star Trek: TNG inspired theme with OS-specific icons, Git status indicators (+, *, -, ?, →, ‡), battery status, and a "Red Alert Mode" that turns segments red on command failure.
    • Trios: A cyberpunk-style theme with hexagon segments and no Nerd Font requirement.
    • Modern Dark Pro / Capsule: Professional dark-mode themes with clickable OSC 8 elements, runtime indicators (Node, Go, Rust, etc.), and execution timers.
    • Cobalt Spark: A compact, low-noise theme with abbreviated paths and a quick-copy action for the current working directory.
  2. Overview of external Zsh themes

    main

    This document lists several third-party themes compatible with Oh My Zsh that are maintained in separate repositories.

    Notable Themes:

    • Simplerich: Features real-time info, Anaconda environment info, and command execution time.
    • Neo: Simple, intuitive, and non-clustered.
    • Y-Kali: Built for Kali Linux users; includes IP info (wlan0/tun0) and modifiable banners.
    • Heapbytes Terminal: Designed for pentesters; shows VPN/WiFi IPs and uses exa (requires manual alias adjustment).
    • Amresh Terminal: Customizable colors/symbols; shows last commit time.
    • Aphrodite: Minimalistic; supports Bash and Fish.
    • passion: Real-time prompt with command execution cost and error hints.
    • typewritten: Minimalist, asynchronous git info, highly customizable.
    • Headline: Features a color-matched separator line and Git status.
    • bigpath: Shows username, nested directory paths, and Git status via colored dots.
    • Ultima: Multi-line prompt with SSH status indicators and advanced VCS integration (Git, SVN, Mercurial).

    You can find more themes by searching GitHub for *.zsh-theme files.

  3. Explore Oh My Zsh FS Jumping Plugins

    main

    Plugins to navigate the file system more quickly using frequent directory patterns:

    • autojump: Jump to frequently used directories.
    • jump: Mark and jump to specific directories.
    • z and zoxide: Fast autojump tools (zoxide is written in Rust).
    • pj: Quick access to project directories.
  4. Explore Oh My Zsh Language-Specific Plugins

    main

    Plugins tailored for specific programming language ecosystems:

    • Node JS: npm, nvm (version manager), node.
    • PHP: composer, laravel (artisan completion), symfony, yii.
    • Ruby: bundler, gem, rails, rbenv, rvm (version managers).
    • Python: pip, pyenv (version management), virtualenv, virtualenvwrapper.
  5. Explore Oh My Zsh Build Tool Plugins

    main

    Plugins providing completions and aliases for various build and deployment tools:

    • Web/Frontend: bower, coffee (CoffeeScript), npm, node, jake-node.
    • Backend/General: ant (Java), bazel, cabal (Haskell), docker, golang, gradle, maven (mvn), pip (Python), ruby, rake (Ruby).
    • Version Control: git (includes git-extras, git-flow), mercurial (hg), svn.
    • Infrastructure/Cloud: heroku, vagrant, jira, github.
  6. Explore external Oh My Zsh themes

    main
    This document provides a curated list of third-party Zsh themes that can be used with Oh My Zsh. These themes vary in complexity, ranging from minimal and distraction-free to feature-rich prompts that display Git status, language versions (Node, Python, Ruby, etc.), battery levels, and command exit codes. To use these, you typically need to clone their respective repositories into your $ZSH_CUSTOM/themes directory.
  7. Explore Oh My Zsh Password Manager Plugins

    main

    Plugins for managing credentials and passwords:

    • 1password: Integration with 1Password.
    • genpass: Various password generators.
    • pass: Autocompletion for the pass CLI utility.
    • rbw: Autocompletion for rbw (Bitwarden CLI).
  8. Explore Oh My Zsh Distro and OS Plugins

    main

    Plugins for specific operating systems and Linux distributions:

    • Linux Distributions: archlinux (pacman/yaourt), debian (apt), dnf, suse (zypper), yum, systemd.
    • macOS: brew (Homebrew), macports, macos (completions and media control), pod (CocoaPods).
  9. Explore Oh My Zsh Productivity Plugins

    main

    The productivity category contains plugins designed to streamline shell workflows, including:

    • Environment & Files: autoenv (auto-executes scripts on directory change via .env), copypath (copies full path to clipboard), copyfile (copies file content), extract (the x alias for various archive formats), and dirpersist (saves directory stack).
    • Shell Enhancements: colored-man-pages (adds color to manpages), colorize (syntax highlighting for cat), history-substring-search (fish-style history search), and vi-mode (Vim mode support).
    • Utilities: genpass (password generation), web-search (Google from CLI), and urltools (URL encoding/decoding).
  10. Explore external ZSH themes

    main

    This document provides a curated list of third-party ZSH themes that can be used with Oh My Zsh. These themes vary in complexity, from minimal single-line prompts to feature-rich, asynchronous, multi-line displays.

    Common features found in these external themes include:

    • Git Integration: Displaying branch names, commit hashes, and dirty/clean status.
    • Environment Indicators: Showing Node.js, Python, Ruby, or Java versions, as well as Docker host status.
    • System Information: Displaying battery percentage, timestamps, and command execution time.
    • Visual Cues: Color changes for root users, non-zero exit codes, or SSH connections.
    • Performance: Many themes (like alien, theta, and agkozak) use asynchronous updates to keep the prompt responsive.

    To use these, you must follow the specific installation instructions provided in each theme's respective repository.

  11. What is the .zshrc file?

    main

    The .zshrc file is a configuration file that Zsh reads every time it starts. It is located in your home directory. You can find the path to your home directory by running:

    echo $HOME
  12. What is a zsh plugin?

    main
    A zsh plugin is a shell script interpreted by Zsh. It can execute any command you would normally run line-by-line in your terminal and can also provide command/function completions.