Commit Graph

944 Commits (b379cf62251a5a468563cd534ee152c67aa5dd94)

Author SHA1 Message Date
romkatv 58fa653b90 don't trust $PWD as it can be changed; use ${(%):-%/} instead
It's possible that #156 is caused by some code changing PWD.
5 years ago
romkatv 36d2c588f1 ignore zshexit hook calls done from forks 5 years ago
romkatv 9d6dfeae73 add POWERLEVEL9K_VCS_CONFLICTED_MAX_NUM 5 years ago
romkatv 59e96984a1 be more tolerant towards misconfigured locales; users with non-utf-8 locales will still have broken shells but at least p10k will work 5 years ago
romkatv d8c509f5c9 require zsh 5.3 for nordvpn segment; fixes #148 5 years ago
romkatv d0fadfff97 add another option for i686 users 5 years ago
romkatv f62d1d5ae3 speciazled diagnostics for i686; more escapes; more opts 5 years ago
romkatv 0f00e5e9e2 defend against global IFS leaks from other code; for #146 5 years ago
romkatv b6a365dd40 add P9K_NORDVPN_TECHNOLOGY 5 years ago
romkatv 37ab63fe69 bug fix: support color names in vcs style; fixes #144 5 years ago
romkatv 3fe113f91d better errors in p10k segment 5 years ago
romkatv 8d2ffb43db add "help" and "segment" commands to p10k 5 years ago
romkatv a6b572da45 add p10k configure 5 years ago
romkatv 0c0641d579 add a teardown hook for zplugin 5 years ago
romkatv 40df756e2d run configuration wizard if POWERLEVEL9K_MODE is the only set parameter 5 years ago
romkatv d6dedc53bc support hot reloading of gitstatus parameters 5 years ago
romkatv 38a3ca7dc3 support gke kubecontext clusters that are mapped to regions instead of zones
fixes #139
5 years ago
Roman Perepelitsa cd8d8e4594
Remove erroneous plus
Fixes #142
5 years ago
romkatv 2e5a085dbe run configuration wizard automatically if no POWERLEVEL9K options are defined 5 years ago
romkatv 5e4628d485 fix fg color of RIGHT_PROMPT_LAST_SEGMENT_END_SYMBOL 5 years ago
romkatv 7cf4f7e57d ensure kubecontext namespace is not empty 5 years ago
romkatv 32421d296c expose more P9K_KUBECONTEXT variables for gke and eks contexts 5 years ago
romkatv f337616738 use consisent patterns when parsing yaml 5 years ago
romkatv 05deaa802f kubecontext: handle strings with spaces and ignore multi-line strings 5 years ago
romkatv 2318bda2c3 bug fixes: don't replace '_' with ' ' in gke clusters and clear the default of POWERLEVEL9K_KUBECONTEXT_SHORTEN 5 years ago
romkatv 224b62fbe4 silly typo: '\n' => $'\n'
fixes #140
5 years ago
romkatv 5bcbee96e4 add optional kubecontext shortening for gke and eks contexts
This is done via an optional array parameter that lists
shortening stragies to be applied. Currently there are
only two supported strategies: 'gke' and 'eks'.

  # Shorten gke and eks cluster names:
  #
  #   - gke_projectname_availability-zone_cluster-01         => cluster-01
  #   - arn:aws:eks:us-east-1:XXXXXXXXXXXX:cluster/eks-infra => eks-infra
  #
  # This transformation is applied before class matching and content
  # expansion.
  POWERLEVEL9K_KUBECONTEXT_SHORTEN=(gke eks)

For https://github.com/romkatv/powerlevel10k/issues/139.
5 years ago
romkatv bdc211b64f add nodeenv parameters similar to other envs 5 years ago
romkatv ba39eb3421 support POWERLEVEL9K_CONTEXT_${state}_TEMPLATE 5 years ago
romkatv bab487aa6e quote process subs 5 years ago
romkatv f4cdf0e0eb fix POWERLEVEL9K_DIR_CLASSES 5 years ago
romkatv 7f6e74f012 Don't show ram prompt if /proc/meminfo lists not-a-number for MemAvailable.
I've never encountered the case where this commit makes a difference
but it's possible that #136 will get fixed.
5 years ago
romkatv 3466b385ff expose p9k_configure 5 years ago
romkatv 0378a0a54c cleanup 5 years ago
romkatv 57b1f1aa74 default background to black in p9k_prompt_segment; comments 5 years ago
romkatv b27ff42ac3 do nothing in p9k_prompt_segment if not called by p10k 5 years ago
romkatv 80770d6a79 fix status on zsh 5.1 5 years ago
romkatv b66d6a7105 typo 5 years ago
romkatv 436740db8e fix many bugs in status related to pipelines 5 years ago
romkatv 93857552cf recognize vivis and vivli keymaps as visual vi mode
These keymaps are created by https://github.com/b4b4r07/zsh-vimode-visual.
I don't know why anyone would use this instead of the standard `v` and `V` keybindings.

Requested in https://github.com/romkatv/powerlevel10k/issues/134.
5 years ago
romkatv 01e66aab67 add a few extra states and parameters to make it possible to configure decent `status` 5 years ago
romkatv cef049e0de nordvpn: add CONNECTING and DISCONECTING states, remove OTHER
See https://github.com/romkatv/powerlevel10k/issues/133.
5 years ago
romkatv 0e31c204f7 cleanup in nordvpn 5 years ago
romkatv fb50402fc9 remove junk 5 years ago
romkatv b07d0b7083 add nordvpn prompt segment
This segment has four states.

MISSING: nordvpn is not installed. By default the segment is not shown
in this state. Override POWERLEVEL9K_NORDVPN_MISSING_CONTENT_EXPANSION
and/or POWERLEVEL9K_NORDVPN_MISSING_VISUAL_IDENTIFIER_EXPANSION to make
the segment visible.

CONNECTED: nordvpn is connected. By default shows LOCK_ICON as icon and
country code as content. In addition, the following variables are set
for the use by POWERLEVEL9K_NORDVPN_CONNECTED_CONTENT_EXPANSION
and POWERLEVEL9K_NORDVPN_CONNECTED_VISUAL_IDENTIFIER_EXPANSION:
P9K_NORDVPN_PROTOCOL, P9K_NORDVPN_IP_ADDRESS,
P9K_NORDVPN_SERVER, P9K_NORDVPN_COUNTRY, P9K_NORDVPN_CITY and
P9K_NORDVPN_STATUS (always "Connected"). These correspond to the output
lines of `nordvpn status`.

DISCONNECTED: nordvpn is disconnected. By default shows LOCK_ICON as
icon and FAIL_ICON as content. P9K_NORDVPN_STATUS is set to "Disconnected".

OTHER: nordvpn is in status other than "Connected" or "Disconnected".
I'm not sure this is possible. By default shows LOCK_ICON as
icon and FAIL_ICON as content. P9K_NORDVPN_STATUS is set to the
actual status (neither empty, "Connected" nor "Disconnected").

Fixes #133. Needs more testing.
5 years ago
romkatv 07eae5942d optimize style escaping 5 years ago
romkatv 80fc1fd56a comments 5 years ago
romkatv 694084dd6a document p9k_prompt_segment 5 years ago
romkatv 043ae21090 stop passing arguments to prompt_* functions; rename some internal functions 5 years ago
romkatv 82698c179b delete prompt_icons_test 5 years ago
romkatv 6eaa39e370 daemonize async pump 5 years ago
romkatv 1402ca55b1 correctly handle ZLE_RPROMPT_INDENT changes 5 years ago
romkatv 5a9c774d79 reinit on param changes 5 years ago
romkatv d9f0922945 make prompt_powerlevel9k_teardown and prompt_powerlevel9k_setup reentrant 5 years ago
romkatv 40fa321cc2 move icons.zsh to internal 5 years ago
romkatv be1a97bf47 inline colors.zsh, utilities.zsh and vcs.zsh 5 years ago
romkatv 4a9f441c7b rename all internal vars 5 years ago
romkatv 49768006de bug fixes 5 years ago
romkatv 202f781e59 s/P9K_NODE_VERSION_PROJECT_ONLY/POWERLEVEL9K_NODE_VERSION_PROJECT_ONLY 5 years ago
romkatv 12a99c087d continue param refactoring 5 years ago
romkatv d63fd9a873 start massive refactoring of config params 5 years ago
romkatv 94efac6aab less escaping 5 years ago
romkatv 608684757a more intelligent quoting of expansions 5 years ago
romkatv 37f0a4d548 cleanup 5 years ago
romkatv 6b9a2e0cec got overexcited with backslashes 5 years ago
romkatv ee44359256 wrap unescaped multiline prefixes; fixes #125 5 years ago
romkatv 66d09d6f31 add POWERLEVEL9K_ICON_BEFORE_CONTENT 5 years ago
romkatv 8300a1e363 add POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_EXPANSION 5 years ago
romkatv 5dd3ecab5f make gap between left and right prompt customizable 5 years ago
romkatv fa0c447817 don't use state CHARGED when the battery is at 100% and discharging; use DISCONNECTED instead 5 years ago
romkatv dc601559fa propagate _P9K_SSH similar to Pure 5 years ago
romkatv c4d3ec2cc5 add POWERLEVEL9K_COMMAND_EXECUTION_TIME_FORMAT 5 years ago
romkatv ef06651f68 bug fix: default {RIGHT,LEFT}_MIDDLE_WHITESPACE to space 5 years ago
romkatv 259a2954cd typo 5 years ago
romkatv d65e7eb926 bug fix: don't update _P9K_BG and _P9K_I when a segment has empty content and icon 5 years ago
romkatv fa457a3282 fix purge when dir contains weird shit 5 years ago
romkatv d81b4dbf68 speed up truncate_to_unique 5 years ago
romkatv b7a8139e97 fix POWERLEVEL9K_DIR_MAX_LENGTH 5 years ago
romkatv 233b5c7c88 add POWERLEVEL9K_DIR_MAX_LENGTH 5 years ago
romkatv ebb08c881f add POWERLEVEL9K_DIR_SHORTENED_FOREGROUND 5 years ago
romkatv ff24a9f42b add POWERLEVEL9K_DIR_ANCHOR_BOLD and POWERLEVEL9K_DIR_ANCHOR_FOREGROUND 5 years ago
romkatv 3dac653c52 fix styling bugs in dir 5 years ago
romkatv cd4d1358b3 fix quoting in dir 5 years ago
romkatv 86d6412988 grammar 5 years ago
romkatv c5f32d1ea5 add POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS and POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT 5 years ago
romkatv d41e18416f finish auto-shrinking dir; still not tested yet 5 years ago
romkatv 394dffa77b Merge branch 'master' into dev 5 years ago
romkatv f37d7e6742 don't update time unnecessarily 5 years ago
romkatv 7478f07100 ensure there is at least one space between left and right prompts 5 years ago
romkatv 389b2ce5c2 prototype for auto-shrinking dir 5 years ago
romkatv 0660d8c97d bug fix: %-expand POWERLEVEL9K_TIME_FORMAT on every prompt
reported in #77
5 years ago
romkatv 568dc8beb4 add MULTILINE_{FIRST,NEWLINE,LAST}_PROMPT_SUFFIX 5 years ago
romkatv c5f27b1cc5 optimize codegen for icons 5 years ago
romkatv 8b04966624 optimize codegen when VISUAL_IDENTIFIER_EXPANSION doesn't contain $-expansions 5 years ago
romkatv c5e24d843b spello 5 years ago
romkatv dd09ce6efc add POWERLEVEL9K_TIME_UPDATE_ON_COMMAND
This is one of the features discussed in #77.
5 years ago
romkatv 1acc559cc2 Merge branch 'master' into dev 5 years ago
romkatv 1ed5c3f177 make it work in ZSH 5.1 5 years ago
romkatv 00a070d5db generate less code for empty rprompt 5 years ago
romkatv 3bf8931620 bail out of *env prompts if the corresponding *env command doesn't exist 5 years ago
romkatv d75b714d8a add nodenv prompt; #121 5 years ago
romkatv 428665e551 silly typos 5 years ago
romkatv ccfc462faf add P9K_COMMAND_DURATION_SECONDS and POWERLEVEL9K_COMMAND_EXECUTION_TIME_DISABLE_FORMATTING 5 years ago
romkatv 36fa083841 fix bugs in multiline right prompt 5 years ago
romkatv 29aec8c105 allow newline in right prompt; untested 5 years ago
romkatv e986f0a96c replace POWERLEVEL9K_BATTERY_STAGES hack with proper code 5 years ago
romkatv 38da6a3c9b tabs to spaces 5 years ago
romkatv 06aa8da96e round to seconds instead of truncating 5 years ago
romkatv 32537cffaa add POWERLEVEL9K_EMPTY_LINE_RIGHT_PROMPT_FIRST_SEGMENT_START_SYMBOL 5 years ago
romkatv 22e459ef24 remove trailing spaces for the default prompt_char content 5 years ago
romkatv 26a8b17f6e 1.23s instead of 1.23 in command_execution_time 5 years ago
romkatv 97c2806567 bug fix: display icons when expansions are active 5 years ago
romkatv d2fc79743d Revert "unify multiline prompt prefix parameters"
This reverts commit 502baefcec.

fixes #116
5 years ago
romkatv e26cc029cc add prompt_char; respect POWERLEVEL9K_RPROMPT_ON_NEWLINE=false even if POWERLEVEL9K_PROMPT_ON_NEWLINE == false 5 years ago
romkatv ff4f823f10 more robust zle widget wrapping 5 years ago
romkatv 552e629be8 add a warning if POWERLEVEL9K_RIGHT_SEGMENT_END_SEPARATOR is set (it is no longer supported) 5 years ago
romkatv 502baefcec unify multiline prompt prefix parameters 5 years ago
romkatv 28b9fe09ae add POWERLEVEL9K_EMPTY_LINE_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL 5 years ago
romkatv 13ce831b6b fix subsep fg in right prompt 5 years ago
romkatv 0ad3a452ef bug fix: never render subsegment separator with the same fg and bg 5 years ago
romkatv 9d88fb83e9 fix bugs in right prompt 5 years ago
romkatv 1cd711820e port left prompt changes to right prompt 5 years ago
romkatv 9adcf809f1 add p9k_prompt_segment; add SELF_JOINED; delete simple_dir 5 years ago
romkatv 759030f30b fix vcs background 5 years ago
romkatv 5aa173510d fix fg of the left terminator 5 years ago
romkatv 04d8160daa the other half half of the support for custom powerline terminators 5 years ago
romkatv 2887dd80aa half of the support for custom powerline terminators 5 years ago
romkatv a937bff1c1 make vcs component style params consistent with the rest 5 years ago
romkatv ba41bb3475 add per-state overrides and fallbacks for the generic formatting options 5 years ago
romkatv 996316a6fc iron out bugs in the new rendered; rename TRANSFORMER to EXPANSION 5 years ago
romkatv 0891841e75 start massive refactoring of the rendering engine 5 years ago
romkatv 9805363949 bug fix: _p9k_vcs_status_purge:3: no matches found 5 years ago
romkatv 8a84f0e7f3 use numerical values for default colors 5 years ago
romkatv 2ff8332d2d add POWERLEVEL9K_VCS_DISABLE_GITSTATUS_FORMATTING 5 years ago
romkatv 72f5c8a79e ditch subsegments in vcs; fixes #110 5 years ago
venyii 9ed04d1969
Revert "Add ability to provide a cluster function in kubecontext segment"
This reverts commit a9d99c9cab.

Only a74603d30f was supposed to be merged
in https://github.com/romkatv/powerlevel10k/pull/106
5 years ago
romkatv c140d38695 when entering a directory for which no prior git state is known, issue a no-diff request to gitstatusd 5 years ago
romkatv 0274263b96 speed up user and context 5 years ago
Roman Perepelitsa 921f9e664a
Merge pull request #106 from venyii/kubecontext-cluster-func
Fix a typo in docs.
5 years ago
romkatv bb4e9d4a5a fix ruler color on ZSH 5.1 5 years ago
romkatv db86868a22 add POWERLEVEL9K_${segment}_${state}_{PREFIX,SUFFIX} parameters 5 years ago
romkatv d8cfba357e add POWERLEVEL9K_${segment}_${state}_CONTENT_TRANSFORMER parameter 5 years ago
venyii a9d99c9cab
Add ability to provide a cluster function in kubecontext segment
This makes it possible to customize the displayed cluster name, e.g.
`gke_project-name-1337_europe-west1-c_production` -> `production`
5 years ago
romkatv 214d12b275 add POWERLEVEL9K_LEFT_PROMPT_FIRST_SEGMENT_START_SYMBOL and POWERLEVEL9K_RIGHT_PROMPT_LAST_SEGMENT_END_SYMBOL 5 years ago
romkatv c3990c53a9 render VCS_GIT_ICON and the like as segment visual identifiers instead of embedding them in the content 5 years ago
romkatv 165021946c Merge branch 'add_space_between_remote_icon_and_commit_hash' of https://github.com/cdalvaro/powerlevel10k into cdalvaro-add_space_between_remote_icon_and_commit_hash 5 years ago
romkatv db35731c46 add RIGHT_SEGMENT_END_SEPARATOR 5 years ago
Carlos Álvaro a8c759e4af
Add space between remote icon and commit hash 5 years ago
Roman Perepelitsa 09cebc2887
set VI_KEYMAP in zle-keymap-select 5 years ago
romkatv 9a54f84be1 typos in comments 5 years ago
romkatv e8ec504dac make custom dir classes easier to use, fix bugs, write docs, rename parameters to be consistent 5 years ago
Raul Benito Garcia d58aa968cf Allow to define icons and states as dicitionary.
The next PR will add the possibility of adding new icons to different
paths.
5 years ago
Roman Perepelitsa b404c1b54e
Merge pull request #93 from MarvinTeichmann/patch-1
Make virtualenv segment configurable, similar to anaconda.
5 years ago
Marvin Teichmann fdbb830c98 Make virtualenv segment configurable, similar to anaconda.
The virtualenv segment can now be configured using the following Variables:

set_default POWERLEVEL9K_VIRTUALENV_LEFT_DELIMITER "("
set_default POWERLEVEL9K_VIRTUALENV_RIGHT_DELIMITER ")"

The new defaults are chosen to resemble the standard virtualenv prompt configuration.
The variable names are choosen analogous to the anaconda segment.
This implements the bhilburn/powerlevel9k#345 pr.
5 years ago
romkatv 188635f2e1 don't attempt to flock a fifo; it doesn't work on bsd 5 years ago
romkatv 08a26b7045 run all segment rendering code under `emulate -L zsh && setopt no_hist_expand extended_glob` 5 years ago
romkatv 6f5d35c3aa make public_ip faster, especially when there is no internet connection
issue #92
5 years ago
romkatv 117b607b66 add VCS_DIRTY_ICON for better Pure emulation 5 years ago
romkatv 9039864a68 when command_execution_time is a single integer, add 's' suffix to it
Inspired by https://github.com/bhilburn/powerlevel9k/pull/1215.
5 years ago
romkatv 0849e831f5 add POWERLEVEL9K_DIR_HYPERLINK
This is a port of https://github.com/bhilburn/powerlevel9k/pull/1052.
5 years ago
romkatv d6826aa417 Properly escape all weird shit (e.g., quotes).
This reverts commit 194db2e429.
5 years ago
romkatv 8785fa1f25 speed up rvm prompt 5 years ago
romkatv b6ba19617c treat REGION_ACTIVE=2 the same way as REGION_ACTIVE=1 5 years ago
romkatv ca311575d6 add POWERLEVEL9K_VIRTUALENV_SHOW_PYTHON_VERSION 5 years ago
romkatv 93c24c0e2c show minor python version 5 years ago
romkatv 78e78f6d0b simplify chruby 5 years ago
romkatv 13c15d2945 add POWERLEVEL9K_ANACONDA_SHOW_PYTHON_VERSION 5 years ago
romkatv 088502c30c fix _get_icon on ZSH 5.1
ZSH 5.1 has crippled ${(P)...}. For example, the following code prints "broken":

    unset foo
    echo ${${(P)foo}+broken}

In ZSH 5.2 and later this code print an empty line.

Fixes #91.
5 years ago
romkatv 5f40c44940 don't hook zle-line-finish if transient_prompt is not set 5 years ago
romkatv 95b25e94e1 fix battery segment on macOS
issue #89
5 years ago
romkatv 7678930639 remove leading "go" from go_version 5 years ago
romkatv 194db2e429 escape backslashes 5 years ago
romkatv 9f05efb8e2 fix properly round battery percent 5 years ago
romkatv 6a1f0659e6 make battery prompt work on WSL 5 years ago
romkatv d80d3a5704 bug fix: don't assume that $#POWERLEVEL9K_BATTERY_STAGES == $#POWERLEVEL9K_BATTERY_LEVEL_BACKGROUND
Reported in: https://github.com/romkatv/powerlevel10k/issues/88
5 years ago
romkatv f95a0fc3ee work around ZLE_RPROMPT_INDENT=0 bugs in ZSH 6 years ago
romkatv 50b342a7c2 fix a bug in command_execution_time: wrong duration when it's over 24h
Bug report: https://github.com/bhilburn/powerlevel9k/issues/1308
6 years ago
romkatv c9622cb5ec fix signal names printed by status prompt segment 6 years ago
romkatv 691f5eb519 another blind attempt to fix mysterious non-reproducible issues 6 years ago
romkatv 2f379690f3 don't display right prompt if it would overflow to the next line 6 years ago
romkatv 414ca22cad minor cleanup 6 years ago
romkatv befe57dede manually collapse ' \b?' into '?' 6 years ago
romkatv f99cefc5ec attempt to fix a weird todo corner case. unlikely to help 6 years ago
romkatv 5a30f6a399 stop padding colors with leading zeros; it makes no difference 6 years ago
romkatv a2bc4f0b94 add POWERLEVEL9K_DIR_MAX_LENGTH 6 years ago
romkatv 02b86416ec don't read /proc/loadavg if it's unreadable 6 years ago
romkatv eff8d47b42 add caching to prompt_dir 6 years ago
romkatv 97dbb6ab16 work around %b bugs in ZSH 5.2 6 years ago
romkatv 0de0937295 swap ahead and behind in git prompt; more logical 6 years ago
romkatv 4b4c8af9c6 add POWERLEVEL9K_VCS_COMMITS_{AHEAD,BEHIND}_MAX_NUM 6 years ago
romkatv 80a8662e5a more useful default for POWERLEVEL9K_SHORTEN_FOLDER_MARKER 6 years ago
Roman Perepelitsa 8b040d4cfd
add '.terraform' to POWERLEVEL9K_SHORTEN_FOLDER_MARKER 6 years ago
romkatv 5e72d3ca80 move source guard to the outer script 6 years ago
romkatv 091c942044 defend against aliases, especially global ones 6 years ago