Commit graph

356 commits

Author SHA1 Message Date
romkatv
620a20fc9f support branch shortening when using gitstatusd 2019-08-14 07:28:50 +02:00
romkatv
4ba78dc2be shorten git branch name if over 32 chars long; tune colors 2019-08-14 07:28:50 +02:00
romkatv
7c57ca92e7 enable nvm prompt if function nvm is defined
Same thing with a few other env prompts. Fixes #166.
2019-08-13 08:17:27 +02:00
romkatv
bafade8963 add POWERLEVEL9K_RUST_VERSION_PROJECT_ONLY and POWERLEVEL9K_GO_VERSION_PROJECT_ONLY 2019-08-12 08:56:47 +02:00
romkatv
36174484cc slightly better icons 2019-08-12 08:40:19 +02:00
romkatv
0d7ba09c4f short rust_version only when in a subdirectory of a cargo package
fixes #164
2019-08-12 08:29:59 +02:00
romkatv
55a1b92bca strip spaces from os_icon when using narrow icons 2019-08-10 11:01:47 +02:00
romkatv
626056865d add POWERLEVEL9K_RVM_SHOW_GEMSET and POWERLEVEL9K_RVM_SHOW_PREFIX
Some users want them. See https://github.com/Powerlevel9k/powerlevel9k/pull/1353.
2019-08-10 10:47:22 +02:00
romkatv
cf8b0594a3 Revert "add P9K_PROMPT_CHAR_STATE; it's experimental, don't use unless you are a trusted tester"
This reverts commit 429b07d4f8.

Fixes #154.
2019-08-09 09:18:00 +02:00
romkatv
d6401aad69 add a space after all os icons 2019-08-08 12:05:58 +02:00
romkatv
b2ddbdb90d remove one space after VCS_BRANCH_ICON when using wide icons 2019-08-08 11:42:31 +02:00
romkatv
71a0b76ac0 better distinguish between fontawesome and nerd fonts
There are fonts that aren't from Nerd Fonts and that cannot display
the python logo from Font Awesome. Classify them as awesome-fontconfig
and manually set an alternative icon for all Python segments in the
config.

Fixes #157.
2019-08-08 11:30:25 +02:00
romkatv
429b07d4f8 add P9K_PROMPT_CHAR_STATE; it's experimental, don't use unless you are a trusted tester 2019-08-07 19:10:17 +02:00
romkatv
93230ae6ec change os_icon style 2019-08-07 12:44:51 +02:00
romkatv
24a5261a39 wizard: enable os_icon for users who like many icons 2019-08-07 11:04:35 +02:00
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.
2019-08-07 08:38:26 +02:00
romkatv
36d2c588f1 ignore zshexit hook calls done from forks 2019-08-06 09:57:04 +02:00
romkatv
9d6dfeae73 add POWERLEVEL9K_VCS_CONFLICTED_MAX_NUM 2019-08-05 22:26:23 +02:00
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 2019-08-05 20:23:30 +02:00
romkatv
d8c509f5c9 require zsh 5.3 for nordvpn segment; fixes #148 2019-08-05 11:17:34 +02:00
romkatv
d0fadfff97 add another option for i686 users 2019-08-05 10:43:40 +02:00
romkatv
f62d1d5ae3 speciazled diagnostics for i686; more escapes; more opts 2019-08-05 10:37:04 +02:00
romkatv
a491e86d92 beautify temp file name when printing it 2019-08-02 07:32:22 +02:00
romkatv
0f00e5e9e2 defend against global IFS leaks from other code; for #146 2019-08-02 07:07:23 +02:00
romkatv
b6a365dd40 add P9K_NORDVPN_TECHNOLOGY 2019-08-01 23:18:13 +02:00
romkatv
a29b8264e5 source .p10k.zsh only if it exists 2019-08-01 20:03:34 +02:00
romkatv
5a94a0c9eb be less strict when detecting the presence of .p10k.zsh in .zshrc 2019-08-01 19:32:01 +02:00
romkatv
37ab63fe69 bug fix: support color names in vcs style; fixes #144 2019-08-01 15:09:39 +02:00
romkatv
3fe113f91d better errors in p10k segment 2019-07-31 19:54:49 +02:00
romkatv
8d2ffb43db add "help" and "segment" commands to p10k 2019-07-31 19:41:14 +02:00
romkatv
6d11cb5f5d format options better 2019-07-31 18:35:37 +02:00
romkatv
a6b572da45 add p10k configure 2019-07-31 18:21:37 +02:00
romkatv
aabb13e3bb add an option for an even lighter background color 2019-07-31 14:10:28 +02:00
romkatv
0c0641d579 add a teardown hook for zplugin 2019-07-31 13:03:17 +02:00
romkatv
dc8e654165 reduce wizard's minimum terminal size requirements 2019-07-31 11:40:38 +02:00
romkatv
40523128dc make classic style look decent if background color differs between segments 2019-07-31 10:16:48 +02:00
romkatv
40df756e2d run configuration wizard if POWERLEVEL9K_MODE is the only set parameter 2019-07-31 10:00:27 +02:00
romkatv
d6dedc53bc support hot reloading of gitstatus parameters 2019-07-31 09:53:00 +02:00
romkatv
2ce69f9554 add a pointer to make it easier where the separator is 2019-07-31 00:18:17 +02:00
romkatv
38a3ca7dc3 support gke kubecontext clusters that are mapped to regions instead of zones
fixes #139
2019-07-30 20:00:00 +02:00
Roman Perepelitsa
cd8d8e4594
Remove erroneous plus
Fixes #142
2019-07-30 17:24:46 +02:00
romkatv
4292efc03a cleanup 2019-07-30 15:21:44 +02:00
romkatv
2e5a085dbe run configuration wizard automatically if no POWERLEVEL9K options are defined 2019-07-30 15:11:58 +02:00
romkatv
89f3ec16d0 better message on quit 2019-07-30 15:11:38 +02:00
romkatv
f702fe5b78 add separate options for separators, heads and tails; add more choices if using nerdfont 2019-07-30 14:50:04 +02:00
romkatv
5e4628d485 fix fg color of RIGHT_PROMPT_LAST_SEGMENT_END_SYMBOL 2019-07-30 12:49:36 +02:00
romkatv
a2a21ae95a add an option for right frame without left 2019-07-30 12:37:45 +02:00
romkatv
4c08fa0621 shorten text added to ~/.zshrc and print a banner at the end of the wizard 2019-07-30 11:06:04 +02:00
romkatv
7cf4f7e57d ensure kubecontext namespace is not empty 2019-07-30 09:38:27 +02:00
romkatv
32421d296c expose more P9K_KUBECONTEXT variables for gke and eks contexts 2019-07-30 09:02:46 +02:00
romkatv
f337616738 use consisent patterns when parsing yaml 2019-07-30 07:55:18 +02:00
romkatv
05deaa802f kubecontext: handle strings with spaces and ignore multi-line strings 2019-07-30 07:52:26 +02:00
romkatv
2318bda2c3 bug fixes: don't replace '_' with ' ' in gke clusters and clear the default of POWERLEVEL9K_KUBECONTEXT_SHORTEN 2019-07-30 07:14:51 +02:00
romkatv
da7d986333 avoid printing grey text without knowing it's visible on the user's background 2019-07-30 06:18:54 +02:00
romkatv
224b62fbe4 silly typo: '\n' => $'\n'
fixes #140
2019-07-30 06:13:45 +02:00
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.
2019-07-29 21:56:15 +02:00
romkatv
63f72c756f typo 2019-07-29 19:50:01 +02:00
romkatv
3e0c898e59 make fluent prompt less ugly in classic style 2019-07-29 19:49:00 +02:00
romkatv
d872930c5c disable prompt_subst 2019-07-29 17:45:53 +02:00
romkatv
742ddb459f better diagnostics for small screens 2019-07-29 17:43:25 +02:00
romkatv
deb0093a02 add a screen for selecting background color 2019-07-29 17:33:35 +02:00
romkatv
bdc211b64f add nodeenv parameters similar to other envs 2019-07-29 16:10:28 +02:00
romkatv
6e85de122f add an option to insert prefixes similar to spaceship 2019-07-29 15:38:42 +02:00
romkatv
b830c5cc45 comments 2019-07-29 15:32:42 +02:00
romkatv
ba39eb3421 support POWERLEVEL9K_CONTEXT_${state}_TEMPLATE 2019-07-29 14:36:21 +02:00
romkatv
bab487aa6e quote process subs 2019-07-29 14:18:57 +02:00
romkatv
cdbbebf19d add an option to enable/disable useless icons 2019-07-29 13:15:14 +02:00
romkatv
9a7d86d1f2 fix MULTILINE_*_PREFIX icons for awesome-mapped-fontconfig and remove dollars 2019-07-29 12:45:28 +02:00
romkatv
f4cdf0e0eb fix POWERLEVEL9K_DIR_CLASSES 2019-07-29 12:38:47 +02:00
romkatv
2cc7df757b Revert "fork before calling _p9k_init_icons"
This reverts commit 6699d15df9.
2019-07-29 11:38:34 +02:00
romkatv
6699d15df9 fork before calling _p9k_init_icons 2019-07-29 11:29:57 +02:00
romkatv
e4f04403d0 add an option to remove frame 2019-07-29 11:23:42 +02:00
romkatv
a471454b60 make wizard colors work better in Solarized Dark 2019-07-29 10:40:08 +02:00
romkatv
81aa7185e2 update colors to match changes in configs 2019-07-29 10:22:41 +02:00
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.
2019-07-29 10:07:42 +02:00
romkatv
d963f10db9 change EXECUTION_TIME_ICON and NODE_ICON in the default mode; many fonts couldn't render these 2019-07-29 07:55:54 +02:00
Roman Perepelitsa
e3f5a1c343
grammar 2019-07-28 21:25:46 +02:00
romkatv
4f94d1d640 typo 2019-07-28 20:38:24 +02:00
romkatv
d9e2d122f9 fix bugs in font detection 2019-07-28 19:41:24 +02:00
romkatv
d323cad788 print empty line at the end 2019-07-28 19:02:07 +02:00
romkatv
3466b385ff expose p9k_configure 2019-07-28 18:54:02 +02:00
romkatv
fb88f83c92 add p9k_configure 2019-07-28 18:53:45 +02:00
romkatv
c87396abcb add -f and straight 2019-07-28 18:53:32 +02:00
romkatv
4f482aa7e0 better zshrc writing 2019-07-28 17:29:56 +02:00
romkatv
444245ecc6 more wizard options 2019-07-28 16:40:05 +02:00
romkatv
fcc769c58b tune default mode icons 2019-07-28 16:39:21 +02:00
romkatv
0378a0a54c cleanup 2019-07-28 12:19:51 +02:00
romkatv
e28d0c37c9 add configure.zsh 2019-07-28 12:16:05 +02:00
romkatv
8edb59049a check that wizard can run 2019-07-28 11:37:00 +02:00
romkatv
0955a5637d cleanup 2019-07-28 11:36:40 +02:00
romkatv
ebd32c8cbe simplify code 2019-07-28 10:34:06 +02:00
romkatv
1731b69f5f wizard: encode generation source and options 2019-07-28 10:22:35 +02:00
romkatv
3a741475f8 more progress on the wizard 2019-07-27 20:37:34 +02:00
romkatv
10fd41d187 font config wizard 2019-07-27 18:30:20 +02:00
romkatv
4a59f7f422 Merge branch 'master' into dev 2019-07-27 13:47:54 +02:00
romkatv
57b1f1aa74 default background to black in p9k_prompt_segment; comments 2019-07-27 13:20:27 +02:00
romkatv
b27ff42ac3 do nothing in p9k_prompt_segment if not called by p10k 2019-07-27 13:18:09 +02:00
romkatv
80770d6a79 fix status on zsh 5.1 2019-07-27 12:27:56 +02:00
romkatv
b66d6a7105 typo 2019-07-27 12:14:16 +02:00
romkatv
436740db8e fix many bugs in status related to pipelines 2019-07-27 12:09:09 +02:00
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.
2019-07-27 00:19:04 +02:00
romkatv
01e66aab67 add a few extra states and parameters to make it possible to configure decent status 2019-07-26 15:35:46 +02:00
romkatv
c025a878fd draft notes for configuration wizard 2019-07-26 11:03:56 +02:00
romkatv
cef049e0de nordvpn: add CONNECTING and DISCONECTING states, remove OTHER
See https://github.com/romkatv/powerlevel10k/issues/133.
2019-07-26 10:20:40 +02:00
romkatv
0e31c204f7 cleanup in nordvpn 2019-07-25 17:54:12 +02:00
romkatv
fb50402fc9 remove junk 2019-07-25 14:18:11 +02:00
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.
2019-07-25 14:12:11 +02:00
romkatv
07eae5942d optimize style escaping 2019-07-24 23:05:41 +02:00
romkatv
80fc1fd56a comments 2019-07-24 22:23:54 +02:00
romkatv
694084dd6a document p9k_prompt_segment 2019-07-24 22:18:10 +02:00
romkatv
043ae21090 stop passing arguments to prompt_* functions; rename some internal functions 2019-07-24 21:07:28 +02:00
romkatv
82698c179b delete prompt_icons_test 2019-07-24 19:58:07 +02:00
romkatv
6eaa39e370 daemonize async pump 2019-07-24 19:42:47 +02:00
romkatv
1402ca55b1 correctly handle ZLE_RPROMPT_INDENT changes 2019-07-24 19:11:43 +02:00
romkatv
5a9c774d79 reinit on param changes 2019-07-24 18:34:29 +02:00
romkatv
d9f0922945 make prompt_powerlevel9k_teardown and prompt_powerlevel9k_setup reentrant 2019-07-24 15:52:54 +02:00
romkatv
40fa321cc2 move icons.zsh to internal 2019-07-24 15:06:36 +02:00
romkatv
be1a97bf47 inline colors.zsh, utilities.zsh and vcs.zsh 2019-07-24 15:01:26 +02:00
romkatv
4a9f441c7b rename all internal vars 2019-07-24 14:34:26 +02:00
romkatv
49768006de bug fixes 2019-07-24 12:47:56 +02:00
romkatv
202f781e59 s/P9K_NODE_VERSION_PROJECT_ONLY/POWERLEVEL9K_NODE_VERSION_PROJECT_ONLY 2019-07-23 23:17:01 +02:00
romkatv
12a99c087d continue param refactoring 2019-07-23 16:20:59 +02:00
romkatv
d63fd9a873 start massive refactoring of config params 2019-07-23 15:47:25 +02:00
romkatv
94efac6aab less escaping 2019-07-23 10:00:18 +02:00
romkatv
608684757a more intelligent quoting of expansions 2019-07-23 09:16:47 +02:00
romkatv
37f0a4d548 cleanup 2019-07-22 23:19:04 +02:00
romkatv
6b9a2e0cec got overexcited with backslashes 2019-07-22 23:14:53 +02:00
romkatv
ee44359256 wrap unescaped multiline prefixes; fixes #125 2019-07-22 22:43:35 +02:00
romkatv
66d09d6f31 add POWERLEVEL9K_ICON_BEFORE_CONTENT 2019-07-21 19:43:14 +02:00
romkatv
8300a1e363 add POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_EXPANSION 2019-07-21 18:54:08 +02:00
romkatv
5dd3ecab5f make gap between left and right prompt customizable 2019-07-21 10:48:57 +02:00
romkatv
fa0c447817 don't use state CHARGED when the battery is at 100% and discharging; use DISCONNECTED instead 2019-07-20 15:40:15 +02:00
romkatv
dc601559fa propagate _P9K_SSH similar to Pure 2019-07-20 14:14:42 +02:00
romkatv
c4d3ec2cc5 add POWERLEVEL9K_COMMAND_EXECUTION_TIME_FORMAT 2019-07-20 12:41:52 +02:00
romkatv
ef06651f68 bug fix: default {RIGHT,LEFT}_MIDDLE_WHITESPACE to space 2019-07-19 23:28:06 +02:00
romkatv
259a2954cd typo 2019-07-19 22:50:26 +02:00
romkatv
d65e7eb926 bug fix: don't update _P9K_BG and _P9K_I when a segment has empty content and icon 2019-07-19 14:59:44 +02:00
romkatv
fa457a3282 fix purge when dir contains weird shit 2019-07-19 14:27:16 +02:00
romkatv
d81b4dbf68 speed up truncate_to_unique 2019-07-19 14:19:24 +02:00
romkatv
b7a8139e97 fix POWERLEVEL9K_DIR_MAX_LENGTH 2019-07-19 13:29:54 +02:00
romkatv
233b5c7c88 add POWERLEVEL9K_DIR_MAX_LENGTH 2019-07-18 17:50:37 +02:00
romkatv
ebb08c881f add POWERLEVEL9K_DIR_SHORTENED_FOREGROUND 2019-07-18 16:29:45 +02:00
romkatv
ff24a9f42b add POWERLEVEL9K_DIR_ANCHOR_BOLD and POWERLEVEL9K_DIR_ANCHOR_FOREGROUND 2019-07-18 14:20:04 +02:00
romkatv
3dac653c52 fix styling bugs in dir 2019-07-18 13:30:34 +02:00
romkatv
cd4d1358b3 fix quoting in dir 2019-07-18 13:09:56 +02:00
romkatv
86d6412988 grammar 2019-07-18 12:50:04 +02:00
romkatv
c5f32d1ea5 add POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS and POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT 2019-07-18 12:49:32 +02:00
romkatv
d41e18416f finish auto-shrinking dir; still not tested yet 2019-07-18 12:21:54 +02:00
romkatv
394dffa77b Merge branch 'master' into dev 2019-07-17 23:25:08 +02:00
romkatv
f37d7e6742 don't update time unnecessarily 2019-07-17 23:24:53 +02:00