diff options
-rw-r--r-- | README.md | 42 | ||||
-rw-r--r-- | powerlevel9k.zsh-theme | 13 |
2 files changed, 42 insertions, 13 deletions
@@ -22,6 +22,8 @@ information. * Shows system time in right-prompt * Indicates background jobs with a gear * Will conditionally display the `user@host` string +* Plenty of other segments you can enable if you want them (e.g., ruby, AWS) +* Can be used as a single or double-lined prompt (see screenshots below) **If you would like an OMZ theme that provides most of the same features but doesn't require Powerline fonts, check out the sister font, @@ -47,25 +49,26 @@ To install this theme, clone this repository into your Oh-My-Zsh `custom/themes` directory. $ cd ~/.oh-my-zsh/custom - $ mkdir themes # if it doesn't already exist - $ git clone https://github.com/bhilburn/powerlevel9k.git powerlevel9k + $ git clone https://github.com/bhilburn/powerlevel9k.git themes/powerlevel9k You then need to select this theme in your `~/.zshrc`: ZSH_THEME="powerlevel9k/powerlevel9k" -### Customization +### Segment Customization -You can choose which segments are shown on each side. The segments that are +Customizing your prompt is easy! Select the segments you want to have displayed, +and then assign them to either the left or right prompt. The segments that are currently available are: -* **context** - Your username and host. +* **aws** - The current AWS profile, if active (more info below) +* **context** - Your username and host (more info below) * **dir** - Your current working directory. -* **vcs** - Information about this `git` or `hg` repository (if you are in one). +* **history** - The command number for the current line. * **rbenv** - Ruby environment information (if one is active). * **status** - The return code of the previous command, and status of background jobs. -* **history** - The command number for the current line. * **time** - System time. +* **vcs** - Information about this `git` or `hg` repository (if you are in one). To specify which segments you want, just add the following variables to your `~/.zshrc`. If you don't customize this, the below configuration is the default: @@ -78,7 +81,16 @@ If you want to show the current changeset in a `git` or `hg` repository, enable POWERLEVEL9K_SHOW_CHANGESET=true -#### Conditional 'context' +#### The AWS Profile Segment + +If you would like to display the [current AWS +profile](http://docs.aws.amazon.com/cli/latest/userguide/installing.html), add +the `aws` segment to one of the prompts, and define `AWS_DEFAULT_PROFILE` in +your `~/.zshrc`: + + export AWS_DEFAULT_PROFILE=<profile_name> + +#### The 'context' Segment The `context` segment (user@host string) is conditional. This lets you enable it, but only display it if you are not your normal user or on a remote host (basically, only print it @@ -89,10 +101,18 @@ elements (it is by default), and define a `DEFAULT_USER` in your `~/.zshrc`: export DEFAULT_USER=<your username> -#### Prompt on new line +### Styling + +You can configure the look and feel of your prompt easily with some built-in +options. + +#### Double-Lined Prompt + +By default, `powerlevel9k` is a single-lined prompt. If you would like to have +the segments display on one line, and print the command prompt below it, simply +define `POWERLEVEL9K_PROMPT_ON_NEWLINE` in your `~/.zshrc`: -If you like, you can have your prompt on a new line by setting -`POWERLEVEL9K_PROMPT_ON_NEWLINE` to `true` in your `~/.zshrc`. + export POWERLEVEL9K_PROMPT_ON_NEWLINE=true ### Bugs / Contact diff --git a/powerlevel9k.zsh-theme b/powerlevel9k.zsh-theme index af7ecb4a..bffa7123 100644 --- a/powerlevel9k.zsh-theme +++ b/powerlevel9k.zsh-theme @@ -29,7 +29,7 @@ VCS_UNSTAGED_ICON='●' VCS_STAGED_ICON='✚' ################################################################ -# vcs_info settings for git +# vcs_info settings ################################################################ setopt prompt_subst @@ -203,7 +203,7 @@ prompt_dir() { # Virtualenv: current working virtualenv # More information on virtualenv (Python): -# https://virtualenv.pypa.io/en/latest/virtualenv.html +# https://virtualenv.pypa.io/en/latest/ prompt_virtualenv() { local virtualenv_path="$VIRTUAL_ENV" if [[ -n $virtualenv_path && -n $VIRTUAL_ENV_DISABLE_PROMPT ]]; then @@ -270,6 +270,15 @@ prompt_rbenv() { fi } +# AWS Profile +prompt_aws() { + local aws_profile=$AWS_DEFAULT_PROFILE + if [[ -n $aws_profile ]]; + then + $1_prompt_segment red white "AWS: $aws_profile" + fi +} + # Main prompt build_left_prompt() { if (( ${#POWERLEVEL9K_LEFT_PROMPT_ELEMENTS} == 0 )); then |