The included themes/powerline/powerline.theme
file includes two themes:
The powerline
theme is a clone of the Powerline prompt. It copies the default segments of the Powerline prompt for Shell.
This prompt is a proof of (a specific) concept: that Liquidprompt can do what Powerline does, but faster. That said, this is a fully usable theme.
2.0
If there is nothing special about the current context, the appearance of Powerline might be as simple as this:
If you are running a background command and are also in the "main" branch of a Git repository on a server:
When Liquidprompt is displaying nearly everything, it may look like this:
Note
The above "everything" image looks like it is missing some parts because this theme does not implement all data sources of Liquidprompt. This is by design to clone basic Powerline. For a Powerline theme that does show all data sources, see Powerline Full <powerline_full>
below.
By default, the dividers and markers used are the Powerline private characters. You will either need a compatible font, or to configure the dividers and markers to use other characters.
See the Powerline Fonts installation docs for help.
The following Liquidprompt config options are respected:
LP_DISABLED_VCS_PATHS
LP_ENABLE_BZR
LP_ENABLE_COLOR
LP_ENABLE_ERROR
LP_ENABLE_FOSSIL
LP_ENABLE_FQDN
LP_ENABLE_GIT
LP_ENABLE_HG
LP_ENABLE_JOBS
LP_ENABLE_RUNTIME_BELL
LP_ENABLE_SCREEN_TITLE
LP_ENABLE_SHORTEN_PATH
LP_ENABLE_SVN
LP_ENABLE_TITLE
LP_ENABLE_VCS_ROOT
LP_ENABLE_VIRTUALENV
LP_HOSTNAME_ALWAYS
LP_PATH_CHARACTER_KEEP
LP_PATH_KEEP
LP_PATH_LENGTH
LP_PATH_METHOD
LP_PATH_VCS_ROOT
LP_RUNTIME_BELL_THRESHOLD
LP_USER_ALWAYS
Powerline adds these config options:
POWERLINE_HARD_DIVIDER
The divider character between sections, defaults to the private character used in Powerline fonts that looks like a solid right arrow.
POWERLINE_PYTHON_ENV_MARKER
The marker string used to indicate the following string is a Python environment.
POWERLINE_ROOT_MARKER
The marker character used to indicate a root session.
POWERLINE_SECURE_MARKER
The marker character used to indicate a SSH session, defaults to the private character used in Powerline fonts that looks like a lock.
POWERLINE_SOFT_DIVIDER
The divider character between similar sections, defaults to the private character used in Powerline fonts that looks like a thin right arrow.
POWERLINE_SPACER
The marker character used to pad sections, defaults to the non-breaking space character.
To add more padding, add more spaces to this string.
A non-breaking space is needed in some fonts to prevent multiple spaces from collapsing to one space, loosing the padding.
POWERLINE_STASH_MARKER
The marker string used to indicate stashes exist in the VCS repository.
POWERLINE_VCS_MARKER
The marker character used to indicate a VCS repository, defaults to the private character used in Powerline fonts that looks like a branching commit history.
These color config options take an array of integers, which are arguments to lp_terminal_format
.
Note
Arrays are set without commas (,
). The default values are displayed with commas for clarity.
POWERLINE_ERROR_COLOR
Color for the error code section.
POWERLINE_HOST_COLOR
Color for the hostname section.
POWERLINE_JOBS_COLOR
Color for the shell jobs section.
POWERLINE_PATH_COLOR
Color for the current working directory section.
POWERLINE_PATH_LAST_COLOR
Color for the current working directory last subsection.
POWERLINE_PATH_SEPARATOR_COLOR
Color for the current working directory subsection separator.
POWERLINE_PATH_SHORTENED_COLOR
Color for any sections in the current working directory that are shortened to make the path fit in LP_PATH_LENGTH
.
POWERLINE_PATH_VCS_COLOR
Color for the current working directory segment corresponding to the current VCS repository root directory.
LP_PATH_VCS_ROOT
must be enabled to have any effect.
POWERLINE_PYTHON_ENV_COLOR
Color for the Python environment section.
POWERLINE_USER_COLOR
Color for the username section.
POWERLINE_VCS_CLEAN_COLOR
Color for the VCS section if the repository is clean.
POWERLINE_VCS_DIRTY_COLOR
Color for the VCS section if the repository is not clean.
POWERLINE_VCS_STASH_COLOR
Color for the VCS stash subsection.
An extension of the powerline
theme, powerline_full
includes all data sources that Liquidprompt provides. The ordering is the same as the default theme.
2.0
If there is nothing special about the current context, the appearance of Powerline might be as simple as this:
If you are running a background command and are also in the "main" branch of a Git repository on a server:
When Liquidprompt is displaying nearly everything, it may look like this:
Like the powerline
theme, you will need a compatible font. See the Powerline Fonts installation docs for help.
All Liquidprompt config options are respected, except for:
LP_COLOR_AWS_PROFILE
LP_COLOR_CONTAINER
LP_COLOR_DIRSTACK
LP_COLOR_ERR
LP_COLOR_HOST
LP_COLOR_IN_MULTIPLEXER
LP_COLOR_JOB_D
LP_COLOR_JOB_R
LP_COLOR_JOB_Z
LP_COLOR_KUBECONTEXT
LP_COLOR_MARK_ROOT
LP_COLOR_MARK_SUDO
LP_COLOR_MARK
LP_COLOR_NODE_VENV
LP_COLOR_NOWRITE
LP_COLOR_PATH_ROOT
LP_COLOR_PATH
LP_COLOR_PROXY
LP_COLOR_RUBY_VENV
LP_COLOR_RUNTIME
LP_COLOR_SHLVL
LP_COLOR_SSH
LP_COLOR_SU
LP_COLOR_TELNET
LP_COLOR_TERRAFORM
LP_COLOR_TIME
LP_COLOR_USER_ALT
LP_COLOR_USER_LOGGED
LP_COLOR_USER_ROOT
LP_COLOR_VIRTUALENV
LP_COLOR_WRITE
LP_COLOR_X11_OFF
LP_COLOR_X11_ON
LP_ENABLE_PERM
LP_ENABLE_SSH_COLORS
LP_ENABLE_SUDO
LP_MARK_BRACKET_CLOSE
LP_MARK_BRACKET_OPEN
LP_MARK_BZR
LP_MARK_DEFAULT
LP_MARK_DISABLED
LP_MARK_FOSSIL
LP_MARK_GIT
LP_MARK_HG
LP_MARK_PERM
LP_MARK_PREFIX
LP_MARK_PROXY
LP_MARK_SVN
LP_MARK_VCSH
Powerline Full uses all the config options of the above Powerline theme, except for:
POWERLINE_STASH_MARKER
POWERLINE_VCS_DIRTY_COLOR
POWERLINE_VCS_MARKER
POWERLINE_VCS_STASH_COLOR
Powerline Full adds these config options:
POWERLINE_AWS_PROFILE_MARKER
The marker string used to indicate the following string is the name of an AWS profile.
2.1
POWERLINE_CHROOT_MARKER
The marker string used to indicate the following string is a chroot.
POWERLINE_KUBECONTEXT_MARKER
The marker string used to indicate the following string is the name of a kubectl context.
2.1
POWERLINE_NODE_ENV_MARKER
The marker string used to indicate the following string is a Node.js environment.
2.1
POWERLINE_PROXY_MARKER
The marker string used to indicate the following string is a HTTP proxy.
POWERLINE_RUBY_ENV_MARKER
The marker string used to indicate the following string is a Ruby environment.
2.1
POWERLINE_SOFTWARE_COLLECTION_MARKER
The marker string used to indicate the following string is a Red Hat Software Collection.
POWERLINE_TERRAFORM_ENV_MARKER
The marker string used to indicate the following string is a Terraform workspace.
2.1
POWERLINE_AWS_PROFILE_COLOR
Color for the AWS profile section.
2.1
POWERLINE_BATTERY_COLOR
Color for the battery section.
POWERLINE_CHROOT_COLOR
Color for the chroot section.
POWERLINE_CONTAINER_COLOR
Color for the container indicator section.
2.1
POWERLINE_DIRSTACK_COLOR
Color for the directory stack section.
POWERLINE_KUBECONTEXT_COLOR
Color for the Kubernetes context section.
2.1
POWERLINE_LOAD_COLOR
Color for the CPU load section.
POWERLINE_NEUTRAL_COLOR
Color for all neutral sections, LP_PS1_PREFIX
and LP_PS1_POSTFIX
.
POWERLINE_NODE_ENV_COLOR
Color for the Node.js environment section.
2.1
POWERLINE_PROXY_COLOR
Color for the HTTP proxy section.
POWERLINE_RUBY_ENV_COLOR
Color for the Ruby environment section.
2.1
POWERLINE_RUNTIME_COLOR
Color for the command runtime section.
POWERLINE_SHLVL_COLOR
Color for the nested shell level section.
2.1
POWERLINE_SOFTWARE_COLLECTIONS_COLOR
Color for the Red Hat Software Collections section.
POWERLINE_TEMPERATURE_COLOR
Color for the temperature section.
POWERLINE_TERRAFORM_ENV_COLOR
Color for the Terraform workspace.
2.1
POWERLINE_TIME_COLOR
Color for the current time section.
POWERLINE_WIFI_STRENGTH_COLOR
Color for the wireless signal strength section.
2.1