mirror of
https://github.com/romkatv/powerlevel10k.git
synced 2024-12-18 21:41:57 +00:00
Merge branch 'master' into next
This commit is contained in:
commit
e9e60324cd
2 changed files with 32 additions and 25 deletions
|
@ -363,7 +363,7 @@ Customizations available are:
|
||||||
| Strategy Name | Description |
|
| Strategy Name | Description |
|
||||||
|---------------|-------------|
|
|---------------|-------------|
|
||||||
|Default|Truncate whole directories from left. How many is defined by `POWERLEVEL9K_SHORTEN_DIR_LENGTH`|
|
|Default|Truncate whole directories from left. How many is defined by `POWERLEVEL9K_SHORTEN_DIR_LENGTH`|
|
||||||
|`truncate_middle`|Truncates the middle part of a folder. E.g. you are in a folder named "~/MySuperProjects/AwesomeFiles/BoringOffice", then it will truncated to "~/MyS..cts/Awe..les/BoringOffice", if `POWERLEVEL9K_SHORTEN_DIR_LENGTH=3` is also set (controls the amount of characters to be left).|
|
|`truncate_middle`|Truncates the middle part of a folder. E.g. you are in a folder named `~/MySuperProjects/AwesomeFiles/BoringOffice`, then it will truncated to `~/MyS..cts/Awe..les/BoringOffice`, if `POWERLEVEL9K_SHORTEN_DIR_LENGTH=3` is also set (controls the amount of characters to be left).|
|
||||||
|`truncate_from_right`|Just leaves the beginning of a folder name untouched. E.g. your folders will be truncated like so: "/ro../Pr../office". How many characters will be untouched is controlled by `POWERLEVEL9K_SHORTEN_DIR_LENGTH`.|
|
|`truncate_from_right`|Just leaves the beginning of a folder name untouched. E.g. your folders will be truncated like so: "/ro../Pr../office". How many characters will be untouched is controlled by `POWERLEVEL9K_SHORTEN_DIR_LENGTH`.|
|
||||||
|`truncate_with_package_name`|Search for a `package.json` or `composer.json` and prints the `name` field to abbreviate the directory path. The precedence and/or files could be set by `POWERLEVEL9K_DIR_PACKAGE_FILES=(package.json composer.json)`. If you have [jq](https://stedolan.github.io/jq/) installed, it will dramatically improve the speed of this strategy.|
|
|`truncate_with_package_name`|Search for a `package.json` or `composer.json` and prints the `name` field to abbreviate the directory path. The precedence and/or files could be set by `POWERLEVEL9K_DIR_PACKAGE_FILES=(package.json composer.json)`. If you have [jq](https://stedolan.github.io/jq/) installed, it will dramatically improve the speed of this strategy.|
|
||||||
|`truncate_with_folder_marker`|Search for a file that is specified by `POWERLEVEL9K_SHORTEN_FOLDER_MARKER` and truncate everything before that (if found, otherwise stop on $HOME and ROOT).|
|
|`truncate_with_folder_marker`|Search for a file that is specified by `POWERLEVEL9K_SHORTEN_FOLDER_MARKER` and truncate everything before that (if found, otherwise stop on $HOME and ROOT).|
|
||||||
|
@ -407,7 +407,7 @@ You can also configure the `dir` segment to show when you are in a directory wit
|
||||||
|
|
||||||
| Variable | Default Value | Description |
|
| Variable | Default Value | Description |
|
||||||
|----------|---------------|-------------|
|
|----------|---------------|-------------|
|
||||||
|`POWERLEVEL9K_DIR_SHOW_WRITABLE`|`false`|If set to `true` and you are in a directory that you do not have write permissions for, this segment will display a lock icon and enter the `NOT_WRITABLE` state (which can be customized per [our usual process](https://github.com/bhilburn/powerlevel9k/wiki/Stylizing-Your-Prompt#segment-color-customization). Note that this functionality is also available in a separate segment, `dir_writable`.|
|
|`POWERLEVEL9K_DIR_SHOW_WRITABLE`|`false`|If set to `true` and you are in a directory that you do not have write permissions for, this segment will display a lock icon and enter the `NOT_WRITABLE` state (which can be customized per [our usual process](https://github.com/bhilburn/powerlevel9k/wiki/Stylizing-Your-Prompt#segment-color-customization)). Note that this functionality is also available in a separate segment, `dir_writable`.|
|
||||||
|
|
||||||
##### disk_usage
|
##### disk_usage
|
||||||
|
|
||||||
|
|
|
@ -932,13 +932,14 @@ prompt_vpn_ip() {
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
set_default POWERLEVEL9K_LOAD_WHICH 5
|
||||||
prompt_load() {
|
prompt_load() {
|
||||||
# The load segment can have three different states
|
# The load segment can have three different states
|
||||||
local current_state="unknown"
|
local current_state="unknown"
|
||||||
|
local load_select=2
|
||||||
|
local load_avg
|
||||||
local cores
|
local cores
|
||||||
|
|
||||||
set_default POWERLEVEL9K_LOAD_WHICH 5
|
|
||||||
|
|
||||||
typeset -AH load_states
|
typeset -AH load_states
|
||||||
load_states=(
|
load_states=(
|
||||||
'critical' 'red'
|
'critical' 'red'
|
||||||
|
@ -946,32 +947,38 @@ prompt_load() {
|
||||||
'normal' 'green'
|
'normal' 'green'
|
||||||
)
|
)
|
||||||
|
|
||||||
if [[ "$OS" == "OSX" ]] || [[ "$OS" == "BSD" ]]; then
|
case "$POWERLEVEL9K_LOAD_WHICH" in
|
||||||
|
1)
|
||||||
if [[ "$POWERLEVEL9K_LOAD_WHICH" -eq 1 ]]; then
|
load_select=1
|
||||||
load_avg=$(sysctl vm.loadavg | grep -o -E '[0-9]+(\.|,)[0-9]+' | head -n 3 | sed -n 1p)
|
;;
|
||||||
elif [[ "$POWERLEVEL9K_LOAD_WHICH" -eq 5 ]]; then
|
5)
|
||||||
load_avg=$(sysctl vm.loadavg | grep -o -E '[0-9]+(\.|,)[0-9]+' | head -n 3 | sed -n 2p)
|
load_select=2
|
||||||
else
|
;;
|
||||||
load_avg=$(sysctl vm.loadavg | grep -o -E '[0-9]+(\.|,)[0-9]+' | head -n 3 | sed -n 3p)
|
15)
|
||||||
fi
|
load_select=3
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
case "$OS" in
|
||||||
|
OSX|BSD)
|
||||||
|
load_avg=$(sysctl vm.loadavg | grep -o -E '[0-9]+(\.|,)[0-9]+' | sed -n ${load_select}p)
|
||||||
if [[ "$OS" == "OSX" ]]; then
|
if [[ "$OS" == "OSX" ]]; then
|
||||||
cores=$(sysctl -n hw.logicalcpu)
|
cores=$(sysctl -n hw.logicalcpu)
|
||||||
else
|
else
|
||||||
cores=$(sysctl -n hw.ncpu)
|
cores=$(sysctl -n hw.ncpu)
|
||||||
fi
|
fi
|
||||||
else
|
;;
|
||||||
load_avg=$(grep -o "[0-9.]*" /proc/loadavg | head -n 1)
|
*)
|
||||||
|
load_avg=$(cut -d" " -f${load_select} /proc/loadavg)
|
||||||
cores=$(nproc)
|
cores=$(nproc)
|
||||||
fi
|
esac
|
||||||
|
|
||||||
# Replace comma
|
# Replace comma
|
||||||
load_avg=${load_avg//,/.}
|
load_avg=${load_avg//,/.}
|
||||||
|
|
||||||
if [[ "$load_avg" -gt $(bc -l <<< "${cores} * 0.7") ]]; then
|
if [[ "$load_avg" -gt $(bc -l <<< "${cores} * 0.7") ]]; then
|
||||||
current_state="critical"
|
current_state="critical"
|
||||||
elif [[ "$load_avg" -gt $(bc -l <<< "${cores} * 0.5") ]]; then
|
elif [[ "$load_avg" -gt $(bc -l <<< "${cores} * 0.5") ]]; then
|
||||||
current_state="warning"
|
current_state="warning"
|
||||||
else
|
else
|
||||||
current_state="normal"
|
current_state="normal"
|
||||||
|
@ -1401,7 +1408,7 @@ prompt_dir_writable() {
|
||||||
|
|
||||||
# Kubernetes Current Context
|
# Kubernetes Current Context
|
||||||
prompt_kubecontext() {
|
prompt_kubecontext() {
|
||||||
local kubectl_version=$(kubectl version --client 2>/dev/null)
|
local kubectl_version="$(kubectl version --client 2>/dev/null)"
|
||||||
|
|
||||||
if [[ -n "$kubectl_version" ]]; then
|
if [[ -n "$kubectl_version" ]]; then
|
||||||
# Get the current Kubernetes config context's namespaece
|
# Get the current Kubernetes config context's namespaece
|
||||||
|
@ -1526,7 +1533,7 @@ prompt_powerlevel9k_setup() {
|
||||||
local term_colors
|
local term_colors
|
||||||
term_colors=$(echotc Co 2>/dev/null)
|
term_colors=$(echotc Co 2>/dev/null)
|
||||||
if (( ! $? && ${term_colors:-0} < 256 )); then
|
if (( ! $? && ${term_colors:-0} < 256 )); then
|
||||||
print -P "%F{red}WARNING!%f Your terminal appears to support less than 256 colors!"
|
print -P "%F{red}WARNING!%f Your terminal appears to support fewer than 256 colors!"
|
||||||
print -P "If your terminal supports 256 colors, please export the appropriate environment variable"
|
print -P "If your terminal supports 256 colors, please export the appropriate environment variable"
|
||||||
print -P "_before_ loading this theme in your \~\/.zshrc. In most terminal emulators, putting"
|
print -P "_before_ loading this theme in your \~\/.zshrc. In most terminal emulators, putting"
|
||||||
print -P "%F{blue}export TERM=\"xterm-256color\"%f at the top of your \~\/.zshrc is sufficient."
|
print -P "%F{blue}export TERM=\"xterm-256color\"%f at the top of your \~\/.zshrc is sufficient."
|
||||||
|
|
Loading…
Reference in a new issue