Commit Graph

115 Commits

Author SHA1 Message Date
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
Antoine Stevan 470aeb09a7
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
2023-06-12 11:02:46 +02:00
Matan Kushner 646531f99b
Update GA4 tag attribute 2023-06-06 19:28:44 -04:00
Matan Kushner 1dab919c9f
Inline script for GA4 2023-06-06 19:23:58 -04:00
Matan Kushner 544907c570
Update GA measurement ID 2023-06-06 10:06:53 -04: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
Matan Kushner 7c053fb698
docs: add Ukranian to the project README (#5147) 2023-04-28 23:07:35 +09: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
Matan Kushner e4fa652169
chore: use defineConfig to statically type our .vuepress/config 2022-07-07 13:46:37 -04: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