Commit Graph

993 Commits (9486385824c793d2c64db4354638f814011c5057)

Author SHA1 Message Date
romkatv a6a2d9a481 stop loading icons.zsh lazily; print boundaries in get_icon_names
romkatv d9da275e9e more robust zcompile
romkatv e5f2d39a16 drop cache when path to uname changes
Fixes https://github.com/romkatv/gitstatus/issues/102.
romkatv 31757b3f6c punctuation
romkatv a1c964b49d bug fix: don't chmod inexisting file
romkatv e750c26266 don't crap out when using more than one prompt_char
romkatv f02997a8f0 notes
romkatv 7cbaed976d unset WIDGET when calling p10k-on-post-widget from _p9k_on_expand
romkatv 7c1cc0c487 call p10k-on-pre-prompt on every precmd; call widget hooks right after when in zle
romkatv 3fe66ba74a Revert "call _p9k_on_expand and subsequenty p10k-on-pre-prompt on every precmd, even when called from zle"
This reverts commit a6363401bb.
romkatv a6363401bb call _p9k_on_expand and subsequenty p10k-on-pre-prompt on every precmd, even when called from zle
romkatv ac39345713 notes
romkatv 1a9f317650 wizard: gracefully handle non-writable ~/.zshrc
romkatv 1061d1c516 Merge branch 'readonly-fix' of https://github.com/Brettm12345/powerlevel10k into Brettm12345-readonly-fix
brettm12345 cc796d9cda
Oop
brettm12345 fdef2c08d4
Remove extra line
brettm12345 ea95789078
Return an error
brettm12345 9017e5815c
Remove the extra variable and inline the test
brettm12345 ae4650b40d
Use `[[ ]]` instead of `test`
brettm12345 cb6351436a
Change variable name and fix warning
brettm12345 9cd3bfdea1
Warn user if they try to modify their `.zshrc`
brettm12345 fe27e57de6
Added the `__p9k_readonly_zsh` variable
romkatv 944ea827d2 notes
romkatv efa7b4a51d notes
romkatv a3282100f0 bug fix: truncate_to_last didn't behave like %1~ in / and /foo
romkatv 27af39ffe8 notes
romkatv ae42177fa4 bump version
romkatv 4386b5a6e7 remove "PHP" from php_version
romkatv 84097d9073 speed up laravel_version
romkatv 04e0cfa670 add POWERLEVEL9K_PHP_VERSION_PROJECT_ONLY; use PHP_ICON in php_version
romkatv 245a420499 add phpenv prompt segment; see
romkatv e7bf217ed5 more robust prompt options management
romkatv c4ffe42f7d notes
romkatv 69fce3e1fc speed up worker chatter
romkatv 4f7efdcc8b bug fix: detect gcloud config changes when using non-default configs
romkatv 9a0e093e0e disable mmap when loading powerlevel10k; maybe it'll help with
romkatv 3fff07357d bump version
romkatv 24507b9744 asdf bug fix: call list-legacy-filenames only when legacy_version_file = yes
Fixes .
romkatv 1588693400 notes
romkatv e1ff1a7fdf notes
romkatv 37c88f4347 notes
romkatv 6987a7e8a8 add POWERLEVEL9K_${SEGMENT}_${STATE}_SHOW_ON_UPGLOB with regular fallback; see
romkatv 3ca90731b0 make SHOW_ON_COMMAND work with legacy custom prompts; see
romkatv d71d1409c4 fix `p10k display -a`
romkatv f06be72977 notes
romkatv 1cab51ae9f notes
romkatv c7ca5453e2 notes
romkatv 2969546bbf don't use POWERLEVEL9K_* params after init; simplify asdf
romkatv cdbf25a5e6 notes
romkatv 6f4840b463 minor bug fix in nordvpn plus cleanup of the same
romkatv b86eb6a037 cleanup
romkatv 924dfe6889 comments
romkatv 9fcc380cac make fewer sysread calls
romkatv 47400657ec don't persist fprint cache
romkatv 30a54b1d5e dump state and instant prompt from zle (no more forking)
romkatv f01c200e98 rename many _p9k_ vars to _p9k__; trigger state dump when timewarrior and asdf caches change
romkatv b6cf0cf9ec bug fix: persist _p9k_dumped_instant_prompt_sigs changes
romkatv 0cb64f6474 bump version
romkatv 540f895669 bug fix: handle empty versions in legacy asdf files correctly
romkatv 160fb52f47 bug fix: don't crap out when file names contain colon
See .
romkatv 6a79008aec notes
romkatv 59f8d186b6 add POWERLEVEL9K_ASDF_${plugin}_SHOW_SYSTEM with fallback to POWERLEVEL9K_ASDF_SHOW_SYSTEM
romkatv 8be5750ccc add POWERLEVEL9K_ASDF_${plugin}_{SOURCES,PROMPT_ALWAYS_SHOW} with fallback to POWERLEVEL9K_ASDF_{SOURCES,PROMPT_ALWAYS_SHOW}
romkatv fd30ed1560 add icons (for asdf): ERLANG_ICON, ELIXIR_ICON, POSTGRES_ICON
romkatv f9f3aa594a add spaces after a few icons that tend to be very wide in non-monospace fonts
romkatv 730ef08dfb Merge branch 'master' into asdf
romkatv 80139d8949 add NODEJS_ICON and DOTNET_CORE_ICON (for asdf)
romkatv f788f6b4bd asdf: replace "-" with "_" when converting to upper case
romkatv 44c479a819 add asdf prompt segment
romkatv 17d3dc78fe pick up `ifconfig` and `ip` from PATH
Apparently there are systems on which these tools are not in /sbin.
Fixes .
romkatv a5b5945792 Merge branch 'master' into asdf
romkatv d716875918 replace terraform icon; several terminals have bugs that prevent them from rendering the current icon correctly
David Ward a06bbdc196
respect TIMEWARRIORDB environment variable ()
Signed-off-by: David Ward <dward@redhat.com>
romkatv 75e5712cd0 slightly shorter bandwidth display
romkatv 01cce2c4eb fix netstat parsing on macos
romkatv 80015c7c71 fix netstat parsing on macos
romkatv d9b9aa4383 add network bandwidth stats to `ip` segment
romkatv 7354eeaa96 workaround for a bug in sysread
There is a bug in sysread from zsh/system. It triggers in the
following case:

1. zsh has been compiled with HAVE_SELECT and without HAVE_POLL.
2. sysread is called with timeout (-t).
3. the input file descriptor is valid but there is no data to read.
4. errno happens to be EINTR prior to the call to sysread.

This results in an infinite loop in sysread:

  while ((ret = select(infd+1, (SELECT_ARG_2_T) &fds,
                       NULL, NULL,&select_tv)) < 1) {
    if (errno != EINTR || errflag || retflag || breaks || contflag)
      break;
  }

Here select() keeps returning 0, indicating timeout. This is not an
error, so errno doesn't get set. If it was EINTR prior to the call,
it stays EINTR, and the loop keeps spinning.

As a workaround, powerlevel10k sets errno to ENOTTY (any value other
than EINTR will do) prior to calling sysread with timeout.
romkatv a12f7ac8ee when the user's locale is misconfigured, set it to utf8 at the top level
fixes 
romkatv e2571dc95a comments
romkatv 27b25196d8 comments
romkatv b95c75921a Merge branch 'master' into asdf
Roman Perepelitsa 47e8c1b38c
remove debug messages; fixes
romkatv 1ac3624463 progress on asdf design
romkatv ce37ae5426 Merge branch 'master' into asdf
romkatv 5e5ff583a3 extend the ZLE_RPROMPT_INDENT=0 workaround to a few more cases
If the last right prompt line can be proven to always have
zero length after prompt expansion, we can unset RPROMPT
thus avoiding triggering zsh bugs related to ZLE_RPROMPT_INDENT=0.

Fixes .
romkatv 4095a018dc basic asdf design
romkatv fab13389f1 remove profiling instrumentation
romkatv 3b2fa36cd6 comments
romkatv 71f4eade9f add wifi prompt segment
romkatv 4b62cd7380 bug fix: make reset=2 sticky
romkatv a0535ffcd6 replace all wide glyphs with narrow in nerdfont configuration; many terminals have bugs that prevents them from properly rendering wide glyphs
romkatv 1a9c8d126c typo
romkatv c321e50f38 remove redundant expansion of C-escapes
romkatv 6db57923b1 add POWERLEVEL9K_BATTERY_${state}_{STAGES,LEVEL_BACKGROUND,LEVEL_FOREGROUND}
romkatv 4599ad9f2c add extra options to pure style
- non-permanent content location (left or right)
- show current time
- prompt height (one or two lines)
- prompt spacing (with empty line between prompts or without)
romkatv eb9da89ad9 quote $foo when running with unknown options; fixes
romkatv b0a08e0ae5 Merge branch 'master' into tour
romkatv f91597fe7b speed up terraform, add classes to configs, bump version
Jérôme Foray ae12802bbe Add support for classes to terraform segment
romkatv 1bdee256e5 add POWERLEVEL9K_LEGACY_ICON_SPACING
romkatv c65260aaab change the default timewarrior icon (shield => watch); see
romkatv 788ee7df4d bug fix: remove spurious "entry=" from instant prompt
romkatv 1f2251b799 bug fix: don't cache range and nnn segments as their content is not static
romkatv 73878f398a add nix_shell prompt segment; see
romkatv 0a4b832b25 add `tabbed` to the list of precommands
romkatv 0a7f7c85c4 minor fixes
romkatv 674e5fd029 bump version
romkatv 5ce620436d quote override dirs form rustup
romkatv 5f6d73c5ac don't call stat in prompt_dir; use _p9k__parent_mtimes instead
romkatv 43fe2c30d1 cleanup
romkatv 4d4c2658b3 migrate remaining segments to the new globbing api
romkatv 3c64f43f2d make __p9k_byte_suffix readonly
romkatv 286ba2a84b s/_p9k_upsearch/_p9k_upglob/g
romkatv 34d34eb112 finish fast globbing and start migrating stuff
romkatv 262ce24905 Merge branch 'master' into glob
romkatv 5de4142517 set prompt_subst when printing ruler; see
romkatv c7405e4678 start working on faster globbing
romkatv 14868da64a move buffer parser to internal/parser.zsh
romkatv 37f6b67dc9 better text flowing when nudging to restart iTerm2
romkatv 3bca7e845f detect source code corruption done by antigen and suggest resetting cache
romkatv 12e0d2e7e8 notes
romkatv 164100899e drop support for no-icons mode from all config templates
romkatv bfa70fa86d add timewarrior prompt segment; see
romkatv a9715367d4 fix prompt_char (never showed error); unify options
romkatv 98c614b851 move notes.txt to internal to avoid confusing people
romkatv 8d2ab89627 remove debugging junk
romkatv b7f03790e2 bump version
romkatv 5d460d7b99 remove trailing zeros from _p9k_human_readable_bytes
romkatv fa4d151f94 cleanup
romkatv b9cfa4e7ff bug fixes:
- don't use typeset -p on zsh 5.4 as it's broken there
- remove redundant local declarations from _p9k_prompt_net_iface_async
- change the default value of POWERLEVEL9K_PUBLIC_IP_HOST as the old is broken
romkatv 57dc301d6e bug fix: declare worker global vars in _p9k_init_vars
romkatv 5e42c4c930 add P9K_KUBECONTEXT_USER
romkatv 08f326a457 add _p9k__segment_{cond,va}_{left,right} and migrate swap to worker
romkatv f1bb5601fe process ready replies from worker synchornously in precmd
romkatv e97a6c6701 delete fifo before killing worker from watchdog
romkatv 2dc56d0afe trap PIPE
romkatv 565492b10e migrate over from the old worker api; use worker in battery on macOS
romkatv 148ecf7fc3 use ascii ENQ (0x05) for watchdog pings
romkatv 45d14cbcf5 add watchdog to worker
romkatv 2aa1d07b4a massive worker simplification (figure out during massive hangover)
romkatv f1314f9072 Merge branch 'master' into worker
romkatv 08f73b27fd cherry pick disk_usage fix from 0d33157b12; see
romkatv 186d1539b9 add POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER; see
romkatv e4349e0c9b fix option names in the color selection screen; fixes
romkatv ed2b83275b Merge branch 'master' into worker
romkatv 0f9cee9dc2 display lean with 8 colors right away if the terminal does not support 256 colors
romkatv fc7178ad92 check for truecolor before offering snazzy
romkatv 7144ebb465 add snazzy color scheme option to pure style
romkatv 0f6b7953be synthesize common prompt functions
romkatv 80e8e46fe5 Merge branch 'master' into worker
romkatv e01b5d9529 refactor worker code
romkatv 9586e24dfb add color selection dialog for lean-8colors; remove space before prompt char in lean-* when it's the first segment on the line
romkatv 2feac7f121 survive SIGINT during preexec; see
romkatv f1e9d9ade7 fix ram segment on wsl
romkatv c79108ff0a work around wsl bugs
romkatv 430c2b0178 explicit exec in worker
romkatv 0d8a51bcf3 Merge branch 'master' into worker
romkatv e374395746 follow ~/.zshrc and ~/.p10k.zsh symlinks
When the user tells the configuration wizard to apply
changes to ~/.zshrc and ~/.p10k.zsh and these files
are symlinks, apply changes to the targets.

see 
romkatv b35a814828 migrate ram to worker
romkatv 635ffb0e21 load the same modules and functions in worker as in master
romkatv 61df3d1cfb even further simplify worker bootstrap
romkatv 23e8921b8d further simplify worker bootstrap
romkatv 1208fd10ef simplify worker bootstrap
romkatv 0ae338dde1 make sure pwd and IFS are initialized when running *_compute
romkatv e65f05d7be bump versions
romkatv 5ae34b98fe skip worker hooks for 'time' if POWERLEVEL9K_EXPERIMENTAL_TIME_REALTIME is not set
romkatv a36b0cba24 migrate load, ip and vpn_ip to worker
romkatv 573f2549cc add back POWERLEVEL9K_EXPERIMENTAL_TIME_REALTIME support
romkatv 0d33157b12 migrate disk_usage and public_ip to worker
romkatv a6e0b01dc1 remove explicit timeout support from worker
romkatv da498aef57 support parallelism in worker
romkatv a652d49bd9 Merge branch 'master' into worker
romkatv 0a484d1d99 print the same error message for 32-bit android as for 32-bit linux
see https://github.com/romkatv/gitstatus/pull/96
romkatv 145b1a1103 cleanup
romkatv e0e6a4bf49 cleanup
romkatv aa0f435d75 add worker.zsh
romkatv f1da8c41ac prepare for worker migration
romkatv a0f3d94dd6 fix POWERLEVEL9K_DIR_HYPERLINK=true with POWERLEVEL9K_SHORTEN_STRATEGY=truncate_from_right
fixes 
romkatv f85a3a5652 fix 1-liner mode
romkatv b241f2ce25 add ssh-agent to precommands
romkatv e2813c5db5 Merge branch 'master' into reactive
romkatv bd9e4ee35b add 8-color version of lean style
romkatv ad22ff1ffa speed up
romkatv 057533460f use more precise pattern for process substitutions
romkatv f15af7b2c2 Merge branch 'master' into reactive
romkatv 437b624532 rustup is just wow
romkatv 5ccec88673 Merge branch 'master' into reactive
romkatv 1cf99b34e5 give content expansion for rust_version access to full version through $P9K_RUST_VERSION; see
romkatv ddecb91a0f rust_version: support rustup; see
romkatv 4218cc5106 optimize `p10k display`, POWERLEVEL9K_*_SHOW_ON_COMMAND, and startup
romkatv e9335145b3 add all p10k-* hooks to parameter signature
romkatv 1efade9962 don't replace show with print if p10k-on-post-prompt is defined
romkatv 32c3ad75cc Merge branch 'master' into reactive
romkatv 2b307eefd8 clear to eol when printing empty_line and ruler
romkatv 35d2432326 parse process substitutions
romkatv cbb3f2bc41 add `p10k display -a`
romkatv 7b37e475d3 remove parse.zsh
romkatv 1eb83b081e add POWERLEVEL9K_COMMANDS_MAX_TOKEN_COUNT
romkatv 14623f0626 add POWERLEVEL9K_${segment}_SHOW_ON_COMMAND; bug fixes in parsing
romkatv be359b6e76 group precommands with commands
romkatv b8981328bb minor opitimization
romkatv 02a5d21f12 incorporate latest parser fixes
romkatv bc0429f3bb comments
romkatv 60d00e9e75 fix 'always'
romkatv b59f74a7bd fix heredocs
romkatv 770bf93444 get rid of captures
romkatv 6e3711759f rename _p9k names for easier testing
romkatv 940e6dc118 write all p10k-on-* hooks to instant prompt
romkatv 849e9519de back to 32 token limit
romkatv 84f01d5cb3 don't array-expand unnecessarily
romkatv efe0e79436 don't array-expand unnecessarily
romkatv 8380cee319 run widget hooks only from PS1
romkatv db9913984d integrate the new command buffer parser intp p10k
romkatv fc9cc6f82a typo
romkatv 4fa3f2cd6a cleanup
romkatv dd437267cd cleanup
romkatv df4b33c699 handle early precommand termination
romkatv 347392daab support precommands and fix a few bugs
romkatv 9a6eb616d9 add precommand specs
romkatv 251ec93396 limit the number of looked-at tokens to 32
romkatv 2db236fc69 speedup
romkatv 1779555402 filter and dedup commands
romkatv 461e1acb98 comments
romkatv 68d9aeb559 handle `<<<`
romkatv dfc5382c0d handle `for x (y) z`
romkatv b8c9e83661 fix a few bugs in parsing
romkatv 57b500d083 speedup
romkatv 90ac9c9e20 remove function decls from the list of commands
romkatv c4f68bd609 speed up parsing
romkatv 07ee25a147 add parse.zsh
romkatv bbd5791aac pass fd to _p9k_restore_prompt
romkatv 9da0365dfb make sure the next hook called after p10k-on-post-prompt is always either p10k-on-pre-prompt or p10k-on-init
romkatv 5deed4d459 fix bugs in widget hooks and improve performance
romkatv ed78375a2e work around bugs in zsh-syntax-highlighting
romkatv 1173119d55 wrap all widgets; call p10k-on-post-widget hook if defined
romkatv c79d0c0478 call p10k-on-init hook if defined
romkatv d77bc5fa46 set DISABLE_UPDATE_PROMPT=true when activating instant prompt
This is an Oh My Zsh option that makes it update without asking for
confirmation. In practice, when instant prompt is active, OMZ doesn't
wait for the user confirmation and automatically updates.

By setting DISABLE_UPDATE_PROMPT=true we get rid of the spurious
question from the console output without changing the behavior of OMZ
updater.
romkatv 784fea72b5 fix omz update detection
romkatv e371319f49 don't print concole output warning if oh-my-zsh updates during instant prompt
romkatv 2291458a5a show the number of filtered toto tasks if not the same as total and add options to hide todo when filtered and/or total is zero
romkatv 197e542a84 use a more portable icon for todo in portable font mode
romkatv 970f4fb8ff bug fix: set $0 to =todo.sh when sourcing the user config; fixes
romkatv acb6b68a37 add nnn prompt segment; see
romkatv a9620d7dca add plenv prompt segment; see
romkatv d8b847c67f add jenv prompt segment; see
romkatv 20a17daf15 add luaenv prompt segment; see
romkatv e45af961da BREAKING CHANGE: add classes to google_app_cred and change its default content
romkatv e2c46f0dfc bug fix: don't trigger transint prompt behavior on Ctrl-C when it wouldn't terminate the top-level zle; fixes
romkatv f220106baa bug fix: escape backquote; fixes