Commit graph

619 commits

Author SHA1 Message Date
Jan De Dobbeleer bfca351796 chore: do not auto migrate on manual switch 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 6fcae4207e chore(migrate): backup config on migration 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 0185299263 feat(config): auto migrate to 1 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer a5162b0f19 refactor(segment): cleaner logic 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 55ab413d6e fix: do not render empty/whitespace segments 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 01bd42b3eb fix(config): export glyphs correctly escaped 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 83980a3dff feat: deprecate pre- and postfix 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer b4292e2e50 docs: add template information 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 0373d2c507 feat(config): migrate deprecated keys 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 0e056cd50d feat(template): hyperlink functions 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer e95e0d6b1b fix(engine): allow template override 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer c94e5e6efb chore(template): add tests for roundSeconds 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer eef50268a9 refactor(template): rename files 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer fee29f4b2e refactor: move engine to module 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer c0f4b6d6f0 refactor: move title to module 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 9e7abe4541 refactor: move segments to module 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 4e17e4a853 refactor: public interface for segments 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 59756813d3 refactor: naming standard for segments 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer bdd13cb32f refactor: move properties logic to module 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer c86b7b62bc refactor: move color logic to module 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 906ece2af9 refactor: move environment into it's own module 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer f7a07c6b62 refactor(segments): string() to template()
moves templating engine to Segment
2022-02-03 10:44:18 +01:00
Jan De Dobbeleer 0987cafad0 refactor: remove deprecated functionality 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer f5178e8c8c feat: remove enable_hyperlink 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer b816a0bf70 feat: templates for all segments 2022-02-03 10:44:18 +01:00
Jan De Dobbeleer d75f6e30aa fix: use debug for logging pwd 2022-01-20 14:33:23 +01:00
Jan De Dobbeleer fc456da107 refactor: rename getcwd to pwd 2022-01-20 14:22:29 +01:00
Jan De Dobbeleer 6afa7711b2 feat: log directories on debug
relates to #1605
2022-01-20 14:22:29 +01:00
Jan De Dobbeleer 8fca218a7d feat(build): static build 2022-01-19 19:46:52 +01:00
Michael Guntsche de60367d79 fix(env): remove defer on platform
This is a small fix to actually store the value. Arguments to defers are apparently
evaluated immediately so put it in an anonymous function.
2022-01-19 07:43:08 +01:00
Jan De Dobbeleer ad297dbe08 fix: init cache first 2022-01-18 21:29:05 +01:00
Jan De Dobbeleer 0a09924685 fix(platform): store value in cache
resolves #1601
2022-01-18 21:08:26 +01:00
Jan De Dobbeleer 3cca2104bb feat(cache): allow for non-expiring values 2022-01-18 21:08:26 +01:00
Jan De Dobbeleer e5dd07fb9a feat: cache template environment data 2022-01-18 20:14:47 +01:00
Jan De Dobbeleer 9e77d0f939 fix(template): support surrounding variables with braces 2022-01-18 20:14:47 +01:00
Jan De Dobbeleer e6d4413ae7 feat: adjust var names for consistency
BREAKING CHANGE: adjusts the way some segment work for templates.

Mapping the var names as following will resolve the issue.
- session/title/general purpose
    - .Host -> .HostName
    - .User -> .UserName
- az
    - .UserName -> .Name
- kubectl
    - .UserName -> .User
2022-01-17 16:29:39 +01:00
lnu 115759f4d3 feat(debug): cache path added to debug 2022-01-16 21:21:00 +01:00
Jan De Dobbeleer a56b90005f fix(os): lowercase OS name
resolves #1593
2022-01-16 20:06:38 +01:00
Jan De Dobbeleer 221f28afdd feat(cli): print cache path 2022-01-16 18:22:40 +01:00
Jan De Dobbeleer 0332fbfebb fix: create environ cache on init 2022-01-15 23:25:49 +01:00
Jan De Dobbeleer dc50bd3546 fix(env): init environ cache 2022-01-15 23:08:47 +01:00
Jan De Dobbeleer a200ee73ff feat: add OS to template functionality 2022-01-15 21:38:06 +01:00
Jan De Dobbeleer 0404976b5c refactor: remove the need for nil argument in mock 2022-01-15 21:38:06 +01:00
Jan De Dobbeleer d71422a35b feat(git): add remote URL for hyperlink 2022-01-14 22:50:24 +01:00
Jan De Dobbeleer 2ea2e633b8 fix(az): map User to UserName
avoid collision with default .User in template
2022-01-14 08:51:53 +01:00
Jan De Dobbeleer f1e21949bc fix(cygwin): do not clean config path 2022-01-14 08:42:52 +01:00
Jan De Dobbeleer 4542e92940 fix(az): proper path fix 2022-01-13 22:39:45 +01:00
Jan De Dobbeleer d45c51cccc feat(az): display info origin
resolves #1562
2022-01-13 20:32:32 +01:00
Jan De Dobbeleer b1c427abaa fix(az): use platform specific folder
resolves #1567
2022-01-13 20:32:32 +01:00
Jan De Dobbeleer f512df208a feat: expose environment info to all templates 2022-01-13 20:15:04 +01:00
lnu c687512fba feat(strava): add hyperlink to activity
VirtualRide icon like Ride
Watts, HearRate, Kudos info
2022-01-11 12:15:39 +01:00
Jan De Dobbeleer a36063a580 fix(strava): rename Icon 2022-01-10 22:17:57 +01:00
Lars Erik Finholt d2bf556e94 feat(strava): new segment 2022-01-10 21:44:28 +01:00
Jan De Dobbeleer 88206ff9c9 refactor: rename doGet to HTTPRequest 2022-01-10 21:44:28 +01:00
Sam Debruyn 5a69b3e771 fix: change default az segment template 2022-01-06 20:14:29 +01:00
Jan De Dobbeleer e1f50ef885 refactor: rename environmentInfo 2022-01-01 20:22:52 +01:00
Jan De Dobbeleer 29e019511a refactor: move properties to interface 2022-01-01 20:22:52 +01:00
Jan De Dobbeleer 6d67b147e4 fix(config): do not resolve empty config
relates to https://github.com/JanDeDobbeleer/oh-my-posh/discussions/1518
2021-12-30 22:31:03 +01:00
Jan De Dobbeleer 9b15054378 refactor(main): move simple command up 2021-12-30 22:31:03 +01:00
Laurent Nullens 4960f8a2b7
fix(engine): osc99 support for windows terminal
wsl path conversion not needed anymore
2021-12-30 19:46:50 +01:00
Jan De Dobbeleer 7aaa7b110f fix(config): resolve path for all shells 2021-12-30 15:51:31 +01:00
Jan De Dobbeleer 5549e0d7ad fix(az): add user to exposed model for pwsh 2021-12-30 15:51:31 +01:00
Jan De Dobbeleer ad5c77a61b feat: parse azure config files 2021-12-29 16:58:06 +01:00
Jan De Dobbeleer 4ecf674e62 fix(git): return empty on error 2021-12-29 16:58:06 +01:00
Jan De Dobbeleer e2a907e121 fix(template): do not replace words starting with .Env 2021-12-29 16:58:06 +01:00
Jan De Dobbeleer 5d1cd6209a fix(pwsh): force console to UTF-8 from module 2021-12-27 13:39:43 +01:00
Jan De Dobbeleer 3c40c04d36 feat: deprecate envvar segment
favors text in a more generic way
2021-12-26 19:46:28 +01:00
Khaos ce04362bb4
feat(wifi): read wifi state using native methods 2021-12-26 17:17:44 +01:00
lnu 393f99da93 fix(git): submodules support 2021-12-24 16:13:25 +01:00
Robbert Verbruggen b245398661 feat(ipify): segment to show your external IP address
closes #1492
2021-12-23 15:56:27 +01:00
lnu 77993158e2 fix(git): use the right git executable for WSL
git executable detection
path conversion when needed
2021-12-23 10:48:54 +01:00
Jan De Dobbeleer 62b2a5cb16 fix(pwsh): do not trim paths
resolves #1477
2021-12-22 14:46:51 +01:00
Jan De Dobbeleer d3e638e067 fix(git): use actual path instead of empty -C operator
relates to #1474
2021-12-21 20:35:17 +01:00
Jan De Dobbeleer b400f05555 refactor: undo specific cmd invocation 2021-12-21 20:35:17 +01:00
memcpy-rand-rand-rand 0b4f3e1771 feat(brewfather): unit conversion routines
functions available to template
documentation
tests
2021-12-20 18:42:44 +01:00
Jan De Dobbeleer a88036fc69 perf: avoid InBounds checks 2021-12-18 20:18:54 +01:00
Jan De Dobbeleer 7805ee1a27 feat(path): add template 2021-12-17 22:52:17 +01:00
Jan De Dobbeleer 9edd53e679 fix(kubectl): parse yaml instead of csv
closes #1439
2021-12-17 22:52:17 +01:00
Jan De Dobbeleer 181d906e8a fix(debug): render powerline correctly 2021-12-17 12:22:14 +01:00
Jan De Dobbeleer 2fddfa1716 fix: do not print empty powerline symbol
relates to #1433
2021-12-17 12:22:14 +01:00
Jan De Dobbeleer 9ae5217a97 fix(bash): do not provide pwd
resolves #1441
2021-12-16 20:06:14 +01:00
Jan De Dobbeleer 1282cb24d8 refactor: cleaner segment render logic 2021-12-16 19:57:24 +01:00
Jan De Dobbeleer df78bad3b5 feat: expand parent colors 2021-12-16 19:57:24 +01:00
Jan De Dobbeleer e8f9bb20b0 fix: loop colors correctly 2021-12-16 19:57:24 +01:00
memcpy-rand-rand-rand 89ece8d68a feat(brewfather): new fields, fixes
add batch fields
update doc with new fields and fix ref to .DefaultString
complete schema definition
2021-12-16 16:16:48 +01:00
Jan De Dobbeleer 31d088d56a fix(kubectl): validate array length before indexing values
relates to #1439
2021-12-15 19:26:23 +01:00
Will 0d079a4d8a
feat(brewfather): add segment 2021-12-15 07:49:32 +00:00
Jan De Dobbeleer a595278f5f fix(cygwin): get correct path 2021-12-14 22:11:05 +01:00
Jan De Dobbeleer af112277a8 feat(go): parse go.mod file for version 2021-12-14 09:42:30 +01:00
Jan De Dobbeleer 84e3bea1ea fix(git): include al untracked files
relates to #1422
2021-12-13 17:40:41 +01:00
Jan De Dobbeleer 78f9a3e3c6 fix(git): add untracked to status
resolves #1422
2021-12-13 14:00:28 +01:00
lnu fe3bab8e8a fix(yaml): try int parsing before fallback
json and yaml returns 2 different types
float64 vs int
2021-12-13 13:26:29 +01:00
Jan De Dobbeleer b8e8eddd01
fix: remove map cache 2021-12-13 12:15:04 +01:00
Khaos66 0fb5951375 feat(wakatime): add segment 2021-12-13 11:58:54 +01:00
will 2ccaf90cbf refactor(winreg): make windows registry query function more general
simplify config definition, requires one prop to define path and key
add variant return type
add template-accessible query functions on the segment for advanced use
2021-12-12 20:25:02 +01:00
Khaos 457f439a9f
feat(plastic): add Plastic SCM segment
* feat(plastic): added Plastic SCM segment

* refactor(plastic): polished new Plastic SCM segment

* refactor: moved common scm segment code into base type

git and plastic share some common methods and status properties. So moving them in a base type keeps the code base DRY

* doc(plastic): Added docs for manual testing Plastic SCM

* fix(plastic): Show files with merge conflicts as unmerged

* fix(plastic): adhere to empty string check guidelines

* fix(plastic): fixed linter errors

* fix(pwsh): alert when we can't download dependencies

resolves #1382

* refactor(plastic): polished new Plastic SCM segment

* refactor: moved common scm segment code into base type

git and plastic share some common methods and status properties

* docs(plastic): added docs for manual testing Plastic SCM

* fix(plastic): show files with merge conflicts as unmerged

* fix(plastic): adhere to empty string check guidelines

* fix(plastic): fixed linter errors

Co-authored-by: Jan De Dobbeleer <jan.de.dobbeleer@gmail.com>
Co-authored-by: Jan De Dobbeleer <2492783+JanDeDobbeleer@users.noreply.github.com>
2021-12-11 22:08:47 +01:00
Jan De Dobbeleer d52f917782 feat(path): agnoster left
resolves #1411
2021-12-11 20:40:32 +01:00
Khaos66 403bf12401 refactor: refactored ignoreErr func to return bool value 2021-12-11 14:49:04 +01:00
Khaos66 63b20f7e43 fix(battery): ignore UnknownChareRate error
This error is returned when Windows can't get the charge rate from the battery
2021-12-11 14:49:04 +01:00
Laurent Nullens c67148670c
fix(git): worktree folder init 2021-12-09 15:13:47 +00:00
lnu d3c3dea1d7 feat(language): parameter for version detection
applied to angular segment to read version from package.json
2021-12-09 16:01:10 +01:00
Jan De Dobbeleer d9e642a132
fix(git): initialize status correctly 2021-12-08 14:53:41 +01:00
Jan De Dobbeleer 930fc2bfcc refactor(git): branch status as setter 2021-12-08 13:46:29 +01:00
Jan De Dobbeleer 04f841d1b3 fix(git): initialize status correctly 2021-12-08 13:46:29 +01:00
Jan De Dobbeleer 4294351e6f revert(windows): force the use of .exe
This reverts commit f00f5f9cf7.
Resolves #1387
2021-12-08 13:46:29 +01:00
Jan De Dobbeleer 75eb09e6dc fix(color): do not fail on nil colors
resolves #1388
2021-12-08 13:46:29 +01:00
Jan De Dobbeleer 98472abafc feat(git): better logic 2021-12-08 13:46:29 +01:00
Jan De Dobbeleer 796ec4125d feat(node): templating support
resolves #1253
2021-12-04 13:13:05 +01:00
Jan De Dobbeleer 29afb86e61 feat(python): virtual env in template 2021-12-04 13:13:05 +01:00
Jan De Dobbeleer f495a7093a feat(language): add error text to template properties 2021-12-04 13:13:05 +01:00
Jan De Dobbeleer e866c6bf76 feat(python): add virtual env name to template properties 2021-12-04 13:13:05 +01:00
Jan De Dobbeleer 39a27b29ad refactor(session): deprecate ssh_icon 2021-12-04 13:13:05 +01:00
Jan De Dobbeleer a08a3a9a21 feat(session): refactor for template 2021-12-03 23:50:50 +01:00
Jan De Dobbeleer f00f5f9cf7 fix(windows): force the use of .exe
resolves #1369
2021-12-03 22:01:44 +01:00
Jan De Dobbeleer 3a4e21c36d docs(language): template properties 2021-12-03 22:01:44 +01:00
Jan De Dobbeleer a24786b97d feat(language): expose version info 2021-12-03 20:27:29 +01:00
Jan De Dobbeleer 7b5572e73c fix: create properties when nil
resolves #1366
2021-12-03 12:22:22 +01:00
Jan De Dobbeleer 6b02ae47f7 feat: sign releases with cosign 2021-12-02 22:53:04 +01:00
Jan De Dobbeleer 06258dc256 fix(pwsh): allow powershell 5 init 2021-12-01 19:30:35 +01:00
Jan De Dobbeleer 7fae781fff feat: fish rprompt
resolves #1356
2021-12-01 19:22:11 +01:00
Jan De Dobbeleer 853219d0c5 refactor: rename to test 2021-12-01 18:54:00 +01:00
Jan De Dobbeleer 7b4333ae77 feat: smaller binaries 2021-11-30 21:14:08 +01:00
memcpy-rand-rand-rand d87b147544 feat(winreg): adjust return logic in enabled 2021-11-29 16:22:03 +01:00
will 18570c9cd0 feat(winreg): squashed commits 2021-11-29 16:22:03 +01:00
Jan De Dobbeleer a2be3faefe refactor: display themes function in PowerShell 2021-11-28 15:24:48 +01:00
Jan De Dobbeleer a357becb85 feat: pwsh module as install facilitator 2021-11-28 15:24:48 +01:00
Jan De Dobbeleer 337ed4a155 refactor: align POSH_THEME cross shell 2021-11-27 13:39:40 +01:00
Stefan Hacker 7a73bcff0b feat: enable kubectl segment to read kubeconfig
This extends the kubectl segment to optionally not rely on the
kubectl command and instead to directly parse kubeconfig files like
kubectl does. This is meant as a performance optimization similar
to how the git segment can determine the current branch itself
without calling to git. Especially on Windows and in the presence
other factors slowing process creation like like AntiVirus this
can make shells using the segment considerably more responsive.

The functionality is enabled using the new parse_kubeconfig prop.
It defaults to false to prevent breaking existing users in case
there are any unanticipated behavioral changes.

Additionally the new template properties Cluster and User were
added as they are easily available and helpful in kubectl
setups with more elaborate configuration.
2021-11-26 18:22:40 +01:00
Jan De Dobbeleer 900f5bc672 chore(go): remove unused dependency 2021-11-26 14:25:20 +01:00
Jan De Dobbeleer c30901ba81 chore(go): update dependencies 2021-11-26 14:25:20 +01:00
lnu 435e362256 feat(language): add configurable extensions 2021-11-26 13:09:02 +01:00
Jan De Dobbeleer 09df670e07 refactor: use properties as map type 2021-11-26 11:11:07 +01:00
Jan De Dobbeleer e8a4fa19b7 fix(git): do not use git.exe on WSL 1 2021-11-25 14:28:18 +01:00
Jan De Dobbeleer b94e96dd15 refactor(battery): remove legacy properties 2021-11-25 13:59:36 +01:00
Jan De Dobbeleer fa38b516b1 refactor(battery): use struct inheritance 2021-11-25 13:59:36 +01:00
Jan De Dobbeleer 5b5666b5b0 feat: add go-releaser 2021-11-25 10:58:30 +01:00
Jan De Dobbeleer 4cbb3e6cf3 fix(winreg): fallback value on error or empty 2021-11-25 09:31:18 +01:00
Jan De Dobbeleer 30c82c2f56 chore(nightscout): add all object properties 2021-11-25 09:00:59 +01:00
Jan De Dobbeleer 1075b82e10 fix(nightscape): do not fail on empty array 2021-11-25 09:00:59 +01:00
Jan De Dobbeleer 30ea89a45b refactor: inherit struct 2021-11-24 14:28:32 +01:00
Jan De Dobbeleer 17751107a8 feat(windows): registry query segment 2021-11-24 14:24:02 +01:00
Mike Sigsworth 4a68c444c6 feat(wifi): added wifi segment for windows and wsl 2021-11-24 11:31:43 +01:00
Scott Hanselman fd81f4a00c feat: nightscout segment 2021-11-24 11:05:06 +01:00
Jan De Dobbeleer c5fb63885f refactor(cache): add correct unit indication 2021-11-23 11:17:37 +01:00
Jan De Dobbeleer ea35416363 fix(palette): create AnsiColors on plain block init 2021-11-22 22:08:21 +01:00
Yehor Borkov 9ecd7c09a4
feat(palette): a map of named color values
introducing a map of named standard color
values that can be referenced in theme segments
2021-11-22 15:25:56 +01:00
Laurent Nullens a71d1f7454
feat(terraform): use template 2021-11-20 10:14:26 +00:00
lnu 25be370618 feat(sysinfo): sysinfo segment
cpu, mem, load, ...
2021-11-19 13:44:00 +01:00
Jan De Dobbeleer 2c1d5cf6e4 fix(cmd): allow all types of path separators 2021-11-19 08:52:38 +01:00
Jan De Dobbeleer 79c5ad845f feat(cmd): transient prompt 2021-11-19 00:08:17 +01:00