1
0
Fork 0
mirror of https://github.com/romkatv/powerlevel10k.git synced 2024-09-21 19:10:08 +00:00
Commit graph

467 commits

Author SHA1 Message Date
romkatv d4265ab279 replace TRAPINT function with trap statement; the former triggers memory corruption bug in zsh 2019-11-04 17:06:42 +01:00
romkatv 551dd0c277 remove eval 2019-11-04 13:07:25 +01:00
romkatv adb6f92f59 fix empty_line and ruler in instant prompt; speed up regular prompt 2019-11-04 10:40:03 +01:00
romkatv 35fd701b45 set POWERLEVEL9K_NEW_TTY_MAX_AGE_SECONDS to 5 by default 2019-11-04 09:48:35 +01:00
romkatv 5d729b635d speed up p10k display 2019-11-04 09:23:57 +01:00
romkatv d0ff9df8d0 return => return 0 2019-11-04 09:07:06 +01:00
romkatv e3a2716afa call p10k-on-pre-prompt from instant prompt 2019-11-03 16:58:01 +01:00
romkatv 561f3734a9 trap sigint 2019-11-03 14:29:11 +01:00
romkatv 1d0ee7cbdd add p10k-on-post-prompt 2019-11-03 13:56:51 +01:00
romkatv 232e312b4d add p10k-on-pre-prompt 2019-11-03 13:36:49 +01:00
romkatv a2657e339a make frame hidable 2019-11-03 13:14:16 +01:00
romkatv 5262ddc07e don't use _p9k__{ruler,empty_line}_idx in p10k display 2019-11-03 12:19:22 +01:00
romkatv b6df93d250 allow unset _p9k__{ruler,empty_line}_i 2019-11-03 12:09:54 +01:00
romkatv e1687af750 faster p10k display 2019-11-03 11:20:52 +01:00
romkatv d3fd5940cc support negative line numbers 2019-11-03 10:00:48 +01:00
romkatv 0e95c532ea wip: some more churn on dynamic stuff 2019-11-02 19:03:45 +01:00
romkatv d9c587a8d7 wip: some churn on dynamic stuff 2019-11-02 14:18:57 +01:00
romkatv 99e632f97d add POWERLEVEL9K_<segment>_DISABLED_DIR_PATTERN
This parameter allows you to disable a given prompt segment in
any directory that matches the specified pattern.

For example, if you have a Git repository in /foo/bar for which
you don't want to see Git status in prompt, define the following
parameter:

    POWERLEVEL9K_VCS_DISABLED_DIR_PATTERN='/foo/bar(|/*)'

See #300.
2019-11-02 10:45:38 +01:00
romkatv 1b2990ecb3 fix an error message printed for 32-bit intel users; see https://github.com/romkatv/gitstatus/issues/73 2019-10-30 20:04:29 +01:00
romkatv 2057080ec2 fix an error message printed for 32-bit intel users; see https://github.com/romkatv/gitstatus/issues/73 2019-10-30 19:13:15 +01:00
romkatv 3377990a6f wip: dynamic shit 2019-10-29 15:54:30 +01:00
romkatv 37fbc8c7ea transient_rprompt hides gap 2019-10-29 12:34:00 +01:00
romkatv 806ec183ff add p10k display command 2019-10-28 22:12:42 +01:00
romkatv 4e3953566f speed up truncate_to_unique 2019-10-28 17:54:50 +01:00
romkatv dc7cfc78a4 remove debug logs 2019-10-28 17:25:06 +01:00
romkatv 8cb81ecd90 cheaper cache key in dir 2019-10-28 17:07:11 +01:00
romkatv c6c0ee59d7 speed up dotnet 2019-10-28 17:06:05 +01:00
romkatv daee88bc01 don't stat unnecessary dirs 2019-10-28 15:54:53 +01:00
romkatv 6914a23b44 work around bugs in Hyper
The bug in Hyper (https://github.com/zeit/hyper/issues/3586) is
similar to the one in VTE but it takes Hyper at least 100 times
longer to report correct TTY (Hyper is slow in general, so this
isn't surprising.)
2019-10-28 15:19:51 +01:00
romkatv 826d8adf44 speed up direnv and improve its rendering in instant prompt 2019-10-27 20:31:35 +01:00
romkatv d7f2667676 allow individual segments to be hidden or shown with low latency 2019-10-27 18:18:15 +01:00
romkatv 6c8b24760c speed up prompt by 2ms when there are many POWERLEVEL9K parameters 2019-10-27 17:16:44 +01:00
romkatv f722f3d1ce add direnv segment; fixes 291 2019-10-27 11:27:03 +01:00
romkatv 6096321f61 move _p9k_precmd to the end of precmd_functions 2019-10-27 10:48:17 +01:00
romkatv dfe6a86eb3 don't display ruler in instant prompt when the terminal size is unknown 2019-10-26 22:39:56 +02:00
romkatv d443fccddb better warnings 2019-10-26 21:14:25 +02:00
romkatv 28795b43ce reset style before percent-expanding PROMPT_EOL_MARK 2019-10-26 21:11:39 +02:00
romkatv bdb18cbe2f pick the correct default for PROMPT_EOL_MARK 2019-10-26 21:06:07 +02:00
romkatv 627d471fca improve instant prompt usability, update docs and add an option to the wizard to enable it 2019-10-26 20:43:38 +02:00
romkatv f17081ca98 when unable to get tty size for instant prompt, don't emulate prompt_sp and don't print right prompt or gap 2019-10-25 14:43:36 +02:00
romkatv a42b58a93a make right prompt hidable even on the last line 2019-10-25 13:34:37 +02:00
romkatv 5a75b1bfc9 bug fix: unset _p9k__* 2019-10-25 13:33:52 +02:00
romkatv 61bba0f6ee use _p9k__* naming pattern for variables that must not be dumped but must be unset 2019-10-25 13:22:50 +02:00
romkatv 8a2c9430f3 make right prompt hidable 2019-10-25 13:03:58 +02:00
romkatv 863cf50703 fix handling of transient_rprompt 2019-10-25 09:33:28 +02:00
romkatv 88cc59a08a add ${+VTE_VERSION} to param_sig; fix locale-related parts 2019-10-25 09:19:40 +02:00
romkatv a14d8e92dd short-circuit double sourcing of the theme 2019-10-24 18:02:57 +02:00
romkatv 7ab85fbfc3 bug fix: unset _p9k_preinit when tearing down 2019-10-24 18:01:44 +02:00
romkatv b91cba49aa add POWERLEVEL9K_VCS_RECURSE_UNTRACKED_DIRS 2019-10-24 14:16:40 +02:00
romkatv ebf19dfeee add todo 2019-10-24 10:33:44 +02:00
romkatv 7fbba216b0 no_bg_nice to avoid spam on wsl 2019-10-22 19:58:40 +02:00
romkatv e92da0e322 Merge branch 'instant-prompt' 2019-10-22 15:51:45 +02:00
romkatv 0249484302 bump version 2019-10-21 23:43:27 +02:00
romkatv a410349090 redirect stdin to /dev/null while instant prompt is active 2019-10-21 22:04:37 +02:00
romkatv cf01e98ef0 define P9K_TODO_FILTERED_TASK_COUNT and P9K_TODO_TOTAL_TASK_COUNT
These new parameters can be used to customize the content of `todo` prompt.

Example:

    POWERLEVEL9K_TODO_CONTENT_EXPANSION='$P9K_TODO_FILTERED_TASK_COUNT / $P9K_TODO_TOTAL_TASK_COUNT'

The default format is '$P9K_TODO_TOTAL_TASK_COUNT', just like before.

Fixes #283.
2019-10-21 21:31:44 +02:00
romkatv d2361d4dda typo 2019-10-21 15:28:31 +02:00
romkatv 56a7d6c245 apply the stty size workaround only when using VTE 2019-10-21 15:07:54 +02:00
romkatv 2b860eea53 add no_aliases to a bunch of places 2019-10-21 14:30:53 +02:00
romkatv 981774f178 better workaround for the lying stty size
See https://github.com/gnunn1/tilix/issues/1777.
2019-10-21 11:14:33 +02:00
romkatv 2a0c31f0eb call /bin/stty size to obtain correct COLUMNS 2019-10-20 22:17:37 +02:00
romkatv 7a2bd8ffa8 workaround for a bug in tilix: $COLUMNS is incorrect in the new shell immediately after splitting; it becomes correct after forking 2019-10-20 21:30:43 +02:00
romkatv b4e1f1f029 revert testing changes 2019-10-20 16:46:05 +02:00
romkatv 32f363a1b1 move p10k-instant-prompt-finalize to the static source file 2019-10-20 10:56:11 +02:00
romkatv cf2eef5556 add p10k-instant-prompt-finalize 2019-10-20 10:49:03 +02:00
romkatv d17f22e5b0 better handling of XDG_CACHE_HOME changes 2019-10-20 10:36:41 +02:00
romkatv cb2473751e add diagnostics when prompt_cr is set after sourcing p10k with instant prompt; improve diagnostics for delayed loading of p10k with instant prompt 2019-10-20 10:15:35 +02:00
romkatv f11f76ec5b slightly better handling of options and disabling of instant prompt 2019-10-20 09:34:42 +02:00
romkatv ad16896b9d bump instant prompt version 2019-10-19 20:24:40 +02:00
romkatv fde23891a4 unsetopt prompt_cr prompt_sp from p10k-instant-prompt for good measure 2019-10-19 20:11:47 +02:00
romkatv 461d1ca43d clear instant prompt a little bit later 2019-10-19 18:28:14 +02:00
romkatv a1bab30690 don't use prompt segments with non-hermetic expansions in instant prompt 2019-10-19 16:47:19 +02:00
romkatv 148a8500c1 fix bugs in instant prompt 2019-10-19 16:01:21 +02:00
romkatv 3cf30a25e4 fix bugs in instant prompt 2019-10-19 15:34:37 +02:00
romkatv 41c0a87918 wip: instant prompt (part 4) 2019-10-19 14:55:38 +02:00
romkatv 68d6ffd844 wip: instant prompt (part 3) 2019-10-19 12:33:39 +02:00
romkatv 4536dc2a27 Merge branch 'master' into instant-prompt 2019-10-19 08:35:28 +02:00
romkatv f2cd89ed70 work around a bug in zsh that percent-expands %1F{2} as if it was %F{2}; fixes #270 2019-10-19 07:40:27 +02:00
romkatv 41084c089e wip: instant prompt (part 2) 2019-10-18 16:22:11 +02:00
romkatv 164fcad558 save git prompt in ephemeral cache 2019-10-17 22:23:14 +02:00
romkatv 727b483810 wip: instant prompt 2019-10-16 17:36:54 +02:00
romkatv 94de8519b4 cleanup 2019-10-16 16:19:41 +02:00
Melvyn de Kort abf1e3b0af Also show the default profile when set 2019-10-16 16:18:56 +02:00
Melvyn de Kort 9fdbd4a3e7 Add support for awsume 2019-10-16 16:18:56 +02:00
romkatv f21a2e3c46 add ITERM_SHELL_INTEGRATION_INSTALLED to param sig; inline iterm2_prompt_mark 2019-10-16 10:43:07 +02:00
romkatv fc404a2d8a bug fix: display the right OS icon on Android 2019-10-13 11:48:29 +02:00
romkatv d7b79a39d5 bug fix: set correct gitstatusd path on android 2019-10-11 17:39:57 +02:00
romkatv e85a07aad9 bug fix: normalize colors 2019-10-11 16:53:50 +02:00
romkatv 5b9e75be3a add POWERLEVEL9K_BATTERY_LEVEL_FOREGROUND; fixes #256 2019-10-11 10:33:49 +02:00
romkatv e31abb850b bug fix: wrap zle-line-finish even on hot start 2019-10-09 23:54:47 +02:00
romkatv bb6540ae6e remove spurious execute permissions 2019-10-09 23:32:41 +02:00
romkatv 9a01aeb673 use jq in azure if available 2019-10-09 23:31:33 +02:00
romkatv 6724f3ae5d md5 -q => md5 2019-10-09 20:04:09 +02:00
romkatv ab160b49f5 add two-level fs cache and use it everywhere instead of the one-level cache 2019-10-09 19:57:18 +02:00
romkatv 7f3637ee0d persist cache more aggressively 2019-10-09 17:45:30 +02:00
romkatv e02d3f1156 don't persist Git state 2019-10-09 16:24:23 +02:00
romkatv cf8d241465 cleanup 2019-10-08 16:05:17 +02:00
romkatv b56ab6400c revamp aws_eb_env. it returns the starred entry from the output of "eb list" 2019-10-08 16:03:39 +02:00
romkatv eb603f0e75 typo 2019-10-08 14:51:16 +02:00
romkatv d48ebac02f bump state version 2019-10-08 14:42:41 +02:00
romkatv 53ce6eb71d save and restore VCS_STATUS_NUM_UNSTAGED_DELETED 2019-10-08 14:42:07 +02:00
romkatv 4ef1a9bbdd add azure prompt segment 2019-10-08 13:46:39 +02:00
romkatv a891b3c2d1 bump state version 2019-10-08 13:05:43 +02:00
romkatv d4cbe14f06 check for gitstatus.plugin.zsh existence in preinit 2019-10-08 13:02:44 +02:00
romkatv 6cd22e24e2 avoid spurious console output where is more more than one dir segment 2019-10-08 09:46:24 +02:00
romkatv 1b0ac8a623 bug fix: respect POWERLEVEL9K_DISABLE_GITSTATUS; see #246 2019-10-07 11:32:00 +02:00
romkatv 3db63ee611 Revert "add POWERLEVEL9K_DEBUG_DUMP_STATE to aid in debugging #244"
This reverts commit 55a27c1f07.
2019-10-07 10:05:50 +02:00
romkatv 55a27c1f07 add POWERLEVEL9K_DEBUG_DUMP_STATE to aid in debugging #244 2019-10-06 10:38:05 +02:00
romkatv 99c9a2ea25 write function _p9k_preinit directly instead of roundtripping it through eval + functions 2019-10-06 10:29:23 +02:00
romkatv 6d16760253 bug fix: don't leave temp state dumps if gitstatus is disabled 2019-10-05 09:57:13 +02:00
romkatv f8314e5959 stop autoloading and running "color"; p10k does not use it anymore; people who need it can autoload it themselves 2019-10-04 09:48:53 +02:00
romkatv 6765b61823 replace eval with (e) 2019-10-04 09:44:21 +02:00
romkatv 9c8cf7ac5f dump state even if the cache directory is world-readable 2019-10-04 08:55:15 +02:00
romkatv 4faa24a23d require zsh >= 5.4 for state dumps 2019-10-03 20:42:35 +02:00
romkatv de00d42d6e don't zcompile state dump when root 2019-10-03 20:41:21 +02:00
romkatv d435235c29 take advantage of async gitstatus start to make p10k startup faster 2019-10-03 20:14:16 +02:00
romkatv 60a6ad81dd further startup speedup: zcompile state dump 2019-10-03 14:52:52 +02:00
romkatv 0cb680edd1 fix bugs in startup speedup and make it yet faster 2019-10-03 14:21:58 +02:00
romkatv b8d648b339 Revert "Revert "speed up startup by about 3x""
This reverts commit e5e6249ffd.
2019-10-03 09:42:02 +02:00
romkatv e5e6249ffd Revert "speed up startup by about 3x"
This reverts commit da72685c8b.

Something broke. See #242. Will debug this and roll forward later.
2019-10-02 19:40:50 +02:00
romkatv da72685c8b speed up startup by about 3x 2019-10-02 15:29:23 +02:00
romkatv add0875137 bug fix: set _p9k_keymap whenever vi_mode is in use
fixes #232
2019-09-25 09:22:34 +02:00
romkatv cf00c04d1b aws: consult AWS_VAULT; hide if "default" 2019-09-24 14:29:21 +02:00
romkatv 4a4f7e1eef new prompt segment: dotnet_version
To enable this segment:

  1. Run `p10k configure`.
  2. Open `~/.p10k.zsh` and search for `dotnet_version`.
  3. Uncomment the first occurrence.

Fixes #233.
2019-09-24 10:19:11 +02:00
romkatv 15ff12279c be more lenient towards awful hacks that zplugin users employ 2019-09-20 12:09:47 +02:00
romkatv 8c695f9ad7 survive faulty fifos 2019-09-20 11:44:07 +02:00
romkatv 0067e0d4a1 survive emulate sh; fixes #226 2019-09-20 11:22:14 +02:00
romkatv 6b234b789d add OVERWRITE vi mode
When using vi_mode segment, the new mode can be enabled by
defining POWERLEVEL9K_VI_OVERWRITE_MODE_STRING.

    POWERLEVEL9K_VI_OVERWRITE_MODE_STRING=OVERWRITE

When using prompt_char, the new mode can be enabled by defining
POWERLEVEL9K_PROMPT_CHAR_OVERWRITE_STATE=true. The prompt symbol
in OVERWRITE state defaults to '▶'. It can be customized by
defining POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIOWR_CONTENT_EXPANSION.

    POWERLEVEL9K_PROMPT_CHAR_OVERWRITE_STATE=true
    POWERLEVEL9K_PROMPT_CHAR_OK_VIOWR_CONTENT_EXPANSION=R
    POWERLEVEL9K_PROMPT_CHAR_ERROR_VIOWR_CONTENT_EXPANSION=R

Fixes #219.
2019-09-18 13:38:31 +02:00
romkatv 79e0190ba1 s/CONFLICTING/CONFLICTED/ for consistency; see #221 2019-09-18 13:20:33 +02:00
romkatv 80d9df7117 add CONFLICTING state to vcs
The new state is used whenever there is at least one conflicting
change. It is disabled by default. It can be enabled by
defining POWERLEVEL9K_VCS_CONFLICTING_STATE=true.

    POWERLEVEL9K_VCS_CONFLICTING_STATE=true
    POWERLEVEL9K_VCS_CONFLICTING_BACKGROUND=magenta

Fixes #221.
2019-09-18 10:45:30 +02:00
romkatv ebe6a5198d survive SH_WORD_SPLIT; fixes #220 2019-09-17 21:41:07 +02:00
romkatv f79ad65243 more robust KEYMAP handling 2019-09-17 09:59:39 +02:00
romkatv 2218060b2d don't assume that KEYMAP is valid everywhere within zle 2019-09-16 13:45:06 +02:00
Frankie Wittevrongel 71329b12f2
Fix typo in declare POWERLEVEL9K_DIR_ANCHOR_BOLD 2019-09-15 19:50:08 +01:00
romkatv 8554c755bd print new line(s) in precmd instead of embedding them in PROMPT 2019-09-12 11:45:17 +02:00
romkatv 9c9039253c put most of precmd code under !zle 2019-09-12 11:35:24 +02:00
romkatv 3674e69b43 stop setting prompt_cr and prompt_sp 2019-09-12 10:58:37 +02:00
romkatv 040be70d92 change the default value of POWERLEVEL9K_VPN_IP_INTERFACE to recognize wireguard 2019-09-12 10:55:56 +02:00
romkatv fd96e92df6 show battery as CHARGED on macos if it is at 100% and connected to power supply 2019-09-09 14:48:32 +02:00
romkatv 9a8a6ca836 allow prompt segments to be disabled through configuration options
Prompt segment `foo` doesn't get evaluated or shown on the left
if `${POWERLEVEL9K_FOO_LEFT_DISABLED-$POWERLEVEL9K_FOO_DISABLED}`
is equal to `true`.

Example:

    POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir)
    POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(dir)

  - By default `dir` is shown on the left and on the right.
  - `POWERLEVEL9K_DIR_LEFT_DISABLED=true` disables `dir` on the left.
  - `POWERLEVEL9K_DIR_RIGHT_DISABLED=true` disables `dir` on the right.
  - `POWERLEVEL9K_DIR_DISABLED=true` disables `dir` everywhere.

Note that it's possible to hide segments without disabling their
evaluation through expansions. For example:

  POWERLEVEL9K_DIR_CONTENT_EXPANSION='${HIDE_DIR-$P9K_CONTENT}'
  POWERLEVEL9K_DIR_VISUAL_IDENTIFIER_EXPANSION='${HIDE_DIR-$P9K_VISUAL_IDENTIFIER}'

With these settings, `HIDE_DIR=''` hides `dir` while `unset HIDE_DIR`
restores it.

fixes #205
2019-09-07 10:05:56 +02:00
romkatv b394a601a0 if auto_name_dirs is set, show directory without named directory support 2019-09-04 08:40:24 +02:00
romkatv 1547336bb6 don't set prompt_cr
Some users prefer to have broken prompt if the last line of command
output doesn't end in \n. Powerlevel10k should respect their choice.

See #197.
2019-09-02 13:52:17 +02:00
romkatv 8ace14beb0 don't set prompt_sp
Some users prefer to hide the last line of command output if it
doesn't end in \n. Powerlevel10k should respect their choice.

See #197.
2019-09-02 13:19:38 +02:00
romkatv 4bed2dc8c0 wizard: add an option to enable time segment 2019-09-01 14:43:16 +02:00
romkatv fff03ea888 change the default value of POWERLEVEL9K_VPN_IP_INTERFACE 2019-08-30 12:01:35 +02:00
romkatv eb58f05621 fix load fg color 2019-08-29 18:28:04 +02:00
romkatv 6582c7b25e include auto_name_dirs in the config signature 2019-08-29 11:42:14 +02:00
romkatv 84a562eca6 typo 2019-08-28 21:49:08 +02:00
romkatv ce532fea3e try POWERLEVEL9K_DIR_PACKAGE_FILES patterns in order and skip files without "name" in them; fixes #190 2019-08-28 19:32:10 +02:00
romkatv 9e505d3dc1 allow network interface to contain colon 2019-08-28 19:00:55 +02:00
romkatv 5f610a0af9 fix network interface and ip parsing 2019-08-28 18:55:33 +02:00