1
0
mirror of https://github.com/Llewellynvdm/starship.git synced 2024-12-13 06:27:46 +00:00
Commit Graph

58 Commits

Author SHA1 Message Date
PangLAN
4a3d47e466
docs: add more symbols to nerd-font-symbols preset (#5606)
docs: Add more language nerd font icon
2023-12-03 12:16:48 +01:00
Charlotte Thomas
7b217056bd feat: add typst module
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2023-11-12 19:02:31 +01:00
Max Mynter
6abc83decd
fix(pastel-powerline): remove $path from docker-context module format string (#5534)
Remove $path from docker-context
2023-11-02 11:11:26 +01:00
A
276865e4da
docs(preset): Add Jetpack Preset (#5261)
* build(deps): update clap crates

* build(deps): update rust crate notify-rust to 4.7.1

* build(deps): update rust crate shadow-rs to 0.20.1

* build(deps): update rust crate git-features to 0.26.5

* build(deps): update rust crate notify-rust to 4.8.0

* docs(kubernetes): Remove extra backspace from regex in example (#4905)

Remove extra backspace from regex in example

In the example, `[\\w-]` would match a literal backspace `\`, the
character `w` or a dash `-`. By removing the backspace, instead it
matches any "word character" `\w` or a dash `-`.

* docs(i18n): new Crowdin updates (#4877)

* chore: use updated gitoxide crate names (#4913)

* build(deps): update rust crate gix to 0.37.1

* build(deps): update rust crate toml_edit to 0.19.4

* docs(install): update nushell instructions in installation script (#4921)

Improve Nushell installation instruction

Consistently use `save -f` rather than `save`; the latter fails if the
file already exists

Signed-off-by: Michel Alexandre Salim <michel@michel-slm.name>

* build(deps): update rust crate clap_complete to 4.1.3

* build(deps): update rust crate gix to 0.37.2

* docs(i18n): new Crowdin updates (#4925)

* chore(master): release 1.13.0 (#4730)

* build(deps): update rust crate tempfile to 3.4.0

* fix: trigger release

* chore(master): release 1.13.1 (#4937)

* ci: set Node version for docs build

* ci: allow docs to be manually published via workflow_dispatch

* ci: remove unneeded dependency in publish job

* ci: add caching for docs publishing step

* build(deps): update rust crate schemars to 0.8.12

* build(deps): update dprint plugins

* build(deps): update rust crate shadow-rs to 0.21.0

* build(deps): update clap crates

* feat(release): handle chocolatey starship.portable and starship.install pkg publishing (#4723)

Handles starship.install (MSI installer) and starship.portable and makes starship an 
empty meta-package that only depends on starship.install. MSI/installer packages 
seem to be preferred over zip-based installers on chocolatey. Proper virtual packages 
that allow choosing either a portable or install variant aren't implemented in chocolatey yet.

* ci: replace `audit` with `deny` action (#4856)

* build(deps): update rust crate clap to 4.1.8

* build(deps): update gitoxide crates

* ci: use `reviewdog/action-suggester` for config-schema check (#4857)

* ci: use `reviewdog/action-suggester` for config-schema check

* increase workflow permissions

* fix(preset): add output-flag to avoid encoding issues (#4926)

* build(deps): update rust crate rayon to 1.7.0

* build(deps): update gitoxide crates

* build(deps): update pest crates to 2.5.6

* build(deps): update rust crate serde_json to 1.0.94

* build(deps): update npm to ^1.9.9

* build(deps): update rust crate open to 3.4.0

* docs(character): use updated `vimcmd_symbol` instead of older `vicmd_symbol` variant (#4960)

Fix typo in character example

* build(deps): update rust crate serde to 1.0.153

* docs(install): fix typo and update indentation and whitespaces (#4941)

* build(deps): update rust crate serde to 1.0.154

* build(deps): update rust crate gix to 0.40.0

* chore: fix clippy warnings for rust 1.68 (#4983)

* fix(init): avoid cygpath for starship binary path (#4970)

Update mod.rs

* build(deps): update rust crate open to v4 (#4982)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* build(deps): update rust crate toml_edit to 0.19.5

* build(deps): update rust crate gix to 0.41.0 (#4984)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* build(deps): update rust crate serde to 1.0.155

* build(deps): update rust crate chrono to 0.4.24

* build(deps): update rust crate semver to 1.0.17

* build(deps): update rust crate quick-xml to 0.28.0

* Update sponsors

* build(deps): update toml crates

* build(deps): update rust crate nu-ansi-term to 0.47.0

* build(deps): update rust crate windows to 0.46.0

* build(deps): update rust crate serde to 1.0.156

* docs(preset): Add `hostname.ssh_symbol` to nerd font preset (#4991)

docs(preset): Add missing ssh_symbol in nerd font

* fix(fossil_branch): fossil checkout database file name on windows (#4978)

fix(fossil_branch): use proper fossil checkout database file name on windows

* build(deps): update gitoxide crates

* build(deps): update rust crate toml_edit to 0.19.7

* build(deps): update clap crates

* build(deps): update rust crate serde to 1.0.157

* build(deps): update rust crate quick-xml to 0.28.1

* build(deps): update rust crate clap to 4.1.11

* docs(preset): add missing config for Java to no-runtime-version (#5011)

docs(preset): add missing Java to no-runtime-version

* build(deps): update rust crate serde to 1.0.158

* feat(aws): Adds support for AWS_CREDENTIAL_EXPIRATION environment variable (#5002)

feat(aws): supports AWS_CREDENTIAL_EXPIRATION environment variable

Adds support for the AWS_CREDENTIAL_EXPIRATION environment variable
which was adopted as the standard way to set the expiration for
temporary credentials. The existing AWS_SESSION_EXPIRATION environment
variable is not dropped for backwards compatibility.

See https://github.com/aws/aws-cli/pull/7398

* build(deps): update rust crate open to 4.0.1

* build(deps): update rust crate regex to 1.7.2

* chore: add spell checker to workflows (#4975)

* chore: add spell checker to workflows

* fix: update config schema

* fix: revert for fennel.rs

* build(deps): update rust crate toml_edit to 0.19.8

* build(deps): update crate-ci/typos action to v1.14.3

* build(deps): update rust crate clap to 4.1.13

* build(deps): update embarkstudios/cargo-deny-action action to v1.5.0

* build(deps): update rust crate gix to 0.43.0

* fix(gradle): add support for unstable Gradle versions (#5021)

* build(deps): update rust crate serde_json to 1.0.95

* docs: Update nerd-font-symbols.toml pop_os! symbol (#5017)

Update nerd-font-symbols.toml

Use the specific pop_os! nerd symbol instead of the generic lollipop

* build(deps): update clap crates

* build(deps): update rust crate regex to 1.7.3

* build(deps): update rust crate serde to 1.0.159

* build(deps): update rust crate indexmap to 1.9.3

* build(deps): update clap crates to 4.2.0

* build(deps): update rust crate tempfile to 3.5.0

* build(deps): update rust crate windows to 0.47.0

* build(deps): update rust crate clap to 4.2.1

* build(deps): update rust crate gix to 0.43.1

* build(deps): update rust crate windows to 0.48.0

* fix(pulumi): Fix formatting on pulumi module when using version (#5038)

Fix formatting on pulumi module when using version

Sanitize `pulumi version` output to remove leading 'v' character and trailing
newlines.

* feat(fossil): detection of Fossil check-outs in subdirectories (#4910)

* Move PathExt::device_id() outside modules module

* Add upwards_sibling_scan-function

* Fix Fossil check-out detection in subdirectories

* Use shared upwards scanning function in hg_branch

* Let the caller specify if they're looking for a file or a folder

* fix merge

---------

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* feat(aws): add support for source_profile (#4859)

feat(aws): add support for source_profile (#3834)

Co-authored-by:	@luiscamaral

* feat(custom): add option to check if pwd is in a repo (#4822)

* feat(custom): add option to check if pwd is in a repo

* Apply suggestions from code review

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* change whenrepo to require_repo

* chore: fix doc formatting

---------

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* build(deps): update rust crate terminal_size to 0.2.6

* build(deps): update rust crate process_control to 4.0.3 (#5046)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* build(deps): update pest crates to 2.5.7 (#5043)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* build(deps): update crate-ci/typos action to v1.14.4

* docs(presets): add azure and gcloud default symbols to plaintext preset (#5040)

* chore(nu): use updated closure syntax (#5054)

Update starship.nu to conform to Nushell changes

Nushell recently made a change to require that all closures have an explicit parameter list, even if it's empty, in https://github.com/nushell/nushell/pull/8290.

This updates starship.nu to conform to this requirement.

I have casually tested this against both the latest released version of Nushell, and the latest version on HEAD; the changed code works well (for me) on both.

* build(deps): update crate-ci/typos action to v1.14.5

* build(deps): update embarkstudios/cargo-deny-action action to v1.5.1

* fix(java): wrong version number when using Android Studio JDK (#4966)

The regular expression would get the revision number found in:

    with gcc Android (7284624, based on r416183b)

so it would print "7284624".

* build(deps): update dprint plugins

* build(deps): update rust crate os_info to 3.7.0 (#5057)

* build(deps): update rust crate os_info to 3.7.0

* add new os symbols

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* docs(i18n): new Crowdin updates (#4956)

* chore(master): release 1.14.0 (#4948)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix: trigger release

* fix: bootstrap manifest for release-please (#5087)

* fix: update the release-please manifest

* chore: fix release-please-manifest version

* ci: Revert "fix: bootstrap manifest for release-please (#5087)"

This reverts commit e392d14f4e.

* chore(master): release 1.14.1 (#5090)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* ci: add missing GH token to doc publishing flow

* build(deps): update rust crate serde to 1.0.160

* docs: update snap instructions (#5007)

As part of #4954, non-edge packages of Starship were removed from Snapcraft. This means the only way to install Starship is through the `edge` channel using `snap install --edge starship`.

* fix(git_commit): resolve panic on 32-bit targets (#5095)

* chore(choco): remove chocolatey dependency (#5078)

* docs(i18n): new Crowdin updates (#5093)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations tokyo-night.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations bracketed-segments.md (Ukrainian)

* New translations nerd-font.md (Ukrainian)

* New translations no-runtimes.md (Ukrainian)

* New translations plain-text.md (Ukrainian)

* New translations pure-preset.md (Ukrainian)

* New translations pastel-powerline.md (Ukrainian)

* New translations no-nerd-font.md (Ukrainian)

* New translations no-empty-icons.md (Ukrainian)

* New translations README.md (French)

* New translations README.md (Russian)

* New translations README.md (Spanish)

* New translations README.md (Arabic)

* New translations README.md (German)

* New translations README.md (Italian)

* New translations README.md (Japanese)

* New translations README.md (Korean)

* New translations README.md (Dutch)

* New translations README.md (Polish)

* New translations README.md (Portuguese)

* New translations README.md (Turkish)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

* New translations README.md (Vietnamese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Indonesian)

* New translations README.md (Sorani (Kurdish))

* New translations README.md (Ukrainian)

* New translations README.md (Norwegian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations README.md (Ukrainian)

* New translations bracketed-segments.md (Ukrainian)

* New translations nerd-font.md (Ukrainian)

* New translations no-runtimes.md (Ukrainian)

* New translations plain-text.md (Ukrainian)

* New translations pure-preset.md (Ukrainian)

* New translations pastel-powerline.md (Ukrainian)

* New translations no-nerd-font.md (Ukrainian)

* New translations no-empty-icons.md (Ukrainian)

* New translations tokyo-night.md (Ukrainian)

* New translations README.md (Ukrainian)

* chore(master): release 1.14.2 (#5098)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* build(deps): update embarkstudios/cargo-deny-action action to v1.5.2

* build(deps): update rust crate quick-xml to 0.28.2

* build(deps): update rust crate serde_json to 1.0.96

* build(deps): update rust crate starship-battery to 0.8.0 (#5106)

* build(deps): update rust crate gethostname to 0.4.2

* feat: add typechange to git_status module (#4829)

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* feat(azure): subscription name aliases (#4949)

* From issue #4448, added `subscription_aliases`
as a field for the Azure module

Can be set in starship.toml with
[azure.subscription_aliases]

* Updated config file schema

* Added entry into documentation

* Update README.md

* Formatted with dprint

* feat(git_metrics): add option to ignore submodules (#5052)

* add docs

* update schema

* ok, actually update schema

* add test

* fix lint

* accidentally included my .devenv directory

* feat: Add Solidity Module (#5047)

* Adding documentation

* Documentation and schema addition

* Creating solidity config

* Module for solidity lang

* Updating all the files

* Changing according to clippy

* Fixing misspellings

* Changes suggested by clippy

* Updating schema , maybe fixing docs workflow error

* Updating schema

* Removing solcjs from default compiler list

* Fallback test added and test string fixed

* Fixing docs

* Updating schema

* Updating schema

* Fixing docs

* Updating schema

* Updating schema

* Typo fix

* Update docs/config/README.md

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Update src/utils.rs

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Fix build commit

---------

Co-authored-by: Anirban Halder <shaeo967@gmail.com>
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* build(deps): update crate-ci/typos action to v1.14.6

* build(deps): update rust crate clap to 4.2.2

* fix(config): Make print-config not panic without a config (#5001)

* build(deps): update rust crate open to 4.0.2

* build(deps): update rust crate clap to 4.2.3

* build(deps): update rust crate gix-features to 0.29.0

* build(deps): update crate-ci/typos action to v1.14.8

* build(deps): update rust crate clap to 4.2.4

* build(deps): update rust crate dunce to 1.0.4

* build(deps): update rust crate regex to 1.8.0

* build(deps): update rust crate clap_complete to 4.2.1

* build(deps): update rust crate regex to 1.8.1

* docs(pwsh): use a more convenient method to update the window title (#5125)

docs: fix PowerShell example to update the window title

* fix(style): ensure nested style variables are processed during formatting (#5120)

fix: ensure nested style variables are processed during formatting

* refactor(Context): `set_config` method for `Context` (#5079)

* add `set_config` method to `Context`

* Made inline comment a doc comment

* use `default_context()` for `set_config()` test

* use `set_config()` in tests for `print.rs`

* set root config w `set_config()` (`print.rs` test)

* build(deps): update rust crate home to 0.5.5

* build(deps): update pest crates to 2.6.0

* build(deps): update rust crate open to 4.1.0

* build(deps): upgrade gitoxide to v0.44 for performance improvements during discovery (#5141)

upgrade gitoxide to v0.44 for performance improvements during discovery

Please note that there is a new `dot_git_only` option which would further
speedup discovery. On even moderatly fast disks that probably not going
to make a difference, but it will on incredibly slow (networked) disks.

See https://github.com/helix-editor/helix/issues/6867 for reference.

* fix(snap): Update snapcraft.yaml to add personal-files interface (#5131)

* build(deps): update rust crate clap to 4.2.5

* docs: add Ukranian to the project README (#5147)

* Specify personal-file interface for snap

* fix(presets): Added ($style) to format in module 'sudo' in Bracketed Segments Preset (#5146)

* Fixed error in module 'sudo'

There was no ($style) in format. When module enabled this lead to the error [WARN] - (starship::modules::sudo): Error in module `sudo`

* Update docs/.vuepress/public/presets/toml/bracketed-segments.toml

typo fix

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

---------

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* ci: remove actions-rs actions (#5115)

* build(deps): update rust crate clap to 4.2.7

* build(deps): update crate-ci/typos action to v1.14.9

* build(deps): update rust crate serde to 1.0.162

* build(deps): update rust crate rust-ini to 0.19.0 (#5172)

* build(deps): update rust crate rust-ini to 0.19.0

* add CC0-1.0 to allowed license list

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* build(deps): update rust crate versions to v5 (#5176)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(aws): support aws sso with automatic authentication refresh (#5170)

* feat(aws): support aws sso with automatic authentication refresh

* docs(aws): add sso_session for profile detection

* feat(gcloud): add `detect_env_vars` option (#5166)

* feat(gcloud): add `detect_env_vars` option

* regenerate config schema

* docs: update CONTRIBUTING.md and README.md (#5153)

* build(deps): update rust crate clap_complete to 4.2.2

* fix: update of presets and default configuration to reflect changes in Nerd Fonts 3.0 (#5162)

* Updated nf-mdi-* to nf-md-* symbols

The following symbols where changed
- directory.read_only
- memory_usage
- meson
- nim
- os.symbols.Garuda
- os.symbols.HardenedBSD
- os.symbols.Illumos
- os.symbols.OpenBSD
- os.symbols.OracleLinux
- os.symbols.Redox
- os.symbols.Solus
- os.symbols.Windows
- package
- rlang

* Updated nf-mdi-* to nf-md-* symbols (for all other presets)

The following symbols where changed
for pastel-powerline:
- directory.substitutions.Documents
- nim
for tokyo-night
- directory.substitutions.Documents
- golang

* Updated nf-mdi-* to nf-md-* symbols for the default configuration in modules in src/configs/*.rs

The following symbols where changed
- azure
- battery.full_symbol
- battery.charging_symbol
- battery.discharging_symbol
- battery.unknown_symbol
- battery.empty_symbol

* Updated config-schema.json

* Updated src/modules/*.rs docs/config/README.md

and used `nerdfix` to check if I overlook anything

* Fixed the battery discharging symbol in the tests

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: jtrv <travershasemail@gmail.com>

* build(deps): disable unnecessary/unused regex features (#5175)

This will reduce the binary size by ~400 kB.

* build(deps): update rust crate serde to 1.0.163

* build(deps): update xalvarez/prevent-file-change-action action to v1.3.2

* build(deps): update rust crate clap_complete to 4.2.3

* build(deps): update rust crate gethostname to 0.4.3

* build(deps): update dprint plugins

* build(deps): update toml crates

* build(deps): update crate-ci/typos action to v1.14.10

* build(deps): update clap crates to 4.3.0

* build(deps): update crate-ci/typos action to v1.14.11

* build(deps): update rust crate regex to 1.8.2

* build(deps): update rust crate toml_edit to 0.19.10

* build(deps): update rust crate regex to 1.8.3

* build(deps): update rust crate shadow-rs to 0.22.0

* build(deps): update rust crate log to 0.4.18

* build(deps): update rust crate chrono to 0.4.25

* build(deps): update rust crate once_cell to 1.17.2

* build(deps): update rust crate chrono to 0.4.26

* refactor: simplify `shadow-rs` setup in `build.rs` (#5209)

Update build.rs

* feat(golang): adding `mod_version` variable (#5177)

* feat(nodejs): Add `expected_version` variable (#5081)

* add `expected_version` variable to `nodejs`

* show comparison symbols with `expected_version`

* documentation, formatting, more tests

* Remapped `engines_version` to $version

* Added better descriptions to docs

* Update docs/config/README.md

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Removed clone from `nodejs`, formatting

* refactored function calls

* rewrote `engines_version` formatter

* Moved Lazy variables into maps

---------

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* build(deps): update crate-ci/typos action to v1.14.12

* build(deps): update clap crates to 4.3.1

* fix: bump libz-ng-sys (#5218)

* build(deps): update rust crate clap to 4.3.2

* build(deps): update rust crate shadow-rs to 0.23.0

* build(deps): update rust crate regex to 1.8.4

* build(deps): update rust crate once_cell to 1.18.0

* Update GA measurement ID

* build(deps): update rust crate nu-ansi-term to 0.48.0

* docs(i18n): new Crowdin updates (#5109)

* Revert "Specify personal-file interface for snap"

This reverts commit 2641a37865.

This was reverted due to errors in the snap publishing pipeline:
interface 'starship-config' not found in base declaration declaration-snap-v2_plug_known (starship-config, starship-config)
invalid plugs interface definition 'starship-config' lint-snap-v2_app_plugs_plug_reference (starship, starship-config)
unknown interface 'starship-config' lint-snap-v2_plugs (starship-config, starship-config)

* chore(master): release 1.15.0 (#5108)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Checkout before running gh commands in CI

* Inline script for GA4

* build(deps): update gitoxide crates

* build(deps): update rust crate tempfile to 3.6.0

* Update GA4 tag attribute

* build(deps): update crate-ci/typos action to v1.15.0

* feat: update the nushell init file and make it valid module and overlay (#5188)

* break long commands into multiple lines for readability

* fix the format of closures

We generally write `{|| ...}` instead of `{ || ...}`.

* remove the `$"--opt=(val)"` structure when possible

`starship` does not require to use `--opt=val` and so we do not
need to do that with Nushell :)

the only place where this is required is with `--status` because
`$env.LAST_EXIT_CODE` can be negative and `starship` does not
appear to *like* values of the form `-2`...
so i left this line as it was.

on the other hand, `$env.CMD_DURATION_MS` and `(term size).columns`
should be fine 😌

* simplify the `config` mutation with new `?` syntax

This is a new very handy feature of Nushell which gives a much
simpler command combined with `default` and `merge`.

* put all `let-env`s inside an `export-env` with `load-env`

This commit has two reasons of existing:
- i think it makes it a bit easier to read with less `let-env`s
- it transforms the *script* into both a valid module and a valid
overlay

* bump the version to `0.78` in to docs

* add a note about the init file being also a module to all docs

* tweak the documentation

* update the Nushell part of the install script

* format the vuepress config file

as previous commit 117580136d3da5e00a4ccb7ada508c8510a2e50e was
not successful, let's try to make the CI happy manually 😌

* remove code quotes in the `config_cmd` of Nushell

* format the style in the Nushell `warning` section

* build(deps): update rust crate serde to 1.0.164 (#5231)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* build(deps): update rust crate starship-battery to 0.8.1 (#5232)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(pwsh): Support vi command mode indicator (#5049)

Support vi command mode in powershell

* build(deps): update rust crate clap to 4.3.3 (#5235)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* build(deps): update rust crate gix to 0.46.0

* build(deps): update rust crate log to 0.4.19 (#5240)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore: fix typos (#5239)

* chore: fix new clippy lints (#5241)

* docs: Correct Arch Linux Repo Name (#5243)

* Correct Arch Linux repo name

* Revert changes to translated files.

* build(deps): update rust crate quick-xml to 0.29.0

* build(deps): update reviewdog/action-suggester action to v1.6.1

* build(deps): update rust crate clap to 4.3.4

* build(deps): update rust crate serde_json to 1.0.97

* build(deps): update rust crate shadow-rs to 0.23.0 (#5250)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(bash): Clear out completed jobs before counting NUM_JOBS (#5253)

Clear out completed jobs before counting NUM_JOBS

* build(deps): update pest crates to 2.6.1

* redesign

* jet link

* screenshot

* readme, config

* clean trails whitespace

* fmt

* comment vicmd

* mv pos, right prompt warn

* right prompt prereq

* reco and typo

* resolve build check error

* tidy

* resolve build check error

* resolve build check error

* request changes

* rm src contents

* rm git_status.rs

* tryint fix checks

* PR review request: rm comments

* PR review request: rm redundant default

* PR review request: enable aws

---------

Signed-off-by: Michel Alexandre Salim <michel@michel-slm.name>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Tom Fenech <tomjwfenech@gmail.com>
Co-authored-by: Matan Kushner <hello@matchai.dev>
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
Co-authored-by: Michel Alexandre Salim <michel@michel-slm.name>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jan Dittrich <mail@jand.one>
Co-authored-by: Zhizhen He <hezhizhen.yi@gmail.com>
Co-authored-by: Swarnim Maheshwari <rexzeo0@gmail.com>
Co-authored-by: Guilhem Saurel <guilhem.saurel@laas.fr>
Co-authored-by: Stefan Cosma <66746+stefanc@users.noreply.github.com>
Co-authored-by: Christian Meusel <christian.meusel@posteo.de>
Co-authored-by: Harry Hodge <harry@harryhodge.co.uk>
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
Co-authored-by: Dave Parr <8363743+DaveParr@users.noreply.github.com>
Co-authored-by: Ryan Sabatini <11415980+rjsab@users.noreply.github.com>
Co-authored-by: Vegard Skui <me@vegardskui.com>
Co-authored-by: Cosimo Matteini <dev.matteini@gmail.com>
Co-authored-by: jliaoh <48660001+hunterliao29@users.noreply.github.com>
Co-authored-by: Matthew T <tet68mt+github@gmail.com>
Co-authored-by: Samir Talwar <samir@functional.computer>
Co-authored-by: Aurélien Gâteau <mail@agateau.com>
Co-authored-by: Aki Kanellis <hello@akikanellis.com>
Co-authored-by: Chad Denyar <6653063+cdenyar@users.noreply.github.com>
Co-authored-by: marcybell <marcy@marcelinesystems.dev>
Co-authored-by: Colton Donnelly <colton@donn.io>
Co-authored-by: AnirbanHalder654322 <92542059+AnirbanHalder654322@users.noreply.github.com>
Co-authored-by: Anirban Halder <shaeo967@gmail.com>
Co-authored-by: Dom Slee <domslee1@gmail.com>
Co-authored-by: Micky Brunetti <micky2be@users.noreply.github.com>
Co-authored-by: Andrew Pantuso <ajpantuso@gmail.com>
Co-authored-by: Sebastian Thiel <sebastian.thiel@icloud.com>
Co-authored-by: Scott Parkhill <scott.parkhill@gmail.com>
Co-authored-by: Eldar Khurmamatov <74624554+e-khurmamatov@users.noreply.github.com>
Co-authored-by: kensasongko <ken.sasongko@gmail.com>
Co-authored-by: Denis Cornehl <denis@cornehl.org>
Co-authored-by: Mick Hohmann <gh@m69.im.net>
Co-authored-by: jtrv <travershasemail@gmail.com>
Co-authored-by: Jakub Jirutka <jakub@jirutka.cz>
Co-authored-by: baoyachi. Aka Rust Hairy crabs <liaoymxsdl@sina.com>
Co-authored-by: Antoine Stevan <44101798+amtoine@users.noreply.github.com>
Co-authored-by: Nemo157 <git@nemo157.com>
Co-authored-by: Dosenpfand <Dosenpfand@users.noreply.github.com>
Co-authored-by: Ajeet D'Souza <98ajeet@gmail.com>
2023-09-01 16:10:04 -05:00
Zhou Fang
af1f08ce16
docs(preset): add gruvbox rainbow preset (#5321)
* docs: add new preset gruvbox-rainbow

* docs: add readme page of gruvbox-rainbow preset

* docs: update the screenshot of gruvbox-rainbow

* fix: update the background color of root

* format: fix markdown format

* format: fix markdown format with dprint

* docs(presets): sort the options

* docs(presets): use $linebreak instead of \n

* docs(presets): add icons for redhat distro

* perf: put the space into version block

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* docs(presets): use custom palette to manage colors

* docs(presets): put the space into version block for all context

* docs(presets): add prefix to color names

---------

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2023-08-02 17:32:03 +02:00
Jan Pokorný
e584bbc575
docs: fix symbols in nerd-font-symbols preset (#5254)
Update nerd-font-symbols preset
2023-06-28 11:06:23 +02:00
Mick Hohmann
2558c4588b
fix: update of presets and default configuration to reflect changes in Nerd Fonts 3.0 (#5162)
* Updated nf-mdi-* to nf-md-* symbols

The following symbols where changed
- directory.read_only
- memory_usage
- meson
- nim
- os.symbols.Garuda
- os.symbols.HardenedBSD
- os.symbols.Illumos
- os.symbols.OpenBSD
- os.symbols.OracleLinux
- os.symbols.Redox
- os.symbols.Solus
- os.symbols.Windows
- package
- rlang

* Updated nf-mdi-* to nf-md-* symbols (for all other presets)

The following symbols where changed
for pastel-powerline:
- directory.substitutions.Documents
- nim
for tokyo-night
- directory.substitutions.Documents
- golang

* Updated nf-mdi-* to nf-md-* symbols for the default configuration in modules in src/configs/*.rs

The following symbols where changed
- azure
- battery.full_symbol
- battery.charging_symbol
- battery.discharging_symbol
- battery.unknown_symbol
- battery.empty_symbol

* Updated config-schema.json

* Updated src/modules/*.rs docs/config/README.md

and used `nerdfix` to check if I overlook anything

* Fixed the battery discharging symbol in the tests

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: jtrv <travershasemail@gmail.com>
2023-05-10 14:36:56 +02:00
Eldar Khurmamatov
1bd6db5830
fix(presets): Added ($style) to format in module 'sudo' in Bracketed Segments Preset (#5146)
* Fixed error in module 'sudo'

There was no ($style) in format. When module enabled this lead to the error [WARN] - (starship::modules::sudo): Error in module `sudo`

* Update docs/.vuepress/public/presets/toml/bracketed-segments.toml

typo fix

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

---------

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2023-05-01 22:14:34 +02:00
AnirbanHalder654322
b2ebd5b50c
feat: Add Solidity Module (#5047)
* Adding documentation

* Documentation and schema addition

* Creating solidity config

* Module for solidity lang

* Updating all the files

* Changing according to clippy

* Fixing misspellings

* Changes suggested by clippy

* Updating schema , maybe fixing docs workflow error

* Updating schema

* Removing solcjs from default compiler list

* Fallback test added and test string fixed

* Fixing docs

* Updating schema

* Updating schema

* Fixing docs

* Updating schema

* Updating schema

* Typo fix

* Update docs/config/README.md

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Update src/utils.rs

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Fix build commit

---------

Co-authored-by: Anirban Halder <shaeo967@gmail.com>
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2023-04-13 21:05:12 +02:00
David Knaack
b475b5809f
build(deps): update rust crate os_info to 3.7.0 (#5057)
* build(deps): update rust crate os_info to 3.7.0

* add new os symbols

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-10 13:07:30 +02:00
Matthew T
6ea8b5ec1b
docs(presets): add azure and gcloud default symbols to plaintext preset (#5040) 2023-04-04 16:37:29 +02:00
Dave Parr
fcea5c1a6e
docs: Update nerd-font-symbols.toml pop_os! symbol (#5017)
Update nerd-font-symbols.toml

Use the specific pop_os! nerd symbol instead of the generic lollipop
2023-03-28 05:21:33 +02:00
Christian Meusel
93df558ab5
docs(preset): add missing config for Java to no-runtime-version (#5011)
docs(preset): add missing Java to no-runtime-version
2023-03-20 21:00:29 +09:00
Guilhem Saurel
9d7a039930
docs(preset): Add hostname.ssh_symbol to nerd font preset (#4991)
docs(preset): Add missing ssh_symbol in nerd font
2023-03-14 18:55:57 +01:00
David Knaack
c019630653
build(deps): update rust crate os_info to 3.6.0 (#4878)
* build(deps): update rust crate os_info to 3.6.0

* add new os symbols

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-02-07 12:52:14 +01:00
Vegard Skui
41eb98b310
feat(fossil_branch): add fossil_branch module (#4806)
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2023-01-31 09:06:46 +01:00
Lyle Mantooth
67b6376e2e
feat: add pijul_channel module (#4765)
* feat: Pijul VCS support

* Extra bits needed for new module.

* Format Markdown table.

* Fix lint.

* Don't test Pijul module so thoroughly.

Installing from source is too expensive, and compiled binaries are only
available for Windows (and unofficially as well). Perhaps once Pijul
1.0.0 comes out of beta there will be more binaries available in package
  repos.

* Format!

* Bad rebase, remove Pijul install from workflow.

* Mock Pijul commands for code coverage.

* Make fake .pijul directory in fixture.

* Truly mock `pijul` command.

* Rename module from `pijul` to `pijul_channel`.

* Format!

* Fix config-schema.json.

* Missed changing module name in docs/ folder.
2022-12-31 15:55:23 +01:00
John Slowik
8a8e09dd50
docs(preset): Plaintext status added (#4775)
* Plaintext status added

* One test case
2022-12-31 12:35:28 +01:00
fold-squirrel
e93dbf8630
feat(fennel): add fennel module (#4717) 2022-12-21 10:53:53 -06:00
Marie
220844daa0
feat(gradle): add gradle module (#4423)
* docs: document gradle module

* implement gradle module

* gradle-module: add test for wrapper properties case

* docs: improve gradle module documentation

* fix: fix gradle module wrapper properties test

* drop gradle executable strategy

* apply suggested stuff

* Fix config schema
2022-12-17 13:32:40 +01:00
AlexHaxe
2766c78749
feat: add Haxe support (#4395)
* Add Haxe support

* avoid unwrap

* fix doc formatting

* removed extra newline

* fixed formatter and linter issues

* fixed config file

* better version of detecting contents of .haxerc

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* removed openfl related defaults from detect_files

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* fixed formatting

* reworked reading .haxerc with fallback to haxe --version

* fixed formatting

* added fallback to executable for dev paths in .haxerc

* fixed linter issue

* added support for Windows paths

* use or_else

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* use shorter version with `?`

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* simplified regex check

removed check for "null" string

* fixed format

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-12-04 18:28:49 +01:00
Hanchin Hsieh
e01a4cc8d8
docs: add Tokyo Night preset (#4668) 2022-11-30 17:36:03 +09:00
Jan Klass
1a3d51fe76
feat(preset): Add No Empty Icons preset (#4518)
* feat(preset): Add No Empty Icons preset

When toolset files are identified by the Starship module, the default format displays the toolset icon, and additional information.

When the toolset executables are not available, the additional information (like version number) is missing. Only the toolset icon is displayed.

The No Empty Icons preset changes the format configuration to not show the toolset icons if the variables are empty - presumably because the toolset is not installed or found.

Closes #3070
Related #3248

* Remove non-version-related modules from preset

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Add new module opa to preset

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Drop unnecessary inner conditional from format

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Remove commit_hash_length setting from preset

* Remove undesired modules

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-11-06 22:39:04 +01:00
exincore
3109943822
feat: Add operating system module (#4109)
* docs(os): Add os module documentation

* docs(os): Add os to Default Prompt Format

* chore(os): Update config file schema

* feat(os): Add os entries and declarations

* feat(os): Add os module and config

* fix(os): Obey config.disabled

* feat(os): make variables 'Unknown'-aware

refactor(os): calculate variables in dedicated functions

* test(os): Add os module tests

* feat(os): make 'name' variable less 'Unknown'-aware

* docs(os): Add Preset configurations

docs(os): Use emoji as default

* feat(os): Use emoji as default

test(os): Use emoji as default

* fix(os): Add spaces after emoji symbols

* chore(os): Update config schema

* feat(os): Remove `bitness` variable

docs(os): Remove `bitness` variable

test(os): Remove `bitness` test

* feat(os): Add Cargo.toml upgrade caution for os_info

* refactor(os): Clarify get_symbol function

* docs(os): Mention supported operating systems and feature requests

* docs(os): Mention os_info inacurracy

* test(os): Remove `bitness` leftovers

* refactor(os): use nu_ansi_term

* refactor(os): add cfg_attr(schemars(deny_unknown_fields))

* chore(os): update config schema

* docs(os): expose details block

* feat(os): add garuda linux

* chore(os): update config schema

* feat(os): add case insensitivity

* feat(os): add symbols `IndexMap` use `os_info::Type` instead of `String`

* test(os): add clippy warn on new os_info::Type case

* leave missing case to test github tests

* test(os): re-add missing test case

* style(os): fix formatting

* docs(os): update to match os_info::Type serialization

- docs(os): add missing garuda to config

- test(os): mention docs updates in warn_on_os_info_update
2022-11-06 22:37:58 +01:00
Segev Finer
4d86a4c7ae
feat(preset): Add no-nerd-font preset (#4517)
* feat(preset): Add powerline-only-symbols preset

Related to #2563 & #3544

* Modify symbols for pulumi and erlang

* Change some wording and add default notification

* Update name of preset

Co-authored-by: Kevin Song <chips@ksong.dev>
2022-11-01 08:38:46 +01:00
Thierry Delafontaine
d4bcc519e6
feat(guix_shell): Initial implementation (#4397)
* feat(guix_shell): Initial implementation (#3999)

* fix(guix_shell): Change guix nerd font icon to water buffalo emoji

* fix(guix_shell): Added guix_shell entries in preset files

* fix(guix_shell): Moved guix_shell config docs in to the correct place (alphabetically)
2022-10-25 07:44:04 +02:00
AppleTheGolden
865e68da3a
feat: Open Policy Agent module (#1740) (#4441)
* feat: Open Policy Agent module (#1740)

* Format documentation

* Fix typo, `ropa` -> `rego`

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

* Update presets for OPA module

* Add extra space to OPA module symbol

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-10-15 18:15:33 +02:00
Ang Hao Yang
1bad35128e
docs(preset): update presets with Scala nerd font. (#4452)
* docs(preset): update presets with Scala nerd font.

* dos(preset): add an extra space after Scala symbol.

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-10-11 18:03:20 +02:00
Jamie
355800f814
feat(module): Add a meson devenv indicator (#4389)
* feat(module): Add a meson devenv indicator

Adds a Meson Developer Environment indicator, if the MESON_DEVENV
variable is set. Inside a `meson devenv`, the prompt will include the
current Meson project name

This also contains a new Truncate utility function, which may be adapted for other modules in the future

* docs: Add Meson to presets
2022-10-11 18:02:46 +02:00
David Knaack
b5d3d8fcf3
feat(schema): deny unknown keys (#4270) 2022-09-09 14:59:38 +02:00
Patrick Jackson
4a1cf14d21
docs(preset): Update nix_shell nerd font icon (#4313) 2022-08-25 20:11:34 +02:00
shunsambongi
f1c93e70e2
docs(preset): Add more icons to nerd font preset (#4271)
* docs(preset): Add rlang nerd font icon

* docs(preset): Add lua nerd font icon

* docs(preset): Add ruby nerd font icon
2022-08-25 20:03:24 +02:00
Daniel Nagy
559269c294
docs(preset): two more plain symbols (#4259)
* docs: add terraform to plain text preset

* docs: add zig to plain text preset
2022-08-16 16:08:44 +01:00
David Knaack
85692d1bf6
feat: add bun module (#4187) 2022-08-01 12:59:36 +02:00
WhiteBlackGoose
5b24d295f8
docs(preset): remove duplicate application of style in pastel-powerline preset (#4114) 2022-07-07 17:52:49 +02:00
Filip Sergot
1a4fac63f7
feat: add Raku module (#4048)
* feat: add Raku module

* Update docs/config/README.md

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2022-06-26 12:00:55 +02:00
Stefano Baghino
3fe6cc023c
feat: Add support for Daml (#4004) 2022-05-26 16:42:31 +02:00
Daniel Nagy
7702b0a9ab
docs: add lua to plain text preset (#4027) 2022-05-26 09:18:04 -04:00
Michal Rostecki
5e724d5b15
docs(preset): Add more symbols to Pastel Powerline preset (#3812) 2022-05-02 04:04:14 -04:00
David Knaack
9b2ce4240c
revert(schema): move config-schema back into .github folder (#3886)
This reverts PR #3878 / commit 094f982df1.
2022-04-18 17:42:47 +02:00
David Knaack
094f982df1
fix(schema): move config-schema into docs folder (#3878) 2022-04-16 10:16:27 -04:00
Tarun
59fc274fb7
docs(preset): Add python nerd font icon (#3852) 2022-04-11 12:52:00 -04:00
oyanoya
3014284e95
feat(spack): Add Spack module (#3639)
* feat/add readme + presets

* feat/add spack module

* feat/add spack config

* feat/spack to handle

* feat/add spack to modules and root

* fix/readme formattign

* fix/readme typo

* fix/readme formatting

* feat/replace module_config_derive with serde

* feat/add macros to generate schema + schema
2022-04-03 15:33:14 +02:00
David Knaack
18ad26f98d
feat: allow printing config file schema (#3737) 2022-04-01 17:14:05 +02:00
David Cantrell
0863146f07
feat: Add a module for C projects (#3631)
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2022-03-25 00:10:19 -04:00
Huhni
5fc8ba7636
docs(preset): add Pastel Powerline preset (#3761)
Co-authored-by: Matan Kushner <hello@matchai.dev>
2022-03-18 13:24:54 -04:00
ksqsf
72fec559c5
feat(haskell): Add Haskell module (#3587)
* feat(haskell): add haskell module and implement ghc version detection

* feat(haskell): implement stack resolver version detection

* fix(haskell): handle more complex resolvers

* fix(haskell): rename resolver_version to snapshot

* fix(haskell): change default color to bold purple

* feat(haskell): add tests

* fix(haskell): format

* fix(haskell): replace incorrect `or` with `or_else`

* fix(haskell): use write_all instead of write

* fix(haskell): λ as Haskell icon by default

* fix(haskell): fix tests and add a real stack.yaml testcase

* fix(haskell): make clippy happy
2022-03-18 07:45:51 +01:00
Luc Perkins
16f62d7904
feat(buf): Add Buf module (#3661)
* Add initial Buf module logic

* Add tests for Buf module

* Add initial draft of docs

* cargo fmt

* Fix config table formatting

* Run dprint

* Run clippy --fix

* cargo fmt

* Add space after emoji

* Fix spacing discrepancy

* Switch to Nerd Font from emoji

* Fix up docs merge conflict handling

Co-authored-by: Matan Kushner <hello@matchai.dev>
2022-03-12 12:10:23 +01:00
Kevin Song
77f2f56481
docs: Update Preset system with several additional features (#3683)
* New preset system

* Add Rust to NerdFonts preset

* Add more links and access

Add image titles and links in headers to make things more accessible.

* Shrink + optimize PNG images
2022-03-08 16:54:26 -05:00
Tim Kelty
9637e331ad
docs: add Pure prompt preset (#3066) 2021-09-30 20:03:45 -04:00