This is a beta version because there are still features and fixes planned for v2.0.0. This version should be as stable as v1.12.
The biggest features are general increased speed, the theme engine, and the new documentation. See the Release Notes for the most important changes.
If you are referencing $lp_err
, setting $LP_DISABLED_VCS_PATH
, or calling _lp_title()
, see the upgrade notes for help with upgrading.
BREAKING CHANGES
Note: these breaking changes are the only reason that this version is so much faster. They are also on private functions and variables, which the end user was not supposed to use. If you were using them, see the upgrade notes for help.
- general:
$_LP_SHELL_bash
and$_LP_SHELL_zsh
contain1
or0
instead oftrue
orfalse
(f681cdf) - general:
_lp_color_map()
return changed from stdout to$ret
(e843ccf) - general:
_lp_escape()
renamed to__lp_escape()
and return changed from stdout to
$ret
(f3404f9) - general:
_lp_set_prompt()
renamed to__lp_set_prompt()
(decaece) - general:
_lp_source_config()
renamed to__lp_source_config()
(decaece) - battery:
_lp_battery()
return changed from stdout to$lp_battery
(3f57231) - battery:
_lp_battery_color()
return changed from stdout to$lp_battery_color
(3f57231) - env:
$lp_err
renamed to$lp_error
(63b9f73) - env:
_lp_connection()
return changed from stdout to$lp_connection
(edc490f) - git:
_lp_git_head_status()
return changed from stdout to$lp_vcs_head_status
(7c21470) - jobs:
_lp_jobcount_color()
return changed from stdout to$lp_jobcount_color
(73f2057) - load:
_lp_load_color()
return changed from stdout to$lp_load_color
(8a987f4) - path:
_lp_get_home_tilde_collapsed()
renamed to__lp_pwd_tilde()
and return changed from
stdout to$lp_pwd_tilde
(28c13f2) - path:
_lp_set_dirtrim()
renamed to__lp_set_dirtrim()
(decaece) - path:
_lp_shorten_path()
renamed to__lp_shorten_path()
and return changed from stdout to
$lp_shorten_path
without formatting (decaece, a35032f) - runtime:
_lp_runtime()
renamed to_lp_runtime_color()
and return changed from stdout to
$lp_runtime_color
(0f0fd37) - runtime:
_lp_runtime_after()
renamed to__lp_runtime_after()
(decaece) - runtime:
_lp_runtime_before()
renamed to__lp_runtime_before()
(decaece) - temperature:
_lp_temp_acpi()
renamed to__lp_temp_acpi()
and return chagned from
$temperature
to$lp_temperature
(69c75a3) - temperature:
_lp_temp_detect()
renamed to__lp_temp_detect()
(69c75a3) - temperature:
_lp_temp_sensors()
renamed to__lp_temp_sensors()
and return chagned from
$temperature
to$lp_temperature
(69c75a3) - temperature:
_lp_temperature()
changed to data function, replaced by
_lp_temperature_color()
and return changed from stdout to$lp_temperature_color
(69c75a3) - time:
_lp_time()
split into_lp_time()
,_lp_time_color()
,_lp_analog_time()
, and
_lp_analog_time_color()
(8cb609d) - vcs:
_lp_<vcs>_branch()
return changed from stdout to$lp_vcs_branch
(f3404f9) - vcs:
_lp_<vcs>_branch_color()
functions removed, replaced by
_lp_vcs_details_color()
(cafb8b2, bf2b9c6, 1a9fcd0, 4fff496, b523025) - vcs:
_lp_smart_mark()
return changed from stdout to$lp_smart_mark
(9c6d073) - vcs:
_lp_upwards_find()
removed, replaced by_lp_find_vcs()
(f434b6d)
Deprecated
- title:
_lp_title()
is replaced by_lp_formatted_title()
(46df995, 9604203, #581) - utils:
_lp_bool()
is replaced by manually storing return codes (82ee823). - utils:
_lp_sb()
is replaced by data functions indicating if they
returned data or not (82ee823). - utils:
_lp_sl()
is replaced by data functions indicating if they
returned data or not (82ee823). - utils:
_lp_sr()
is replaced by data functions indicating if they
returned data or not (82ee823). - vcs:
$LP_DISABLED_VCS_PATH
variable is replaced by a
$LP_DISABLED_VCS_PATHS
array variable. A warning will be displayed at
startup if your config still uses the old variable, but a compatibility shim
is active. See the upgrade notes for help (cad6286)
Added
- general: Sphinx documentation (0d420d2, c7b5003, b523025, f9fd12e)
- general: Command line flag
--no-activate
to skip auto shell activation when sourcing
liquidprompt (e122d21) - general:
lp_activate()
function to reload config without needing to re-source
liquidprompt (e1f8bd5, 22dd760) - general:
theme-preview.sh
script to generate standard prompt previews (0b94b74) - bzr:
_lp_bzr_active()
data function (b523025) - bzr:
_lp_bzr_commit_id()
data function (b523025) - bzr:
_lp_bzr_stash_count()
data function (b523025) - bzr:
_lp_bzr_tag()
data function (b523025) - bzr:
_lp_bzr_uncommitted_files()
data function (b523025) - bzr:
_lp_bzr_uncommitted_lines()
data function (b523025) - bzr:
_lp_bzr_untracked_files()
data function (b523025) - color:
lp_terminal_format()
util function (#486, 09cfced) - env:
$LP_ENABLE_ERROR
config option (#543, 63b9f73) - env:
_lp_chroot()
data function (c946155) - env:
_lp_connected_display()
data function (c946155) - env:
_lp_error()
data function (63b9f73) - env:
_lp_hostname()
data function (8de1a72, 6ea54e9) - env:
_lp_hostname_color()
theme function (c946155, 8de1a72, b1a3145) - env:
_lp_http_proxy()
data function (78dee3c) - env:
_lp_http_proxy_color()
theme function (78dee3c) - env:
_lp_multiplexer()
data function (0200b99, 230c9d7) - env:
_lp_python_env()
data function (03434d3) - env:
_lp_python_env_color()
theme function (03434d3) - env:
_lp_software_collections()
data function (f4afc5d) - env:
_lp_software_collections_color()
theme function (f4afc5d) - env:
_lp_sudo_active()
data function (9ba5d28) - env:
_lp_sudo_active_color()
theme function (9ba5d28) - env:
_lp_user()
data function (9ba5d28) - env:
_lp_username()
data function (debb794) - env:
_lp_username_color()
theme function (afe3195) - fossil:
_lp_fossil_active()
data function (bf2b9c6) - fossil:
_lp_fossil_commit_id()
data function (bf2b9c6) - fossil:
_lp_fossil_head_status()
data function (bf2b9c6) - fossil:
_lp_fossil_stash_count()
data function (bf2b9c6) - fossil:
_lp_fossil_uncommitted_files()
data function (bf2b9c6) - fossil:
_lp_fossil_uncommitted_lines()
data function (bf2b9c6) - fossil:
_lp_fossil_untracked_files()
data function (bf2b9c6) - git:
_lp_git_active()
data function (70b4ef6) - git:
_lp_git_commit_id()
data function (70b4ef6) - git:
_lp_git_commits_off_remote()
data function (309b443) - git:
_lp_git_stash_count()
data function (fe9919f, bb19836) - git:
_lp_git_tag()
data function (70b4ef6, #506) - git:
_lp_git_uncommitted_files()
data function (67dc0a9) - git:
_lp_git_uncommitted_lines()
data function (70b4ef6) - git:
_lp_git_unstaged_files()
data function (67dc0a9) - git:
_lp_git_unstaged_lines()
data function (70b4ef6) - git:
_lp_git_untracked_files()
data function (fe9919f) - hg:
_lp_hg_active()
data function (1a9fcd0) - hg:
_lp_hg_bookmark()
data function (f4636e6) - hg:
_lp_hg_commit_id()
data function (1a9fcd0) - hg:
_lp_hg_head_status()
data function (1a9fcd0) - hg:
_lp_hg_stash_count()
data function (1a9fcd0) - hg:
_lp_hg_tag()
data function (1a9fcd0) - hg:
_lp_hg_uncommitted_files()
data function (1a9fcd0) - hg:
_lp_hg_uncommitted_lines()
data function (1a9fcd0) - hg:
_lp_hg_untracked_files()
data function (1a9fcd0) - jobs:
$LP_ENABLE_DETACHED_SESSIONS
config option, separate from jobs (f9038e0, 862dcfb, #552) - jobs:
_lp_detached_sessions()
data function (73f2057, 862dcfb) - jobs:
_lp_jobcount()
data function (73f2057) - load:
_lp_load()
data function (8a987f4) - path:
$lp_path
data variable (a35032f) - path:
__lp_path()
internal function (a35032f) - runtime:
_lp_runtime_format()
data function (0f0fd37) - svn:
_lp_svn_active()
data function (4fff496) - svn:
_lp_svn_commit_id()
data function (4fff496) - svn:
_lp_svn_uncommitted_files()
data function (4fff496) - svn:
_lp_svn_uncommitted_lines()
data function (4fff496) - svn:
_lp_svn_untracked_files()
data function (4fff496) - temperature:
_lp_temperature()
as data function (69c75a3) - tests: Tests to check if a shell supports all features that Liquidprompt
needs (#469, 46918f6, 5a9293d, cdb860) - tests: Github Actions build file (#469, 05e0a50)
- theme:
__lp_theme_bash_complete()
to complete themes in Bash forlp_theme()
(884c069) - theme:
__lp_theme_list()
to list themes loaded in function memory (884c069) - theme:
__lp_theme_zsh_complete()
to complete themes in Zsh forlp_theme()
(884c069) - theme:
_lp_default_theme_activate()
theme function (40c4331, 45f8091) - theme:
_lp_default_theme_directory()
theme function (40c4331, 45f8091) - theme:
_lp_default_theme_prompt()
theme function (40c4331, 45f8091) - theme:
lp_theme()
to switch themes without resourcing any
files (45f8091, 884c069, #592) - theme:
powerline_full
, the default theme order in Powerline style (bcefaf3) - theme:
powerline
, a clone of the Powerline prompt (af8382b, 8de1a72, 5ef795d, #520) - time:
_lp_analog_time()
data function (8cb609d, bc120d5) - time:
_lp_analog_time_color()
theme function (8cb609d, bc120d5) - time:
_lp_time()
data function (bc120d5) - time:
_lp_time_color()
theme function (bc120d5) - title:
lp_formatted_title()
sets persistent title stripping terminal formatting
sequences (46df995, 9604203) - title:
_lp_raw_title()
sets persistent title without stripping terminal formatting
sequences (46df995) - title:
lp_title()
sets a manual title that overrides the theme set title (46df995, #609) - utils:
__lp_is_function()
util function (9b40ca1) - utils:
__lp_line_count()
util function (a314677) - vcs:
_lp_find_vcs()
to quickly find nearest VCS repo (f434b6d, #524) - vcs:
_lp_vcs_active()
data function (cafb8b2, #524) - vcs:
_lp_vcs_bookmark()
data function (f4636e6, #524) - vcs:
_lp_vcs_branch()
data function (cafb8b2, #524) - vcs:
_lp_vcs_commit_id()
data function (cafb8b2, #524) - vcs:
_lp_vcs_commits_off_remote()
data function (cafb8b2, #524) - vcs:
_lp_vcs_details_color()
to format VCS details regardless of VCS
type (cafb8b2, f4636e6, 5c56e65, #524) - vcs:
_lp_vcs_head_status()
data function (cafb8b2, #524) - vcs:
_lp_vcs_stash_count()
data function (cafb8b2, #524) - vcs:
_lp_vcs_tag()
data function (cafb8b2, #506, #524) - vcs:
_lp_vcs_uncommitted_files()
data function (cafb8b2, #524) - vcs:
_lp_vcs_uncommitted_lines()
data function (cafb8b2, #524) - vcs:
_lp_vcs_unstaged_files()
data function (cafb8b2, #524) - vcs:
_lp_vcs_unstaged_lines()
data function (cafb8b2, #524) - vcs:
_lp_vcs_untracked_files()
data function (cafb8b2, #524)
Fixed
- general: Issues with custom
$IFS
(e48856b) - general: Liquidprompt is now
set -u
compatable (#354, a8aa8c9, cb9d71b) - battery: Color display would break with custom
$LP_COLORMAP
array (f3f20ec) - runtime: DEBUG trap was not unset if
$LP_ENABLE_RUNTIME_BELL
was disabled (cb9d71b) - time: Add default value for
$LP_TIME_ANALOG
(f8c1c47) - vcs: VCS display for new VCS works without needing to change directories (f434b6d)
Changed
- general: Exit if shell is in interactive mode (f2276fc)
- general: Load all functions at source time, not only ones enabled by the
config (e1f8bd5, 8cb609d) - general: Remove subshells to improve speed (#607, 9ba6e86, e2ba86e)
- general: Remove uses of eval improve speed and security (4fff496, 1a56d58)
- color: Better handling when
tput
is not found (09cfced) - fossil: Remove
sed
call in_lp_fossil_branch()
(6d94db6) - git:
_lp_git_branch()
only returns a matching branch, not a fallback commit ID. Use
_lp_git_commit_id()
instead (70b4ef6) - git:
_lp_git_head_status()
add more matches from official git prompt, as well as details
for partial rebases (#527, 5c56e65) - jobs: Use
__lp_line_count()
instead ofwc -l
for data function (fb123f4) - runtime: Save bell escape sequence on startup to save time when sending bell to terminal
with runtime bell (3e615cd) - svn:
_lp_svn_branch()
prefixes tag with "tag/", no longer returns current directory if no
match found (4fff496)
Removed
- vcsh:
$LP_ENABLE_VCSH
config option, which did nothing (f86a097)