Compare commits

..

1053 Commits

Author SHA1 Message Date
Matan Kushner 88c3844db3 chore(release): v0.51.0 2021-03-23 12:28:30 -04:00
dependabot-preview[bot] cf37462a90 build(deps): bump serde from 1.0.124 to 1.0.125
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.124 to 1.0.125.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.124...v1.0.125)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-23 06:43:07 +00:00
Eyal Cherevatzki 612cc7d27b refactor(dotnet): ".NET" instead of "•NET" (#2471)
* refactor(dotnet): ".NET" instead of "•NET"

"•NET" looks quite weird, especially since the official writing is ".NET".

* revert(docs): translated docs

Co-authored-by: Eyal Cherevatzki <eyal@hyperguest.com>
2021-03-18 18:46:54 +01:00
Matan Kushner 3a4c9063e9 docs(i18n): New Crowdin updates (#2362)
* New translations README.md (Sorani (Kurdish))

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Simplified)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Turkish)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Korean)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Portuguese)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Russian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Traditional)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Spanish)

* New translations README.md (Japanese)

* New translations README.md (Korean)

* New translations README.md (Chinese Simplified)

* New translations README.md (Dutch)

* New translations README.md (Polish)

* New translations README.md (Portuguese)

* New translations README.md (Russian)

* New translations README.md (Turkish)

* New translations README.md (Chinese Traditional)

* New translations README.md (Vietnamese)

* New translations README.md (Portuguese, Brazilian)

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

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Korean)

* New translations README.md (Korean)

* New translations README.md (Korean)

* New translations README.md (Korean)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (French)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Russian)

* New translations README.md (Polish)

* New translations README.md (Spanish)

* New translations README.md (Dutch)

* New translations README.md (Korean)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Arabic)

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

* New translations README.md (French)

* New translations README.md (Arabic)

* New translations README.md (French)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Dutch)

* New translations README.md (Korean)

* New translations README.md (Korean)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (German)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Polish)

* New translations README.md (Portuguese)

* New translations README.md (Chinese Traditional)

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

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Portuguese)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Turkish)

* New translations README.md (Russian)

* New translations README.md (Russian)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (German)

* New translations README.md (Turkish)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Korean)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Portuguese)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Russian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Italian)

* New translations README.md (Italian)
2021-03-15 18:18:42 +01:00
David Knaack 052b56fe10 refactor: replace RootModuleConfig with Default (#2458) 2021-03-15 11:40:52 +01:00
Eric Nielsen 6fd7d7b501 fix(zsh): Set PROMPT just once (#2428)
No need to forcefully set the `PROMPT` variable every time the prompt is
to be shown. Just set it once, leaving the command to be evaluated every
time the prompt is to be shown, by enabling the `promptsubst` option.

Setting it once is also friendlier to users that want to experiment with
another prompt theme by temporarily setting `PROMPT` to something else.
This would currently not be possible, because the variable is always
reset before every prompt draw (precmd) and keymap change
(zle-keymap-select).

Some other updates to take better advantage of the zsh script dialect:

  * `$` is not required to read variables inside `(( ))` arithmetic
    expressions.
  * The zsh dialect to check if a variable is set is `${+var}`. Better
    than `${var+1}`, which substitutes 1 if var is set, which is
    intended for more general substitutions, not just to check if var is
    set.
  * The number of jobs can be read using the `%j` escape sequence, which
    is expanded when the `promptpercent` option is set.

Also simplified a couple of code lines by avoiding a temporary
`STARSHIP_START_TIME` variable, since we already have
`STARSHIP_CAPTURED_TIME`.
2021-03-15 11:39:35 +01:00
Melroy van den Berg c91b293c9d fix(cmake): Change cmake symbol to unicode triangle (#2456) 2021-03-15 11:27:54 +01:00
dependabot-preview[bot] 49c09d493a build(deps): bump regex from 1.4.4 to 1.4.5
Bumps [regex](https://github.com/rust-lang/regex) from 1.4.4 to 1.4.5.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.4.4...1.4.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-15 05:42:02 +00:00
Beni Ben zikry dd5c62791c feat(scala): Add scala module (#2409)
* Add support for scala ( w/o sbt )

* Add scala description

* Change scala color to bold red

* update scala extensions in README

* failed lint

* cr changes ( regex, simplify parsing, imports )

* Scala readme punctuation

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

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-03-14 20:37:00 +01:00
Linus Unnebäck 1651d11aad build: add more architectures to Snap package (#2382)
* build: add more architectures to Snap package

* build: ignore build errors for ppc64el arch

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

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-03-14 19:29:04 +01:00
Asger Hautop Drewsen d2946ddff7 fix(python): Handle PyPy python version correctly (#2374)
* fix(python): Handle PyPy python version correctly

* refactor: rework Python version retrieval and formatting

Align Python version retrieval and formatting with established
Starship conventions.
2021-03-14 19:27:19 +01:00
Thomas O'Donnell 50bc5d9134 fix(java): use consistent separators for java path (#2455)
* fix(java): use consistent separators for java path

This switches us from just appending `/bin/java` to `$JAVA_HOME` to
treating `$JAVA_HOME` as a path. This should fix any issues on Windows
where $JAVA_HOME might use `\` rather than `/`.

* test(java): add test for JAVA_HOME

* refactor: remove duplicate defaults

* perf: sligntly better java path perf

* Update src/modules/java.rs

Co-authored-by: Dario Vladović <d.vladimyr@gmail.com>

* Update src/modules/java.rs

Co-authored-by: Dario Vladović <d.vladimyr@gmail.com>

* Update src/modules/java.rs

Co-authored-by: Dario Vladović <d.vladimyr@gmail.com>

Co-authored-by: Dario Vladović <d.vladimyr@gmail.com>
2021-03-13 17:09:40 +01:00
nils måsén e5cdd9c1b3 feat(aws): add support for getting profile from awsu (#2451) 2021-03-13 09:35:50 +01:00
Vivek Malneedi 69b9bf72c3 fix(tcsh): remove quotes and escape backticks (#2429)
* feat: add support for tcsh

* add tcsh to install.sh install message

* list tcsh in bug_report.rs and main.rs

* quote starship path

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

* fix job count

* add tcsh support to shell module

* fix STARSHIP_START_TIME undefined error

* preserve existing user precmd and postcmd, remove jobs support

* remove unnecessary parentheses

* minor script improvement

* removes parens from install script message

* Update docs/config/README.md

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

* fix(Tcsh): remove unecessary quotes

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-03-12 16:27:04 +01:00
Colin Marquardt 30910cb4ac fix(docs): "Command Duration" section link target (#2416) 2021-03-12 15:31:26 +01:00
Bao, Huang-Huang 8f46dff9dc fix(package): fix meson version extraction if 'meson_version' is present (#2397) 2021-03-12 15:30:25 +01:00
dependabot-preview[bot] a2e7f6947f build(deps): bump regex from 1.4.3 to 1.4.4
Bumps [regex](https://github.com/rust-lang/regex) from 1.4.3 to 1.4.4.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.4.3...1.4.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-12 05:31:32 +00:00
dependabot-preview[bot] 3bc3c00313 build(deps): bump open from 1.5.1 to 1.6.0
Bumps [open](https://github.com/Byron/open-rs) from 1.5.1 to 1.6.0.
- [Release notes](https://github.com/Byron/open-rs/releases)
- [Changelog](https://github.com/Byron/open-rs/blob/master/changelog.md)
- [Commits](https://github.com/Byron/open-rs/compare/v1.5.1...v1.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-11 05:35:17 +00:00
dependabot-preview[bot] 206e53bf21 build(deps): bump byte-unit from 4.0.9 to 4.0.10
Bumps [byte-unit](https://github.com/magiclen/byte-unit) from 4.0.9 to 4.0.10.
- [Release notes](https://github.com/magiclen/byte-unit/releases)
- [Commits](https://github.com/magiclen/byte-unit/compare/v4.0.9...v4.0.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-11 05:32:36 +00:00
David Knaack 49257649de chore: run cargo update (#2434) 2021-03-08 14:27:38 -05:00
dependabot-preview[bot] 33abe26882 build(deps): bump serde from 1.0.123 to 1.0.124
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.123 to 1.0.124.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.123...v1.0.124)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-08 05:54:38 +00:00
dependabot-preview[bot] 1ff773b913 build(deps): bump indexmap from 1.6.1 to 1.6.2
Bumps [indexmap](https://github.com/bluss/indexmap) from 1.6.1 to 1.6.2.
- [Release notes](https://github.com/bluss/indexmap/releases)
- [Commits](https://github.com/bluss/indexmap/compare/1.6.1...1.6.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-08 05:40:30 +00:00
Nimish Bongale 6fa3068d0a docs: Add install for chocolatey (#2372) 2021-03-07 15:40:03 -06:00
Eric Nielsen fb6cefa4b5 style(aws): Add spacing between profile and region (#2417)
and also after the symbol when using the Nerd font glyph.
2021-03-06 20:47:06 +01:00
David Knaack 7385dc27a9 fix(bash): escape interpretable characters (#2404)
* fix(bash): escape interpretable characters

* also escape backticks
2021-03-05 01:47:07 -06:00
Tilmann Meyer dc8fe1bb6c ci: remove AUR deploy (#2411)
It was adopted as a community package so this is no longer needed
2021-03-04 15:54:41 -05:00
David Knaack 7120611eac fix: update vulnerable generic-array package (#2412) 2021-03-04 17:58:10 +01:00
dependabot-preview[bot] 0e11df2048 build(deps): bump open from 1.5.0 to 1.5.1
Bumps [open](https://github.com/Byron/open-rs) from 1.5.0 to 1.5.1.
- [Release notes](https://github.com/Byron/open-rs/releases)
- [Changelog](https://github.com/Byron/open-rs/blob/master/changelog.md)
- [Commits](https://github.com/Byron/open-rs/compare/v1.5.0...v1.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-04 05:30:32 +00:00
Deavon M. McCaffery d1b2723033 feat(install): make install script posix compliant (#2228)
- update shebang to support posix-compliant shells (like dash)
- replace all usages of echo with printf (to normalise)
- command variable to fetch_cmd as it overloads a posix 
- rename complete function to completed as it overloads 
  the bash builtin for completion

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-03-03 16:57:36 -06:00
dependabot-preview[bot] 6ef15b6d80 build(deps): bump once_cell from 1.7.0 to 1.7.2
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.7.0 to 1.7.2.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.7.0...v1.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-03 05:28:42 +00:00
dependabot-preview[bot] 4bcc6ba9e1 build(deps): bump open from 1.4.0 to 1.5.0
Bumps [open](https://github.com/Byron/open-rs) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/Byron/open-rs/releases)
- [Changelog](https://github.com/Byron/open-rs/blob/master/changelog.md)
- [Commits](https://github.com/Byron/open-rs/compare/v1.4.0...v1.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 06:48:28 +00:00
dependabot-preview[bot] e8e6a6ba98 build(deps): bump serde_json from 1.0.63 to 1.0.64
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.63 to 1.0.64.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.63...v1.0.64)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 06:42:31 +00:00
dependabot-preview[bot] 49f9c2beee build(deps): bump notify-rust from 4.2.2 to 4.3.0
Bumps [notify-rust](https://github.com/hoodie/notify-rust) from 4.2.2 to 4.3.0.
- [Release notes](https://github.com/hoodie/notify-rust/releases)
- [Changelog](https://github.com/hoodie/notify-rust/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hoodie/notify-rust/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 06:35:35 +00:00
Thomas O'Donnell 7fe96b1f3e docs(faq): Add starship explain to FAQ (#2387) 2021-02-27 22:24:03 +01:00
Vivek Malneedi d21400a478 feat: add support for tcsh (#2288)
* feat: add support for tcsh

* add tcsh to install.sh install message

* list tcsh in bug_report.rs and main.rs

* quote starship path

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

* fix job count

* add tcsh support to shell module

* fix STARSHIP_START_TIME undefined error

* preserve existing user precmd and postcmd, remove jobs support

* remove unnecessary parentheses

* minor script improvement

* removes parens from install script message

* Update docs/config/README.md

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

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-02-27 19:55:27 +01:00
dependabot-preview[bot] ce2f844a2f build(deps): bump serde_json from 1.0.62 to 1.0.63
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.62 to 1.0.63.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.62...v1.0.63)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-26 06:00:38 +00:00
dependabot-preview[bot] 4888ef3e05 build(deps): bump once_cell from 1.6.0 to 1.7.0
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.6.0...v1.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-25 05:37:23 +00:00
dependabot-preview[bot] de35c5162b build(deps): bump quick-xml from 0.21.0 to 0.22.0
Bumps [quick-xml](https://github.com/tafia/quick-xml) from 0.21.0 to 0.22.0.
- [Release notes](https://github.com/tafia/quick-xml/releases)
- [Changelog](https://github.com/tafia/quick-xml/blob/master/Changelog.md)
- [Commits](https://github.com/tafia/quick-xml/compare/v0.21.0...v0.22.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-24 05:29:23 +00:00
dependabot-preview[bot] d6401a93c2 build(deps): bump once_cell from 1.5.2 to 1.6.0
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.5.2 to 1.6.0.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.5.2...v1.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-23 18:26:02 +00:00
Artur Daschevici 5a29765f81 docs: Clarify wording on add_newline option (#2308)
* docs: Clarify wording on add_newline option

* docs: Replace new line with blank line
2021-02-23 18:50:36 +01:00
Kevin Mullins 36351e4b2f docs: Update Nix installation documentation (#2291)
* docs: Update Nix installation documentation

This changes the documentation to show the provided Home Manager module
instead of manual Home Manager installation instructions. Also fixes a
typo in the NixOS instructions and removes the unfinished and now
unnecessary section on zsh integration via Home manager (since that is
included in the provided module).

* docs: Change example Home Manager configuration
2021-02-23 18:49:27 +01:00
whi-tw 4d3a4f230d fix(nodejs): Change symbol to nerd-font (#1649)
The unicode hexagon symbol does not actually fit into a single column with a
fixed-width font.  does. As starship requires a nerd font as a prerequisite, 
it's safe to assume that this symbol is available.
Symbol link: https://www.nerdfonts.com/cheat-sheet?set=nf-mdi-nodejs

In the documentation, I've left the '⬢' symbols in '#### Text Group' as
they are, as they will continue displaying correctly in a browser
without a nerd font available. I feel like readability is more important
than consistency with the new nodejs symbol, especially as this
documentation section does not actually refer to nodejs, rather it's
just a symbol.

As `⬢` has been replaced, use `⌘` instead in documentation to avoid
any possible confusion
2021-02-22 14:10:36 -06:00
dependabot-preview[bot] 28170f62b0 build(deps-dev): bump vuepress from 1.8.1 to 1.8.2 in /docs (#2368)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.8.2/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-22 14:49:21 -05:00
dependabot-preview[bot] b8e2c43099 build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#2367)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.8.2/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-22 12:35:30 -06:00
dependabot-preview[bot] 4d416773a1 build(deps): bump nix from 0.19.1 to 0.20.0
Bumps [nix](https://github.com/nix-rust/nix) from 0.19.1 to 0.20.0.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-22 05:36:34 +00:00
dependabot-preview[bot] e040dc1be6 build(deps): bump attohttpc from 0.16.1 to 0.16.3
Bumps [attohttpc](https://github.com/sbstp/attohttpc) from 0.16.1 to 0.16.3.
- [Release notes](https://github.com/sbstp/attohttpc/releases)
- [Commits](https://github.com/sbstp/attohttpc/compare/v0.16.1...v0.16.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-22 05:32:51 +00:00
Matan Kushner 7c02433085 docs(i18n): New Crowdin updates (#2275)
* New translations README.md (French)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Turkish)

* New translations README.md (Chinese Simplified)

* New translations README.md (Portuguese)

* New translations README.md (Vietnamese)

* New translations README.md (Portuguese, Brazilian)

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

* 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 (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Arabic)

* New translations README.md (Turkish)

* New translations README.md (Russian)

* New translations README.md (Dutch)

* New translations README.md (Portuguese)

* New translations README.md (Polish)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Italian)

* New translations README.md (French)

* New translations README.md (Spanish)

* New translations README.md (Arabic)

* New translations README.md (German)

* 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 (Russian)

* 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 (Sorani (Kurdish))

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Vietnamese)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Japanese)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Portuguese)

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

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Vietnamese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Turkish)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Korean)
2021-02-21 20:13:18 +01:00
Thomas O'Donnell 0083e28827 feat(helm): Configure when the module is shown (#2352)
This makes it possible to configure when the helm module is shown based
on the contents of a directory.
2021-02-21 19:57:23 +01:00
Thomas O'Donnell 64288c2e04 feat(java): Configure when the module is shown (#2353)
This makes it possible to configure when the java module is shown
based on the contents of a directory.
2021-02-21 19:57:09 +01:00
Thomas O'Donnell c0a209f27c feat(julia): Configure when the module is shown (#2358)
This makes it possible to configure when the julia module is shown
based on the contents of a directory.
2021-02-21 19:56:55 +01:00
Thomas O'Donnell 1a6c625521 feat(kotlin): Configure when the module is shown (#2359)
This makes it possible to configure when the kotlin module is shown
based on the contents of a directory.
2021-02-21 19:56:48 +01:00
Shu Kutsuzawa fe6f9eeb4d feat(purescript): Configure when the module is shown (#2357)
This makes it possible to configure when the purescript module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-21 19:53:10 +01:00
Shu Kutsuzawa efb82454f2 feat(php): Configure when the module is shown (#2356)
This makes it possible to configure when the php module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-21 19:52:19 +01:00
Shu Kutsuzawa 51f752f6b0 feat(perl): Configure when the module is shown (#2355)
This makes it possible to configure when the perl module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-21 19:51:36 +01:00
Shu Kutsuzawa e73581ddf0 feat(ocaml): Configure when the module is shown (#2354)
This makes it possible to configure when the ocaml module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-21 19:50:40 +01:00
David Knaack 509767adc0 feat(swift): Configure when the module is shown (#2349)
This makes it possible to configure when the swift module is shown
based on the contents of a directory.
2021-02-21 18:01:31 +01:00
David Knaack a499f30157 feat(rust): Configure when the module is shown (#2350)
This makes it possible to configure when the rust module is shown
based on the contents of a directory.
2021-02-21 18:01:17 +01:00
David Knaack 9ba82e8d92 feat(ruby): Configure when the module is shown (#2351)
This makes it possible to configure when the ruby module is shown
based on the contents of a directory.
2021-02-21 18:01:01 +01:00
Shu Kutsuzawa c0a0e85556 feat(nodejs): Configure when the module is shown (#2348)
This makes it possible to configure when the nodejs module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-21 13:22:40 +01:00
Shu Kutsuzawa 4651060999 feat(nim): Configure when the module is shown (#2347)
This makes it possible to configure when the nim module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-21 13:21:20 +01:00
Thomas O'Donnell 873a005c42 feat(erlang): Configure when the module is shown (#2346)
* feat(erlang): Configure when the module is shown

This makes it possible to configure when the erlang module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.

* Update docs/config/README.md

Co-authored-by: Shu Kutsuzawa <cappyzawa@gmail.com>

Co-authored-by: Shu Kutsuzawa <cappyzawa@gmail.com>
2021-02-21 13:20:14 +01:00
Matthew Fry 7331e4bec6 docs: Update README.md with instructions for termux (#2257)
* Update README.md

* make Semantic PR bot happy

Co-authored-by: Matthew Fry <matthew@thefrys.net>
2021-02-21 10:36:03 +01:00
Thomas O'Donnell eaf9868c11 docs(config): Clarify the changing starship config (#2339)
Have clarified changing the starship config file using the
`STARSHIP_CONFIG` env var.
2021-02-21 10:02:41 +01:00
Thomas O'Donnell 71b6fc1777 feat(elm): Configure when the module is shown (#2341)
This makes it possible to configure when the elm module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-20 18:33:00 +01:00
Thomas O'Donnell 9313e90773 feat(elixir): Configure when module is shown (#2340)
This makes it possible to configure when the elixir module is shown
based on the contents of a directory. This should make it possible to be
a lot more granular when configuring the module.
2021-02-20 18:32:04 +01:00
Mikołaj Rosowski 37d3425d21 feat: create shell module (#2329)
* Add the shell module

This module allows to quickly identify which shell is currently used, in case someone frequently switches between them.

* Updated documentation with shell module.

Co-authored-by: mro <mro@fedorabox.localdomain>
2021-02-20 15:40:49 +01:00
Thomas O'Donnell d52edaa661 feat(dotnet): Configure when module is shown (#2327)
This makes it possible to configure when the dotnet module is shown
based on the contents of a directory. This should make it possible to be
a lot more granular when configuring the module.
2021-02-20 15:38:03 +01:00
Shu Kutsuzawa 5e93160456 feat(lua): Configure when the module is shown (#2326)
This makes it possible to configure when the lua module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-17 19:03:09 +01:00
Shu Kutsuzawa 97fbfffd7e feat(golang): Configure when the module is shown (#2325)
This makes it possible to configure when the golang module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-17 18:58:21 +01:00
Shu Kutsuzawa 82c7fd6742 feat(terraform): Configure when the module is shown (#2324)
This makes it possible to configure when the terraform module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-17 18:57:40 +01:00
Dietrich Daroch 96b36322e5 fix: Add a fallback prompt under TERM=dumb (#1594)
TESTED=Run it under `env`, `env 'TERM=dumb` and `env 'TERM=dumber`.
2021-02-17 18:53:42 +01:00
Matan Kushner 3bc3173de8 ci(docs): only publish site on release (#2322) 2021-02-16 17:41:21 -05:00
dependabot-preview[bot] 153690b8e2 build(deps-dev): bump vuepress-theme-default-prefers-color-scheme from 1.1.2 to 2.0.0 in /docs (#1946)
* build(deps-dev): bump vuepress-theme-default-prefers-color-scheme

Bumps [vuepress-theme-default-prefers-color-scheme](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme) from 1.1.2 to 2.0.0.
- [Release notes](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/releases)
- [Changelog](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/compare/v1.1.2...v2.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Remove css-prefers-color-scheme

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Matan Kushner <hello@matchai.dev>
2021-02-16 17:09:59 -05:00
dependabot-preview[bot] 3917b228ff build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#2317)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.8.1/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-16 17:00:33 -05:00
dependabot-preview[bot] cbc7a21b14 build(deps-dev): bump vuepress from 1.8.0 to 1.8.1 in /docs (#2318)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.8.1/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-16 16:48:06 -05:00
Thomas O'Donnell e8f463bb57 feat(docker_context): Configure when module is shown (#2315)
* feat(docker_context): Configure when module is shown

This makes it possible to configure when the docker_context module is
shown based on the contents of a directory. This should make it possible
to be a lot more granular when configuring the module.

* Update docs/config/README.md

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

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-02-16 20:05:43 +01:00
David Knaack 856610d53b feat(vagrant): Configure when the module is shown (#2314)
* feat(vagrant): Configure when the module is shown

This makes it possible to configure when the vagrant module is shown based on the contents of a directory.

* fix documentation

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-02-15 20:21:21 +01:00
Jan Christoph Ebersbach 6bd4e724e9 fix: correct fish syntax error when setting variables (#2320) 2021-02-15 14:10:08 -05:00
Thomas O'Donnell d0951db35a feat(dart): Configure when the module is shown (#2312)
* feat(dart): Configure when the module is shown

This makes it possible to configure when the dart module is shown based
on the contents of a directory. This should make it possible to be a lot
more granular when configuring the module.

* docs(dart): add missing detected files

* removed invalid comment
2021-02-14 22:21:52 +01:00
David Knaack d4843545aa feat(zig): Configure when the module is shown (#2311)
* feat(zig): Configure when the module is shown

* remove outdated comment
2021-02-14 22:21:44 +01:00
David Knaack d14736dbfe fix(directory): contract git repo with display path (#2304) 2021-02-14 18:15:47 +01:00
Michael Sanders 19461a0694 perf(init): Prefer set -x over export for fish users (#2292) 2021-02-14 18:15:05 +01:00
Thomas O'Donnell 81d6f6aa98 feat(crystal): Configure when the module is shown (#2310)
* feat(crystal): Configure when the module is shown

This makes it possible to configure when the crystal module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.

* Update docs/config/README.md

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

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-02-14 18:14:55 +01:00
Tim Grelka 4813763c35 fix(init): Quote path for elvish init (#2294)
Fixes starship/starship#2293
2021-02-13 19:53:02 +01:00
David Knaack cdb999447a feat(test): allow dynamic mocking of commands (#2307) 2021-02-13 19:32:35 +01:00
David Knaack 5ee09aa4dd fix(directory): Handle non-UTF-8 folder names (#2303) 2021-02-13 19:32:18 +01:00
David Knaack a24e843ee0 fix(init): make log messages on pwsh visible again (#2295) 2021-02-13 19:31:54 +01:00
David Knaack cf9c89ef6b build: fix aarch64-apple-darwin builds (#2300) 2021-02-13 10:44:09 -05:00
Alexandru Macovei 3772b4846d refactor(log): change output colors to shades of blue for trace and debug to make them more visible (#2299) 2021-02-13 14:47:07 +01:00
Thomas O'Donnell 118f18785a fix(utils): Sefely unwrap the command output (#2305)
Safely unwrap the output of the commands executed by `utils::exec_cmd`,
this should avoid panics when the output of the command cannot be
decoded.
2021-02-13 14:35:15 +01:00
Thomas O'Donnell 47a769cdf8 feat(cmake): Configure when the module is shown (#2280)
This makes it possible to configure when the cmake module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.
2021-02-13 11:38:47 +01:00
David Knaack eccbda8328 feat: allow changing default command timeout (#2283)
* feat: allow changing default command timeout

* fix clippy

* add doc to exec_cmd in Context

* update docs in CONTRIBUTING.md

* Fix comment in CONTRIBUTING.md

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-02-11 21:34:47 +01:00
David Knaack 04d1332f9c refactor(clippy): fix new lints (#2297) 2021-02-11 21:08:17 +01:00
David Knaack e8a02e7d53 perf(username): get uid without external command (#2286) 2021-02-09 18:41:09 +01:00
Matan Kushner e7246cee82 chore: update Discord link to use vanity URL 2021-02-08 14:54:28 -05:00
Benjamin Fox 20d845f9b3 refactor(directory): Introduce logical-path argument which allows a shell to explicitly specify both a logical and physical filesystem path (#2104)
* refactor(directory): Introduce `logical-path` argument which allows a shell to explicitly specify both a logical and physical filesystem path

Fix `directory::module` to consume both path and logical-path (if provided).  The "logical" path is preferred when rendering the "display path", while the "physical" path is used to resolve the "read only" flag. Repo- and home-directory contraction behavior is maintained, based on the logical path if it is set, or the physical path if it is not.

The custom "get_current_dir" logic has been removed entirely, and the `directory` module now relies on `context.current_dir` / `context.logical_dir` entirely.

Changes have been made to `init/starship.ps1` to work with this new flag:
- Calculate and pass "physical" and "logical" paths explicitly (as other shells do not pass `--logical-path` that they fall back to rendering the physical path)
- Moved the "powershell provider prefix" cleanup code to the PowerShell script - this code _should_ now support any kind of powershell path prefix.

* fix(powershell): Fix an issue with trailing backslashes on file paths causing command line parsing issues.

This is a bit of a footgun!
The work-around chosen is to append a trailing space when a path string ends with a backslash, and then trim any extra whitespace away in the Context constructor.
Other alternatives considered and rejected:
1. Always trim trailing backslashes as the filesystem generally doesn't need them.
2. Escape trailing backslashes with another backslash. This proved complex as PS only quotes string args when the string includes some whitespace, and other backslashes within the string apparently don't need to be escaped.

* fix(powershell): Use Invoke-Native pattern for safely invoking native executables with strings which may contain characters which need to be escaped carefully.

* fix(context): Remove superfluous argument trims

These were in place to clean up extra whitespace sometimes injected by starship.ps1::prompt, and are no longer required with the new Invoke-Native helper in place.

* refactor(directory): Clean up the semantics of `logical_dir` defaulting it to `current_dir` but overridable by the `--logical-dir` flag.

- Restore `use_logical_path` config flag.
- Always attempt to contract repo paths from the `current_dir`.

* fix(directory) :Use logical_dir for contracting the home directory

This keeps the two calls to contract_path in sync.

* fix(directory): Remove test script

* refactor(directory): Convert current_dir to canonical filesystem path when use_logical_path = false

- This requires some clean-up to remove the extended-path prefix on Windows
- The configured logical_dir is ignored entirely in this mode - we calculate a new logical_dir by cleaning up the physical_dir path for display.
- Test coverage

* fix(directory): Use AsRef style for passing Path arguments

* fix(directory): Strip the windows extended-path prefix from the display string later in the render process

* fix(docs): Update docs/config/README.md for use_logical_path

* refactor(context): Populate `current_dir` from `--path` or `std::env::current_dir`, populate `logical_dir` from `--logical-path` or the `PWD` env var

- `current_dir` is always canonicalized
- On Windows, `current_dir` will have an extended-path prefix
- `logical_dir` is now always set
- `directory::module` now just selects between `current_dir` and `logical_dir` when picking which path to render
- Test coverage

* fix(directory): Fix path comparison operations in directory to ignore differences between path prefixes

- Added PathExt extension trait which adds `normalised_equals`, `normalised_starts_with` and `without_prefix`

* fix(path): Add test coverage for PathExt on *nix

* fix(directory): Test coverage for `contract_repo_path`, `contract_path` with variations of verbatim and non-verbatim paths

* fix(directory): Update path-slash to latest

This fixes the issue with the trailing character of some Windows paths being truncated, e.g. `\\server\share` and `C:`

* fix(powershell): Improve UTF8 output handling, argument encoding

- Use `ProcessStartInfo` to launch native executable, replacing manual UTF8 output encoding handling
- If we detect we're on PWSH6+ use the new `System.Diagnostics.ProcessStartInfo.ArgumentList` parameter, otherwise manually escape the argument string
- Move `Get-Cwd` and `Invoke-Native` into the prompt function scope so that they don't leak into the user's shell scope

* fix(path): Make PathExt methods no-ops on *nix

* fix(path): Cargo fmt

* fix(powershell): Remove typo ';'. Fix variable assignment lint.
2021-02-08 15:14:59 +01:00
dependabot-preview[bot] 30bd02c9cf build(deps): bump serde_json from 1.0.61 to 1.0.62
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.61 to 1.0.62.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.61...v1.0.62)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-08 05:45:45 +00:00
Thomas O'Donnell da4bd401c4 feat(python): Configure when the module is shown (#2264)
This makes it possible to configure when the python module is shown
based on the contents of a directory. This should make it possible to
be a lot more granular when configuring the module.

This includes a breaking change since we are removing the
`scan_for_pyfiles` configuration option in favour of setting the
`detect_extensions` to an empty array.
2021-02-07 22:18:52 +01:00
Matan Kushner f9bebc9ab8 docs(i18n): New Crowdin updates (#2219) 2021-02-06 12:46:15 -05:00
David Knaack edb17bc5c7 ci: fix changelog generation (#2267) 2021-02-04 20:29:41 -05:00
dependabot-preview[bot] 57071ac53f build(deps): bump quick-xml from 0.20.0 to 0.21.0
Bumps [quick-xml](https://github.com/tafia/quick-xml) from 0.20.0 to 0.21.0.
- [Release notes](https://github.com/tafia/quick-xml/releases)
- [Changelog](https://github.com/tafia/quick-xml/blob/master/Changelog.md)
- [Commits](https://github.com/tafia/quick-xml/compare/v0.20.0...v0.21.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-04 06:02:10 +00:00
Dan Tsekhanskiy 2bc8a7172d docs(status): Remove status_ prefix from status module variables (#2260)
* Remove status_ prefix from status module variables

* Revert "Remove status_ prefix from status module variables"

This reverts commit f4c6e9ced3.

* docs: Remove status_ prefix from status module variables
2021-02-03 18:52:15 +01:00
Matan Kushner 0558b38e3f chore(release): v0.50.0 2021-02-02 14:59:42 -05:00
KOVACS Krisztian c9c3455e23 fix(windows): fix windows terminal ANSI escape sequences (#2258)
* fix(windows): don't inherit stdin when executing commands

On Windows, inheriting stdin from starship might lead to leaking the
console reference to the command we're executing. `id.exe` supplied with
Git has been observed to disable the ENABLE_VIRTUAL_TERMINAL_PROCESSING
console flag if it inherits stdin -- leading to Windows Terminal not
processing ANSI escape sequences.

This change fixes #2254 by explicitly disabling stdin inheritance.

The fix was suggested by David Knaack.

* fix(username): don't call `id -u` on Windows

This was done to check if user is root by comparing the UID to 0. Windows
does not have a concept of UID 0 anyway, so it's pointless to call `id.exe`
(which is installed with MSYS2 or Git, for example).
2021-02-02 14:58:18 -05:00
David Knaack 22dc8b842e feat: add support for elvish shell (#1725)
* feat: add support for elvish shell

* improve doc

* elvish 0.15 is out

* fix example init

* update systax for 0.15 stable

* udpate second init example too

* remove warning from swift module

* add warning to status module docs

* prefix elvish version with v
2021-02-02 12:59:55 +01:00
dependabot-preview[bot] 10d5a7034b build(deps): bump shadow-rs from 0.5.23 to 0.5.24
Bumps [shadow-rs](https://github.com/baoyachi/shadow-rs) from 0.5.23 to 0.5.24.
- [Release notes](https://github.com/baoyachi/shadow-rs/releases)
- [Commits](https://github.com/baoyachi/shadow-rs/compare/0.5.23...0.5.24)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-01 05:39:55 +00:00
Rich Lafferty 3127a9aa87 fix(bash): Count jobs with for loop to fix MacOS count issue (#2250)
In #1897 we replaced a 'wc -l' with a bash-native job counter, but
subsequently discovered that bash on MacOS folds '<<<' output into
a single line, preventing line counting.

A for loop works around that problem, is still bash-native, and works
on Linux as well.

While we're at it, also removed the need for command substitution and
an echo by doing the work directly on NUM_JOBS.

Fixes #2241.
2021-01-31 22:56:06 +01:00
David Knaack 383d2df580 build: add x86_64 freebsd build (#2233) 2021-01-30 12:50:38 +01:00
Furkan Türkal 9e21e3cf5f feat(vagrant): Add support for Vagrant (#1812)
Signed-off-by: Dentrax <furkan.turkal@hotmail.com>
Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-01-30 12:05:16 +01:00
Matan Kushner 9b02a9742a chore: update issue template config to correctly use "Q&A" category 2021-01-29 22:03:57 -05:00
David Knaack 6bb79039a3 fix(install): use correct arch name in 32-bit test (#2234) 2021-01-29 16:54:36 -05:00
Matan Kushner 511bd853d6 chore: update Crowdin PR title 2021-01-29 16:53:32 -05:00
Matan Kushner 7df794efa8 ci: continue release on error (#2237) 2021-01-29 16:15:59 -05:00
Matan Kushner 317226b9a7 chore(release): v0.49.0 2021-01-29 12:40:04 -05:00
dependabot-preview[bot] a267d2da58 build(deps): bump log from 0.4.13 to 0.4.14
Bumps [log](https://github.com/rust-lang/log) from 0.4.13 to 0.4.14.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.13...0.4.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-27 05:36:41 +00:00
dependabot-preview[bot] 143e4c22b9 build(deps): bump rand from 0.8.2 to 0.8.3
Bumps [rand](https://github.com/rust-random/rand) from 0.8.2 to 0.8.3.
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-27 05:28:53 +00:00
Matan Kushner 6afd9ecaf3 docs(i18n): add Vietnamese doc translations 2021-01-26 17:25:25 -05:00
Matan Kushner bea79619e0 docs(i18n): New Crowdin updates (#2108) 2021-01-26 17:07:13 -05:00
Thomas O'Donnell 762ad12698 test(docker_context): Add basic tests to module (#2205)
* test(docker_context): Add basic tests to module

This adds some basic tests to the docker_context module.

* PR suggestion
2021-01-26 22:46:17 +01:00
Aki e23f0f7605 docs: update license to include 2021 (#2207) 2021-01-26 22:43:20 +01:00
matoruru b1efe30bbe docs(status): fix the format string to match the default (#2211) 2021-01-26 22:42:41 +01:00
David Knaack 857d536488 build: add aarch64 windows build (#2213) 2021-01-26 22:40:48 +01:00
dependabot-preview[bot] 3c31c4b99d build(deps): bump serde from 1.0.122 to 1.0.123
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.122 to 1.0.123.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.122...v1.0.123)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-26 05:37:15 +00:00
dependabot-preview[bot] f673487638 build(deps): bump sys-info from 0.7.0 to 0.8.0
Bumps [sys-info](https://github.com/FillZpp/sys-info-rs) from 0.7.0 to 0.8.0.
- [Release notes](https://github.com/FillZpp/sys-info-rs/releases)
- [Changelog](https://github.com/FillZpp/sys-info-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FillZpp/sys-info-rs/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-26 05:30:38 +00:00
dependabot-preview[bot] a2058b791a build(deps): bump serde from 1.0.120 to 1.0.122
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.120 to 1.0.122.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.120...v1.0.122)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-25 05:59:49 +00:00
dependabot-preview[bot] 70a72c465c build(deps): bump process_control from 3.0.0 to 3.0.1
Bumps [process_control](https://github.com/dylni/process_control) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/dylni/process_control/releases)
- [Commits](https://github.com/dylni/process_control/compare/3.0.0...3.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-25 05:49:16 +00:00
dependabot-preview[bot] 9124a5ed72 build(deps): bump git2 from 0.13.16 to 0.13.17
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.16 to 0.13.17.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.16...0.13.17)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-25 05:37:27 +00:00
Rodrigo Suárez ca36d15acd feat(directory): Add home directory symbol (#2198)
* feat(directory): Add home directory symbol

* Replace HOME_SYMBOL constant as a config variable
2021-01-24 22:50:37 +01:00
David Knaack b2e8252785 refactor(git_status): simplify git status with once-cell (#2150)
I simplified the code in the git status module by moving everything from RwLock<_> to OnceCell<_>. I think this should also get rid of any remaining race conditions that remained after #1777.
2021-01-24 15:19:22 -05:00
Thomas O'Donnell a67bf5b34f docs(terraform): Make version perf issue obvious (#2107)
This intends to make the performance issue with the terraform version
more obvious.
2021-01-23 15:17:51 +01:00
Gautham Warrier 5eacd3abee perf: use built-in EPOCHREALTIME env-var to compute cmd_duration for ZSH5+ (#1751)
We currently invoke `starship time` in a sub-shell to compute time, which is non-performant. By using $EPOCHREALTIME,
which is an inbuilt env-var in ZSH5, we can get better performance. This commit only targets ZSH5+ and maintains the
old behaviour.
2021-01-23 11:25:41 +01:00
Rust大闸蟹 bcaf835321 build: Add additional build information to version and bug report (#2124)
* fix https://github.com/starship/starship/issues

* cargo fmt

* upgrade shadow-rs 0.5.6

* upgrade shadow-rs

* update

* complet bug_report infomation

* cargo fmt

* upgrade shadow-rs 0.5.11

* upgrade shadow-rs 0.5.14

* fixed:https://github.com/starship/starship/pull/2124#discussion_r559076634
fixed:https://github.com/starship/starship/pull/2124#discussion_r559076918

* add long_version

* upgrade shadow-rs 0.5.19; adaptate clap version() use by shadow-rs clap_version()

* fix unit test error

* fix test error

* upgrade shadow-rs 0.5.22

* upgrade shadow-rs 0.5.23
2021-01-22 20:14:51 +01:00
dependabot-preview[bot] 5471007db9 build(deps): bump rust-ini from 0.16.0 to 0.16.1
Bumps [rust-ini](https://github.com/zonyitoo/rust-ini) from 0.16.0 to 0.16.1.
- [Release notes](https://github.com/zonyitoo/rust-ini/releases)
- [Commits](https://github.com/zonyitoo/rust-ini/compare/v0.16.0...v0.16.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-22 17:33:39 +00:00
Moritz Vetter 4e7f73da50 perf(zig): Lazy eval zig (#2187)
* perf(zig): evaluate version lazily

* fix(zig): update format string; update tests

* refact(zig): remove redundant clone and put everything to do with version eval into match statement

* tiny optimization

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

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-01-22 18:08:36 +01:00
Moritz Vetter 212dbc4e6b perf(ocaml): evaluate version lazily; adjust format string; update test (#2188)
Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-22 18:08:04 +01:00
Moritz Vetter 16b8cbfdb8 perf(perl): Lazy eval perl (#2189)
* perf(perl): evaluate version lazily

* fix(perl): update format string; update tests

* refact(perl): run rustfmt

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-22 18:07:03 +01:00
Moritz Vetter d10a83ce6b perf(php): Lazy eval php (#2190)
* perf(php): evaluate version lazily

* fix(php): update format string; update tests

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-22 18:03:18 +01:00
Moritz Vetter 60be1e9540 Perf(purescript): Lazy eval purescript (#2191)
* perf(purescript): evaluate version lazily

* fix(purescript): update format string; update tests

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-22 18:01:54 +01:00
Alexandru Macovei 499e0357b0 refactor: apply more clippy lints 2021-01-22 11:50:12 -05:00
Alexandru Macovei c8a8086930 refactor: simplify print::handle_module 2021-01-22 11:50:12 -05:00
Alexandru Macovei 3e6b2713b2 refactor: simplify StringFormatter::new 2021-01-22 11:50:12 -05:00
dependabot-preview[bot] 7cb1b7e373 build(deps): bump git2 from 0.13.15 to 0.13.16
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.15 to 0.13.16.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.15...0.13.16)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-22 05:28:42 +00:00
David Knaack 132be11790 build: add builds for various targets (#2137)
* build: add builds for various targets

* fix typo

Co-authored-by: Matan Kushner <hello@matchai.me>

Co-authored-by: Matan Kushner <hello@matchai.me>
2021-01-21 23:17:02 +01:00
Moritz Vetter 00afc82049 perf(kotlin): Lazy eval kotlin (#2186)
* perf(kotlin): evaluate version lazily

* fix(kotlin): update format string; update tests

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-21 23:01:30 +01:00
Moritz Vetter 98b89b9432 perf(lua): Lazy eval lua (#2185)
* perf(lua): evaluate version lazily

* fix(lua): update format string

* test(lua): update tests

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-21 23:00:12 +01:00
Thomas O'Donnell 5cf1c8a7bd perf(utils): Add timeout to utils::exec_cmd (#2171)
* perf(utils): Add timeout to `utils::exec_cmd`

This adds a timeout to any command executed using the `utils::exec_cmd`.
The initial time limit is hard coded to 500ms but if required we can
make this configurable. Have also switched the tests to be a bit more
granular on which systems they are ignored.

* Terminate the processes if they timeout
2021-01-21 22:59:14 +01:00
Moritz Vetter b5fd517972 perf(nodejs): evaluate nodejs format string lazily (#2160)
* fix(nodejs): update format string

* test(nodejs): adjust tests to new format strings

* fix(nodejs): use once_cell's Lazy to implement hassleless lazy execution

* chore(nodejs): run rustfmt

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-20 19:03:48 +01:00
David Knaack 8302a3ccb4 perf(custom): evaluate command lazily (#2173) 2021-01-20 19:01:49 +01:00
David Knaack bb160d9207 perf(elixir): evaluate version lazily (#2172) 2021-01-20 18:59:21 +01:00
Moritz Vetter 2532251a13 perf(dart): Lazy eval dart (#2166)
* perf(dart): evaluate version lazily

* fix(dart): update format string

* fix: use suggested format string

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-20 18:56:18 +01:00
Moritz Vetter 83e0432a75 perf(java): Lazy eval java (#2168)
* perf(java): evaluate version lazily

* fix(java): update format string

* fix: use suggested format string

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-20 18:51:30 +01:00
Moritz Vetter b065758b1c perf(elm): Lazy eval elm (#2167)
* perf(elm): evaluate version lazily

* fix(elm): update format string

* fix: use suggested format string

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-20 18:49:26 +01:00
Moritz Vetter 527ffbaede fix: Adjust default format strings (#2165)
* fix(dotnet): update dotnet format string

* fix(dotnet): update erlang format string

* fix(dotnet): update golang format string

* fix(dotnet): update helm format string

* fix(dotnet): update julia format string

* fix(dotnet): update nim format string

* fix(dotnet): update ruby format string

* fix(dotnet): update rust format string

* test: update formatted strings in unit tests

* Use suggested format strings

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

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-01-20 18:46:26 +01:00
Moritz Vetter e437a463ac perf(python): Lazy eval of python version command (#2158)
* perf(python): evaluate version lazily

* fix(python): update format string

* fix: use suggested format strings

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

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-01-20 18:42:55 +01:00
dependabot-preview[bot] 8a80835f72 build(deps): bump serde from 1.0.119 to 1.0.120
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.119 to 1.0.120.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.119...v1.0.120)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-20 16:40:12 +00:00
David Knaack 049557002a ci: ignore RUSTSEC-2020-0100 (#2179) 2021-01-20 11:01:55 -05:00
David Knaack d3002cf961 test: avoid setting $HOME (#2155)
* test: avoid setting $HOME

* add comment to get_home

* move everything to context.get_home
2021-01-19 23:23:27 +01:00
David Knaack cf82762f6e ci(macos): install mercurial with brew (#2174) 2021-01-19 22:13:09 +01:00
Moritz Vetter 2391a2863c perf: evaluate swift version lazily (#2159)
* perf(swift): evaluate version lazily

* fix(swift): update format string

Co-authored-by: Moritz Vetter <mv@3yourmind.com>
2021-01-18 22:42:28 -06:00
dependabot-preview[bot] 45bab3a42c build(deps): bump path-slash from 0.1.3 to 0.1.4
Bumps [path-slash](https://github.com/rhysd/path-slash) from 0.1.3 to 0.1.4.
- [Release notes](https://github.com/rhysd/path-slash/releases)
- [Changelog](https://github.com/rhysd/path-slash/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rhysd/path-slash/compare/v0.1.3...v0.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-18 05:52:43 +00:00
Thomas O'Donnell 12494da38a fix(cmake): Fix spacing with missing variable (#2135)
This fixes the additional space when the `version` variable can't be
populated.
2021-01-16 13:27:02 +01:00
Hanif Ariffin 5722b17f9e fix: Applied clippy warnings (#2153)
* Applied changes suggested by clippy

In general:

1. Prefer std::path::Path over std::path::PathBuf
2. Simplified code with string formating...

Signed-off-by: Hanif Ariffin <hanif.ariffin.4326@gmail.com>

* Fixed test

Signed-off-by: Hanif Ariffin <hanif.ariffin.4326@gmail.com>

* Fixed formatting

Signed-off-by: Hanif Ariffin <hanif.ariffin.4326@gmail.com>
2021-01-16 13:26:52 +01:00
David Knaack fb0381f7e0 test: enable logging in tests (#2151)
* test: enable logging in tests

* fix clippy
2021-01-16 13:25:58 +01:00
David Knaack 0faa05628e docs: highlight powershell in vuepress (#2147) 2021-01-14 15:48:06 -05:00
dependabot-preview[bot] 8ad0e9e00c build(deps): bump rand from 0.8.1 to 0.8.2
Bumps [rand](https://github.com/rust-random/rand) from 0.8.1 to 0.8.2.
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/compare/0.8.1...0.8.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-14 05:32:45 +00:00
Matan Kushner 4ba6bce25a chore: change default Crowdin commit message 2021-01-13 14:50:20 -05:00
David Knaack 89b5772699 fix(install): improve supported target detection (#2121)
* fix(install): improve supported target detection

* move supported target list into top level variable
2021-01-13 19:39:39 +01:00
Thomas O'Donnell f640db87a4 perf(crystal): Lazily evaluate version command (#2129)
* perf(crystal): Lazily evaluate version command

This updates the module to lazily execute the `crystal --version`
command only when the `version` variable is used in the format string.

* perf(crystal): Update format string

Update format string to handle the `$version` variable not being set.
2021-01-13 18:35:44 +01:00
dependabot-preview[bot] d49ff412f6 build(deps): bump tempfile from 3.1.0 to 3.2.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/Stebalien/tempfile/releases)
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/NEWS)
- [Commits](https://github.com/Stebalien/tempfile/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-13 05:28:32 +00:00
David Knaack 8e775c4bd7 ci: fix use-cross condition (#2122) 2021-01-12 12:40:38 -05:00
dependabot-preview[bot] f72dc2b9cf build(deps): bump log from 0.4.11 to 0.4.13
Bumps [log](https://github.com/rust-lang/log) from 0.4.11 to 0.4.13.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.11...0.4.13)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-12 05:37:37 +00:00
dependabot-preview[bot] aaa5902ebe build(deps): bump serde from 1.0.118 to 1.0.119
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.118 to 1.0.119.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.118...v1.0.119)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-12 05:35:27 +00:00
dependabot-preview[bot] 75730e9bcb build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#2120)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.7.1 to 1.8.0.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.8.0/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-01-11 20:06:40 -06:00
dependabot-preview[bot] d0fcb32e90 build(deps-dev): bump vuepress from 1.7.1 to 1.8.0 in /docs (#2119)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.7.1 to 1.8.0.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.8.0/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-01-11 15:45:46 -06:00
Ben Iofel 0a9db856de fix(docker_context): enable if either yml or yaml is found (#2053)
* fix(docker_context): enable if either yml or yaml is found

* Update docs
2021-01-11 17:38:58 +01:00
dependabot-preview[bot] 42c4590da9 build(deps): bump notify-rust from 4.1.1 to 4.2.2
Bumps [notify-rust](https://github.com/hoodie/notify-rust) from 4.1.1 to 4.2.2.
- [Release notes](https://github.com/hoodie/notify-rust/releases)
- [Changelog](https://github.com/hoodie/notify-rust/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hoodie/notify-rust/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-11 05:52:19 +00:00
dependabot-preview[bot] f14c2bf2d1 build(deps): bump regex from 1.4.2 to 1.4.3
Bumps [regex](https://github.com/rust-lang/regex) from 1.4.2 to 1.4.3.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.4.2...1.4.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-11 05:48:18 +00:00
dependabot-preview[bot] 83d1a4b86d build(deps): bump attohttpc from 0.16.0 to 0.16.1
Bumps [attohttpc](https://github.com/sbstp/attohttpc) from 0.16.0 to 0.16.1.
- [Release notes](https://github.com/sbstp/attohttpc/releases)
- [Commits](https://github.com/sbstp/attohttpc/compare/v0.16.0...v0.16.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-11 05:43:23 +00:00
Thomas O'Donnell 2dbee86afe fix(install): Detect cygwin_nt as Windows (#1989)
This fixes the install script by detecting cygwin_nt* as Windows.
2021-01-09 15:45:42 +01:00
Kevin Song 3fc9f490bb docs: Comment about spaces in nix-shell config (#2106)
* Add comment about doublespace in nix-shell config

* docs: Add a semantic PR commit to appease the bot
2021-01-09 10:29:47 +01:00
dependabot-preview[bot] c4b99ef7fa build(deps): bump notify-rust from 4.1.0 to 4.1.1
Bumps [notify-rust](https://github.com/hoodie/notify-rust) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/hoodie/notify-rust/releases)
- [Changelog](https://github.com/hoodie/notify-rust/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hoodie/notify-rust/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-08 05:39:23 +00:00
Matan Kushner 49c51437d2 docs(i18n): new Crowdin updates (#2068) 2021-01-07 18:08:18 -05:00
Matan Kushner be11c73507 docs: fix custom containers to work with Crowdin
Fixes #2063
2021-01-07 17:35:14 -05:00
Zoritle 851cf22caa feat: Add support for cygwin/msys2/git-bash evironment (#2020)
* feat: Add support for cygwin/msys2/git-bash evironment

* Update src/init/mod.rs

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-01-07 19:13:57 +01:00
Furkan Türkal f03c3f1de9 feat(command): add 'toggle' command (#1917)
Closes #894

Signed-off-by: Dentrax <furkan.turkal@hotmail.com>
2021-01-07 19:04:06 +01:00
Thomas O'Donnell 8cd4850ab6 fix(bash): Fix broken bash init script (#2100)
This fixes a regression where the exit code of the most recently run
command was not correctly recorded in the bash init script.
2021-01-07 18:35:32 +01:00
David Knaack 452694903c fix(pwsh): disable builtin venv prompt (#2090) 2021-01-07 18:16:02 +01:00
Kevin Song 55c3cafd94 fix(bash): bash-preexec detection and implementation (#2091)
* Fix bash-preexec detection and implementation

* Add detection for other arrays
2021-01-07 18:15:43 +01:00
dependabot-preview[bot] 435ec17b42 build(deps): bump notify-rust from 4.0.0 to 4.1.0
Bumps [notify-rust](https://github.com/hoodie/notify-rust) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/hoodie/notify-rust/releases)
- [Changelog](https://github.com/hoodie/notify-rust/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hoodie/notify-rust/compare/v4.0.0...v4.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-07 05:35:54 +00:00
Dani d009db528d docs(installation): add advanced installation (#1643)
Adds an "Advanced Installation" page to the documentation website.
2021-01-05 17:05:03 -06:00
dependabot-preview[bot] 550c09598d build(deps): bump rand from 0.8.0 to 0.8.1
Bumps [rand](https://github.com/rust-random/rand) from 0.8.0 to 0.8.1.
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/compare/0.8.0...0.8.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-05 05:32:47 +00:00
Glandos 2e71dfa15b perf(init): Use random for session-key in fish (#1904)
* perf(init): Use random for session-key in fish

Same as #1755 but for fish users

* Update src/init/starship.fish
2021-01-04 18:36:50 +01:00
Sam Kvale f5a6c4cdbd docs: update package default format to replace /via/is (#2067)
https://github.com/starship/starship/blob/master/src/configs/package.rs#L17
2021-01-04 11:56:25 -05:00
dependabot-preview[bot] 2fd9996494 build(deps): bump yaml-rust from 0.4.4 to 0.4.5
Bumps [yaml-rust](https://github.com/chyh1990/yaml-rust) from 0.4.4 to 0.4.5.
- [Release notes](https://github.com/chyh1990/yaml-rust/releases)
- [Commits](https://github.com/chyh1990/yaml-rust/compare/0.4.4...0.4.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-04 05:37:18 +00:00
Thomas O'Donnell f2756b1745 ci(deploy): fix failing Linux GNU builds (#2054) 2021-01-03 14:31:03 -05:00
Matan Kushner 4cb8b1f0e8 docs(i18n): New Crowdin updates (#1941)
* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Italian)

* New translations README.md (Arabic)

* New translations README.md (Korean)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Russian)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (Spanish)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

* New translations README.md (Spanish)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Korean)

* New translations README.md (Arabic)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (French)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (Spanish)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Korean)

* New translations README.md (Arabic)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (French)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (Spanish)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Italian)

* New translations README.md (Korean)

* New translations README.md (Arabic)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (French)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (Spanish)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Arabic)

* New translations README.md (Italian)

* New translations README.md (Korean)

* New translations README.md (Dutch)

* New translations README.md (Polish)

* New translations README.md (French)

* New translations README.md (Spanish)

* New translations README.md (German)

* New translations README.md (Japanese)

* New translations README.md (Russian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Turkish)

* New translations README.md (Russian)

* New translations README.md (Russian)

* New translations README.md (Russian)

* New translations README.md (Italian)

* New translations README.md (Korean)

* New translations README.md (Arabic)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (French)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (Spanish)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (German)

* New translations README.md (German)

* New translations README.md (German)

* New translations README.md (German)

* New translations README.md (Italian)

* New translations README.md (Korean)

* New translations README.md (Arabic)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (French)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (Spanish)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Italian)

* New translations README.md (French)

* New translations README.md (Spanish)

* New translations README.md (Arabic)

* New translations README.md (German)

* 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 (Russian)

* New translations README.md (Turkish)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Italian)

* New translations README.md (Korean)

* New translations README.md (Arabic)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (French)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (Spanish)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (German)

* New translations README.md (Japanese)

* New translations README.md (Portuguese)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Russian)

* New translations README.md (Arabic)

* New translations README.md (Italian)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Korean)

* New translations README.md (Dutch)

* New translations README.md (German)

* New translations README.md (Japanese)

* New translations README.md (Portuguese)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Russian)

* New translations README.md (Arabic)

* New translations README.md (Italian)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Korean)

* New translations README.md (Dutch)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (German)

* New translations README.md (Japanese)

* New translations README.md (Portuguese)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Russian)

* New translations README.md (Arabic)

* New translations README.md (Italian)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Korean)

* New translations README.md (Dutch)

* New translations README.md (Chinese Simplified)

* New translations README.md (Russian)

* New translations README.md (Russian)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (German)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

* New translations README.md (Spanish)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Arabic)

* New translations README.md (Korean)

* New translations README.md (Italian)

* New translations README.md (Italian)

* New translations README.md (Korean)

* New translations README.md (Arabic)

* New translations README.md (Spanish)

* New translations README.md (Turkish)

* New translations README.md (French)

* New translations README.md (French)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Polish)

* New translations README.md (Dutch)

* New translations README.md (Dutch)

* New translations README.md (German)

* New translations README.md (Japanese)

* New translations README.md (Portuguese)

* New translations README.md (Spanish)

* New translations README.md (French)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Russian)

* New translations README.md (Arabic)

* New translations README.md (Italian)

* New translations README.md (Turkish)

* New translations README.md (Polish)

* New translations README.md (Korean)

* New translations README.md (Dutch)
2021-01-03 09:56:07 +01:00
Hugues Morisset cfff77043e feat(status): Convert known status code to their meaning (#1948)
User is able to choose if their want to display the meaning of known status code in place of number.
2021-01-02 21:09:13 -06:00
Matan Kushner a07e184c45 chore(release): v0.48.0 2021-01-02 15:31:49 -05:00
Thomas O'Donnell a6c1cad4d0 ci(i686): build Linux 32-bit version of Starship (#1966)
Have updated the deploy workflow to build a 32 bit version of Starship
for Linux. This switches the build steps to use the action-rs cargo
since it makes using cross a lot easier.
2021-01-02 15:29:30 -05:00
Thomas O'Donnell 1ba862b26f style: Latest clippy suggestions (#2048)
Have fixed a few new suggestions from the latest version of clippy.
2021-01-01 12:45:04 -06:00
David Knaack 6de4bb01f4 feat(battery): make module behaviour more obvious (#1950) 2021-01-01 12:16:55 +01:00
dependabot-preview[bot] f7a55dde8e build(deps): bump native-tls from 0.2.6 to 0.2.7
Bumps [native-tls](https://github.com/sfackler/rust-native-tls) from 0.2.6 to 0.2.7.
- [Release notes](https://github.com/sfackler/rust-native-tls/releases)
- [Changelog](https://github.com/sfackler/rust-native-tls/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sfackler/rust-native-tls/compare/v0.2.6...v0.2.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-30 05:57:50 +00:00
dependabot-preview[bot] 2714677547 build(deps): bump git2 from 0.13.14 to 0.13.15
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.14 to 0.13.15.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.14...0.13.15)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-29 05:43:07 +00:00
dependabot-preview[bot] 2b07f52788 build(deps): bump serde_json from 1.0.60 to 1.0.61
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.60 to 1.0.61.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.60...v1.0.61)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-29 05:31:22 +00:00
Nicola Corti 208251adef feat(kotlin): Add the kotlin module (#2026)
Add a module to show the currently installed Kotlin version if a
.kt/.kts file is found in the current folder
2020-12-26 15:26:50 +01:00
Thomas O'Donnell 53a08712eb fix(user): Fix username detection on Windows (#2014)
* fix(user): Fix username detection on Windows

This switches Windows to use the env var `USERNAME` rather than `USER`
for getting the username of the current user. I have also done some minor
refactoring to simplify some of the code and make the checks to see if
the user is root or another user a bit more robust.

* Update src/modules/username.rs

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

Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2020-12-26 13:27:10 +01:00
dependabot-preview[bot] df5a7994c6 build(deps): bump rand from 0.7.3 to 0.8.0 (#2016) 2020-12-25 18:08:07 +00:00
Thomas O'Donnell 85de6dfe50 feat(utils): Support non-exe commands on Windows (#2019)
Have added support to the `utils::exec_cmd` to allow it to execute
commands that are not `.exe` on Windows. Have also added a timer to
measure how long a command took to execute.
2020-12-22 17:44:38 +01:00
dependabot-preview[bot] dc7ad58317 build(deps): bump git2 from 0.13.13 to 0.13.14
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.13 to 0.13.14.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.13...0.13.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-22 05:39:40 +00:00
Kevin Song 72264aba25 docs: Add note about Crowdin-managed files to CONTRIBUTING.md (#2013) 2020-12-20 19:56:06 -05:00
dependabot-preview[bot] 53727d95d0 build(deps): bump toml from 0.5.7 to 0.5.8
Bumps [toml](https://github.com/alexcrichton/toml-rs) from 0.5.7 to 0.5.8.
- [Release notes](https://github.com/alexcrichton/toml-rs/releases)
- [Commits](https://github.com/alexcrichton/toml-rs/compare/0.5.7...0.5.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-20 17:48:29 +00:00
dependabot-preview[bot] c72ed8f8e6 build(deps): bump git2 from 0.13.12 to 0.13.13
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.12 to 0.13.13.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.12...0.13.13)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-20 17:36:54 +00:00
David Knaack ca2de56914 refactor: specify all dependencies up to the patch/x.y.z level (#2002)
* refactor: specify all dependencies up to the patch/x.y.z level

* add pest
2020-12-20 18:24:28 +01:00
花蛄 4f51ef8db1 feat(package): Meson package support (#2001)
* Add package version support for Meson meson.build.

* Update docs with Meson package version support.
2020-12-19 14:17:34 +01:00
Bjørn Forsman f17556d389 feat(init): prefix STATUS and PREEXEC_READY shell vars with STARSHIP_ (#1710)
I was surprised to see these (unprefixed) variables being set in my
shell. I think it's better to have them in the STARSHIP_ "namespace".
(Actually, STATUS got the new name STARSHIP_CMD_STATUS.)
2020-12-19 12:04:15 +01:00
adrian5 9a2355c164 docs: fix typo in config (#2008) 2020-12-18 12:24:48 -05:00
Alexandru Macovei 94b74acc90 refactor: a few low-hanging optimizations (#1992)
* refactor: convert some vecs to static arrays and slices

* refactor(openstack): lazy yaml file reading, skip files without expected structure, and avoid panics for some edge cases
2020-12-16 17:54:21 +01:00
dependabot-preview[bot] 9fd4492bb6 build(deps): bump indexmap from 1.6.0 to 1.6.1
Bumps [indexmap](https://github.com/bluss/indexmap) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/bluss/indexmap/releases)
- [Commits](https://github.com/bluss/indexmap/compare/1.6.0...1.6.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-15 05:28:04 +00:00
Daniel Beckwith 1296632ff4 feat(shlvl): Add repeat option (#1995) 2020-12-14 15:40:21 -05:00
dependabot-preview[bot] 55b662eaf3 build(deps): [security] bump ini from 1.3.5 to 1.3.8 in /docs (#1997)
Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.8. **This update includes a security fix.**
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-12-14 15:39:40 -05:00
Matan Kushner b150e85e8d docs: add 'autocomplete' keyword to FAQ 2020-12-14 12:54:30 -05:00
David Knaack 60be453797 fix(config): log as error if failure to read config wasn't caused by NotFound (#1993) 2020-12-13 16:24:48 +01:00
James Ross f311c3cbf5 docs: Correct dotnet module default format to match code (#1983) 2020-12-11 12:20:39 -06:00
Sagittarius-a d670212a08 feat(git_branch): show remote name (#1972)
* feat(git_branch): Show remote name in addition to remote branch

* feat(git_branch): Fix table indentation in config README

* feat(git_branch): Use a different method to fetch remote information

* feat(git_branch): Fix the Clippy issue regarding string constant
2020-12-08 11:12:53 +01:00
Miguel Ángel Melón Pérez 26455df656 fix(git_commit): show last created tag on current commit (#1919)
* fix(git_commit): show last created tag on current commit

* style(git_commit): fixed linter & format alerts on PR checks

* test(git_commit): added 'test_latest_tag_shown_with_tag_enabled'

* test(git_commit): add a second between tags on same commit in 'test_latest_tag_shown_with_tag_enabled'
2020-12-07 14:56:22 +01:00
dependabot-preview[bot] d17f47b633 build(deps): bump serde from 1.0.117 to 1.0.118
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.117 to 1.0.118.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.117...v1.0.118)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-07 06:17:05 +00:00
Paulo Santana 936962ee3c docs(preset): add a Nerd Font icon for "read_only" directories (#1968) 2020-12-06 19:33:29 -05:00
yangsheng6810 a72977f7d4 feat(username): Try harder to guess if inside ssh (#1964)
* feat: Try harder to guess if inside ssh

* Add test for SSH_CLIENT

* Update documentation on checking ssh connection

* 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>
2020-12-06 22:15:20 +01:00
Kesavan Yogeswaran 70dcd33aa2 docs(conda): Fix default format in Conda module's config doc (#1965)
* docs: Fix default format string for Conda module

 #### Issues Addressed

 The default `format` string for the Conda module starts with "via", as
 seen [here](https://github.com/starship/starship/blob/2e763b5e7c41dd556c9515bdc36297bc177d7f46/src/configs/conda.rs#L19).
 However, this is not reflected in the config docs.

 Many similar modules include "via" in their default format string so I
 assume including it is the intended behavior, and that the doc should
 be updated.

 #### Summary of Changes

 Correct the default `format` string for the Conda module in the config
 docs.

* Revert changes to i18n files

Revert changes to i18n files, as these must be handled by Crowdin
2020-12-06 21:02:15 +01:00
quentm74 2e763b5e7c feat: Move cmd_duration after custom module (#1681) 2020-12-05 19:57:22 +01:00
dependabot-preview[bot] fa4553d077 build(deps): bump quick-xml from 0.19.0 to 0.20.0
Bumps [quick-xml](https://github.com/tafia/quick-xml) from 0.19.0 to 0.20.0.
- [Release notes](https://github.com/tafia/quick-xml/releases)
- [Changelog](https://github.com/tafia/quick-xml/blob/master/Changelog.md)
- [Commits](https://github.com/tafia/quick-xml/compare/v0.19.0...v0.20.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-05 11:51:39 +00:00
t-mangoe 89588a7391 feat(nodejs): check node engines version in package.json (#1847)
* check node engines version in package.json

* fix code, following review.
2020-12-05 12:25:48 +01:00
dependabot-preview[bot] 749245bda7 build(deps): bump serde_json from 1.0.59 to 1.0.60
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.59 to 1.0.60.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.59...v1.0.60)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-03 09:03:34 +00:00
Kevin Song 0d3b2aaf12 style: Add comments for bash preexec fix (#1952)
* Add comments for bash fix

* Rewrite commend
2020-12-02 08:48:13 +01:00
Cody Bloemhard ef311408db fix: bg:none overwrites foreground colour (#1903)
Changes the behaviour of a bg:none color string so that
it causes the background to have no color instead of
decoloring the entire string like it did before.
2020-12-02 00:40:15 -06:00
Harald Hoyer f873a9820e fix(bash): Fix background jobs with z/autojump (#1897)
Fixes issue where having z.sh or autojump hooked in bash
would cause spurious background job indicators to appear.
2020-12-02 00:29:02 -06:00
Thomas O'Donnell cf8a6d0738 feat(python): Smarter python binary usage (#1947)
Update the python module to try multiple python binaries when
determining the version. With the new logic if starship doesn't find
`python` on the `PATH`, which is the default for some Linux Distros, it
will fallback to `python3` and then `python2`.
2020-11-30 13:14:18 -06:00
Dominik Nakamura abfe4324e0 feat(rust): Support new rust-toolchain format (#1938)
* feat(rust): Support new rust-toolchain format

* Match file parsing with rustup and update link

* Use cargo to deserialize the rust-toolchain file

* Filter empty channel strings after extraction

* Use the option value instead of rewrapping
2020-11-30 13:52:55 +01:00
Zane Shelby 389e006c00 feat(java): Show Java module for Clojure projects (#966) 2020-11-30 13:50:56 +01:00
dependabot-preview[bot] f87af93d93 build(deps): bump nix from 0.19.0 to 0.19.1
Bumps [nix](https://github.com/nix-rust/nix) from 0.19.0 to 0.19.1.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/compare/v0.19.0...v0.19.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-30 11:02:05 +00:00
Matan Kushner f9ac1eacad docs(i18n): add French and Spanish doc translations (#1942) 2020-11-29 14:33:38 -05:00
Matan Kushner ea6f5e429c docs(i18n): New Crowdin updates (#1788) 2020-11-28 23:45:59 -05:00
Gabriel de Perthuis 3dfe4ca932 fix(git_state): Handle gitdir indirection when rebasing (#1744)
* Make git_state more robust

No need to come up with fake progress info.

See #1374, #1761.

* git_state: add support for .git indirection when rebasing
2020-11-26 19:56:18 +01:00
dependabot-preview[bot] a20c7e2b17 build(deps): bump unicode-segmentation from 1.7.0 to 1.7.1
Bumps [unicode-segmentation](https://github.com/unicode-rs/unicode-segmentation) from 1.7.0 to 1.7.1.
- [Release notes](https://github.com/unicode-rs/unicode-segmentation/releases)
- [Commits](https://github.com/unicode-rs/unicode-segmentation/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-25 09:55:02 +00:00
David Knaack 0f483fad2b perf(memory_usage): replace sysinfo with sys-info (#1886)
* perf(memory_usage): replace sysinfo with sys-info

* format

* simplify error handling
2020-11-23 21:17:15 -05:00
Sagittarius-a 688f1b3457 feat(git_branch): add remote branch name if different than local branch (#1915)
* feat(git_branch): add remote branch name if different than local branch

* feat(git_branch): Implement a more customizable remote branch

* feat(git_branch): Use more explicit API function name

* feat(git_branch): Remove forgotten draft documentation

* feat(git_branch): Set less verbose defaults

* feat(git_branch): Handle case to always display remote

* feat(git_branch): Fix error in rebase operation
2020-11-23 22:07:16 +01:00
David Knaack cf297ff25d fix: apply nightly clippy & fmt suggestions (#1922) 2020-11-23 20:38:11 +01:00
Aaron Gable 4b85b40cb0 feat(git_branch): add 'only_attached' config bool (#1910)
* feat(git_branch): add 'only_attached' config bool

This adds a new boolean, `only_attached`, to the configuration for
the `git_branch` module. This mirrors the `only_detached` config
value for the `git_commit` module: setting the value to true causes
the module to suppress its output when the user is not on a branch.

This allows users to have either a branch name or a commit hash in
their prompt, as opposed to having either a branch name or the
overly-wordy "HEAD (sha1)".

* Fix formatting
2020-11-23 19:22:51 +01:00
Matan Kushner 29117c4817 Update config.js 2020-11-21 17:17:17 -05:00
Masashi Aso eb4e59d9ea fix(swift): parsing swift version (#1913)
* fix parse swift version for swift-for-tensorflow

* add test for parsing swift version

Co-authored-by: Masashi Aso <maashi.apple.japan@icloud.com>
2020-11-20 19:34:27 +01:00
Giorgio Gallo 87424d2eaf docs: update rust icon in preset configuration (#1900) 2020-11-17 20:32:48 +01:00
dependabot-preview[bot] 77bd80839e build(deps): bump unicode-segmentation from 1.6.0 to 1.7.0
Bumps [unicode-segmentation](https://github.com/unicode-rs/unicode-segmentation) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/unicode-rs/unicode-segmentation/releases)
- [Commits](https://github.com/unicode-rs/unicode-segmentation/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-16 05:37:33 +00:00
Thomas O'Donnell cf5837065a chore(release): v0.47.0 2020-11-15 18:22:35 +01:00
Giorgio Gallo 045ee17817 docs: Alphabetic sorting of config subsections (#1877) 2020-11-14 19:41:58 +01:00
Adham ac88301294 feat(terraform): Add hcl extension support to Terraform module (#1875)
* Add hcl file extension to terraform module

Signed-off-by: adhaamehab <adhaamehab.me@gmail.com>

* Update docs

Signed-off-by: adhaamehab <adhaamehab.me@gmail.com>
2020-11-14 18:33:21 +01:00
dependabot-preview[bot] 680663f5b3 build(deps): bump once_cell from 1.5.1 to 1.5.2
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.5.1 to 1.5.2.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.5.1...v1.5.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-13 19:13:54 +00:00
David Knaack a05be18447 fix(pwsh): fix crash on error in shell with old pwsh (#1861)
Handle missing Get-Error in powershell gracefully.
2020-11-12 10:42:03 -06:00
dependabot-preview[bot] d648bb0e00 build(deps): bump once_cell from 1.5.0 to 1.5.1
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.5.0 to 1.5.1.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.5.0...v1.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-12 05:31:22 +00:00
dependabot-preview[bot] d9bf23a58a build(deps): bump once_cell from 1.4.1 to 1.5.0
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.4.1 to 1.5.0.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.4.1...v1.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-11 19:34:03 +00:00
David Knaack be882fcda9 fix(windows): configure console to enable ANSI support (#1646) 2020-11-11 20:24:43 +01:00
dependabot-preview[bot] 7dba2c8a0f build(deps): bump native-tls from 0.2.5 to 0.2.6
Bumps [native-tls](https://github.com/sfackler/rust-native-tls) from 0.2.5 to 0.2.6.
- [Release notes](https://github.com/sfackler/rust-native-tls/releases)
- [Changelog](https://github.com/sfackler/rust-native-tls/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sfackler/rust-native-tls/compare/v0.2.5...v0.2.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-11 05:31:57 +00:00
David Knaack 35a0a20f5c perf(init/pwsh): use get-random for session-key instead of invoking starship session (#1860) 2020-11-08 11:07:25 +01:00
Gautham Warrier 7450510327 perf(init): use $RANDOM env-var instead of starship session to generate session-key (#1755) 2020-11-07 16:30:08 +01:00
dependabot-preview[bot] 30db07aaf3 build(deps): bump native-tls from 0.2.4 to 0.2.5
Bumps [native-tls](https://github.com/sfackler/rust-native-tls) from 0.2.4 to 0.2.5.
- [Release notes](https://github.com/sfackler/rust-native-tls/releases)
- [Changelog](https://github.com/sfackler/rust-native-tls/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sfackler/rust-native-tls/compare/v0.2.4...v0.2.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-06 05:32:21 +00:00
Jamie Kirkpatrick 3846070efa fix(gcloud): respect overides of the active gcloud config (#1846) 2020-11-05 18:47:58 +01:00
juno suárez 597fd40812 docs(cmd_duration): Document cmd_duration notifications (#1831)
* docs: add options for cmd_duration notifications

Added in #1019

* 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>
2020-11-04 18:53:51 +01:00
David Knaack 368945f5db docs(pwsh/init): various fixes for init doc (#1793) 2020-11-03 18:52:46 +01:00
dependabot-preview[bot] 534907a21e build(deps): bump battery from 0.7.7 to 0.7.8
Bumps [battery](https://github.com/svartalf/rust-battery) from 0.7.7 to 0.7.8.
- [Release notes](https://github.com/svartalf/rust-battery/releases)
- [Changelog](https://github.com/svartalf/rust-battery/blob/master/CHANGELOG.md)
- [Commits](https://github.com/svartalf/rust-battery/compare/0.7.7...0.7.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-02 07:13:58 +00:00
dependabot-preview[bot] ec2ba5c3c6 build(deps): bump regex from 1.4.1 to 1.4.2
Bumps [regex](https://github.com/rust-lang/regex) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.4.1...1.4.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-02 05:36:11 +00:00
David Knaack ffac28745b fix(bug-report): verify exit code of open, always print url (#1839)
* fix(bug-report): verify exit code of browser open

* always print url to open ticket
2020-10-30 18:36:12 +01:00
Shu Kutsuzawa c6d25a6a38 feat(lua): Add a Lua module (#1815)
* feat: add lua module

* docs: add lua module

* fix: lua version test

* feat: lua module can be detected if the current dir contains a "lua" dir

* feat: enable to use luajit

* fix: improve regex

* fix based on https://github.com/starship/starship/pull/1815#discussion_r510932742

* fix based on https://github.com/starship/starship/pull/1815#discussion_r511362581

* fix based on https://github.com/starship/starship/pull/1815#discussion_r510941252
2020-10-27 19:05:20 +01:00
Gautham Warrier f0cc2bea79 fix(zsh): Ensure existing keymap change functions are not overriden (#1826) 2020-10-27 19:01:52 +01:00
David Knaack b9c096bd56 feat(logger): don't create empty log files (#1836) 2020-10-27 19:00:53 +01:00
dependabot-preview[bot] 919d367dd4 build(deps): bump os_info from 3.0.0 to 3.0.1
Bumps [os_info](https://github.com/stanislav-tkach/os_info) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/stanislav-tkach/os_info/releases)
- [Changelog](https://github.com/stanislav-tkach/os_info/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stanislav-tkach/os_info/compare/v3.0...v3.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-26 07:00:14 +00:00
Christoph Schlosser 89fc93d1f9 feat(cmake): Add CMakeCache.txt detection to CMake module (#1795)
* Add CMakeCache.txt to cmake module

* Remove trailing whitespace

* Apply fixes by @andytom

* Add CMakeCache.txt to docs

* Revert documentation for languages other than en
2020-10-25 19:10:42 +01:00
Thomas O'Donnell 9d5770544e fix(install): Better platform detection (#1827)
Have refactored the platform detection in the install script to try to
better detect Windows when running the Windows install script.
2020-10-25 10:16:47 +01:00
Mauricio Teixeira eec961caaf feat(openstack): Add module for OpenStack (#1664)
* first (crude) attempt to implement the openstack module

* Attempt to follow OpenStack standards for clouds.yaml location

* fmt

* provide unittest

* add documentation

* fix fmt

* fix clippy

* fix clippy

* fix fmt

* fix small nitpicks

* expand openstack explanation

* load config file using find_map

* fix fmt

* add test for valid config, plus fix test for invalid config

* fix fmt

* re-add forgotten comment
2020-10-24 11:46:43 +02:00
marcos-quezada 745a554fdc fix(pwsh): Switched pwsh profile to use dollar hook for a more accurate success/failure handling (#1745)
* [f]Use_global_dollar_hook_for_lastExitCodeForPrompt Switched to use the dollar hook, as source of truth for exit code of las command, included comments to clarify.

* fix: Adjusted accordingly to comments on PR.

* fix: Moved last exit code handling inside  if to reuse that variable.

Co-authored-by: Marcos Quezada Perez <marcos.quezadaperez@peakwork.com>
2020-10-24 11:18:58 +02:00
Miguel Ángel Melón Pérez ea9f803018 feat(git_commit): add git tag to module (#950) 2020-10-23 11:49:19 -04:00
Thomas O'Donnell c938eac1d6 fix(kubernetes): Parse stacked kubeconfigs (#1678)
Have refactored the kubernetes module to better support stacked
kubeconfigs. Rather than trying to grab both the current-context and
namespace on a single pass we now do two passes. These changes should
fix the problems where the current-context is defined in one file but
the context and the namespace are defined in a different file.
2020-10-23 13:39:50 +02:00
dependabot-preview[bot] 975d3232c8 build(deps): bump dirs-next from 1.0.2 to 2.0.0
Bumps [dirs-next](https://github.com/xdg-rs/dirs) from 1.0.2 to 2.0.0.
- [Release notes](https://github.com/xdg-rs/dirs/releases)
- [Changelog](https://github.com/xdg-rs/dirs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/xdg-rs/dirs/compare/dirs-v1.0.2...dirs-v2.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-22 05:55:19 +00:00
dependabot-preview[bot] 4ed5eb029a build(deps): bump rayon from 1.4.1 to 1.5.0
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.4.1 to 1.5.0.
- [Release notes](https://github.com/rayon-rs/rayon/releases)
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.4.1...rayon-core-v1.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-22 05:52:26 +00:00
Thomas O'Donnell 6717d40b95 ci: Run against nightly version of rust (#1814)
Now that the uom dependency has been updated and compiles on the nightly
version of rust we can enable the builds again in the build matrix.
2020-10-21 09:17:54 +02:00
dependabot-preview[bot] e59cefd2b4 build(deps): bump battery from 0.7.6 to 0.7.7
Bumps [battery](https://github.com/svartalf/rust-battery) from 0.7.6 to 0.7.7.
- [Release notes](https://github.com/svartalf/rust-battery/releases)
- [Changelog](https://github.com/svartalf/rust-battery/blob/master/CHANGELOG.md)
- [Commits](https://github.com/svartalf/rust-battery/compare/0.7.6...0.7.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-20 06:29:40 +00:00
David Knaack daf7976f9d fix(pwsh): preserve original console encondings (#1810) 2020-10-19 13:52:15 -04:00
dependabot-preview[bot] f9bed976c1 build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#1808) 2020-10-19 15:55:22 +00:00
dependabot-preview[bot] cdb8e6279d build(deps-dev): bump vuepress from 1.6.0 to 1.7.1 in /docs (#1809)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.6.0 to 1.7.1.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.7.1/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-19 11:50:17 -04:00
dependabot-preview[bot] 75304d5350 build(deps-dev): bump vuepress-theme-default-prefers-color-scheme (#1807)
Bumps [vuepress-theme-default-prefers-color-scheme](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/releases)
- [Changelog](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/commits/v1.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-19 11:46:57 -04:00
dependabot-preview[bot] 7b7cef2103 build(deps): bump quick-xml from 0.19.0 to 0.20.0
Bumps [quick-xml](https://github.com/tafia/quick-xml) from 0.19.0 to 0.20.0.
- [Release notes](https://github.com/tafia/quick-xml/releases)
- [Changelog](https://github.com/tafia/quick-xml/blob/master/Changelog.md)
- [Commits](https://github.com/tafia/quick-xml/compare/v0.19.0...v0.20.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-19 07:25:54 +00:00
Thomas O'Donnell 035e80bbd3 chore(context): Use monotonic clock for timeout (#1802)
Have switched to use a monotonic clock for calculating the timeout when
indexing the current directory for the context to avoid any issues with
calculating the timeout when the systems clock might change.
2020-10-17 15:36:21 -04:00
jRimbault 95bb901b8a chore: fix the double compiling of lib and bin (#1616)
* fix: rust modules are compiled twice

The modules being declared both in the _library_ crate and the _binary_
crate made cargo compile everything twice:

1. for the library
2. for the binary

What happened was:

1. The library "starship" was compiled.
2. The binary "starship" (and all its modules) were compiled.

* fix: stop compiling every rust module twice

restrict visibility

* Run cargo fmt

* Add bug_report module

Co-authored-by: Matan Kushner <hello@matchai.dev>
Co-authored-by: Kevin Song <chips@ksong.dev>
2020-10-17 11:09:27 +02:00
Jeremy Hilliker 3287e48b65 docs(memory): Remove removed options from Memory example (#1800)
Remove the following options (unsupported since ec76faf & v0.45.0):
[memory_usage]
show_percentage = true
show_swap = true
separator = "/"

Signed-off-by: Jeremy Hilliker <dev.nospam@jeremyh.com>
2020-10-17 09:55:52 +02:00
Matan Kushner 7c6d0a57b3 chore(release): v0.46.2 2020-10-14 15:29:16 -04:00
Matan Kushner c65ab100f0 chore(release): v0.46.1 2020-10-14 15:23:24 -04:00
Yudai Hayashi 5740b7d18a docs: Update document for installing on windows (#1760)
* Update document for installing on windows

* Revert "Update document for installing on windows"

This reverts commit 5dc8db05c4.

* Update document (English version only) for installing on windows

* Change the expression

* Fixed the grammer misstake
2020-10-14 12:22:02 -04:00
Thomas O'Donnell c3cc6b174f test(aws): Ignore tests that check .aws files (#1775)
When running the AWS module it will parse the AWS config found in
`~/.aws/config` to get the region. This means that tests that expect no
region to be set will fail if there exists a default profile with a
region set, which is probably true for most AWS users. To avoid this
have set the AWS tests that depend on the non-existance of a
`.aws/config` to be ignored.
2020-10-14 12:21:35 -04:00
Thomas O'Donnell b2a5c4a3e4 chore(log): Add context to logger failure messages (#1764)
Have added a little bit more context to the error messages that occur
when if starship is unable to setup the logger. This should hopefully
make it a bit easier to work out why starship can't setup the logger.
2020-10-14 12:13:44 -04:00
David Knaack 205fd1abdd fix(git_state): remove unwrap in describe_rebase (#1761) 2020-10-14 12:13:08 -04:00
SarthakSingh31 a73d7140eb perf(git_status): Improved git_status module performance (#1777) 2020-10-14 12:12:41 -04:00
dependabot-preview[bot] 2582b7e6c2 build(deps): bump sysinfo from 0.15.2 to 0.15.3
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.15.2 to 0.15.3.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-14 05:54:03 +00:00
dependabot-preview[bot] b10d2ecb1c build(deps): bump dirs-next from 1.0.1 to 1.0.2
Bumps [dirs-next](https://github.com/xdg-rs/dirs) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/xdg-rs/dirs/releases)
- [Changelog](https://github.com/xdg-rs/dirs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/xdg-rs/dirs/compare/dirs-v1.0.1...dirs-v1.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-14 05:42:40 +00:00
dependabot-preview[bot] 58c3bfaab7 build(deps): bump git2 from 0.13.11 to 0.13.12
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.11 to 0.13.12.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.11...0.13.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-14 05:30:18 +00:00
Matan Kushner 783eb3373d fix: replace emoji for cmake and erlang (#1787) 2020-10-13 18:01:35 -04:00
Matan Kushner 2f106a3d37 ci: temporarily disable GH Actions cache 2020-10-13 15:58:36 -04:00
Matan Kushner 02f7418820 docs(i18n): new Crowdin updates (#1719) 2020-10-13 15:09:01 -04:00
David Knaack 4de9e43cff fix(directory): preserve substitution order (#1782) 2020-10-13 15:06:41 -04:00
dependabot-preview[bot] dc8e769bdb build(deps): bump nix from 0.18.0 to 0.19.0
Bumps [nix](https://github.com/nix-rust/nix) from 0.18.0 to 0.19.0.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/compare/v0.18.0...v0.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-13 17:14:46 +00:00
dependabot-preview[bot] 5ba1952d3c build(deps): bump serde_json from 1.0.58 to 1.0.59
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.58 to 1.0.59.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.58...v1.0.59)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-13 17:09:17 +00:00
dependabot-preview[bot] 906b0c486a build(deps): bump toml from 0.5.6 to 0.5.7
Bumps [toml](https://github.com/alexcrichton/toml-rs) from 0.5.6 to 0.5.7.
- [Release notes](https://github.com/alexcrichton/toml-rs/releases)
- [Commits](https://github.com/alexcrichton/toml-rs/compare/0.5.6...0.5.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-13 16:53:42 +00:00
dependabot-preview[bot] 28c83763d7 build(deps): bump regex from 1.3.9 to 1.4.1
Bumps [regex](https://github.com/rust-lang/regex) from 1.3.9 to 1.4.1.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.3.9...1.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-13 16:51:17 +00:00
dependabot-preview[bot] f7a4c43656 build(deps): bump attohttpc from 0.15.0 to 0.16.0
Bumps [attohttpc](https://github.com/sbstp/attohttpc) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/sbstp/attohttpc/releases)
- [Commits](https://github.com/sbstp/attohttpc/compare/v0.15.0...v0.16.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-13 16:21:44 +00:00
Adrian Duong 875ed1ed12 docs: fix typo in CONTRIBUTING.md (#1772)
consistend -> consistent
2020-10-13 12:08:32 -04:00
Matan Kushner a8264cdab9 ci: temporarily disable nightly tests
Disabled until the following issue is fixed:
https://github.com/iliekturtles/uom/issues/210
2020-10-13 12:05:55 -04:00
Tilmann Meyer d1e2c13a7c fix: apply clippy suggestions (#1756) 2020-10-13 12:03:33 -04:00
David Knaack 967ae28f61 fix(build): add serde_derive to dependency list (#1762) 2020-10-13 11:38:36 -04:00
Thomas O'Donnell 9044f9e14c docs: Update defaults in config docs (#1759)
Have updated some of the config docs to correct the git_status default
that was incorrect. Have also taken the time to switch some of the
format strings to use toml literal strings rather than normal strings to
simplify the escape strings.
2020-10-12 00:10:39 -04:00
Mick Hohmann e7a83aa445 docs: fix wrong syntax in the format string and standardize doc tense (#1758) 2020-10-08 16:54:59 -04:00
Matan Kushner a46bbf1f55 chore(release): v0.46.0 2020-10-08 12:52:55 -04:00
Tomer a9f6d0f81e fix(python): Read venv prompt from pyvenv.cfg (#1747)
*  Add  --prompt rendering to python virtualenv

* Use pyvenv.cfg to find prompt

* Remove usage of VIRTUAL_ENV_PROMPT variable

Seeing how both venv and virtualenv set a pyvenv.cfg, this isn't needed.
Additionally pyvenv.cfg is set in earlier versions than VIRTUAL_ENV_PROMPT,
which at this moment is in the unrelased python 3.10

* Smarter result unwrapping thanks to clippy
2020-10-08 09:58:00 +02:00
David Knaack 7c941af11a feat(directory): strip Microsoft.PowerShell.Core\FileSystem:: prefix on windows (#1732) 2020-10-06 09:44:27 +02:00
Thomas O'Donnell 140009994d docs(python): Update the python_binary option (#1731)
* docs(python): Update the python_binary option

Have updated the documentation to make the `python_binary` option a bit
more prominent, since this is becoming a more requested requirement now
that more and more systems don't have a default `python` command.

* Correct order of python options
2020-10-06 02:09:06 -05:00
Matan Kushner 47492d686b docs(FAQ): add FAQ about shell completions 2020-10-05 14:26:22 -04:00
Jeremy Hilliker 1673d565f4 feat(directory): add ellipsis to truncated paths (#1563)
Adds ellipsis in front of truncated paths: …/
Configurable through new config option: directory.truncation_symbol
Fixes #1162, #1626
2020-10-03 11:25:21 -05:00
Logan Magee 2693d125a8 fix: Pass --no-gpg-sign to git commit in tests (#1718)
Some users have commit.gpgSign set to true in their global git config,
causing tests which run `git commit` to fail if the configured
user.signingKey is not present (as is often the case with PGP smart
cards). Passing this flag overrides the global git configuration,
preventing git from attempting sign the specified commit. This change
has no effect on users who haven't set commit.gpgSign to true.
2020-10-03 12:22:19 +02:00
Thomas O'Donnell 0883ad78cf fix(utils): reduce log level of errors in utils. (#1730)
Have reduced the log level when we fail to execute a command since this
is happening a lot more that expected, for example if a user checks out
a repo that contains a `.js` file but they don't have node installed.
2020-10-03 11:58:49 +02:00
sokai d46c76920e style(install): Simple code style fix in install.sh (#1690)
* Update install.sh

fixed only coding style (ShellCheck gave me a hint ;-))

* Make PR Bot happy
2020-10-03 10:58:06 +02:00
David Knaack b633248606 fix(readonly): change module to match docs (#1728) 2020-10-02 13:10:46 -04:00
David Knaack f7f59cd996 fix(bug-report): use correct path for ion config (#1726) 2020-10-02 12:45:23 -04:00
Jeff Byrnes 476edc4ca1 docs: clarify missing info in 0.45.0 migration doc (#1714) 2020-10-01 16:48:14 -04:00
David Barnett 7241f4fbf7 test(git-state): tests failing when git init.defaultBranch set (#1692)
The tests for git-state assume the default branch is `master`.
In git 2.28 support for a global option, `init.defaultBranch`, to
change the default branch name which causes git-state tests to fail.
2020-10-01 19:08:31 +02:00
dependabot-preview[bot] e9d3811ac8 build(deps): bump serde_json from 1.0.57 to 1.0.58
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.57 to 1.0.58.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.57...v1.0.58)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 10:56:25 +00:00
dependabot-preview[bot] a0e4b256ae build(deps): bump chrono from 0.4.18 to 0.4.19
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.18 to 0.4.19.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.18...v0.4.19)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 08:16:48 +00:00
Matan Kushner 5427b58a1b chore(release): v0.45.2 2020-09-30 21:42:36 -04:00
Matan Kushner 15c04e7d18 docs(i18n): new Crowdin updates (#1705) 2020-09-30 21:23:36 -04:00
Shu Kutsuzawa c02b335ee3 docs: Add a migration guide's link to sidebar for jp (#1707) 2020-09-30 20:40:06 -04:00
Matan Kushner ce73f6347f docs(directory): fix $read_only variable names
Fixes #1706
2020-09-30 18:40:25 -04:00
aspen 7c15b26ac9 fix: Fix compilation on iOS targets 2020-09-30 18:28:19 -04:00
Matan Kushner d8dcf04cff docs(i18n): new Crowdin updates (#1512) 2020-09-30 16:26:13 -04:00
Matan Kushner d63c7ce3f9 build(deps): bump starship_module_config_derive from 0.1.0 to 0.1.2 2020-09-30 16:16:26 -04:00
Matan Kushner 3a1b7816d7 chore(release): release starship_module_config_derive v0.1.2 2020-09-30 16:13:42 -04:00
Matan Kushner 31d51e22bd chore(release): v0.45.1 2020-09-30 12:15:08 -04:00
Tilmann Meyer 2650dc8f3f fix(powershell): fix session key syntax error (#1697) 2020-09-30 12:14:10 -04:00
dependabot-preview[bot] 645124cfa5 build(deps): bump rayon from 1.4.0 to 1.4.1
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/rayon-rs/rayon/releases)
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.4.0...rayon-core-v1.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-30 08:21:28 +00:00
Érico Nogueira Rolim ae55697dfb docs: Remove newline from beginning of example format config. (#1693)
Having a newline there means that an empty newline is printed everytime
the user runs a command or presses Enter, which for short commands
and/or small terminal windows can noticeably decrease the information
density.
2020-09-29 23:39:20 -04:00
dependabot-preview[bot] 83502a08dd build(deps): bump os_info from 2.0.8 to 3.0.0 (#1688)
* build(deps): bump os_info from 2.0.8 to 3.0.0

Bumps [os_info](https://github.com/stanislav-tkach/os_info) from 2.0.8 to 3.0.0.
- [Release notes](https://github.com/stanislav-tkach/os_info/releases)
- [Changelog](https://github.com/stanislav-tkach/os_info/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stanislav-tkach/os_info/compare/v2.0.8...v3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Upgrade to work with the new os_info

Have switched to work with the new os_info tooling.

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Thomas O'Donnell <andy.tom@gmail.com>
2020-09-29 17:06:45 -04:00
Matan Kushner cad415a0e0 chore(release): v0.45.0 2020-09-29 12:38:02 -04:00
Matan Kushner 59f939e25c chore: update v0.45.0 removal notice (#1687)
* chore: update deprecation notice

* Add deprecation page to sidebar

* Replace the use of "deprected" with "removed"
2020-09-29 12:35:11 -04:00
dependabot-preview[bot] cb4d7d1908 build(deps-dev): bump vuepress-theme-default-prefers-color-scheme (#1685)
Bumps [vuepress-theme-default-prefers-color-scheme](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/releases)
- [Changelog](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-28 23:43:52 -04:00
dependabot-preview[bot] 8eee234ff9 build(deps-dev): bump vuepress from 1.5.4 to 1.6.0 in /docs (#1686) 2020-09-29 03:34:38 +00:00
dependabot-preview[bot] 15b60c8534 build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#1684)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.5.4 to 1.6.0.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.6.0/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-28 23:23:56 -04:00
Tilmann Meyer 2233683410 feat: add error messaging (#1576)
This creates a custom logger for the log crate which logs everything to a file (/tmp/starship/session_$STARSHIP_SESSION_KEY.log) and it logs everything above Warn to stderr, but only if the log file does not contain the line that should be logged resulting in an error or warning to be only logged at the first starship invocation after opening the shell.
2020-09-28 16:38:50 -04:00
Matan Kushner 3c668e6e6a doc: small doc fixups 2020-09-28 12:38:14 -04:00
dependabot-preview[bot] e5bf405a73 build(deps): bump chrono from 0.4.15 to 0.4.18
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.15 to 0.4.18.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.15...v0.4.18)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-28 06:54:53 +00:00
dependabot-preview[bot] b6b05ed05f build(deps): bump quick-xml from 0.18.1 to 0.19.0
Bumps [quick-xml](https://github.com/tafia/quick-xml) from 0.18.1 to 0.19.0.
- [Release notes](https://github.com/tafia/quick-xml/releases)
- [Changelog](https://github.com/tafia/quick-xml/blob/master/Changelog.md)
- [Commits](https://github.com/tafia/quick-xml/compare/v0.18.1...v0.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-28 05:39:52 +00:00
Thomas O'Donnell 7b09c86b0f docs(git_status): Update git_status module docs (#1667)
* docs: Update git_status module docs

Have updated the configuration docs for the `git_status` to remove a
non-existing option and to add an example for how to achieve the same
effect as with the new format strings.

* Add git_status changes to migration guide

Have added the change to the sync count to the migration guide. I also
corrected a few typos in the configuration.
2020-09-26 19:15:52 +02:00
Jan Katins c93bd7b705 fix: actually disable per default disabled modules (#1677)
The default `disabled: true` is actually only available within the module (when the config struct is used and not the user toml) but not all (the hg_branch) modules checked it there again.

Document this in all places and add the check (+ test) to the hg_branch module.
2020-09-26 09:35:41 +02:00
Jan Katins ffb1345052 feat(status): add the status module (#1651)
* add the exit code module

this allows to display more precisely the last command exit code
and to configure starship to not change the last charcter of the
prompt even in case of failure. It is disabled by default, because
it seems a bit redundant with the character module in its default
configuration.

* rename exit_code module to status

* Enforce a default disabled=true 

In the outer places, we only check for the disabled flag in the config toml file, only when this is loaded into the real config struct, we see the default. And if the default is true, we have to abort at that place. For status and hg_branch that wasn't so. I also commented the rest

* fix spaces in markdown table for status module

* Add a tip that status module is disabled by default

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

* Remove unrelated changes for default disabled=true

Co-authored-by: Gaëtan Lehmann <gaetan.lehmann@gmail.com>
Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-09-26 00:04:51 +02:00
Matan Kushner 17687be1cb docs: add a migration guide for the format string changes (#1624)
* Start writing migration guide

* Add prefix/suffix migration to guide

* Update docs/migrating-to-0.45.0/README.md

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

* Update docs/migrating-to-0.45.0/README.md

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

* Add missing quote

* Detail the modules affected by the change

* Document character and time migration

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-09-22 15:48:37 -04:00
Tilmann Meyer a245d54cdb fix(git-state): Fix discrepancy between v0.44.0 and master (#1672) 2020-09-21 15:17:06 -04:00
Jan Katins 6426bbe3e4 feat: Add timings subcommand (#1629)
* feat: Add computational duration to all computed modules

This also means that in case we do some computations and these end up empty, we submit an empty module

* feat: Add timings subcommand

This outputs the timings of all computed modules, sorted by the duration it took to compute the module.

Useful for debugging why the prompt takes so long.

* feat: Add timings to explain output

* fix: Ensure that even empty custom modules get timings

* format main.rs

* feat: Only show interesting timings

* fix(tests): Change tests to look for empty string instead of None

* Use proper wording in timings help

* Revert "fix(tests): Change tests to look for empty string instead of None"

This reverts commit aca5bd1b03.

* fix(tests): Returning None in case the module produced an empty string

* fix: Ensure that linebreaks (and space) make a module not-empty

* Make cargo clippy happy

* Make Module.duration a proper Duration

* Only return a module if we would report it

* Change to cleaner way to return None for empty modules

* Avoid unnecessary module creation

* Simplify a string comparison

* Add timings to trace

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-09-21 19:06:15 +02:00
Thomas O'Donnell bb324834a5 fix: restore the pyenv_prefix option to python (#1668)
Have restored the `pyenv_prefix` option to the python module. This is
added as a new variable that will only be shown if `pyenv` is being used
to determine the version of python that is being used.
2020-09-21 11:48:26 -04:00
Thomas O'Donnell ecd3d6e9f0 docs: update clippy command in the CONTRIBUTING.md (#1665)
Have updated the clippy command in the CONTRIBUTING.md to match the one
that is used by the CI system.
2020-09-20 18:02:24 +02:00
Andrew c22ea6d889 style: make rustfmt use the default configuration (#1661)
by adding an empty `rustfmt.toml` configuration file, thus allowing
users who have their own configuration to contribute without friction.
2020-09-19 08:45:17 +02:00
dependabot-preview[bot] 26e4de710e build(deps): bump sysinfo from 0.15.1 to 0.15.2
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.15.1 to 0.15.2.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-17 06:24:06 +00:00
dependabot-preview[bot] 4fc0de4201 build(deps): bump git2 from 0.13.10 to 0.13.11
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.10 to 0.13.11.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/commits/0.13.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-14 06:54:44 +00:00
David Knaack 6186e296ac fix(zsh): work when setopt ksh_arrays is set (#1612) 2020-09-14 08:30:57 +02:00
Joshua Poehls 2996220568 fix(pwsh): update init script to propagate $LASTEXITCODE and $?
Previously the prompt function used in PowerShell would overwrite the $LASTEXITCODE and $? automatic variables that were set by the previous command run the user in the shell. This results in surprising behavior for the user if they inspect those variables looking for the result of the command they last ran.

This fixes the bug reported here: https://github.com/starship/starship/issues/1051
And goes further to also propagate the $? automatic variable which is not mentioned in that bug.
2020-09-09 11:52:30 -04:00
Matan Kushner d3100c5c82 fix: use suffixes for modules before directory (#1645)
Previously, all modules would have prefixes, which lead to the first
module having a dangling prefix. This change ensures that the first
few modules would instead have suffixes so that we don't start or
end with a prefix or suffix.
2020-09-08 12:09:21 -04:00
Jan Katins 17e8115f16 docs: Improvements in docs for custom modules (#1615)
* docs: Clarify that commands will be passed in on stdin

* docs: Clearer instruction how to include individual custom modules

* docs: Include link to #1252 in docs for custom modules

That issue is used to share custom modules.

* docs: Remove reference to prompt_order

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-09-01 19:07:12 +02:00
dependabot-preview[bot] 567ea8d2be build(deps): bump battery from 0.7.5 to 0.7.6
Bumps [battery](https://github.com/svartalf/rust-battery) from 0.7.5 to 0.7.6.
- [Release notes](https://github.com/svartalf/rust-battery/releases)
- [Changelog](https://github.com/svartalf/rust-battery/blob/master/CHANGELOG.md)
- [Commits](https://github.com/svartalf/rust-battery/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-26 05:41:46 +00:00
dependabot-preview[bot] 6f347b71ed build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#1613)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.5.3 to 1.5.4.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.4/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-08-25 10:50:57 -04:00
dependabot-preview[bot] 7ff9dd3d84 build(deps): bump rayon from 1.3.1 to 1.4.0
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.3.1 to 1.4.0.
- [Release notes](https://github.com/rayon-rs/rayon/releases)
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/v1.3.1...rayon-core-v1.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-25 05:32:58 +00:00
dependabot-preview[bot] 30dfed812b build(deps-dev): bump vuepress from 1.5.3 to 1.5.4 in /docs (#1614)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.5.3 to 1.5.4.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.4/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-08-25 00:23:01 -04:00
Dario Vladović faba2d104d fix(test): do NOT quote argument values for mocked invocations (#1527)
Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-08-24 19:05:43 +02:00
dependabot-preview[bot] 46a51d7941 build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#1571)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.5.2 to 1.5.3.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.3/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-08-21 21:02:34 -04:00
dependabot-preview[bot] 2f5d795546 build(deps): bump git2 from 0.13.8 to 0.13.10 (#1606)
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.8 to 0.13.10.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-08-21 21:02:19 -04:00
jRimbault 12c7877932 fix: $EDITOR argument parsing (#1595)
Fixed editor argument parsing by properly splitting
whitespace with the same procedure used by shell.
2020-08-21 11:41:36 -05:00
David Knaack d4515696a4 fix(pwsh): stop paths from being interpreted as patterns (#1569)
Convert-Path in the powershell prompt script works with -Path,
which interprets paths as wildcard patterns.  

Not all valid paths are also valid wildcard patterns, possibly causing
the prompt to error (eg []*).  

Replace it with -LiteralPath that makes Convert-Path use the path as-is.
2020-08-19 23:45:10 -05:00
Matan Kushner 09672eeea7 fix: re-add add_newline to root config (#1598) 2020-08-18 18:58:29 +02:00
dependabot-preview[bot] 8c48e0f707 build(deps): bump once_cell from 1.4.0 to 1.4.1
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.4.0...v1.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-18 06:35:00 +00:00
Matan Kushner 1cd4f12bb4 Revert "fix: restore add_newline configuration (#1592)" (#1596) 2020-08-17 12:30:01 -04:00
dependabot-preview[bot] 73e6c69637 build(deps): bump chrono from 0.4.13 to 0.4.15
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.13 to 0.4.15.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.13...v0.4.15)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-17 10:20:18 +00:00
Matan Kushner 1652c0bdb1 fix: restore add_newline configuration (#1592) 2020-08-16 23:33:40 -04:00
Tilmann Meyer bcdf522af5 chore: remove unused name from Segment and remove some of the misleading underscores (#1584)
* chore: Remove unused name from Segment and remove some of the misleading underscores

* chore: Access members of `Segment` directly
2020-08-16 22:16:05 -04:00
Thomas O'Donnell 2e14d1af5a fix(install): switch to install the musl binaries by default (#1590)
We have had a few issues where users haave run the install script and
have ended up with a non-functioning version of starship because their
system doesn't have a required lib that we link against. To avoid these
problems it seems the easiest solution is to default to using the
statically compiled musl binaries. If a user knows that they are doing
they can use the non-statically compiled binaries by supplying the `-p`
argument to the installer. Note this is what other rust based tools such
as ripgrep do.
2020-08-16 11:30:10 -04:00
dependabot-preview[bot] f219d310cf build(deps): bump sysinfo from 0.15.0 to 0.15.1
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.15.0 to 0.15.1.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-16 10:12:26 +00:00
dependabot-preview[bot] a50ef1d273 build(deps): bump clap from 2.33.2 to 2.33.3
Bumps [clap](https://github.com/clap-rs/clap) from 2.33.2 to 2.33.3.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-15 09:40:56 +00:00
Emanuele Aina 5ce4322a2c docs: Drop inexistent "number" variable from hostname section (#1586)
The hostname module does not provide any "number" variable, its presence
in the documentation is likely due to some copy&paste from the jobs
module section, so let's drop it.

Signed-off-by: Emanuele Aina <em@nerd.ocracy.org>
2020-08-15 11:02:20 +02:00
Martin Åkesson c0b6e97f57 fix(git_state): panic on interactive rebase (#1552) 2020-08-14 19:09:01 +02:00
David Knaack 0912ed0058 fix(test/dir): make lock thread-safe (#1575)
* fix(test/dir): make lock thread-safe

* stronger ordering
2020-08-14 18:58:53 +02:00
Marc Schreiber 8c71eb5307 feat: Add Undistract Me Feature (#1019)
Often it is handy to get notified when the execution of a command finished.
This commit includes notify-rust in order to generate a desktop notification
when a command execution finished.
2020-08-11 18:44:25 +02:00
dependabot-preview[bot] 93c568e118 build(deps-dev): bump vuepress from 1.5.2 to 1.5.3 in /docs (#1572)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.5.2 to 1.5.3.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.3/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-08-11 12:29:51 -04:00
dependabot-preview[bot] b79830e97b build(deps): bump os_info from 2.0.7 to 2.0.8
Bumps [os_info](https://github.com/darkeld3r/os_info) from 2.0.7 to 2.0.8.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/CHANGELOG.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v2.0.7...v2.0.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-10 06:40:28 +00:00
dependabot-preview[bot] 996e7ddeb5 build(deps): [security] bump prismjs from 1.20.0 to 1.21.0 in /docs (#1566)
Bumps [prismjs](https://github.com/PrismJS/prism) from 1.20.0 to 1.21.0. **This update includes a security fix.**
- [Release notes](https://github.com/PrismJS/prism/releases)
- [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PrismJS/prism/compare/v1.20.0...v1.21.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-08-08 12:19:16 -04:00
Tilmann Meyer 88b603be38 test: introduce env variable mocking (#1490) 2020-08-07 15:13:12 -04:00
David Knaack 8b0f589486 fix(explain): align table correctly (#1482)
* fix(explain): align table correctly

* iterate over lines directly

* calculate desc_width with the actual space available

* custom unicode-aware textwrapping

* fix clippy error

* better width estimination

* explain +6

* move padding width into a constant
2020-08-05 19:16:59 +02:00
Daniel A. White 0be9ffc0a1 feat(shlvl): Add shlvl module (#1385)
* initial commit of support for shlvl

* documentation for shlvl

* use a symbol instead

* test coverage for shlvl

* actually disable when the config says to

* fix docs

* tweak defaults some

* refactor from pr comments

* redisable

* return early to avoid indenting

* make default suffix empty space

* fixing tests after suffix change

* updating docs for format

* making shlvl compatible with formatting

* adding variables table for shlvl

* removing extra line

* doc clarity
2020-08-05 18:30:01 +02:00
Stéphane Benoit c07b798046 docs: Add perl official logo in NerdFont (#1558) 2020-08-04 23:15:58 +02:00
Stéphane Benoit ef55042f2e feat(perl): Added perl version module (#1382)
Adds a module for perl support.
2020-08-04 11:22:44 -05:00
Takahiro Tsuruda c5f2eedf07 feat: Add gcloud module (#1493)
* feat(gcloud): Add document of gcloud module

Signed-off-by: dulltz <isrgnoe@gmail.com>

* feat(gcloud): Add gcloud module

Signed-off-by: dulltz <isrgnoe@gmail.com>

* feat(gcloud): Add test for gcloud module

Signed-off-by: dulltz <isrgnoe@gmail.com>

* Apply the comment

https://github.com/starship/starship/pull/1493\#discussion_r456965413
Signed-off-by: dulltz <isrgnoe@gmail.com>
2020-08-03 23:30:20 +02:00
Jason Wang 14f7cd461c fix(bash): init breaks if PROMPT_COMMAND includes starship_precmd as an intermediate command (#1541) 2020-08-03 22:05:31 +02:00
Matouš Dzivjak 09f3b2a8dd fix(docs): Fix Explore The Starship link in guide (#1553)
Fix Explore the Starship docs link in guide 
that redirected to homepage instead of docs.

Fixes: https://github.com/starship/starship/issues/1542
2020-08-03 12:47:25 -05:00
Thomas O'Donnell 7e1ff68b4d ci: Run clippy on all OSs (#1547)
Have updated the CI config to run clippy on all OSs. This will catch 
any issues in OS specific codes. This might increase the amount of
annotations that are created in any of the common code but it should
be better than the alternative.
2020-08-02 19:06:46 -05:00
Thomas O'Donnell b845abe006 docs: Update example config to remove old var (#1546)
Have updated the example toml config to remove an old var and replace it
with the updated replacement.
2020-08-02 19:16:25 +02:00
David Knaack 36ae36282a refactor(directory/lock): fix clippy, replace str with Path (#1544) 2020-08-02 18:42:38 +02:00
Steve Smith b14be4dfb1 feat(package): Add Maven pom.xml version support (#1511)
* Add gitignore for Emacs backup files.

* Add package version support for Maven pom.xml.

* Update docs with Maven package version support.

* Fix for clippy.
2020-07-31 09:54:03 +02:00
Jason Wang acefbc523f feat(conda): add ignore_base option (#1539)
* Add ignore_base to conda module

* Add ignore_base to conda module in English docs

* `ignore_base` defaults to `true`
2020-07-30 18:57:15 +02:00
Alexey Chernyshov fbaeef8589 Do not check readonly on network locations (#1506)
Do not try to analyze if the current process can write network location
on Windows. There's no way on Windows to tell if we can write a network
location because it's not being controlled by the OS itself. Thus now
the lock symbol is never shown on network locations.  

This PR introduces a new unsafe call.
2020-07-30 11:22:19 -05:00
dependabot-preview[bot] 44885f571b build(deps): [security] bump elliptic from 6.5.2 to 6.5.3 in /docs (#1534)
Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.2 to 6.5.3. **This update includes a security fix.**
- [Release notes](https://github.com/indutny/elliptic/releases)
- [Commits](https://github.com/indutny/elliptic/compare/v6.5.2...v6.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-07-29 19:00:31 -04:00
Dario Vladović 997387ee50 refactor(java): parse version using regex (#1496)
* refactor(java): parse version using regex

Mock java version retrieval & extend java module test suite with
rendering tests.

* chore: remove nom crate

* fix(java): support parsing version from both stdout & stderr

* fix(java): fix java command mock

* refactor(java): simplify version regex
2020-07-29 18:26:46 +02:00
Dario Vladović 84f049f836 feat(dart): add Dart module (#1392) 2020-07-29 11:38:23 -04:00
Dario Vladović feb4124cac feat(swift): add Swift module (#1261) 2020-07-29 11:36:49 -04:00
Simão Mata 1acce65462 feat(package): Add support for Helm charts (#1525)
Signed-off-by: Simão Mata <sm@0io.eu>
2020-07-29 14:06:47 +02:00
Thomas O'Donnell dfe331bf4e ci: Fix failing CI builds (#1532)
We have been having some CI builds fail because they can't find some
dependencies on the OSX. I'm not sure if this is something wrong with
the CI setup, something bad in the cache or something wrong with the
Cargo.lock file. To try to narrow down the possible issues I've manually
updated the Cargo.lock file by running `cargo update`. This should
ensure that the the lock file is in a good state and also force a cache
refresh in the CI.
2020-07-29 10:11:30 +02:00
dependabot-preview[bot] 9507055849 build(deps): bump byte-unit from 4.0.8 to 4.0.9
Bumps [byte-unit](https://github.com/magiclen/byte-unit) from 4.0.8 to 4.0.9.
- [Release notes](https://github.com/magiclen/byte-unit/releases)
- [Commits](https://github.com/magiclen/byte-unit/compare/v4.0.8...v4.0.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-29 06:08:36 +00:00
LOU Xun 3818f901d4 perf: only check timeout every 256 files (#1499) 2020-07-28 22:26:00 +02:00
dependabot-preview[bot] b8359a860a build(deps): bump os_info from 2.0.6 to 2.0.7
Bumps [os_info](https://github.com/darkeld3r/os_info) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/CHANGELOG.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v2.0.6...v2.0.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-27 21:42:37 +00:00
dependabot-preview[bot] b84ec9e4e5 build(deps): bump serde_json from 1.0.56 to 1.0.57
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.56 to 1.0.57.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.56...v1.0.57)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-27 17:30:12 +00:00
dependabot-preview[bot] 4866221357 build(deps): bump nix from 0.17.0 to 0.18.0
Bumps [nix](https://github.com/nix-rust/nix) from 0.17.0 to 0.18.0.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/compare/v0.17.0...v0.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-27 06:11:13 +00:00
Tilmann Meyer fc18212fdb ci: Auto publish for the AUR (#1360)
* ci: Auto publish for the AUR

* Add commit username + email to deploy.yml

* ci: Use ATiltedTree/create-aur-release

After testing with the other action it turns out that they forgot the `-s` `makepkg` flag meaning download all required dependencies.
I forked it fixed the issue and added a fix from some other fork that allows for multiple source files.

Co-authored-by: Kevin Song <chipbuster@gmail.com>
2020-07-25 18:49:09 -04:00
David Knaack 869a6f3140 fix: fix compilation with battery feature disabled (#1509) 2020-07-24 17:42:36 -04:00
dependabot-preview[bot] c46066a8d5 build(deps): bump sysinfo from 0.14.15 to 0.15.0
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.15 to 0.15.0.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-24 07:56:05 +00:00
Matan Kushner 5f7dd0ede8 docs(i18n): New Crowdin translations (#1366) 2020-07-23 17:07:10 -04:00
dependabot-preview[bot] 52cf48fed3 build(deps): bump sysinfo from 0.14.14 to 0.14.15
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.14 to 0.14.15.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-23 07:58:01 +00:00
dependabot-preview[bot] ee3d22e513 build(deps): bump git2 from 0.13.6 to 0.13.8
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.6 to 0.13.8.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.6...0.13.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-22 05:55:36 +00:00
dependabot-preview[bot] d0a37710f4 build(deps): bump sysinfo from 0.14.13 to 0.14.14
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.13 to 0.14.14.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-21 05:54:33 +00:00
dependabot-preview[bot] 0120c33c52 build(deps-dev): bump vuepress-theme-default-prefers-color-scheme (#1494)
Bumps [vuepress-theme-default-prefers-color-scheme](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme) from 1.0.9 to 1.1.0.
- [Release notes](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/releases)
- [Changelog](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/compare/v1.0.9...v1.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-07-20 21:54:56 -04:00
Dario Vladović 92eeb9fbb7 chore: add sublime configuration to .gitignore (#1495) 2020-07-20 21:52:46 -04:00
Dario Vladović 7d32784441 docs: fix code block overflow on mobile (#1492) 2020-07-19 19:53:23 -04:00
Dario Vladović 6763a7b006 test: fix mocked commands (#1491)
Ensure that output of mocked commands faithfully replicates output
of actual commands including any trailing whitespace.
2020-07-19 17:01:53 -04:00
Matan Kushner c4fa87a213 docs: add uninstallation instructions to FAQ (#1474) 2020-07-18 16:57:12 -04:00
dependabot[bot] 3363d5fb69 build(deps): bump lodash from 4.17.15 to 4.17.19 in /docs (#1488)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-07-17 16:06:12 -04:00
Matan Kushner a89f41f8e8 Update config.yml 2020-07-17 11:27:36 -04:00
Batuhan Apaydın 03d75eb419 feat(helm): Add Helm module (#1463)
Signed-off-by: Furkan <furkan.turkal@hotmail.com>

Co-authored-by: Furkan <furkan.turkal@hotmail.com>
2020-07-17 09:51:25 +02:00
dependabot-preview[bot] 7b7f2707dd build(deps): bump log from 0.4.8 to 0.4.11
Bumps [log](https://github.com/rust-lang/log) from 0.4.8 to 0.4.11.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.8...0.4.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-16 07:59:36 +00:00
Thomas O'Donnell 15bc9fa210 fix(ocaml): Stop new line being included in ocaml version (#1479)
This fixes a regression in the ocaml module that caused the excess whitespace
to not be trimmed from the version.
2020-07-15 23:22:40 +02:00
David Knaack 133574ab09 fix(config): don't panic when hex color is too short (#1473)
* fix(config): don't panic when hex color is too short

* check length instead of using get
2020-07-14 23:11:43 +02:00
Alexey Chernyshov 08b74c1672 fix(git_status): Fix file rename inconsistency compared to git (#1411)
* Remove renames_index_to_workdir() option from git status

This option causes advanced files rename detection which causes inconsistency between `git status` and Starship reports.
Closes #1371

* add test for manually remaned and deleted files in git_state module

* fix tests
2020-07-14 23:08:56 +02:00
Alexey Chernyshov 57c39437bc feat(directory): Show lock symbol if current directory is read only (#1298)
Add feature to display icon if current directory is read-only.
2020-07-13 16:55:42 -05:00
dependabot-preview[bot] 0db640396b build(deps): bump sysinfo from 0.14.10 to 0.14.13
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.10 to 0.14.13.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-13 06:00:44 +00:00
Gerry 427f48aa8d fix(nodejs): remove line break from version (#1464)
A recent refactor of modules to use format strings accidentally got rid
of the `trim()` on the NodeJS version string. This just adds it back so
that the prompt doesn't include an unnecessary line break when showing
that module.
2020-07-10 11:41:25 -04:00
Tilmann Meyer bd68970fab feat(cmake): Add CMake module (#1456)
* feat: CMake module

* docs: Document symbol variable
2020-07-09 21:40:33 +02:00
Tilmann Meyer 7edd0f6218 test(terraform): move tests which do not require env vars (#1455)
Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-07-08 20:24:38 -04:00
Or Bin 297cbd8654 fix: fixed a typo: permission → permissions (#1459) 2020-07-08 17:26:51 -04:00
Tilmann Meyer de041dd39d ci: revert back to actions-rs (#1457) 2020-07-08 11:53:03 -04:00
Zhenhui Xie ec76fafff0 feat: refactor modules to use format strings (#1374) 2020-07-07 18:45:32 -04:00
Tilmann Meyer 0f52b7b12e ci: rewrite project GH Actions (#1450) 2020-07-07 12:28:37 -04:00
dependabot-preview[bot] 7ce62cd9d4 build(deps): bump sysinfo from 0.14.9 to 0.14.10
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.9 to 0.14.10.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-07 12:45:48 +00:00
Thomas O'Donnell 66cbe9c610 ci(python): Use the default version of python in CI (#1449) 2020-07-07 14:35:39 +02:00
Thomas O'Donnell 3cc7a6d6ac Use the default version of python in CI (#1449)
This removes the hard requirement for a particular version of python in
the CI, and just uses the default version. Since #1297 was merged we
have not depended on the version of python that is installed. This
should stop us from having to update the version of python when the
github action updates the available versions.
2020-07-07 14:31:02 +02:00
Matan Kushner 13597faef3 docs: update font in FAQ from Fira Code → FiraCode Nerd Font 2020-07-06 19:00:42 -04:00
Matan Kushner f102356b1e docs: replace powerline requirement with nerd font requirement 2020-07-06 17:19:28 -04:00
Matan Kushner d1a3ef9984 chore(release): v0.44.0 2020-07-06 13:09:49 -04:00
Matan Kushner 428a78ebb5 fix!: remove haskell module (#1418)
Given how slow the Haskell module is (#1240), it is slowing down the entire prompt
from rendering when the module is active. This commit removes the module until we
can find a faster way to retreive the Haskell version.
2020-07-06 13:00:52 -04:00
dependabot-preview[bot] 5584783d51 build(deps): bump sysinfo from 0.14.8 to 0.14.9
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.8 to 0.14.9.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-06 06:35:41 +00:00
dependabot-preview[bot] df710f80a9 build(deps): bump chrono from 0.4.12 to 0.4.13
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.12 to 0.4.13.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.12...v0.4.13)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-06 06:30:43 +00:00
dependabot-preview[bot] 506a5b7b7b build(deps): bump textwrap from 0.12.0 to 0.12.1
Bumps [textwrap](https://github.com/mgeisler/textwrap) from 0.12.0 to 0.12.1.
- [Release notes](https://github.com/mgeisler/textwrap/releases)
- [Changelog](https://github.com/mgeisler/textwrap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mgeisler/textwrap/compare/0.12.0...0.12.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-06 06:21:00 +00:00
dependabot-preview[bot] 1fd5476cbe build(deps): bump byte-unit from 4.0.4 to 4.0.8
Bumps [byte-unit](https://github.com/magiclen/byte-unit) from 4.0.4 to 4.0.8.
- [Release notes](https://github.com/magiclen/byte-unit/releases)
- [Commits](https://github.com/magiclen/byte-unit/compare/v4.0.4...v4.0.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-06 06:11:17 +00:00
Dario Vladović ec0b577204 fix(ocaml): trim OCaml verison (#1436) 2020-07-05 21:51:04 -04:00
Walther Chen 489838e6a2 feat: git branch: read from HEAD on newly initialized repo (#1336)
* Git branch: read from HEAD on newly init repo

On a newly initialized git repo, there are no branches created until a
commit is made. Previously, starship handled this by having a default
branch "master" for when branch `head` could not be read.

However, if a user wants to set a different default branch name, that
name won't appear on starship until a commit is made to the branch.

If git2 provides a way to read the default branch name, we can use that,
but at the moment it's not obvious how.

For the moment, we can directly read `.git/HEAD`, which contains the
name of the default branch head reference. This commit implements this
strategy.

Closes #1327

* update git_branch test from unborn master to unborn default

* cargo fmt
2020-07-05 13:22:14 -04:00
Thomas Haessle 021d82a224 fix: manage sandboxed version of OCaml (#1433)
* fix: manage sandboxed version of OCaml

* fmt: apply cargo fmt

Co-authored-by: Thomas Haesslé <thaessle@cutii.io>
2020-07-05 13:20:11 -04:00
dependabot-preview[bot] c6c1bc435d build(deps): bump sysinfo from 0.14.7 to 0.14.8
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.7 to 0.14.8.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-03 05:51:37 +00:00
dependabot-preview[bot] 4c12f3c6b6 build(deps): bump serde_json from 1.0.55 to 1.0.56
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.55 to 1.0.56.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.55...v1.0.56)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-02 06:02:11 +00:00
dependabot-preview[bot] bb97b90002 build(deps): bump unicode-width from 0.1.7 to 0.1.8
Bumps [unicode-width](https://github.com/unicode-rs/unicode-width) from 0.1.7 to 0.1.8.
- [Release notes](https://github.com/unicode-rs/unicode-width/releases)
- [Commits](https://github.com/unicode-rs/unicode-width/commits/v0.1.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-02 05:56:18 +00:00
dependabot-preview[bot] 49a6665b50 build(deps): bump path-slash from 0.1.2 to 0.1.3
Bumps [path-slash](https://github.com/rhysd/path-slash) from 0.1.2 to 0.1.3.
- [Release notes](https://github.com/rhysd/path-slash/releases)
- [Changelog](https://github.com/rhysd/path-slash/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rhysd/path-slash/compare/v0.1.2...v0.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-02 05:52:48 +00:00
dependabot-preview[bot] c3e735f082 build(deps): bump chrono from 0.4.11 to 0.4.12
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.11 to 0.4.12.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.11...v0.4.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-02 05:46:35 +00:00
Muhammad Mejanul Haque 14c4ce1974 docs: show current directory in terminal window title (#1415) 2020-07-01 20:46:40 -04:00
dependabot-preview[bot] a370bfdc63 build(deps): bump attohttpc from 0.14.0 to 0.15.0
Bumps [attohttpc](https://github.com/sbstp/attohttpc) from 0.14.0 to 0.15.0.
- [Release notes](https://github.com/sbstp/attohttpc/releases)
- [Commits](https://github.com/sbstp/attohttpc/compare/v0.14.0...v0.15.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-29 11:14:06 +00:00
dependabot-preview[bot] 433c6c6e06 build(deps): bump textwrap from 0.11.0 to 0.12.0
Bumps [textwrap](https://github.com/mgeisler/textwrap) from 0.11.0 to 0.12.0.
- [Release notes](https://github.com/mgeisler/textwrap/releases)
- [Changelog](https://github.com/mgeisler/textwrap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mgeisler/textwrap/compare/0.11.0...0.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-29 11:13:59 +00:00
dependabot-preview[bot] 36f91267be build(deps): bump byte-unit from 3.1.3 to 4.0.4
Bumps [byte-unit](https://github.com/magiclen/byte-unit) from 3.1.3 to 4.0.4.
- [Release notes](https://github.com/magiclen/byte-unit/releases)
- [Commits](https://github.com/magiclen/byte-unit/compare/v3.1.3...v4.0.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-29 11:09:43 +00:00
Thomas O'Donnell 6e289721d4 fix(custom): Fix fallback shell not working on macOS (#1402)
Have switched the fallback shell used when the custom module can't use
the default to use `/usr/bin/env sh` rather than `/bin/env` since
`/usr/bin/env` is more commonly available.
2020-06-28 15:41:05 -04:00
Brady Joslin aa8ec60701 docs: fix broken contribute link on starship.rs (#1398) 2020-06-26 16:59:41 -04:00
Matan Kushner 8f1b18db7d chore(release): v0.43.0 2020-06-26 11:37:22 -04:00
Thomas O'Donnell affae806fb refactor(custom): Add additional logging to the custom module (#1389) 2020-06-26 11:30:11 -04:00
Dario Vladović c97f9aef98 ci: use action to bump Homebrew formula (#1391) 2020-06-26 11:28:34 -04:00
Dario Vladović e034d51cb2 feat(git): honor GIT_DIR environment variable (#1348) 2020-06-24 17:13:47 -04:00
Thomas O'Donnell dbe6bdf031 refactor(config): Add additional logging to debug config issues (#1390) 2020-06-24 16:11:05 -04:00
Matan Kushner 2cc2469cfe docs: update dotfile link in FAQ 2020-06-24 12:21:01 -04:00
Matan Kushner fbcfb640a5 docs: instruct users to install a nerd-font (#1383) 2020-06-24 09:05:01 +02:00
dependabot-preview[bot] f9bf2324e2 build(deps): bump path-slash from 0.1.1 to 0.1.2 (#1377)
* build(deps): bump path-slash from 0.1.1 to 0.1.2

Bumps [path-slash](https://github.com/rhysd/path-slash) from 0.1.1 to 0.1.2.
- [Release notes](https://github.com/rhysd/path-slash/releases)
- [Changelog](https://github.com/rhysd/path-slash/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rhysd/path-slash/compare/0.1.1...v0.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Fix tests to improve slash handling on Windows

* Fix number of slashes

* Try fixing the slashes again

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Matan Kushner <hello@matchai.dev>
2020-06-22 18:41:05 -04:00
dependabot-preview[bot] 4a421607df build(deps): bump rayon from 1.3.0 to 1.3.1
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/rayon-rs/rayon/releases)
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.3.0...v1.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-22 09:45:21 +00:00
dependabot-preview[bot] e1373b867f build(deps): bump urlencoding from 1.0.0 to 1.1.1
Bumps [urlencoding](https://github.com/kornelski/rust_urlencoding) from 1.0.0 to 1.1.1.
- [Release notes](https://github.com/kornelski/rust_urlencoding/releases)
- [Commits](https://github.com/kornelski/rust_urlencoding/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-22 09:26:50 +00:00
Dario Vladović d1bbba321b test(nodejs): add test attribute to omitted tests (#1367) 2020-06-21 17:59:00 +02:00
Dario Vladović b176fc35ac feat(nodejs): support additional file patterns (#1311) 2020-06-21 10:33:58 +02:00
Daniel A. White b238574100 feat(dotnet): adds additional files to detect .net projects (#1303)
* adds additional files to detect .net projects

* test .net output with a regex pattern
2020-06-21 10:22:20 +02:00
Julian Gehring d21cb62e3a Replace dirs with dirs-next dependency (#1361)
`dirs` will be unmaintained for the foreseeable future, so
switch to the maintained fork `dirs-next`.

Closes #1319.
2020-06-20 12:59:35 -05:00
Matan Kushner ee3c0ec9d5 docs(i18n): new Crowdin translations (#1325) 2020-06-19 17:05:45 -04:00
SeongChan Lee 611a754ec7 fix(directory): Fix path contractions for symlinked git repos (#1299)
Fixes git repo path contractions in two situations:

1. When path obtained from `PWD` is a logical path but git libraries
   return physical paths.
2. When a git repository's subdirectory is symlinked to ouside of the
   repository tree.

(1) is fixed by implementing a realpath()-like function, then reparsing
the (possibly logical) `PWD` using realpath() to convert logical
components into physical ones. The physical paths are then matched
against each other.

In the case of (2), the default behavior has been changed by simply
contracting to the home directory, exactly the same as if we are not in
a repo at all. Because determining the correct contraction is not
obvious, we bail out and just pretend we are not in a repo at all.
2020-06-17 22:44:51 -05:00
Dario Vladović 16b648581e style(docs): remove $ prefix from shell snippets (#1339) 2020-06-17 07:31:24 -05:00
Kevin Song 2a57c69459 docs: Add FAQ entry on missing symbols (#1307)
Adds FAQ entry for what to do if powerline/emoji symbols are missing.

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-06-15 18:12:43 -05:00
dependabot-preview[bot] f786cc9f56 build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#1333)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.5.1 to 1.5.2.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.2/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-15 18:58:52 +02:00
dependabot-preview[bot] d96e21605b build(deps): bump serde_json from 1.0.54 to 1.0.55 (#1331)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.54 to 1.0.55.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.54...v1.0.55)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-15 18:48:25 +02:00
dependabot-preview[bot] 4a1eaad619 build(deps): bump nom from 5.1.1 to 5.1.2 (#1330)
Bumps [nom](https://github.com/Geal/nom) from 5.1.1 to 5.1.2.
- [Release notes](https://github.com/Geal/nom/releases)
- [Changelog](https://github.com/Geal/nom/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Geal/nom/compare/5.1.1...5.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-15 18:46:51 +02:00
Zak Scholl 66297427a8 docs(python): Fix typo in advanced configuration (#1335) 2020-06-15 18:46:08 +02:00
dependabot-preview[bot] 3bce358516 build(deps-dev): bump vuepress from 1.5.1 to 1.5.2 in /docs (#1332)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.5.1 to 1.5.2.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.2/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-15 18:44:30 +02:00
dependabot-preview[bot] 1243131476 build(deps): bump remove_dir_all from 0.5.2 to 0.5.3 (#1329)
Bumps [remove_dir_all](https://github.com/XAMPPRocky/remove_dir_all) from 0.5.2 to 0.5.3.
- [Release notes](https://github.com/XAMPPRocky/remove_dir_all/releases)
- [Changelog](https://github.com/XAMPPRocky/remove_dir_all/blob/master/CHANGELOG.md)
- [Commits](https://github.com/XAMPPRocky/remove_dir_all/compare/v0.5.2...remove_dir_all@0.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-15 18:44:01 +02:00
Thomas O'Donnell 4788092423 docs: remove redundant settings in Contributing guide (#1326)
Have removed some redundant settings in the CONTRIBUTING.md since
starship should be the only application using the `STARSHIP_LOG` env
var.
2020-06-14 16:02:24 -04:00
anouar kappitou feac3d56ce fix: replacing default RUST_LOG environement variable with starship specific one, to prevent interlacing (#1280)
Co-authored-by: Kappitou Anouar <anourkappitou@gmail.com>
2020-06-14 20:22:34 +02:00
Thomas O'Donnell 055986e2b1 feat(python): Add option to change the python binary (#1297)
* Add option to change the python binary

We are going to start to have problems with the python binary as python2
is removed and replaced with python3. To make the transition easier I
have added an option to the python module to allow the user to pick a
particular binary, e.g `python3`, for the module to use when selecting
the version of python. I have also refactored the python tests moving
almost all of them into the module and removing the dependency on the
version of python that is installed on the system.

* Add advanced config section to python module docs

Have added an advanced config section to the python module docs and
moved the `python_binary` option into that section.
2020-06-14 11:27:10 +02:00
Thomas O'Donnell b563d841c7 fix(php): Stop including error messages in the version 2020-06-13 08:53:29 +02:00
Thomas O'Donnell c182572796 Fix PHP version including error messages (#1317)
PHP will output error messages when displaying the version if, for
example, there is something wrong with the local `php.ini` file. Have
updated the command used to get the PHP version to only use the default
PHP config.
2020-06-13 01:04:53 +02:00
Kevin Song 6ecabdfee4 fix: errant space breaks tar in installer (#1314) 2020-06-11 13:12:14 -05:00
Matan Kushner e29140a3cd docs(i18n): new Crowdin translations (#1262)
* New translations README.md (Portuguese, Brazilian)

* New translations README.md (German)

* New translations README.md (French)

* New translations README.md (Japanese)

* New translations README.md (Spanish)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Portuguese)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Simplified)

* New translations README.md (Russian)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (French)

* New translations README.md (Spanish)

* New translations README.md (German)

* New translations README.md (Russian)

* New translations README.md (Japanese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Simplified)

* New translations README.md (Chinese Traditional)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (French)

* New translations README.md (Spanish)

* New translations README.md (German)

* New translations README.md (Russian)

* New translations README.md (Japanese)

* New translations README.md (French)

* New translations README.md (Japanese)

* New translations README.md (German)

* New translations README.md (Spanish)

* New translations README.md (Chinese Traditional)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Portuguese)

* New translations README.md (Chinese Simplified)

* New translations README.md (Russian)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (Chinese Traditional)

* New translations README.md (Chinese Traditional)

* New translations README.md (Portuguese)

* New translations README.md (Portuguese)

* New translations README.md (Chinese Simplified)

* New translations README.md (Portuguese, Brazilian)

* New translations README.md (French)

* New translations README.md (French)

* New translations README.md (Spanish)

* New translations README.md (Spanish)

* New translations README.md (German)

* New translations README.md (German)

* New translations README.md (Chinese Simplified)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Russian)

* New translations README.md (Russian)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)

* New translations README.md (Japanese)
2020-06-10 21:28:04 -04:00
Dario Vladović 30ff5913be style: address shellcheck issues in install.sh (#1305)
Fixes some shellcheck issues in the install script. Also normalizes
formatting with `shfmt` program.
2020-06-10 13:40:05 -05:00
Munif Tanjim 525dfef9a7 fix(bash): last command status and command duration (#1185)
* fix: character module last command status for bash

* fix: command duration module for bash
2020-06-10 18:53:56 +02:00
dependabot-preview[bot] 27ba0accaf build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#1308)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.5.0 to 1.5.1.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.1/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-10 12:30:22 -04:00
dependabot-preview[bot] a11e173e27 build(deps-dev): bump vuepress from 1.5.0 to 1.5.1 in /docs (#1309)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.5.0 to 1.5.1.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.1/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-10 12:17:09 -04:00
dependabot-preview[bot] e0e9884462 build(deps): bump serde_json from 1.0.53 to 1.0.54 (#1306)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.53 to 1.0.54.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.53...v1.0.54)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-10 10:00:27 +02:00
Kevin Song 3ebd2c0ad5 fix: Update install.sh for Windows (#1300)
Adds several cross-platform utility functions to the install.sh script and 
rewrites core functionality so that it might work on Windows. Among these are:
 - Correct platform extensions to match the output of `detect_platform`
 - Check to make sure installation directory actually exists
 - If sudo is not available, print a message asking the user to manually 
   escalate
 - Unpack zip files (used for Windows builds) without using pipes, since zip 
   files cannot be read through pipes

After these changes, install.sh works on a testing copy of Git Bash on Windows,
though it still has known issues (e.g. if the `unzip` program is not installed,
it will crash).
2020-06-09 17:21:35 -05:00
Matan Kushner 4a4266f6c4 chore(release): v0.42.0 2020-06-09 15:43:14 -04:00
Rekihyt fcd003785b feat(nim): Add Nim module (#1189)
* Nim module and tests

* Add nim to docs

* parse_nim_version refactor, add nim desc

* Add nim symbol to Nerd Font preset

* Yellow with v prefix as default version

* Nim version fmt fix

* Update docs/config/README.md

Co-authored-by: Dario Vladović <d.vladimyr@gmail.com>

* Update src/modules/nim.rs

Co-authored-by: Dario Vladović <d.vladimyr@gmail.com>

* Nim module and tests

* Add nim to docs

* Yellow with v prefix as default version

* Update docs/config/README.md

Co-authored-by: Dario Vladović <d.vladimyr@gmail.com>

* Update src/modules/nim.rs

Co-authored-by: Dario Vladović <d.vladimyr@gmail.com>

* Add nim to docs, proper version formatting.

* Remove v from symbol, add to fmt string

* cargo fmt

Co-authored-by: Dario Vladovic <d.vladimyr@gmail.com>
2020-06-09 19:14:47 +02:00
Nemo157 fb121cd62a fix: Retain previous command state on zsh keymap select (#958) 2020-06-09 18:52:29 +02:00
dependabot-preview[bot] 759eaded73 build(deps): bump attohttpc from 0.13.0 to 0.14.0 (#1301)
Bumps [attohttpc](https://github.com/sbstp/attohttpc) from 0.13.0 to 0.14.0.
- [Release notes](https://github.com/sbstp/attohttpc/releases)
- [Commits](https://github.com/sbstp/attohttpc/compare/v0.13.0...v0.14.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-08 09:37:30 +02:00
dependabot-preview[bot] db24a173d9 build(deps-dev): bump vuepress-theme-default-prefers-color-scheme (#1293)
Bumps [vuepress-theme-default-prefers-color-scheme](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme) from 1.0.6 to 1.0.9.
- [Release notes](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/releases)
- [Changelog](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/compare/v1.0.6...v1.0.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-06 10:59:22 -04:00
dependabot-preview[bot] 42768cf9dd build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#1291)
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.3.1 to 1.5.0.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.0/packages/@vuepress/plugin-google-analytics)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-06 10:53:59 -04:00
Matan Kushner 27fd51f8c7 docs: remove grayscale 2020-06-06 10:51:48 -04:00
dependabot-preview[bot] 4c78cf0bbc build(deps): [security] bump websocket-extensions in /docs (#1292)
Bumps [websocket-extensions](https://github.com/faye/websocket-extensions-node) from 0.1.3 to 0.1.4. **This update includes a security fix.**
- [Release notes](https://github.com/faye/websocket-extensions-node/releases)
- [Changelog](https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md)
- [Commits](https://github.com/faye/websocket-extensions-node/compare/0.1.3...0.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-06 10:50:01 -04:00
dependabot-preview[bot] 05a207aecd build(deps-dev): bump vuepress from 1.3.1 to 1.5.0 in /docs (#1294)
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.3.1 to 1.5.0.
- [Release notes](https://github.com/vuejs/vuepress/releases)
- [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vuepress/commits/v1.5.0/packages/vuepress)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-06 10:48:19 -04:00
dependabot-preview[bot] 059441f706 build(deps): bump sysinfo from 0.14.4 to 0.14.5 (#1289)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.4 to 0.14.5.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-06 10:57:02 +02:00
Thomas O'Donnell 5b14f21394 refactor: latest suggestions from Clippy 2020-06-05 23:20:11 -04:00
Nathan West c04a0eb1d1 feat: add shell completion generation command (starship completions) (#881) 2020-06-03 11:25:51 -04:00
Matan Kushner a62712d33d docs: add #BLM badge 2020-06-02 15:16:03 -04:00
dependabot-preview[bot] 8f01537630 build(deps): bump yaml-rust from 0.4.3 to 0.4.4 (#1282)
Bumps [yaml-rust](https://github.com/chyh1990/yaml-rust) from 0.4.3 to 0.4.4.
- [Release notes](https://github.com/chyh1990/yaml-rust/releases)
- [Commits](https://github.com/chyh1990/yaml-rust/compare/0.4.3...0.4.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-02 11:51:46 -04:00
Matan Kushner da6c2c0d4b docs: #blacklivesmatter 2020-06-02 11:49:38 -04:00
John Letey bed4d40dd8 docs: #blacklivesmatter (#1284) 2020-06-02 11:42:51 -04:00
Samuele Esposito fe2b3d491e feat(time): Show module with time range (#992)
* Creation of range field in TimeConfig

* time_range parsing

* Hide time module if outside of time_range

* Tidying of code, and properly handling more cases

* is_inside_time_range function

* Tests and fmt

* Update docs

* The configuration needs the 24-hours format

* Fix clippy errors
2020-05-31 19:43:08 +02:00
Radu Butoi ab1c3d1c54 feat(directory): Add directory substitutions (#1183)
Adds an option to provide a table of strings to substitute in the
directory string. Fixes #1065.

Co-authored-by: Radu Butoi <butoi@google.com>
2020-05-31 19:32:35 +02:00
dependabot-preview[bot] 329b3c791d build(deps): bump regex from 1.3.7 to 1.3.9 (#1270)
Bumps [regex](https://github.com/rust-lang/regex) from 1.3.7 to 1.3.9.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/regex-1.3.7...1.3.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-29 10:39:32 +02:00
Dario Vladović cf87ce5f50 style(init): tidy-up init scripts (#1269)
* style: fix indent & spacing

* chore: use consistent function definition style

* chore: remove extra semicolon

* chore: flip comparison expression
2020-05-28 12:21:36 -04:00
Jimmy Royer a3470bf9fb docs(custom): add warning about custom command potentially freezing terminal (#1242) 2020-05-28 11:37:54 -04:00
dependabot-preview[bot] 9dcd50305a build(deps): bump sysinfo from 0.14.3 to 0.14.4 (#1267)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.3 to 0.14.4.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-28 09:42:06 +02:00
dependabot-preview[bot] 47802bbf95 build(deps): bump byte-unit from 3.1.2 to 3.1.3 (#1263)
Bumps [byte-unit](https://github.com/magiclen/byte-unit) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/magiclen/byte-unit/releases)
- [Commits](https://github.com/magiclen/byte-unit/compare/v3.1.2...v3.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-27 09:46:49 +02:00
Grégoire Geis 09996159f4 fix(custom): improve handling of Powershell prompts (#1237)
To improve overall support of PowerShell in custom modules,
the ability to pass arguments to the shell was also added. Additionally,
the arguments `-NoProfile -Command -` will be automatically passed
to PowerShell, unless other arguments are given by the user.
2020-05-27 09:38:05 +02:00
dependabot-preview[bot] 5731d6674e build(deps): bump sysinfo from 0.14.2 to 0.14.3 (#1264)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.2 to 0.14.3.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-27 09:34:39 +02:00
dependabot-preview[bot] 28c7e8f45d build(deps): bump byte-unit from 3.1.1 to 3.1.2 (#1257)
Bumps [byte-unit](https://github.com/magiclen/byte-unit) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/magiclen/byte-unit/releases)
- [Commits](https://github.com/magiclen/byte-unit/compare/v3.1.1...v3.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-26 10:00:58 +02:00
dependabot-preview[bot] 9196ffc950 build(deps): bump os_info from 2.0.5 to 2.0.6 (#1255)
Bumps [os_info](https://github.com/darkeld3r/os_info) from 2.0.5 to 2.0.6.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/CHANGELOG.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/2.0.5...v2.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-25 12:19:46 -04:00
Thomas O'Donnell e3a2a5d748 Fix security audit github action (#1256)
This fixes the Security Audit github workflow by consolidating the two
separte yaml documents that Github Actions didn't like into a single
workflow with multiple triggers. I also added a trigger for PRs as well
as pushes.
2020-05-25 16:04:26 +02:00
Thomas O'Donnell 4f481e0a7d ci: refactor GitHub Actions workflow file (#1249)
* Clean up the workflow file

This removes the trailing whitespace from the workflow, removes an
unused step and fixes up some yaml formatting.

* Make the caching more aggressive

This makes the caching more aggressive by allowing for partial
restoration of the cached data and use the cache for more jobs.

* Run all the tests in parallel

Have stopped the testsuites from requiring the compile checks, Github
Actions doesn't mind that we are running multiple tests in parallel and
this does over a bit of a speed up.

* Separate Security Audit into a separate workflow

Have moved the Cargo Audit check into it's own workflow and switched it
to use the `actions-rs/audit-check` to simplify the setup. Have also
added in a daily security scan.
2020-05-24 20:45:47 -04:00
Tiffany Le-Nguyen fbfde79b08 chore: remove redundant section from PR template (#1253) 2020-05-24 12:12:22 -04:00
Matan Kushner accba5027d docs(i18n): new Crowdin translations (#1238) 2020-05-23 19:10:58 -04:00
nobv 63799b97d1 feat(PureScript): Add Purescript module (#1227)
* Added configs/purescript

* Added modules/purescript

* Added necessary codes

* Added tests

* Updated README

* Fixed color because black is hard to see

* Fixed of push mistake

* Fixed pointed out in PR
2020-05-22 18:26:58 +02:00
Matan Kushner a670e01c22 ci: upgrade Python for integration tests (#1243) 2020-05-21 13:13:51 -04:00
Dario Vladović c008f4041b feat: add Zig module (#1231) 2020-05-21 18:49:49 +02:00
Hirochika Matsumoto 9e8f35d746 feat(ocaml): Add OCaml module (#1218)
* Add OCaml module

* Update README.md accordingly

* Fix typo

* Add Reason support

Obtain OCaml version using `-vnum` flag.
Extend conditions to match projects using jbuild, esy
or merlin.

* Update README.md

Co-authored-by: Dario Vladovic <d.vladimyr@gmail.com>
2020-05-21 18:43:13 +02:00
Matt Kadlubowski 1b2ea77b1c docs: Updated config with a tip for PowerShell user (#1216)
Added a tip with information about how a PowerShell user can
override default starship.toml file location path in his PowerShell
profile.
2020-05-21 18:22:45 +02:00
dependabot-preview[bot] 36d1ec734c build(deps): bump git2 from 0.13.5 to 0.13.6 (#1239)
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.5 to 0.13.6.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.5...0.13.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-20 11:39:40 -04:00
Matan Kushner 90dd4eebd6 docs: fix example Starship implementation in bash 2020-05-19 20:26:44 -04:00
dependabot-preview[bot] bbe9a1b10a build(deps): bump byte-unit from 3.0.3 to 3.1.1 (#1234)
Bumps [byte-unit](https://github.com/magiclen/byte-unit) from 3.0.3 to 3.1.1.
- [Release notes](https://github.com/magiclen/byte-unit/releases)
- [Commits](https://github.com/magiclen/byte-unit/compare/v3.0.3...v3.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-19 09:47:50 +02:00
Matan Kushner 77c42dca73 docs(i18n): new Crowdin translations (#1170) 2020-05-15 11:55:21 -04:00
Matan Kushner 0dfe3f7a2c chore(release): v0.41.3 2020-05-15 11:09:38 -04:00
Matan Kushner 284ee4e1ed revert(ci): download all artifacts at once
This reverts commit 4d55936f35.
2020-05-15 11:09:07 -04:00
Matan Kushner 99374eabdb chore(release): v0.41.2 2020-05-15 10:51:45 -04:00
dependabot-preview[bot] 5694c378d2 build(deps): bump sysinfo from 0.14.1 to 0.14.2 (#1212)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.14.1 to 0.14.2.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-15 09:41:13 +02:00
Matan Kushner 879f2ec5da chore(release): v0.41.1 2020-05-14 12:50:43 -04:00
dependabot-preview[bot] a913d1d0f4 build(deps): bump os_info from 2.0.4 to 2.0.5 (#1197)
Bumps [os_info](https://github.com/darkeld3r/os_info) from 2.0.4 to 2.0.5.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/Changelog.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/2.0.4...2.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-14 11:09:44 +02:00
dependabot-preview[bot] a096e23749 build(deps): bump once_cell from 1.3.1 to 1.4.0 (#1198)
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.3.1 to 1.4.0.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.3.1...v1.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-14 09:49:29 +02:00
Thomas O'Donnell 9251778a9c docs: correct the configuration docs (#1195) 2020-05-13 18:19:21 -04:00
dependabot-preview[bot] 5dcdba5135 build(deps): bump clap from 2.33.0 to 2.33.1 (#1190)
Bumps [clap](https://github.com/clap-rs/clap) from 2.33.0 to 2.33.1.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v2.33.1/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v2.33.0...v2.33.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-12 09:53:55 +02:00
dependabot-preview[bot] b4ecc6b162 build(deps): bump os_info from 2.0.2 to 2.0.4 (#1187)
Bumps [os_info](https://github.com/darkeld3r/os_info) from 2.0.2 to 2.0.4.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/Changelog.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v2.0.2...2.0.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-11 09:30:16 +02:00
dependabot-preview[bot] 399a9a1d9e build(deps): bump serde_json from 1.0.52 to 1.0.53 (#1186)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.52 to 1.0.53.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.52...v1.0.53)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-11 09:28:10 +02:00
Evie ​Snuggle 8f7db1da68 docs: update license to include 2020 (#1184) 2020-05-10 19:14:28 -04:00
John Letey a3e12a1112 ci: Update Python to 3.8.2 (#1181) 2020-05-08 14:25:46 +02:00
Alan Pope ee63a4fa32 fix: snap build failure (#1177) 2020-05-06 20:29:09 -04:00
Hendrik Rombach 108193103d fix(git): show branch name in fresh repo (unborn master) (#1093)
* fix: branch_name in fresh repo (unborn master)

* test: add test for unborn branch_name fix
2020-05-06 11:19:53 +02:00
Matan Kushner 4607e21fa6 docs(i18n): new Crowdin translations (#1059) 2020-05-05 13:07:34 -04:00
dependabot-preview[bot] 761fa020df build(deps): bump term_size from 0.3.1 to 0.3.2 (#1167)
Bumps [term_size](https://github.com/kbknapp/term_size-rs) from 0.3.1 to 0.3.2.
- [Release notes](https://github.com/kbknapp/term_size-rs/releases)
- [Changelog](https://github.com/clap-rs/term_size-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kbknapp/term_size-rs/commits/v0.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-04 13:53:24 +02:00
Jean Gautier 02edad0c66 fix(directory): avoid confusing modules with PowerShell paths (#1114)
* Avoid confusing modules with PowerShell paths

* Avoid confusing modules with PowerShell paths

Powershell supports PSDrives (https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/new-psdrive?view=powershell-7) that allow to create "logical" drives mapped to actual Windows drives.

* Preserve Windows directories

* Preserve logical paths for Powershell

* Fix formating with cargo fmt

* Fix directory_in_root test

Co-authored-by: Jean Gautier <jean.gautier@ssi.gouv.fr>
2020-04-30 10:40:56 +02:00
Matan Kushner 4d55936f35 ci: download all artifacts at once 2020-04-29 11:28:08 -04:00
Matan Kushner 556191f510 chore(release): v0.41.0 2020-04-28 11:31:12 -04:00
Karol Fuksiewicz eba4d87612 feat(package): configurable displaying package version for packages marked as private (#1109)
* feat(package): config for enabling package version in private packages

* test(package): refactor package tests
2020-04-28 10:53:30 +02:00
Oisín 8e8519552f fix(haskell): avoid creating .lock files or downloading GHC (#1147)
* (Haskell) avoid creating .lock files or downloading GHC

* Fix stack command in mock expectations for Haskell module + befriend cargo fmt
2020-04-28 10:07:18 +02:00
Benedikt Reinartz 8c17f7b97c feat(erlang): Add Erlang module (#1129) 2020-04-27 12:09:42 +02:00
dependabot-preview[bot] 3fc4cc4a2d build(deps): bump git2 from 0.13.4 to 0.13.5 (#1151)
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.4 to 0.13.5.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.4...0.13.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-27 10:15:21 +02:00
dependabot-preview[bot] 6c0ef6497b build(deps): bump attohttpc from 0.12.0 to 0.13.0 (#1150)
Bumps [attohttpc](https://github.com/sbstp/attohttpc) from 0.12.0 to 0.13.0.
- [Release notes](https://github.com/sbstp/attohttpc/releases)
- [Commits](https://github.com/sbstp/attohttpc/compare/v0.12.0...v0.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-27 10:12:11 +02:00
John Letey a3fef5becf feat: Modify config keys from shell (#1095)
* feat: Modify config keys from shell

* chore: Fix clippy

* refactor: Add `configure` as alias

* chore: Remove redundant code

* fix: Soft error if user doesn't pass in valid key

* feat: Support integers and booleans

* chore: Fix clippy

* refactor: Use exit instead of abort

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-04-26 15:58:39 +02:00
Alexandru Macovei decd4e2a5d fix(haskell): add description for haskell, used by the explain command (#1141) 2020-04-25 14:34:01 +02:00
Alexandru Macovei 2c30f4bd9e fix(crystal): Add Crystal module to default prompt order (#1140) 2020-04-24 19:37:34 +02:00
dependabot-preview[bot] 6eb32eb55d build(deps): bump git2 from 0.13.3 to 0.13.4 (#1135)
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.3 to 0.13.4.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.3...0.13.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-24 14:48:44 +02:00
Thomas O'Donnell 060689fa88 fix: Fix latest clippy suggestions (#1136)
Have removed some imports that Clippy says are not needed anymore.
2020-04-24 12:37:13 +02:00
dependabot-preview[bot] b0bfed2a21 build(deps): bump git2 from 0.13.2 to 0.13.3 (#1132)
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.2 to 0.13.3.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.2...0.13.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-23 09:33:37 +02:00
Federico Jaramillo Martínez 7aa9c8fab0 docs: Fix broken installation link anchor on README (#1033)
* Fix Installation link anchor on README

* Use fake anchor for Installation
2020-04-20 12:43:24 -05:00
Tim Visée b2f203d043 docs: Remove unused closing tag from config page (#1125) 2020-04-20 14:51:36 +02:00
dependabot-preview[bot] c9cd91e8e7 build(deps): bump sysinfo from 0.13.3 to 0.14.1
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.13.3 to 0.14.1.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-20 08:17:54 +00:00
dependabot-preview[bot] 7f55b52acf build(deps): bump regex from 1.3.6 to 1.3.7
Bumps [regex](https://github.com/rust-lang/regex) from 1.3.6 to 1.3.7.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.3.6...regex-1.3.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-20 08:17:48 +00:00
dependabot-preview[bot] 1ab2ba9e4d build(deps): bump sysinfo from 0.13.2 to 0.13.3
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.13.2 to 0.13.3.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-16 05:47:14 +00:00
Thomas O'Donnell d91b6b7137 test: Add null tests to modules that don't have them (#1104)
Have added some null tests to modules that don't already have them.
2020-04-15 09:55:32 +02:00
dependabot-preview[bot] d13d508ca2 build(deps): bump sysinfo from 0.13.1 to 0.13.2 (#1101)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.13.1 to 0.13.2.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-14 16:27:55 -04:00
Thomas O'Donnell 5272d5c1ce ci(python): Fix broken tests (#1103)
Fix the python tests that depend of having the correct version of Python
installed on the build system.
2020-04-14 14:48:10 +02:00
Alex Jurkiewicz 965338df95 feat(python): Add scan_for_pyfiles option (#692)
Also adds two new entries to the list of hardcoded files to check:
setup.py and __init__.py.
2020-04-14 10:26:51 +02:00
Thomas O'Donnell beed0acc6c fix(python): Fix venv name not showing when using pyenv (#1046)
This fixes an issue where the name of the virtual environment is not
being shown when using the `pyenv_version_name` setting.
2020-04-14 10:23:57 +02:00
Stanisław Barzowski 7c45f74d11 fix: Do not depend on user's config in conda tests (#1098)
The user's config is automatically loaded
in context.new_module. This change explicitly
sets the empty config to avoid depending on
the environment.

Without this fix, the tests do not pass
for users who have a custom symbol defined
for conda. This prevents installing/upgrading
from Arch Linux AUR.
2020-04-13 21:23:49 +02:00
Thomas O'Donnell 05e323da75 chore: Add more detailed logging for executing cmds (#1097)
This makes some changes to the logging to make debugging what is
happening a bit easier when we run external commands.
2020-04-13 15:22:28 +02:00
Matan Kushner 0ef7df4441 chore(bump): v0.40.1 2020-04-11 16:11:18 -04:00
Thomas O'Donnell 391add767f revert: fix(git_branch,git_status): implement fallback branch_n… (#1092)
This reverts commit 8d90baf0eb.
2020-04-11 16:10:39 -04:00
Matan Kushner 4551a20d0e chore(bump): v0.40.0 2020-04-11 13:55:56 -04:00
Matan Kushner 8d7da820a0 feat: add support for custom modules 2020-04-11 13:54:27 -04:00
Matan Kushner 8e5a64f67d fix(ruby): do not assume length when retrieving version
Previous commit was missing conventional commit format
2020-04-11 13:54:14 -04:00
Grégoire Geis 15dc486e72 Add support for custom modules. (#916) 2020-04-11 18:37:24 +02:00
Daniel Lo Nigro 5b8f869e5e docs: Add details about musl build to readme (#997)
* Add details about musl build to readme

* Move details to FAQ
2020-04-10 19:58:10 +02:00
Jonathan Knapp 19e8301ff1 Fix ruby version to not assume length (#1082) 2020-04-10 18:41:14 +02:00
Zhenhui Xie b11fe2ad30 fix: Fix variable styles in string formatter (#1069)
* fix: Fix styling in variables

* fix: Fix clippy

* fix: Allow passing styles down to segments with no style

* fix: Fix clippy
2020-04-10 18:23:20 +02:00
dependabot-preview[bot] d21e1b8970 build(deps): bump sysinfo from 0.13.0 to 0.13.1
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.13.0 to 0.13.1.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-10 05:51:21 +00:00
John Letey cd177cffa7 docs: update NerdFont preset to include new modules (#1077) 2020-04-09 12:49:54 -04:00
dependabot-preview[bot] 387d6ba52d build(deps): bump sysinfo from 0.12.0 to 0.13.0
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.12.0 to 0.13.0.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-09 05:45:35 +00:00
Udo Kramer d27b263023 feat(package): Add project version for Elixir (#1067) 2020-04-08 18:39:54 +02:00
Bernardo Meurer 7718450311 feat(nix_shell): add symbol to nix-shell module (#1058)
* feat: add nix-shell icon

Fixes #1048

* style: make nix-shell bold blue by default

It better matches the whole theme around Nix and snowflakes.
2020-04-07 18:35:18 +02:00
Hendrik Rombach 8d90baf0eb fix: implement fallback branch_name for bare git repos (#1035)
closes #686
2020-04-07 12:01:40 +02:00
Zhenhui Xie b905743364 fix: Fix typo (#1054) 2020-04-07 11:58:10 +02:00
Shu Kutsuzawa 2f449af680 Fix julia icon based on https://julialang.org/community/standards/ (#1055)
According by this standards
> While "Julia" is a female name in many parts of the world, the programming language is not a person and does not have a gender.
2020-04-07 11:07:51 +02:00
Matan Kushner b01b498b9e docs(i18n): new Crowdin translations (#1047) 2020-04-06 14:48:26 -04:00
Matan Kushner e94d5439ce docs: add Open Collective to README
Closes #1044
2020-04-06 13:19:47 -04:00
Zhenhui Xie 22dc419a3e improvement: add parser for format strings (#1021)
This PR implements the parser of format strings described in #624.
2020-04-06 13:16:18 -04:00
Thomas O'Donnell 3510bfe044 chore(bump): v0.39.0 2020-04-06 17:23:46 +02:00
Kevin Pullin 9924af55db feat(aws): Use AWS_VAULT as the profile if set (#984)
* Use AWS_VAULT as the profile if set

[aws-vault](https://github.com/99designs/aws-vault) sets
the `AWS_VAULT` env var instead of `AWS_PROFILE` when an
aws-vault session is active.

This PR adds support for reading the AWS profile value from
the `AWS_VAULT` env var, giving priority to `AWS_VAULT` if both
it and `AWS_PROFILE` are set.

* Update docs for AWS_VAULT
2020-04-06 16:59:56 +02:00
dependabot-preview[bot] 7e7ec4e682 build(deps): bump serde_json from 1.0.50 to 1.0.51
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.50 to 1.0.51.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.50...v1.0.51)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-06 06:03:11 +00:00
Barnaby Keene b685bb2954 feat: add docker context module (#996)
* feat: add docker context module

Adds a simple module that checks for a Docker config file and if present, reads the `currentContext` value out and displays on the prompt with a whale.

* feat: add `only_with_compose_yml` option to docker_context

When enabled, will only show the docker context name if there's a docker-compose.yml file in the current directory.

* Update src/modules/docker_context.rs

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

* Update src/modules/docker_context.rs

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

* rename `only_with_compose_yml` configuration key to a more generic `only_with_files`

* Update src/modules/docker_context.rs

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

* re-order configuration table

* Update docs/config/README.md

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

* Update src/configs/docker_context.rs

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-04-05 21:42:55 +02:00
dependabot-preview[bot] 7a39ba6ff1 build(deps): bump git2 from 0.13.0 to 0.13.1 (#1043)
* build(deps): bump git2 from 0.13.0 to 0.13.1

Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.0 to 0.13.1.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.13.0...0.13.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Fix git2 build failures

Fix the dependencies for git2 based on the suggestions from
https://github.com/rust-lang/git2-rs/issues/540.

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Thomas O'Donnell <andy.tom@gmail.com>
2020-04-03 22:40:21 +02:00
Shu Kutsuzawa bd016b6ce2 feat: Enable to display language version when .<lang>-version file exists. (#1028)
* adjust https://github.com/sonnym/elmenv

* adjust https://github.com/syndbg/goenv

* adjust https://github.com/jenv/jenv

* adjust https://github.com/nodenv/nodenv

* adjust https://github.com/phpenv/phpenv

* adjust https://github.com/rbenv/rbenv

* add description

* golang.rs is executed rustfmt

* add testcases
2020-04-03 21:02:28 +02:00
sk1985 e38be5073f feat(kubernetes): context aliases (#1015)
* Allow kubernetes module to use aliases for contexts

* documentation for kubernetes context aliasing

* Apply suggestions from code review: consistent ordering of options in documentation

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

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-04-03 20:18:44 +02:00
Shu Kutsuzawa dba3467dee feat: Add a julia module (#1030)
* add a julia module

* Update docs/config/README.md

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

* fix based on https://github.com/starship/starship/pull/1030#pullrequestreview-381767326

Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2020-04-03 20:16:34 +02:00
Shu Kutsuzawa edcec7eed8 feat(package): Add project version for julia (#1036)
* add project version (for julia) to package module

* update docs
2020-04-03 20:16:22 +02:00
Matan Kushner 3ab4bab885 docs(i18n): new Crowdin translations (#919) 2020-04-03 12:35:39 -04:00
David Knaack 55503bb77b perf(dotnet): fail faster in the dotnet module (#1034) 2020-04-03 12:34:35 -04:00
Matan Kushner b3cc7b4016 chore: update "ask a question" to direct to the new discussion page 2020-04-02 00:10:09 -04:00
Matan Kushner a281c0d094 chore: create issue template config file 2020-04-02 00:08:40 -04:00
dependabot-preview[bot] a9d3143b9f build(deps): bump serde_json from 1.0.48 to 1.0.50
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.48 to 1.0.50.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.48...v1.0.50)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-30 06:13:43 +00:00
dependabot-preview[bot] a3b7b7b56a build(deps): bump regex from 1.3.5 to 1.3.6
Bumps [regex](https://github.com/rust-lang/regex) from 1.3.5 to 1.3.6.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.3.5...1.3.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-25 05:44:08 +00:00
dependabot-preview[bot] ecc01af23e build(deps): bump sysinfo from 0.11.7 to 0.12.0
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.11.7 to 0.12.0.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-23 17:44:05 +00:00
oliver 4e0382d6bb docs(memory_usage): Update example to have disabled = false (#1027) 2020-03-23 12:53:04 -04:00
Matan Kushner ad6750113e chore(bump): v0.38.1 2020-03-22 18:03:53 -04:00
Matan Kushner bbba4e1657 fix: change command failure log level to trace
Closes #1020
Closes #1024
2020-03-22 17:58:46 -04:00
Matan Kushner f267b3debe chore(bump): v0.38.0 2020-03-19 15:43:24 -04:00
Matan Kushner 3211b36d5d chore(bump): v0.37.1 2020-03-19 14:06:41 -04:00
Matan Kushner ae7077f1f8 Update Sponsor badge to support the Starship org 2020-03-19 12:16:30 -04:00
dependabot-preview[bot] 3c0718cca6 build(deps): bump os_info from 2.0.1 to 2.0.2
Bumps [os_info](https://github.com/darkeld3r/os_info) from 2.0.1 to 2.0.2.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/Changelog.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v2.0.1...v2.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-16 05:46:37 +00:00
dependabot-preview[bot] d5cf340a72 build(deps): bump git2 from 0.12.0 to 0.13.0
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.12.0 to 0.13.0.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.12.0...git2-curl-0.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-16 05:46:00 +00:00
Mick Hohmann be72797fd2 docs: alphabetize modules in config docs (#981) 2020-03-15 21:07:08 -04:00
dependabot[bot] 950f976ac7 build(deps): bump acorn from 6.4.0 to 6.4.1 in /docs (#1008)
Bumps [acorn](https://github.com/acornjs/acorn) from 6.4.0 to 6.4.1.
- [Release notes](https://github.com/acornjs/acorn/releases)
- [Commits](https://github.com/acornjs/acorn/compare/6.4.0...6.4.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-03-15 21:06:16 -04:00
David Knaack 56d475578e fix: possible fix for Intermittent Test Failures in GH Actions (#987)
* fix: possible fix for Intermittent Test Failures in GH Actions

* undo some of the chnages to directory.rs

* typo

* add docs
2020-03-15 12:12:25 -05:00
David Knaack fef8cc8bbd improvement: replace reqwest with attohttpc (#999) 2020-03-14 21:07:34 -04:00
dependabot-preview[bot] 8479e72b3e build(deps): bump regex from 1.3.4 to 1.3.5
Bumps [regex](https://github.com/rust-lang/regex) from 1.3.4 to 1.3.5.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.3.4...1.3.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-14 16:08:56 +00:00
Thomas O'Donnell f790b67e3d refactor: Fix new Clippy suggestions (#1006)
* Fix new Clippy suggestions

This just cleans up a few new suggestions from Clippy.

* Dummy commit to trigger CI
2020-03-14 11:37:51 -04:00
dependabot-preview[bot] cae6a3dfc3 build(deps): bump sysinfo from 0.11.6 to 0.11.7
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.11.6 to 0.11.7.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-12 05:39:54 +00:00
dependabot-preview[bot] af5071d6db build(deps): bump sysinfo from 0.11.4 to 0.11.6
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.11.4 to 0.11.6.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-09 06:05:18 +00:00
dependabot-preview[bot] 47ba291616 build(deps): bump open from 1.3.4 to 1.4.0
Bumps [open](https://github.com/Byron/open-rs) from 1.3.4 to 1.4.0.
- [Release notes](https://github.com/Byron/open-rs/releases)
- [Changelog](https://github.com/Byron/open-rs/blob/master/changelog.md)
- [Commits](https://github.com/Byron/open-rs/compare/v1.3.4...v1.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-09 06:00:55 +00:00
dependabot-preview[bot] 3f22e33ef1 build(deps): bump chrono from 0.4.10 to 0.4.11
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.10 to 0.4.11.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.10...v0.4.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-09 06:00:11 +00:00
Basix 8b4489768b fix(utils): print log for exec_cmd failure (#982) 2020-03-06 16:17:34 -05:00
dependabot-preview[bot] b684d80aab build(deps): bump sysinfo from 0.11.3 to 0.11.4
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.11.3 to 0.11.4.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-06 05:40:25 +00:00
Matan Kushner f79baf1a63 chore: add Open Collective to FUNDING.yml (#976) 2020-03-05 10:57:04 -05:00
Matan Kushner d894ef5ad3 feat: make reqwest an optional dependency (#979) 2020-03-05 10:53:58 -05:00
Kevin Song 7f82dd66ed fix: check if editor is not found for configure (#961)
* fix: check if editor is not found for `configure`

STD_EDITOR falls back on `vi` if $EDITOR and $VISUAL is not set.
However, some machines might not have `vi` symlinked or installed and a
bad error message is displayed. This commit adds a better error message.

* fix lint errors

* Change NotFound to write to stderr instead of panic!

Oh wow writing rust makes my commit messages look very enthusiastic!
2020-03-05 09:50:34 -06:00
Matan Kushner d0e1904758 feat(package): ignore private JS packages (#975)
`private: true` in `package.json` files means that the package is not supposed to be published to npm, which makes the `version` field meaningless, so we should probably ignore it to not clutter the prompt too much.
2020-03-05 10:49:11 -05:00
dependabot-preview[bot] 0674007bfe build(deps): bump reqwest from 0.10.3 to 0.10.4
Bumps [reqwest](https://github.com/seanmonstar/reqwest) from 0.10.3 to 0.10.4.
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.10.3...v0.10.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-04 05:38:54 +00:00
Matan Kushner 28af0eb596 chore: remove .all-contributorsrc 2020-03-03 14:25:18 -05:00
Kevin Song f2fdaa2d31 docs(elixir): Minor typo fix for config docs (#971) 2020-03-02 19:06:38 -05:00
Matan Kushner 5a25ec3c71 chore(bump): v0.37.0 2020-03-01 22:32:48 -05:00
KokaKiwi 243e97cfe6 feat: add Elixir module (#437) 2020-03-01 22:29:27 -05:00
Christopher Goh 1eabd52725 docs(time): add missing quotations in options and examples (#967) 2020-02-28 13:01:47 -05:00
dependabot-preview[bot] b27e8466ed build(deps): bump git2 from 0.11.0 to 0.12.0
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.11.0 to 0.12.0.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.11.0...git2-curl-0.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-27 08:41:45 +00:00
dependabot-preview[bot] cc73beaa79 build(deps): bump reqwest from 0.10.2 to 0.10.3
Bumps [reqwest](https://github.com/seanmonstar/reqwest) from 0.10.2 to 0.10.3.
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.10.2...v0.10.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-27 05:51:45 +00:00
dependabot-preview[bot] 68efcc1286 build(deps): bump sysinfo from 0.11.2 to 0.11.3
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.11.2 to 0.11.3.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-27 05:39:27 +00:00
Tadej Novak 7e66791cb2 feat: add singularity module (#932) 2020-02-26 11:18:19 -05:00
dependabot-preview[bot] 15f4202df1 build(deps): bump nom from 5.1.0 to 5.1.1
Bumps [nom](https://github.com/Geal/nom) from 5.1.0 to 5.1.1.
- [Release notes](https://github.com/Geal/nom/releases)
- [Changelog](https://github.com/Geal/nom/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Geal/nom/compare/5.1.0...5.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-25 05:41:24 +00:00
dependabot-preview[bot] ca99c6c220 build(deps): bump reqwest from 0.10.1 to 0.10.2
Bumps [reqwest](https://github.com/seanmonstar/reqwest) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.10.1...v0.10.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-24 17:02:05 +00:00
dependabot-preview[bot] 871be692ad build(deps): bump os_info from 2.0.0 to 2.0.1
Bumps [os_info](https://github.com/darkeld3r/os_info) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/Changelog.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v2.0...v2.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-24 05:50:46 +00:00
Matan Kushner 79d137bf5c revert: "docs: add Netlify link to footer"
This reverts commit aedfe42a8c.
2020-02-22 12:57:49 -05:00
Kevin Lane ce540fff7a feat: display Gradle project version (#662)
This PR adds package version support for Gradle projects. The version number is extracted from the `build.gradle` file in the current directory, similar to existing support for other packages.
2020-02-21 14:12:21 -05:00
Matan Kushner aedfe42a8c docs: add Netlify link to footer 2020-02-21 12:33:09 -05:00
Thomas O'Donnell d44c037ba5 test: refactor ruby and php modules to use mocked commands (#936) 2020-02-21 11:52:39 -05:00
Kevin Song c6d8031f36 docs: Update docs w/ details on fish-style truncation (#948) 2020-02-20 18:08:20 -06:00
Matan Kushner 53c6639540 chore(bump): v0.36.1 2020-02-19 16:22:09 -05:00
Heechul Ryu b529dcf9a0 docs: Fix kubernetes style doc `dimmed' (#944)
Fix an incorrect key in the Kubernetes doc (key was incorrectly labeled as `dim` where it should be `dimmed`)
2020-02-19 13:55:58 -06:00
Onielfa ddd8cfb388 perf: refactor git status to use HashMap for counts (#938) 2020-02-14 20:38:25 -05:00
dependabot-preview[bot] ed04c61704 build(deps): bump serde_json from 1.0.47 to 1.0.48
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.47 to 1.0.48.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.47...v1.0.48)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-14 05:41:05 +00:00
Matan Kushner dc96df510a docs: Add twitter badge to README 2020-02-13 15:49:40 -05:00
Matan Kushner a15af9b41c chore(bump): v0.36.0 2020-02-12 21:46:53 -05:00
Matan Kushner 40bbd5d3cb docs: Replace project tagline 2020-02-12 21:46:00 -05:00
Matan Kushner b8313f81ed docs: Update the link of the contributors badge 2020-02-12 21:17:58 -05:00
Matan Kushner d901e262d0 docs: rework the project README.md (#931) 2020-02-12 21:13:53 -05:00
Diego Jornada b1bc2a04a4 feat(installer): Ask for permission escalation during installation, if needed (#914) 2020-02-12 21:13:21 -05:00
nesmyslny 0312c7b91e feat(git_commit): Show the hash of commits when detached HEAD (#738) 2020-02-12 14:56:29 -05:00
dependabot-preview[bot] a485fd6896 build(deps): bump sysinfo from 0.11.1 to 0.11.2 (#930)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.11.1 to 0.11.2.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)
2020-02-12 13:47:03 -05:00
Thomas O'Donnell 67397d9096 test(golang): refactor golang tests to use mocked command (#925)
Refactor the golang module tests to use a mocked command and no
longer depend on having a particular version of Go installed.
2020-02-12 13:22:21 -05:00
dependabot-preview[bot] f8615f9a36 build(deps): bump open from 1.3.3 to 1.3.4
Bumps [open](https://github.com/Byron/open-rs) from 1.3.3 to 1.3.4.
- [Release notes](https://github.com/Byron/open-rs/releases)
- [Changelog](https://github.com/Byron/open-rs/blob/master/changelog.md)
- [Commits](https://github.com/Byron/open-rs/commits/v1.3.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-12 05:41:48 +00:00
Matan Kushner a07a97de01 docs: remove icons from badges 2020-02-11 18:28:19 -05:00
Matan Kushner d1298b486a docs: use flat-square badges in README.md 2020-02-11 18:21:56 -05:00
Matan Kushner 21003df0f5 docs: Make code blocks dark themed 2020-02-11 15:54:16 -05:00
dependabot-preview[bot] 0e8b1c659d build(deps): bump os_info from 1.3.3 to 2.0.0
Bumps [os_info](https://github.com/darkeld3r/os_info) from 1.3.3 to 2.0.0.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/Changelog.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v1.3.3...v2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-11 05:44:45 +00:00
dependabot-preview[bot] 026de6b0bc build(deps): bump sysinfo from 0.11.0 to 0.11.1
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.11.0 to 0.11.1.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-11 05:40:04 +00:00
dependabot-preview[bot] 58906a7a80 build(deps): bump serde_json from 1.0.46 to 1.0.47
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.46 to 1.0.47.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.46...v1.0.47)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-10 06:14:40 +00:00
dependabot-preview[bot] 9292ec63d4 build(deps): bump sysinfo from 0.10.5 to 0.11.0
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.10.5 to 0.11.0.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-10 05:57:33 +00:00
Matan Kushner 3271b586f4 docs(i18n): Update translations (#908) 2020-02-07 16:47:30 -05:00
Matan Kushner 54acc2cdc3 docs: Fix Japanese sidebar links 2020-02-07 16:22:39 -05:00
Matan Kushner 91008ba5f2 docs: Use Algolia DocSearch for docs 2020-02-07 12:36:39 -05:00
Brett Mandler bc600e4321 feat: Add cabal and hpack detection for the haskell module (#915) 2020-02-06 19:29:57 -05:00
Jon Grythe Stødle 2509a79176 fix: Change command duration variable for Ion shell to CMD_DURATION (#911) 2020-02-06 14:41:55 -05:00
Andrew Prokhorenkov cead23edca test: port Haskell module tests to integration test (#913) 2020-02-06 12:12:07 -05:00
Kevin Song c4ab66d7fe refactor: Move ANSI escaping into its own functions (#866) 2020-02-06 11:10:59 -05:00
Matan Kushner 375cc51e7f chore(bump): v0.35.1 2020-02-06 10:31:10 -05:00
Matan Kushner 8af0a0ae71 build: Remove media from cargo build 2020-02-06 10:30:43 -05:00
Matan Kushner 1ab5fc393e chore: Remove accidentally added binary 2020-02-06 10:29:26 -05:00
Matan Kushner 3f4eceabc2 chore(bump): v0.35.0
Former-commit-id: bc55166a6e3016c9355855e78c550173da53b1ce
2020-02-06 09:56:39 -05:00
Matan Kushner 66d5f34184 chore: give unused function a test annotation
Former-commit-id: 94acaa37c593f4952c349d663de71e3f1990926b
2020-02-05 23:03:26 -05:00
Matan Kushner 670c7a3591 docs: Update example snippets
Former-commit-id: e0526c871d95ea56f216d668866580268407f350
2020-02-05 23:00:25 -05:00
Matan Kushner 21f2947222 revert: "refactor: replace reqwest with ureq (#844)" (#895)
Former-commit-id: 0908c12a4950b6b4ceea22a3e1cbd4a8039d4006
2020-02-05 22:58:39 -05:00
allcontributors[bot] 1e6905df9d docs: add m0nhawk as a contributor (#912)
Former-commit-id: d649d567ad6de4413f0b102a7d5e406d1a8d0fbe
2020-02-05 22:57:59 -05:00
Andrew Prokhorenkov 273a937505 feat: Add an Elm module (#879)
Former-commit-id: d42137309da457a438b554601f0734db963a193e
2020-02-05 22:57:04 -05:00
Matan Kushner af6a9e2e56 docs: Update all-contributors
Former-commit-id: 3631822be4c366b13d808292f924ea15787e09e8
2020-02-05 00:16:26 -05:00
allcontributors[bot] bf95f79b9f docs: add chirsz-ever as a contributor (#909) 2020-02-05 00:15:13 -05:00
Matan Kushner 2b53490e9e docs(i18n): Add Simplified Chinese docs to the website and README.md (#906) 2020-02-04 23:57:11 -05:00
allcontributors[bot] dd73e6dc04 docs: add youssefhabri as a contributor (#907) 2020-02-04 18:29:15 -05:00
Matan Kushner 6a762e83d1 docs: small doc touchups 2020-02-04 18:28:11 -05:00
Youssef Habri f665df226c feat: Add Crystal version module (#170) 2020-02-04 18:27:06 -05:00
Matan Kushner d4d4a01850 docs(i18n): Fix links in Japanese docs (#905) 2020-02-04 14:31:52 -05:00
Kyle Sferrazza 752abd4bfb fix: make echo test use /bin/sh (#892) 2020-02-04 12:48:01 -05:00
Matan Kushner 8e9d9409cf docs(i18n): Update translations (#875) 2020-02-04 12:11:36 -05:00
Matan Kushner 860accac55 chore: readd from_path function
Despite the function not being used directly, it was being used in tests.
Readding the function so tests will pass.
2020-02-03 17:13:59 -05:00
Matan Kushner f14aef4769 chore(bump): v0.34.1 2020-02-03 17:04:16 -05:00
Matan Kushner 0d1578bbe1 fix: move get_shell method into Context 2020-02-03 17:01:50 -05:00
Matan Kushner cb6819c7d8 chore(bump): v0.34.0 2020-02-03 16:59:02 -05:00
Sam Rose 83337a1a03 perf: Optimize files, folder and extension lookups in Context (#880) 2020-02-03 16:57:48 -05:00
dependabot-preview[bot] c30419877c build(deps): bump open from 1.3.2 to 1.3.3
Bumps [open](https://github.com/Byron/open-rs) from 1.3.2 to 1.3.3.
- [Release notes](https://github.com/Byron/open-rs/releases)
- [Changelog](https://github.com/Byron/open-rs/blob/master/changelog.md)
- [Commits](https://github.com/Byron/open-rs/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-03 06:11:38 +00:00
dependabot-preview[bot] 7b370068ae build(deps): bump serde_json from 1.0.45 to 1.0.46
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.45 to 1.0.46.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.45...v1.0.46)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-03 06:05:58 +00:00
Matan Kushner 4cf51eb097 docs: Add a meta title for SEO 2020-02-02 20:03:47 -05:00
Matan Kushner b61034f3fe docs: Improve description meta tag for SEO 2020-02-02 19:51:48 -05:00
Matan Kushner 0ff4736729 docs: Add a border-radius to the hero video
Applying a border radius to the video hides the white corners that show when the site is in dark mode.
2020-02-01 18:17:07 -05:00
Matan Kushner 11b737bb44 feat!: Update colors of package and php modules (#782) 2020-02-01 18:10:12 -05:00
Andrew Prokhorenkov 9229a48bc9 fix(haskell): Add the Haskell module to the default prompt order (#893) 2020-02-01 17:16:10 -05:00
Sam Rose 8555143533 docs: Add git workflow to CONTRIBUTING.md (#876) 2020-01-31 13:52:20 -05:00
dependabot-preview[bot] 2968aac3ca build(deps): bump pretty_env_logger from 0.3.1 to 0.4.0
Bumps [pretty_env_logger](https://github.com/seanmonstar/pretty-env-logger) from 0.3.1 to 0.4.0.
- [Release notes](https://github.com/seanmonstar/pretty-env-logger/releases)
- [Commits](https://github.com/seanmonstar/pretty-env-logger/compare/v0.3.1...v0.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-30 05:43:42 +00:00
Matan Kushner bd62b82d95 docs: Increase docs dark-mode contrast ratio 2020-01-28 14:17:18 -05:00
Brett Mandler f166797076 docs: Added dark theme to documentation (#819) 2020-01-28 13:56:53 -05:00
Luca Rinaldi 041c0427bb fix: escape "$" character to avoid bash interpreting (#884) 2020-01-28 13:55:16 -05:00
Kevin Song 5655a90a28 fix: Restrict clear screen control code printing to fish (#865)
Wraps clearscreen print codes in a statement to detect fish shell, since it is a
workaround for a fish shell behavior.
2020-01-27 17:23:08 -06:00
dependabot-preview[bot] 4b9a11d094 build(deps): bump os_info from 1.3.2 to 1.3.3
Bumps [os_info](https://github.com/darkeld3r/os_info) from 1.3.2 to 1.3.3.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/Changelog.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v1.3.2...v1.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-27 05:46:48 +00:00
Matan Kushner 3365beae09 test(nodejs): Port nodejs module tests from E2E to integraton (#867)
Replaces the existing nodejs module end-to-end tests with integration tests that don't require preinstalled environmental dependencies.

- Moved the tests to the same file as the module they test
- Created a render_module utility function for rendering modules within tests
- Removed Node.js installation during CI setup
- Add Shell to Context to allow for tests to not run shell-specific code
2020-01-26 16:37:18 -06:00
allcontributors[bot] 5342dcc658 docs: add m0nhawk as a contributor (#878)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2020-01-25 16:35:43 -06:00
Andrew Prokhorenkov 6f2c9fb397 feat: add Haskell Stack support (#546)
Add a Haskell Stack module when a stack.yaml file is detected
2020-01-25 00:48:39 -06:00
Sam Rose f4c095de92 fix(java): Add detection for *.gradle files (#871)
Currently the Java module detection looks for build.gradle specifically, but it's possible to rename build.gradle to *.gradle. This change adds Gradle files to the list of detected file extensions.
2020-01-24 10:22:30 -05:00
Matan Kushner 25b86dc82d docs(i18n): Update translations (#863) 2020-01-23 11:27:26 -05:00
dependabot-preview[bot] a361a2ab17 build(deps): bump serde_json from 1.0.44 to 1.0.45
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.44 to 1.0.45.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.44...v1.0.45)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-23 05:40:40 +00:00
Matan Kushner 88b9b0ffe2 docs(i18n): Add German docs to the website and README.md (#864) 2020-01-21 15:49:49 -05:00
allcontributors[bot] bf4705f914 docs: add pjbull as a contributor (#862) 2020-01-21 11:18:45 -05:00
Matan Kushner a2ffd1263a fix: Fix invalid JSON in .all-contributorsrc 2020-01-21 11:17:52 -05:00
Matan Kushner 062dacb2e5 docs(i18n): Update translations (#857) 2020-01-21 11:15:25 -05:00
Peter Bull b723a7d562 fix(python): Trim "Anaconda, Inc." from version (#861) 2020-01-21 11:14:40 -05:00
allcontributors[bot] 57427b5d7a docs: add ivanovart as a contributor (#860)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: Matan Kushner <hello@matchai.dev>
2020-01-20 13:36:32 -05:00
allcontributors[bot] 5a988515a0 docs: add filalex77 as a contributor (#859) 2020-01-20 13:33:55 -05:00
allcontributors[bot] 98049e2877 docs: add gkeep as a contributor (#858) 2020-01-20 13:32:04 -05:00
Matan Kushner bfbe330549 docs(i18n): Add Russian docs to the website and README.md 2020-01-20 13:06:34 -05:00
Matan Kushner aa3746fdbf ci: Remove changelog generation 2020-01-20 13:06:34 -05:00
Matan Kushner 754c3292ee docs(i18n): Update translations (#848)
- Fix some broken markup on README.md
2020-01-20 13:04:11 -05:00
Gennady Koshkin 28c4b059f1 docs(i18n): Add Russian to the website language dropdown (#856) 2020-01-20 12:46:54 -05:00
Matan Kushner 8ef238d11f ci: Fetch all tags when generating changelog 2020-01-20 12:04:53 -05:00
Matan Kushner f5af004d3d ci: Automate changelog generation 2020-01-20 12:00:38 -05:00
dependabot-preview[bot] 88e26f578d build(deps): bump os_info from 1.3.1 to 1.3.2
Bumps [os_info](https://github.com/darkeld3r/os_info) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/Changelog.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v1.3.1...v1.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 06:34:12 +00:00
dependabot-preview[bot] 52a8ee67fc build(deps): bump once_cell from 1.3.0 to 1.3.1
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.3.0...v1.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 06:17:21 +00:00
dependabot-preview[bot] f10682957b build(deps): bump sysinfo from 0.10.4 to 0.10.5
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.10.4 to 0.10.5.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 05:58:39 +00:00
David Knaack d869b3a098 refactor: replace reqwest with ureq (#844) 2020-01-19 11:00:40 -05:00
dependabot-preview[bot] 6a9eaa90b5 build(deps): bump toml from 0.5.5 to 0.5.6
Bumps [toml](https://github.com/alexcrichton/toml-rs) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/alexcrichton/toml-rs/releases)
- [Commits](https://github.com/alexcrichton/toml-rs/compare/0.5.5...0.5.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-18 18:53:09 +00:00
Thomas O'Donnell 197376633a fix: Fix incorrect prefix usage in cmd_duration module (#832)
Fixed the way the cmd_duration module is setting it's prefix to be the
same as the other modules.
2020-01-18 01:15:08 -06:00
Matan Kushner 8f645ffb8a ci: Update CI dependencies (#850)
* ci: Replace setup-ruby with use-ruby-action

* ci: Update python version

* ci: Update Ruby version

* Set ruby action to master

* Try installing mercurial earlier in the workflow

* Remove mercurial installation

* Remove mercurial installation on all OSes

* Revert "Remove mercurial installation on all OSes"

This reverts commit 0e1a3e7e92.

* Update hg installation comment

* Revert Ruby update

* Add caching

* Add caching to audit

* Update workflow.yml

* Only cache during test steps
2020-01-17 20:43:29 -05:00
Thomas O'Donnell e29e1bf92c docs: Fix indentation and missing modules in README (#847) 2020-01-17 13:28:30 -05:00
Matan Kushner 70428f7a9d chore(bump): v0.33.1 2020-01-15 23:56:59 -05:00
Jon Grythe Stødle 313a03e2b7 fix(bug-report): Fix status code 414 when generated bug report is too long (#750) 2020-01-15 23:47:56 -05:00
Thomas O'Donnell 0fe90bf018 refactor(dotnet): Use exec_cmd util (#826)
Have refactored the dotnet module to use the util::exec_cmd rather than
the Command module directly.
2020-01-15 13:52:38 -05:00
Matan Kushner ddfcee3809 docs(i18n): Update translated docs (#792) 2020-01-15 12:23:25 -05:00
dependabot-preview[bot] 1f9059c611 build(deps): bump once_cell from 1.2.0 to 1.3.0
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-15 06:02:51 +00:00
dependabot-preview[bot] 044f342914 build(deps): bump os_info from 1.2.0 to 1.3.0
Bumps [os_info](https://github.com/darkeld3r/os_info) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/darkeld3r/os_info/releases)
- [Changelog](https://github.com/DarkEld3r/os_info/blob/master/Changelog.md)
- [Commits](https://github.com/darkeld3r/os_info/compare/v1.2...v1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-15 05:47:07 +00:00
Thomas O'Donnell 60ce320912 refactor(php): Use exec_cmd util(#825) 2020-01-12 17:50:25 -05:00
Thomas O'Donnell 0d81694e32 chore: Add ability to mock commands during tests (#768) 2020-01-11 10:08:32 -05:00
dependabot-preview[bot] fa6de4b769 build(deps): bump reqwest from 0.10.0 to 0.10.1
Bumps [reqwest](https://github.com/seanmonstar/reqwest) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.10.0...v0.10.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-10 05:43:13 +00:00
Kyle J Strand 5ab9ce643a docs: Add installation instructions for Cargo to README.md (#820) 2020-01-09 17:11:20 -05:00
Thomas O'Donnell 0879381bcd test: Ignore AWS tests that depend on the File System (#817)
Update AWS module tests to ignore the two tests that can fail if the
`~/.aws/config` file exists.
2020-01-08 18:22:42 -06:00
dependabot-preview[bot] f1b27f5572 build(deps): bump nom from 5.0.1 to 5.1.0
Bumps [nom](https://github.com/Geal/nom) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/Geal/nom/releases)
- [Changelog](https://github.com/Geal/nom/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Geal/nom/compare/5.0.1...5.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-08 05:43:32 +00:00
Iván e146eb59df docs(i18n): add Spanish as WIP localization (#813) 2020-01-07 16:30:40 -05:00
Hendrik Rombach dab27f3334 fix: Correct module description text for git_commit (#812) 2020-01-07 12:12:40 -05:00
Matan Kushner 25079b029c chore(bump): v0.33.0 2020-01-06 12:45:38 -05:00
dependabot-preview[bot] a251ddb957 build(deps): bump reqwest from 0.9.24 to 0.10.0 (#797)
* build(deps): bump reqwest from 0.9.24 to 0.10.0

Bumps [reqwest](https://github.com/seanmonstar/reqwest) from 0.9.24 to 0.10.0.
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.9.24...v0.10.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-06 12:10:30 -05:00
dependabot-preview[bot] e050935419 build(deps): bump sysinfo from 0.10.3 to 0.10.4
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.10.3 to 0.10.4.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-06 15:09:45 +00:00
Matan Kushner 09fe0afc14 ci: Remove Docker test environment from CI (#806) 2020-01-06 00:35:46 -05:00
Justas Kazakauskas 45e6b3e052 docs: Document the STARSHIP_CONFIG env variable (#807) 2020-01-04 14:20:07 -05:00
InNoobWeTrust 2eeaa05bfb feat: Terminate $PROMPT_COMMAND properly (#799)
Add trailing semicolon to end $PROMPT_COMMAND properly.
This will prevent starship_precmd to accidentally mess with other hooks invoked after it.
2020-01-04 10:52:08 -05:00
Iván f5a513770b docs: Add missing spaces after bullet points in README.md (#805)
Fix lack of spaces between the word version and the open parentheses.
2020-01-03 22:26:05 -05:00
allcontributors[bot] e0a9f09bff docs: add dten as a contributor (#804)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2020-01-03 17:56:03 -05:00
David Hewson 178f177dac perf(hg_branch): Replace direct calls to hg (#803)
perf: don't use hg process to get branch / bookmark information, each call was taking 250ms and it was making on average 2 calls.
the branch and bookmark information is available in files in the root of the repo, use that instead.
now takes 300 micro seconds

fix: do not use .hgignore to decide if it is an hg repo. was providing false positives. #721

fix: after changing branch the new branch was not show (the old branch was shown), the new branch is now correctly shown. #722

fix: if no branch override was set it would say (no branch) however if you commited in that state you would commit to the branch default so say that instead
2020-01-03 17:51:45 -05:00
Jon Grythe Stødle 8e5fa60fc8 feat: Add the starship explain command (#699)
This adds the explain argument to Starship, which explains what the printed modules in the prompt are.
2020-01-01 23:19:08 -05:00
AppleTheGolden 6bafe4cd66 fix: Consider $STARSHIP_CONFIG in configure (#795)
Makes starship configure consider the $STARSHIP_CONFIG variable before falling back to the default of ~/.config/starship.toml.
2019-12-30 15:46:02 -08:00
allcontributors[bot] a8e20ef387 docs: add marblenix as a contributor (#791)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2019-12-28 22:21:57 -05:00
marblenix b82ff321fa feat(git_status): Add a stash count segment (#598) 2019-12-28 22:20:36 -05:00
Matan Kushner 891fa9da50 chore(bump): v0.32.2 2019-12-28 10:05:41 -05:00
InNoobWeTrust 9d49410102 fix: Remove trailing semicolon from $PROMPT_COMMAND (#784)
Remove any trailing semicolon in $PROMPT_COMMAND before appending starship_precmd, to prevent syntax error.
2019-12-28 10:03:59 -05:00
BSKY 36cfbfcf03 build: Bump checkout action from v1 to v2 (#789) 2019-12-28 09:32:17 -05:00
Matan Kushner 75b103a44a docs(i18n): Update translations (#735) 2019-12-24 16:54:29 -05:00
Tobias Bieniek ecc8754335 fix(package): Use specified directory instead of current working directory (#774) 2019-12-23 22:38:00 -05:00
Matan Kushner 3ddb7460a6 docs: Add a "Presets" page to the website (#783) 2019-12-23 22:32:48 -05:00
Matan Kushner e53ced8221 docs: A few small improvements
- Correctly alphebetize modules
- Fix table formatting
- Add missing quotes around strings
2019-12-23 18:10:25 -05:00
allcontributors[bot] 4f5d1bc8f3 docs: add dominikbraun as a contributor (#780)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2019-12-23 10:27:58 -05:00
Dominik Braun 56d62bd659 fix: Parse arguments of $VISUAL and $EDITOR (#772)
Co-authored-by: AppleTheGolden <scotsbox@protonmail.com>
2019-12-23 10:27:00 -05:00
dependabot-preview[bot] 7e568a1e73 build(deps): bump rayon from 1.2.1 to 1.3.0 (#777)
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.2.1 to 1.3.0.
- [Release notes](https://github.com/rayon-rs/rayon/releases)
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/rayon-core-v1.2.1...rayon-core-v1.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-23 10:23:45 -05:00
Tobias Bieniek 9a1569444b refactor: ModuleConfig: Simplify generated from_config() implementations (#775)
We can use `and_then()` to string `Option` values together so that we only need a single `?` assertion. This makes it generally possible to have e.g. `unwrap_or()` at the end.
2019-12-23 10:12:21 -05:00
Marco Ieni c4ed88952c docs(config): Disabled at the end of the options
In the `time` module, bring `disabled` option at the end of the table for coherence with all the other modules
2019-12-23 10:11:23 -05:00
Leonora Tindall 539f320a3f fix: Improve error message when current dir is not found (#773) 2019-12-21 23:26:57 -05:00
Matan Kushner b0a8003a59 chore(bump): v0.32.1 2019-12-20 15:45:19 -05:00
Matan Kushner d1b725a47c build: Use native SSL instead of OpenSSL 2019-12-20 15:42:21 -05:00
Matan Kushner 83d4c21a09 ci: Install pkg-config for musl build 2019-12-20 15:09:46 -05:00
Matan Kushner e6625cf6df chore(bump): v0.32.0 2019-12-20 13:58:04 -05:00
Matan Kushner 8cf4ce21d9 perf: Dereference before to_string in aws module 2019-12-20 12:58:59 -05:00
allcontributors[bot] c30f2e90d1 docs: add mfs as a contributor (#765) 2019-12-20 12:39:29 -05:00
Mike Sampson 256a2be949 feat: Implement AWS region aliases (#646) 2019-12-20 12:30:47 -05:00
allcontributors[bot] f3784f5aaa docs: add Scotsguy as a contributor (#764) 2019-12-20 11:34:17 -05:00
AppleTheGolden 8084c2e61d fix: Fix shellcheck issues in install.sh (#714) 2019-12-20 10:54:40 -05:00
Matan Kushner c58178dece ci: Bump brew with personal account 2019-12-20 10:15:36 -05:00
Shivam Mathur 024e7ea1f3 ci: Use fixed version of setup-php in test workflow (#763) 2019-12-20 10:14:25 -05:00
AppleTheGolden 11f73efa41 fix: Improvements to starship configure (#756)
- look for $VISUAL first, then $EDITOR, then the default
- panic if we can't find the home dir
2019-12-20 09:55:53 -05:00
Matan Kushner 49d1c250d5 build: Install libssl-dev during musl build 2019-12-19 18:09:13 -05:00
Jon Grythe Stødle f898b22b55 fix: Clear before printing prompt (#739)
This clears any leftover text when the prompt updates in-place (e.g. Alt + Left/Right in fish shell)
2019-12-19 17:56:30 -05:00
Luca Rinaldi 6a2b0a67b0 feat: cmd_duration module optionally reports milliseconds (#696) 2019-12-19 17:38:06 -05:00
Matan Kushner d6094d7b9d chore(bump): v0.31.0 2019-12-19 17:18:11 -05:00
allcontributors[bot] a26fcc8736 docs: add etiennemabille as a contributor (#757)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]


Co-authored-by: null <46447321+allcontributors[bot]@users.noreply.github.com>
2019-12-19 16:21:15 -05:00
Etienne Mabille 879649d542 fix(bash): save and restore "$_" (#753) 2019-12-19 16:20:44 -05:00
Mario Arias aab35674d2 feat: Adds build.gradle.kts detection to the Java module (#731) 2019-12-19 10:17:50 -05:00
dependabot-preview[bot] 63594b746e build(deps): bump gethostname from 0.2.0 to 0.2.1
Bumps [gethostname](https://github.com/lunaryorn/gethostname.rs) from 0.2.0 to 0.2.1.
- [Release notes](https://github.com/lunaryorn/gethostname.rs/releases)
- [Changelog](https://github.com/lunaryorn/gethostname.rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/lunaryorn/gethostname.rs/compare/gethostname-0.2.0...gethostname-0.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-19 06:05:51 +00:00
Dominik Braun a4c5c00a73 feat: Implement starship configure command (#751) 2019-12-18 16:09:36 -05:00
dependabot-preview[bot] c82aeb70db build(deps): bump sysinfo from 0.10.2 to 0.10.3 (#747)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.10.2 to 0.10.3.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-17 23:15:16 -05:00
Matan Kushner b1de63b7a3 docs: Fix landing page formatting 2019-12-17 16:48:17 -05:00
Matan Kushner e078bf4727 docs: Make website docs consistent with README.md 2019-12-17 16:46:43 -05:00
Matan Kushner a07ca8353f docs: Update GitHub Actions badge
Update the badge to specifically show the status of push events to master
2019-12-17 11:12:32 -05:00
Matan Kushner af7e9fd26e revert: "build(deps): bump log from 0.4.8 to 0.4.10"
This reverts commit dd112719e6.
2019-12-17 11:10:07 -05:00
Matan Kushner 6c2e931087 feat: Extend bug-report to include terminal emulator (#740) 2019-12-17 10:17:04 -05:00
dependabot-preview[bot] 85ad2d5d00 build(deps): bump hermit-abi from 0.1.3 to 0.1.5
Bumps [hermit-abi](https://github.com/hermitcore/rusty-hermit) from 0.1.3 to 0.1.5.
- [Release notes](https://github.com/hermitcore/rusty-hermit/releases)
- [Commits](https://github.com/hermitcore/rusty-hermit/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-16 16:28:13 +00:00
dependabot-preview[bot] dd112719e6 build(deps): bump log from 0.4.8 to 0.4.10
Bumps [log](https://github.com/rust-lang/log) from 0.4.8 to 0.4.10.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.8...0.4.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-16 16:27:33 +00:00
nesmyslny 40d4daba42 docs: Correct summary of git_commit module (#737) 2019-12-16 10:45:48 -05:00
dependabot-preview[bot] 43d352db1b build(deps): bump os_info from 1.1.3 to 1.2.0 (#742) 2019-12-16 15:45:32 +00:00
dependabot-preview[bot] 7808faf33f build(deps): bump serde from 1.0.103 to 1.0.104 (#741) 2019-12-16 15:44:34 +00:00
Matan Kushner 2edccd8848 docs: Update bug report template 2019-12-15 19:27:23 -05:00
Matan Kushner 7c05412f46 docs(i18n): Update doc translations (#697) 2019-12-14 18:46:45 -05:00
allcontributors[bot] df351602a3 docs: add JasonEtco as a contributor (#734)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]


Co-authored-by: null <46447321+allcontributors[bot]@users.noreply.github.com>
2019-12-14 18:45:29 -05:00
allcontributors[bot] 9ccf29362d docs: add jonstodle as a contributor (#733)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]


Co-authored-by: null <46447321+allcontributors[bot]@users.noreply.github.com>
2019-12-14 18:42:18 -05:00
Jon Grythe Stødle 76804cc3c8 feat: Add bug-report sub-command (#725)
This adds a sub command to generate the link. Information, such as operating system and it's version; the current shell's config; and current starship conf, is gathered from the environment and is included in the pre-filled text. The command will also try to open the link in the default browser. Should that fail it will print the link instead and ask the user to copy it.
2019-12-14 18:40:12 -05:00
dependabot-preview[bot] 740b51bd60 build(deps): bump git2 from 0.10.2 to 0.11.0
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.10.2 to 0.11.0.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.10.2...git2-curl-0.11.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-13 16:44:37 -05:00
Thomas O'Donnell 780816926f docs: Correct a typo in the FAQs (#732)
Have fixed a minor typo in the FAQs to use the `--help` flag rather than
the `--version` flag.
2019-12-13 15:26:23 -05:00
Matan Kushner ba18e1a089 build: Reset homebrew/core before bumping formula 2019-12-13 15:09:57 -05:00
Matan Kushner 16ddd6b31d chore(bump): v0.30.1 2019-12-13 14:58:33 -05:00
David Knaack 6724ce5bb5 fix(powershell): % sign was prefixed with ` (#730) 2019-12-13 14:55:20 -05:00
Matan Kushner 3dd7f66ffc build: Use the correct Homebrew GitHub API token name 2019-12-13 14:45:57 -05:00
Matan Kushner 2e1051fbca chore(bump): v0.30.0 2019-12-13 14:40:35 -05:00
Brian Low 12e8ae85dd fix: Wrap prefix and suffix in shell-specific escape codes (#712) 2019-12-13 14:35:10 -05:00
Matan Kushner 7ab473c88c build: Automate bumping starship brew formula 2019-12-13 14:23:58 -05:00
David Knaack b2ebd24506 fix(powershell): Fix prompt not updating on -nix systems (#728)
Closes #661
2019-12-13 13:44:58 -05:00
dependabot-preview[bot] d71373b265 build(deps): bump sysinfo from 0.9.6 to 0.10.2 (#711) 2019-12-12 15:32:46 -05:00
Morten Scheel e38a257656 feat: add composer.json version to Package module (#716) 2019-12-11 21:05:39 -05:00
allcontributors[bot] dce52390c8 docs: add BuggStream as a contributor (#718)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2019-12-11 17:41:33 -05:00
allcontributors[bot] 87cdd4f54c docs: add popey as a contributor (#717)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2019-12-11 17:40:37 -05:00
BuggStream 93701b26b3 feat: Add support for the ion shell (#704) 2019-12-11 15:31:30 -05:00
Matan Kushner 835ecc3ae6 chore: Move snapcraft.yaml to project root 2019-12-11 11:44:52 -05:00
Matan Kushner 18cad62a73 chore(bump): v0.29.0 2019-12-11 11:43:16 -05:00
Thomas O'Donnell 9b307962ef docs: Pipe install script into bash instead of shell (#710)
The install script includes some bash only commands so needs to use base
to be piped into bash rather than sh.
2019-12-10 16:08:42 -05:00
Alan Pope 2a00cca5c1 build: Add snapcraft.yaml to build snap of starship (#707)
Adds support for building snaps out of starship.
2019-12-10 11:53:52 -05:00
AppleTheGolden ea04f9bfc1 fix: Add php to the default prompt order (#708) 2019-12-10 11:52:55 -05:00
Matan Kushner ffef8ff144 docs: Add playsinline to landing page video 2019-12-09 16:13:48 -05:00
AppleTheGolden 3c835ba34b fix: Truncate long paths in conda environment names (#694)
Environment names created via conda create -p [path] tend to be too long for comfort, so this truncates them.
2019-12-09 12:59:02 -05:00
Matan Kushner 60a1319524 docs: Reorder terraform option rows for consistency 2019-12-08 20:43:36 -05:00
wdullaer 44b37a7bac feat: Implement terraform module with workspace and version (#644) 2019-12-08 20:42:51 -05:00
Matan Kushner f458a5e8c9 chore(config_derive): v0.1.1 2019-12-07 16:43:44 -05:00
Matan Kushner 5a3c9a756d docs: Add missing quotes in config docs 2019-12-06 18:41:28 -05:00
Matan Kushner 4e23a9a695 chore(bump): v0.28.0 2019-12-06 17:08:52 -05:00
Matan Kushner 34edf12970 docs(i18n): Update translations (#683) 2019-12-06 17:07:57 -05:00
allcontributors[bot] 1de281eb93 docs: add wendorf as a contributor (#695)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2019-12-06 14:21:26 -05:00
Dan Wendorf dee25c7b35 feat: Add prefix config to directory module (#642) 2019-12-06 14:19:11 -05:00
Matan Kushner 9f574eaabd docs: Improve doc consistency 2019-12-06 12:00:23 -05:00
allcontributors[bot] 7d1c0f6b9f docs: add houqp as a contributor (#693) 2019-12-06 11:59:45 -05:00
Qingping Hou c5a206e3cf feat: Add git_commit module (#673) 2019-12-06 11:57:42 -05:00
Matan Kushner 5b440c0bb0 docs: Simplify installation process and docs (#643) 2019-12-05 13:15:21 -05:00
allcontributors[bot] ec54180e42 docs: add REBELinBLUE as a contributor (#689)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2019-12-05 13:05:53 -05:00
Stephen Ball 46904e5045 feat: Add PHP version module (#244) 2019-12-05 13:04:27 -05:00
dependabot-preview[bot] 78ca70a517 build(deps): bump serde_json from 1.0.42 to 1.0.44
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.42 to 1.0.44.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.42...v1.0.44)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-05 09:26:02 -05:00
Matan Kushner 7c031c1551 chore: Disable prettier for head values in vuepress config 2019-12-04 16:01:31 -05:00
Matan Kushner eff13fed01 chore: Use icon image for og:image tag 2019-12-04 15:59:12 -05:00
Matan Kushner 64820aa91b chore: Update title OG tag for website 2019-12-04 15:52:06 -05:00
Matan Kushner 80deebb1bb chore: Undo extended page titles 2019-12-04 15:51:05 -05:00
Matan Kushner f1593eb56b chore: Update webpage titles 2019-12-04 15:50:20 -05:00
Matan Kushner 609ae4235a chore: Update SEO meta tags with new copy 2019-12-04 15:48:46 -05:00
Matan Kushner 8364e90ac1 chore: Fix casing in website meta tag 2019-12-04 15:36:30 -05:00
Matan Kushner f09ba3b3de chore: Update website meta tags for SEO 2019-12-04 15:32:54 -05:00
Matan Kushner 44d08e7d10 chore(bump): v0.27.0 2019-12-03 11:52:43 -05:00
allcontributors[bot] d4654802c1 docs: add lucarin91 as a contributor (#685) 2019-12-03 11:50:16 -05:00
Luca Rinaldi 1558b22bb0 fix: multiple batteries support in the battery module (#669)
Closes #656
2019-12-03 11:48:50 -05:00
Thomas O'Donnell edc62f4518 refactor: Refactor modules to use the exec_cmd util (#676)
Have refactored the golang, java, nodejs, python, ruby and username
modules to use the new `exec_cmd` util.
2019-12-02 17:42:55 -05:00
Matan Kushner 8b6e657d6c docs: Replace badge source with shields.io 2019-12-02 17:40:51 -05:00
allcontributors[bot] f5e8873d0a docs: add rpl as a contributor (#684)
* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]
2019-12-02 17:38:34 -05:00
Luca Greco 337f213753 feat: Add the hg_branch module (#569) 2019-12-02 17:37:18 -05:00
Matan Kushner 33df8ac063 docs: Fix typo in FAQ 2019-12-02 13:35:10 -05:00
Matan Kushner d1988fce8c docs: Fix heading hierarchy in FAQ 2019-12-02 13:13:11 -05:00
Matan Kushner 48804c048d docs: Add an FAQ page to website (#583) 2019-12-01 18:47:19 -05:00
Matan Kushner 82cfb6bdb9 docs(i18n): New Crowdin translations (#619) 2019-11-29 14:47:23 -05:00
allcontributors[bot] 71a664decf docs: add weirongxu as a contributor (#679)
* docs: update README.md

* docs: update .all-contributorsrc
2019-11-29 00:03:10 -05:00
Raidou 2a75a18eb1 fix: Fix panic when using fish-style pwd with unicode symbols (#672) 2019-11-29 00:02:22 -05:00
Harrison 4ba1383373 docs: Update README to create ~/.config (#663) 2019-11-28 14:11:58 -05:00
Thomas O'Donnell f5bbaef82b chore: Add a helper function for executing commands (#660) 2019-11-27 17:03:08 -05:00
Matan Kushner 91d6df3080 chore(bump): v0.26.5 2019-11-27 12:11:22 -05:00
Matan Kushner 0729813bb1 docs: Update README badges 2019-11-27 12:08:17 -05:00
Matan Kushner e560927c71 chore: Add a license file for starship_module_config_derive
Closes #667
2019-11-27 11:58:57 -05:00
dependabot-preview[bot] 2475f54459 build(deps): bump battery from 0.7.4 to 0.7.5 (#671)
Bumps [battery](https://github.com/svartalf/rust-battery) from 0.7.4 to 0.7.5.
- [Release notes](https://github.com/svartalf/rust-battery/releases)
- [Changelog](https://github.com/svartalf/rust-battery/blob/master/CHANGELOG.md)
- [Commits](https://github.com/svartalf/rust-battery/compare/0.7.4...0.7.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-27 00:52:09 -05:00
dependabot-preview[bot] e5d8fa9e14 build(deps): bump chrono from 0.4.9 to 0.4.10 (#665)
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.9 to 0.4.10.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.9...v0.4.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-25 12:08:34 -05:00
dependabot-preview[bot] de1b263cdd build(deps): bump serde_json from 1.0.41 to 1.0.42 (#666)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.41 to 1.0.42.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.41...v1.0.42)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-25 11:28:12 -05:00
allcontributors[bot] 96c299293e docs: add marblenix as a contributor (#668) 2019-11-25 11:02:00 -05:00
marblenix c098ae65c3 ci: Generate release sha256 sums (#649) 2019-11-25 11:01:01 -05:00
Jason Etcovitch 57f6ea4fc1 docs: Move styles to index (#657) 2019-11-21 17:45:35 -05:00
dependabot-preview[bot] 50839f168d build(deps): bump rayon from 1.2.0 to 1.2.1 (#654)
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/rayon-rs/rayon/releases)
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md)
- [Commits](https://github.com/rayon-rs/rayon/compare/v1.2.0...rayon-core-v1.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-21 13:18:39 -05:00
dependabot-preview[bot] 5e17505968 build(deps): bump git2 from 0.10.1 to 0.10.2 (#655)
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.10.1...0.10.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-21 13:18:30 -05:00
Thomas O'Donnell 45d977aa39 fix: Remove duplicated "v" in package versions (#648) 2019-11-20 09:16:07 -05:00
Matan Kushner 6a45e561fc chore(bump): v0.26.4 2019-11-13 11:12:35 +09:00
Matan Kushner f6c6f93b1b ci: Remove nesting from within release archives 2019-11-13 10:58:56 +09:00
allcontributors[bot] 9f0862efb8 docs: add matiaskotlik as a contributor (#639)
* docs: update README.md

* docs: update .all-contributorsrc


Co-authored-by: null <46447321+allcontributors[bot]@users.noreply.github.com>
2019-11-13 10:58:47 +09:00
Matias Kotlik 135dddbb4f feat: Add separator config to the memory module (#603) 2019-11-13 10:57:46 +09:00
Matan Kushner 512ed75ef2 chore(bump): v0.26.3 2019-11-13 01:20:03 +09:00
Thomas O'Donnell fc2f644237 fix: Add support for multiple Kubeconfig files (#635)
This adds support for having multiple Kubeconfig file set as part of the
`KUBECONFIG` env var.
2019-11-12 14:34:01 +09:00
marblenix c7cbaa155e ci: Switch to the msvc rust toolchain (#636) 2019-11-12 14:30:35 +09:00
dependabot-preview[bot] cd6cba1e52 build(deps): bump unicode-segmentation from 1.5.0 to 1.6.0 (#638)
Bumps [unicode-segmentation](https://github.com/unicode-rs/unicode-segmentation) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/unicode-rs/unicode-segmentation/releases)
- [Commits](https://github.com/unicode-rs/unicode-segmentation/compare/v1.5.0...v1.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com>
2019-11-12 11:46:25 +09:00
dependabot-preview[bot] b02d6fe3c8 build(deps): bump sysinfo from 0.9.5 to 0.9.6 (#633)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.9.5 to 0.9.6.
- [Release notes](https://github.com/GuillaumeGomez/sysinfo/releases)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-08 15:19:47 +09:00
Zhenhui Xie 5bb7467b56 refactor: Cleanup after module config refactor (#630) 2019-11-07 12:38:30 +09:00
Zhenhui Xie a3d5ea3e43 refactor: Refactor git state module to use module config (#605) 2019-11-06 22:00:31 +09:00
Zhenhui Xie 48726fdd2a refactor: Refactor nix_shell and java module to use module config (#606) 2019-11-06 21:59:12 +09:00
Matan Kushner a24a751a0d docs: Add sitemap and robots.txt 2019-11-05 22:29:46 +09:00
Matan Kushner 4895276b1b ci: Update Python to 3.7.5 (#628) 2019-11-05 16:23:33 +09:00
Matan Kushner 0c7492a8da chore(bump): v0.26.2 2019-11-03 10:00:06 +09:00
Matan Kushner 803db9d6fa ci: Remove brew version bump step 2019-11-03 09:59:48 +09:00
Matan Kushner 111508d706 ci: Remove need for tests to pass for release 2019-11-02 20:18:19 +09:00
Matan Kushner 0be6d0194b chore(bump): v0.26.0 2019-11-02 20:14:03 +09:00
Matan Kushner d30a2c2705 docs(i18n): Update documentation translations (#575) 2019-11-02 20:12:46 +09:00
Thomas O'Donnell 42f6868e3f feat: Enable the python module in virtual envs (#584)
This will enable the python module when a virtual environment has been
activated, this is detected via the `VIRTUAL_ENV` env var.
2019-11-02 20:10:21 +09:00
Cédric Da Fonseca fa1267f12f feat: Add configuration to set how much AWS profile info is shown (#556) 2019-11-02 20:08:54 +09:00
dependabot-preview[bot] 26fa4ec1ea build(deps): bump unicode-segmentation from 1.3.0 to 1.5.0 (#610)
Bumps [unicode-segmentation](https://github.com/unicode-rs/unicode-segmentation) from 1.3.0 to 1.5.0.
- [Release notes](https://github.com/unicode-rs/unicode-segmentation/releases)
- [Commits](https://github.com/unicode-rs/unicode-segmentation/commits/v1.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com>
2019-11-01 18:02:04 +09:00
Matias Kotlik e01c41eddf style: Clean up Golang module (#612) 2019-11-01 10:53:28 +09:00
dependabot-preview[bot] f2cb529d1b build(deps): bump toml from 0.5.3 to 0.5.4 (#604)
Bumps [toml](https://github.com/alexcrichton/toml-rs) from 0.5.3 to 0.5.4.
- [Release notes](https://github.com/alexcrichton/toml-rs/releases)
- [Commits](https://github.com/alexcrichton/toml-rs/compare/0.5.3...0.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com>
2019-10-29 21:35:45 +09:00
BSKY c58bbcd386 docs: Update installation instructions for fish-shell (#599) 2019-10-29 12:48:45 +09:00
Zhenhui Xie fed1341e22 feat: Add an option to limit the duration of starship directory scanning (#589) 2019-10-28 22:41:16 +09:00
allcontributors[bot] 7f9726eb15 docs: add brianlow as a contributor (#596) 2019-10-26 16:05:23 +09:00
Brian Low 2710d02709 feat: Show git_status counts (#434)
The git_status module can show the count of files next to their respective symbols.
2019-10-26 15:20:20 +09:00
Jürgen Gmach 59148ac4ad docs: Update required Rust version to v1.38 (#592) 2019-10-26 12:20:18 +09:00
Matan Kushner e0254f26e2 ci: Remove CHANGELOG.md generation
Because of permissions issues with having bots push to master, it
looks like it won't be possible to do from an Action right now.
2019-10-25 21:54:13 +09:00
Matias Kotlik 221f07548c fix: Disable venv custom prompt when starship is in use (#551) 2019-10-25 21:41:00 +09:00
Matan Kushner 42388394ca Trigger changelog generation 2019-10-25 21:37:44 +09:00
Matan Kushner 043c3c9117 ci: Add CHANGELOG.md generation 2019-10-25 21:34:02 +09:00
Matan Kushner 1d96338ac6 revert: "ci: Remove tests having to pass for release"
This reverts commit d691e0a394.
2019-10-25 21:29:38 +09:00
Matan Kushner c398878c90 ci: Add --global flag to git config commands 2019-10-25 21:22:38 +09:00
Matan Kushner 2051865363 chore(bump): v0.25.2 2019-10-25 20:53:05 +09:00
Matan Kushner e81e1b51db ci: Version the setup-* actions used for testing 2019-10-25 20:44:35 +09:00
Matan Kushner d691e0a394 ci: Remove tests having to pass for release 2019-10-25 20:35:58 +09:00
Zhenhui Xie 321e440289 chore: Move StarshipRootConfig to a separate file (#581) 2019-10-25 10:08:09 +09:00
Matan Kushner 9f22bce944 docs: Update use_12hr config option name 2019-10-25 10:05:21 +09:00
yuri b7762a3e91 fix: Show Java version from OpenJ9 Java runtimes (#507)
This PR tries to improve the version detection across multiple Java VM vendors. The module captures both STDOUT and STDERR outputs of the java -Xinternalversion call.

Eclipse OpenJ9, Azul Zulu, SapMachine, Amazon Corretto and GraalVM outputs are unit tested now.
2019-10-25 10:00:05 +09:00
Yoshi edf5176c37 docs: Fix Memory Usage option key (#586) 2019-10-25 09:58:10 +09:00
Zhenhui Xie aa260899d4 fix: Use logical path instead of physical path when available (#398)
* Get pathbuf from logical path. (fixes #204)

(also fixes #397)

* fix: Update directory module so that use_logical_path will work properly

* Remove test directory::use_logical_and_physical_paths

* Fix merge errors


Co-authored-by: Matan Kushner <hello@matchai.me>
2019-10-24 19:37:44 +09:00
Thomas O'Donnell e0c90a6502 refactor: Remove to remove unneeded mutability (#577)
Removed a couple of unneeded `mut`s that were pointed out by `cargo
check`.
2019-10-24 19:31:17 +09:00
Matan Kushner e34b3622f3 docs(i18n) Add links Traditional Chinese docs (#574) 2019-10-22 00:10:47 +09:00
allcontributors[bot] 1d52cc4f08 docs: add pinshan as a contributor (#573) 2019-10-22 00:00:04 +09:00
allcontributors[bot] ab99965da0 docs: add weihanglo as a contributor (#572) 2019-10-21 23:56:23 +09:00
allcontributors[bot] 506c7ba721 docs: add SLMT as a contributor (#571) 2019-10-21 23:50:37 +09:00
Matan Kushner bd79672f48 docs(i18n): Update Crowdin translations (#517)
- Finish translations for Traditional Chinese
2019-10-21 23:42:08 +09:00
Matias Kotlik 86bb923303 refactor: Refactor memory_usage module to use module config. (#515)
Also addresses a number of bugs:
- the percent sign not displaying correctly on some terminal emulators, including kitty
- changing the symbol in the configuration file didn't do anything
- swap being shown even if the system didn't have any
2019-10-21 00:26:04 +09:00
Matan Kushner e3f1a76e97 ci: Disable windows msvc builds 2019-10-21 00:05:36 +09:00
Matan Kushner fbb4b59ca9 ci: Fix windows-msvc build failure
Split Windows and -nix asset preparation steps
2019-10-20 23:20:11 +09:00
Matan Kushner 2461b84ed9 ci: Add git user for brew bump version 2019-10-20 21:40:04 +09:00
Matan Kushner b9a7983559 chore(bump): v0.25.1 2019-10-20 17:54:30 +09:00
Thomas O'Donnell 7b9197a67e fix: Fix the python module ignoring error codes (#563)
This is a quick fix to stop the python module from displaying error
messages that have been printed to stderr as the version.
2019-10-20 17:42:27 +09:00
Clément Joly 7e21f5c6b6 Refactor: Remove unnecessary parentheses in if condition (#566) 2019-10-20 17:36:02 +09:00
Barnaby Keene 2c7e01cd62 refactor: improve as-a-library usage by removing ArgMatches depe… (#547)
This removes ArgMatches from the Context struct and replaces it with a simple HashMap. This work is towards getting Starship in a better place for use as a library in other shells written in Rust so they don't need to use a command-line interface to invoke and configure things.

Contributes to #521
2019-10-20 17:26:27 +09:00
Matan Kushner 48cd6bc519 docs: Add all-contributors badge template comments 2019-10-20 17:13:19 +09:00
Zhenhui Xie aadd8ecf2c refactor: Refactor modules to use module config (#514) 2019-10-19 10:51:38 +09:00
allcontributors[bot] 09353fff00 docs: add CSumm as a contributor (#558) 2019-10-18 23:01:19 +09:00
Carl Summers 097ac144f4 docs: Add docs for running the starship website locally (#552) 2019-10-18 23:00:38 +09:00
Nguyễn Hồng Quân 27fad02837 fix: Separate Python version string and env name (#548) 2019-10-17 18:55:48 +09:00
Matan Kushner e2e7277630 ci: Correct the brew directory being navigated to 2019-10-16 11:51:30 +09:00
Matan Kushner 47268a64e7 ci: Fix stripping artifact on Windows 2019-10-16 11:45:51 +09:00
Matan Kushner f2031e7d00 ci: Ignore doc changes on pull_request events 2019-10-16 00:32:41 +09:00
Matan Kushner b34b1e9188 chore(bump): v0.25.0 2019-10-16 00:23:09 +09:00
Matan Kushner 392fa247b7 docs: Add Powershell setup to repo README 2019-10-16 00:17:55 +09:00
allcontributors[bot] 5570fcc47c docs: add davidkna as a contributor (#541) 2019-10-16 00:13:00 +09:00
David Knaack 6ab70796db feat: Implement PowerShell support (#470) 2019-10-16 00:10:16 +09:00
Matan Kushner b5bb6d6994 refactor: Replace tempdir test utility with tempfile::tempdir (#538) 2019-10-15 23:01:44 +09:00
Matias Kotlik d2eef11148 refactor: Refactor git_branch module to use new module config (#535) 2019-10-15 20:48:53 +09:00
Zhenhui Xie be2d5cf1cd refactor: Rewrite cmd_duration, directory and env_var module to use module config (#460)
This PR is a batched rewrite of the following modules:
- cmd_duration
- directory
- env_var
2019-10-15 20:34:48 +09:00
allcontributors[bot] 2fd1920f7d docs: add zekesonxx as a contributor (#534) 2019-10-15 01:24:12 +09:00
Zach Mertes 5303fd7684 feat: Add configuration for hostname truncation (#485) 2019-10-15 01:22:25 +09:00
Matan Kushner 4634449354 ci: Reset brew installation before bump-formula-pr 2019-10-15 01:05:51 +09:00
Matan Kushner 76b47f2f65 ci: Don't run tests for doc updates 2019-10-15 00:34:26 +09:00
Matan Kushner 49bf190929 chore(bump): v0.24.0 2019-10-15 00:19:18 +09:00
allcontributors[bot] 61e99d6c61 docs: add LukeAI as a contributor (#533) 2019-10-15 00:17:01 +09:00
LukeAI afd25c85d9 docs: Add x86-64 linux binary installation instructions (#531) 2019-10-15 00:14:57 +09:00
Keith Wade 10efe3e320 fix: Show leading slash when truncating from root (#526) 2019-10-15 00:12:43 +09:00
Thomas Lee b3275d8ddf feat: Show AWS region in aws module (#482) 2019-10-15 00:05:03 +09:00
Thomas O'Donnell a18408e30c fix: Fix the spacing around the AWS default symbol (#529)
This updates the default AWS default symbol to include a space after the
symbol to make it a little bit more readable. Have also updated the
README to include the AWS module.
2019-10-14 22:56:16 +09:00
Matan Kushner 4d1f0b6c6f ci: Add token with required scopes for Homebrew 2019-10-13 13:58:25 +09:00
Matan Kushner c668940292 chore(bump): v0.23.0 2019-10-13 13:35:00 +09:00
yuri 364f3a3564 build: Improve release binary optimization (#527) 2019-10-13 13:33:47 +09:00
Thomas O'Donnell cc68dec795 refactor: Refactor Go module to the new module config (#525) 2019-10-13 13:16:56 +09:00
Matan Kushner 8f6b0e8710 chore: Add the sponsorship button to the repo 2019-10-13 01:56:05 +09:00
Matan Kushner 88e3a99085 docs: Fix link to Japanese README 2019-10-11 17:32:52 +09:00
Matan Kushner cb4a92f441 docs(i18n): Update doc translations (#479) 2019-10-11 17:31:19 +09:00
Matan Kushner cc6c4d6520 Update Crowdin configuration file 2019-10-11 15:58:57 +09:00
Matan Kushner 034053c749 Update Crowdin configuration file 2019-10-10 23:07:03 +09:00
Zhenhui Xie 57b38f17bb refactor: Rewrite hostname, jobs and line_break module to use mo… (#462) 2019-10-10 17:21:52 +09:00
Matan Kushner e858780eda ci: Disable CI when updating docs 2019-10-10 16:12:56 +09:00
Matan Kushner 2239ec7450 Update Crowdin configuration file 2019-10-10 16:01:16 +09:00
Matan Kushner 54dcc35d80 docs: Add Traditional Chinese translation to README 2019-10-10 15:20:00 +09:00
allcontributors[bot] c24fd1f7b9 docs: add keawade as a contributor (#512) 2019-10-10 13:47:32 +09:00
Matan Kushner f51f3edf76 docs: Fix lingering merge conflict in config docs 2019-10-10 13:45:59 +09:00
Keith Wade 9d48706360 feat: Implement timezone offset config option for the time module (#463)
This allows users to configure the time module to display time with a timezone offset other than just their local timezone.
2019-10-10 13:42:57 +09:00
Matan Kushner 3d07c08f4f ci: Fix environment variable used by brew 2019-10-09 19:46:02 +09:00
Matan Kushner 14b266869f chore(bump): v0.22.0 2019-10-09 11:54:08 +09:00
allcontributors[bot] a19914031b docs: add Southclaws as a contributor (#511) 2019-10-09 10:45:56 +09:00
Barnaby Keene 9f365f84d1 refactor: Allow starship to be better used programmatically (#509)
Structure the prompt as a function that returns a string instead of writing directly to stdout.

This makes it easier to embed Starship into other Rust programs such as shells written in Rust. It also decouples the arguments from the context for more programmatic initialization of the context.
2019-10-09 10:43:28 +09:00
Maarten Mulders 8058b51273 feat: Show Java module when build.sbt is present (#505)
* feat: Show Java icon and info when build.sbt detected

* docs: Mention build.sbt detection
2019-10-07 19:18:01 +09:00
allcontributors[bot] 72fbd5b1ba docs: add pt2121 as a contributor (#504) 2019-10-07 11:35:13 +09:00
(´⌣`ʃƪ) 77c25b60c2 fix: Don't print the first module prefix after a line-break (#473) 2019-10-07 00:46:46 +09:00
Matan Kushner ab5dae3d05 ci: Use shell expansion to get the release version for brew 2019-10-07 00:19:38 +09:00
Matan Kushner 0f9b4ef603 chore: Remove the Azure Pipelines cargo badge 2019-10-06 16:12:36 +09:00
Matan Kushner e41f3bcd84 chore(bump): v0.21.0 2019-10-06 16:02:07 +09:00
Nikodem Rabuliński 06ba22eb5c refactor: Implement Default for SegmentConfig (#495)
Implements the Default trait for SegmentConfig to clean up construction of empty segments.

Also adds a segment::new() function to ease construction of simple segments.
2019-10-05 20:46:14 -05:00
Zhenhui Xie 044e10de1b chore: Import shared types from super (#492)
Changes imports statements to make imports more uniform.
2019-10-05 16:13:03 -05:00
AppleTheGolden 7657af0680 feat: Add conda module (#469) 2019-10-05 13:25:25 -05:00
allcontributors[bot] e911e76e6b docs: Update andytom as a contributor (#494) 2019-10-06 00:09:46 +09:00
allcontributors[bot] cda63bdd5a docs: add pbzweihander as a contributor (#493) 2019-10-06 00:09:21 +09:00
Thomas Lee 27e8c8f3eb refactor: Rewrite time module to use module config (#483)
- Config option renamed: `12hr` → `use_12hr`
2019-10-06 00:07:00 +09:00
Zhenhui Xie bc9e44f45c fix: Add disable configuration option to kubernetes module (#491) 2019-10-05 23:10:16 +09:00
Matan Kushner e5d37e0a97 ci: Fix the use of COMMIT_TAG when bumping brew formula 2019-10-05 22:23:15 +09:00
allcontributors[bot] 153eddda10 docs: add andytom as a contributor (#490) 2019-10-05 19:07:54 +09:00
Matan Kushner 9e5fe9e500 chore(bump): v0.20.2 2019-10-05 19:05:17 +09:00
Matan Kushner f2e20bbea2 revert: chore: Remove logic for the disabled option from modul… (#489)
This reverts commit 6c6e0ef1dd.
2019-10-05 19:03:48 +09:00
Matan Kushner 04512a66d9 docs: Update the link of the workflow badge 2019-10-05 18:41:35 +09:00
Matan Kushner ea00d3250d docs: Update workflow badge link 2019-10-05 18:31:59 +09:00
Thomas O'Donnell 5a8777ff45 fix: Disable Kubernetes module by default (#488)
Given the global nature of the Kubernetes module, the module has been disabled by default. The opportunity has also been taken to refactor the Kubernetes module to use the new config module.
2019-10-05 18:31:23 +09:00
Matan Kushner 1bf60b3dd5 ci: Rename main workflow to "Main workflow" 2019-10-05 18:29:13 +09:00
Zhenhui Xie bedf264a9f fix: Fix module configuration loading (#487) 2019-10-05 18:21:48 +09:00
Zhenhui Xie 6c6e0ef1dd chore: Remove logic for the disabled option from modules (#486) 2019-10-05 18:07:33 +09:00
Matan Kushner 2bfc98641d docs: Replace Azure Pipelines badge with GitHub Actions badge 2019-10-05 12:56:45 +09:00
Matan Kushner 935863ddb7 ci: Remove changelog generation for now 2019-10-05 00:38:11 +09:00
Matan Kushner 690bbf1b60 chore: Trigger CI 2019-10-05 00:34:33 +09:00
Matan Kushner c047753a66 chore: Trigger CI 2019-10-05 00:26:26 +09:00
Matan Kushner fbc248e22a chore: Trigger CI 2019-10-05 00:23:41 +09:00
Matan Kushner 5fb9593135 ci: Auto-generate CHANGELOG.md 2019-10-05 00:17:29 +09:00
Matan Kushner 3e7b673e89 ci: Fix crates token scope 2019-10-04 23:54:21 +09:00
Matan Kushner 3ef9a953c1 ci: Add brew bump formula version 2019-10-04 23:36:49 +09:00
Matan Kushner fcaf2592e6 ci: Replace cargo-publish-all with cargo 2019-10-04 23:22:14 +09:00
Matan Kushner b8313da2cc chore(bump): v0.20.1 2019-10-04 22:33:38 +09:00
Matan Kushner 05210b9510 refactor: Go from Rust workspaces to a package with nested packages (#480) 2019-10-04 22:30:46 +09:00
Matan Kushner e90a3768da ci: Use target as matrix instead of OS 2019-10-04 21:47:09 +09:00
Zhenhui Xie cda01deffa refactor: Rewrite aws and character module to use module config (#459) 2019-10-04 21:42:33 +09:00
Matan Kushner 1d701729cf ci: Add the Crates.io token secret for publishing 2019-10-04 19:04:46 +09:00
Matan Kushner 1fb0cb12eb docs: Use absolute links for translations 2019-10-04 18:20:51 +09:00
Matan Kushner 49ad1806f8 docs: Use absolute links for flag images 2019-10-04 18:15:23 +09:00
415 changed files with 95942 additions and 17312 deletions
-389
View File
@@ -1,389 +0,0 @@
{
"projectName": "starship",
"projectOwner": "starship",
"repoType": "github",
"repoHost": "https://github.com",
"files": [
"README.md"
],
"badgeTemplate": "<a href=\"#contributors\"><img src=\"https://badgen.net/badge/all%20contributors/<%= contributors.length %>/orange\" alt=\"All Contributors\"></a>",
"commitConvention": "angular",
"contributors": [
{
"login": "matchai",
"name": "Matan Kushner",
"avatar_url": "https://avatars0.githubusercontent.com/u/4658208?v=4",
"profile": "https://twitter.com/matchai",
"contributions": [
"code",
"design",
"ideas",
"infra",
"maintenance",
"review",
"test"
]
},
{
"login": "johnletey",
"name": "John Letey",
"avatar_url": "https://avatars0.githubusercontent.com/u/30328854?v=4",
"profile": "https://github.com/johnletey",
"contributions": [
"code",
"ideas",
"review",
"test"
]
},
{
"login": "Multimo",
"name": "Tim Mulqueen",
"avatar_url": "https://avatars1.githubusercontent.com/u/6132021?v=4",
"profile": "http://timmulqueen.com",
"contributions": [
"code",
"ideas",
"review",
"test"
]
},
{
"login": "sirMerr",
"name": "Tiffany Le-Nguyen",
"avatar_url": "https://avatars2.githubusercontent.com/u/11183523?v=4",
"profile": "https://github.com/sirMerr",
"contributions": [
"ideas",
"maintenance",
"review",
"doc"
]
},
{
"login": "Snuggle",
"name": "Snuggle",
"avatar_url": "https://avatars0.githubusercontent.com/u/26250962?v=4",
"profile": "https://about.snuggi.es",
"contributions": [
"design",
"ideas",
"maintenance",
"review"
]
},
{
"login": "mehcode",
"name": "Ryan Leckey",
"avatar_url": "https://avatars1.githubusercontent.com/u/753919?v=4",
"profile": "https://github.com/mehcode",
"contributions": [
"review"
]
},
{
"login": "youssefhabri",
"name": "Youssef Habri",
"avatar_url": "https://avatars3.githubusercontent.com/u/1578005?v=4",
"profile": "https://github.com/youssefhabri",
"contributions": [
"code"
]
},
{
"login": "chipbuster",
"name": "Kevin Song",
"avatar_url": "https://avatars2.githubusercontent.com/u/4605384?v=4",
"profile": "https://github.com/chipbuster",
"contributions": [
"bug",
"code",
"doc",
"test"
]
},
{
"login": "andrewda",
"name": "Andrew Dassonville",
"avatar_url": "https://avatars1.githubusercontent.com/u/10191084?v=4",
"profile": "https://andrewda.me",
"contributions": [
"bug",
"code"
]
},
{
"login": "MaT1g3R",
"name": "MaT1g3R",
"avatar_url": "https://avatars1.githubusercontent.com/u/15258494?v=4",
"profile": "https://github.com/MaT1g3R",
"contributions": [
"code",
"doc",
"test"
]
},
{
"login": "AZanellato",
"name": "André Zanellato",
"avatar_url": "https://avatars3.githubusercontent.com/u/30451287?v=4",
"profile": "https://github.com/AZanellato",
"contributions": [
"code",
"doc",
"test"
]
},
{
"login": "saghm",
"name": "Saghm Rossi",
"avatar_url": "https://avatars2.githubusercontent.com/u/5875560?v=4",
"profile": "https://saghm.com",
"contributions": [
"code",
"doc",
"test"
]
},
{
"login": "cappyzawa",
"name": "Shu Kutsuzawa",
"avatar_url": "https://avatars3.githubusercontent.com/u/12455284?v=4",
"profile": "https://medium.com/@cappyzawa",
"contributions": [
"code",
"doc",
"test",
"translation"
]
},
{
"login": "iamsauravsharma",
"name": "Saurav Sharma",
"avatar_url": "https://avatars0.githubusercontent.com/u/38726015?v=4",
"profile": "https://github.com/iamsauravsharma",
"contributions": [
"code",
"doc"
]
},
{
"login": "andytom",
"name": "Thomas O'Donnell",
"avatar_url": "https://avatars1.githubusercontent.com/u/108836?v=4",
"profile": "https://github.com/andytom",
"contributions": [
"code",
"test",
"doc"
]
},
{
"login": "bbigras",
"name": "Bruno Bigras",
"avatar_url": "https://avatars1.githubusercontent.com/u/24027?v=4",
"profile": "https://github.com/bbigras",
"contributions": [
"code",
"review"
]
},
{
"login": "wyze",
"name": "Neil Kistner",
"avatar_url": "https://avatars1.githubusercontent.com/u/186971?v=4",
"profile": "https://neilkistner.com/",
"contributions": [
"code",
"test",
"review"
]
},
{
"login": "qstrahl",
"name": "Quinn Strahl",
"avatar_url": "https://avatars3.githubusercontent.com/u/2235277?v=4",
"profile": "http://ca.linkedin.com/in/qstrahl",
"contributions": [
"code",
"test"
]
},
{
"login": "tivervac",
"name": "Titouan Vervack",
"avatar_url": "https://avatars2.githubusercontent.com/u/3389524?v=4",
"profile": "https://github.com/tivervac",
"contributions": [
"code",
"test"
]
},
{
"login": "oblitum",
"name": "Francisco Lopes",
"avatar_url": "https://avatars1.githubusercontent.com/u/1269815?v=4",
"profile": "http://nosubstance.me",
"contributions": [
"code"
]
},
{
"login": "ahouts",
"name": "Andrew Houts",
"avatar_url": "https://avatars1.githubusercontent.com/u/16907671?v=4",
"profile": "https://github.com/ahouts",
"contributions": [
"code",
"doc",
"test"
]
},
{
"login": "nickwb",
"name": "Nick Young",
"avatar_url": "https://avatars2.githubusercontent.com/u/594211?v=4",
"profile": "https://github.com/nickwb",
"contributions": [
"code",
"doc",
"test",
"review"
]
},
{
"login": "g2p",
"name": "Gabriel de Perthuis",
"avatar_url": "https://avatars1.githubusercontent.com/u/61678?v=4",
"profile": "https://github.com/g2p",
"contributions": [
"code"
]
},
{
"login": "Hofer-Julian",
"name": "Hofer-Julian",
"avatar_url": "https://avatars1.githubusercontent.com/u/30049909?v=4",
"profile": "https://github.com/Hofer-Julian",
"contributions": [
"doc"
]
},
{
"login": "unhappychoice",
"name": "Yuji Ueki",
"avatar_url": "https://avatars3.githubusercontent.com/u/5608948?v=4",
"profile": "http://blog.unhappychoice.com",
"contributions": [
"content",
"translation"
]
},
{
"login": "heyrict",
"name": "谢祯晖",
"avatar_url": "https://avatars3.githubusercontent.com/u/25698503?v=4",
"profile": "https://github.com/heyrict",
"contributions": [
"code",
"doc",
"translation",
"review"
]
},
{
"login": "bookun",
"name": "Kutsuzawa Ryo",
"avatar_url": "https://avatars2.githubusercontent.com/u/10346162?v=4",
"profile": "https://twitter.com/bookun2851",
"contributions": [
"review",
"code",
"test",
"translation"
]
},
{
"login": "hdevalke",
"name": "hdevalke",
"avatar_url": "https://avatars1.githubusercontent.com/u/2261239?v=4",
"profile": "https://github.com/hdevalke",
"contributions": [
"ideas"
]
},
{
"login": "jakubclark",
"name": "Kuba Clark",
"avatar_url": "https://avatars0.githubusercontent.com/u/19486495?v=4",
"profile": "https://github.com/jakubclark",
"contributions": [
"code",
"doc",
"test"
]
},
{
"login": "gimbar",
"name": "Gimbar",
"avatar_url": "https://avatars2.githubusercontent.com/u/862483?v=4",
"profile": "http://breax.org",
"contributions": [
"code",
"test",
"doc"
]
},
{
"login": "TomHotston",
"name": "Tom Hotston",
"avatar_url": "https://avatars0.githubusercontent.com/u/22729355?v=4",
"profile": "http://tomhotston.net",
"contributions": [
"code",
"doc"
]
},
{
"login": "bijancn",
"name": "Bijan Chokoufe Nejad",
"avatar_url": "https://avatars3.githubusercontent.com/u/2117164?v=4",
"profile": "https://github.com/bijancn",
"contributions": [
"code",
"test",
"review"
]
},
{
"login": "yuri1969",
"name": "yuri",
"avatar_url": "https://avatars3.githubusercontent.com/u/13468636?v=4",
"profile": "https://github.com/yuri1969",
"contributions": [
"code",
"doc",
"test"
]
},
{
"login": "TsubasaKawajiri",
"name": "TsubasaKawajiri",
"avatar_url": "https://avatars2.githubusercontent.com/u/39114857?v=4",
"profile": "https://github.com/TsubasaKawajiri",
"contributions": [
"translation"
]
},
{
"login": "qryxip",
"name": "Ryo Yamashita",
"avatar_url": "https://avatars2.githubusercontent.com/u/14125495?v=4",
"profile": "https://github.com/qryxip",
"contributions": [
"code"
]
}
],
"contributorsPerLine": 7
}
+2
View File
@@ -0,0 +1,2 @@
[advisories]
ignore = ["RUSTSEC-2020-0100"]
-1
View File
@@ -1 +0,0 @@
target/
+2
View File
@@ -0,0 +1,2 @@
github: starship
open_collective: starship
+16 -5
View File
@@ -7,6 +7,17 @@ assignees: ''
---
<!--
─────────────────────────────────────────────
⚠️ IMPORTANT: Please run the following command to create an issue:
starship bug-report
An issue will be pre-populated with your system's configuration,
making the process a whole lot quicker 😊
─────────────────────────────────────────────
-->
## Bug Report
#### Current Behavior
@@ -18,13 +29,16 @@ assignees: ''
#### Additional context/Screenshots
<!-- Add any other context about the problem here. If applicable, add screenshots to help explain. -->
#### Possible Solution
<!--- Only if you have suggestions on a fix for the bug -->
#### Environment
- Starship version: [the output of `starship --version`]
- Shell type: [fish, zsh]
- Shell version: [the output of `fish --version` or `zsh --version`]
- Shell plugin manager: [e.g. oh-my-fish, oh-my-zsh, fisher, antigen]
- Terminal emulator: [e.g. iTerm, Hyper, Terminator]
- Operating system: [e.g. OSX 10.13.4, Windows 10]
- Operating system: [e.g. macOS 10.13.4, Windows 10]
#### Relevant Shell Configuration
<!--
@@ -38,11 +52,8 @@ assignees: ''
```
#### Starship Configuration
<!-- Can be found in $XDG_CONFIG_HOME/starship.toml or ~/.config/starship.toml -->
<!-- Can be found in ~/.config/starship.toml -->
```bash
# Your configuration here
```
#### Possible Solution
<!--- Only if you have suggestions on a fix for the bug -->
+5
View File
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: 🙏 Ask a question
url: https://github.com/starship/starship/discussions/new?category=q-a
about: Ask the community for help
-6
View File
@@ -10,12 +10,6 @@
<!--- If it fixes an open issue, please link to the issue here. -->
Closes #
#### Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
#### Screenshots (if appropriate):
#### How Has This Been Tested?
+190
View File
@@ -0,0 +1,190 @@
name: Deploy
on:
push:
tags:
- "v*"
jobs:
# Publish starship to Crates.io
cargo_publish:
name: Publish Cargo Package
runs-on: ubuntu-latest
steps:
- name: Setup | Checkout
uses: actions/checkout@v2
- name: Setup | Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
override: true
- name: Build | Publish
run: cargo publish --token ${{ secrets.CRATES_IO_TOKEN }}
update_brew_formula:
name: Update Brew Formula
runs-on: ubuntu-latest
steps:
- uses: mislav/bump-homebrew-formula-action@v1.6
with:
formula-name: starship
env:
COMMITTER_TOKEN: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
publish_docs:
name: Publish docs to Netlify
runs-on: ubuntu-latest
steps:
- name: Setup | Checkout
uses: actions/checkout@master
- name: Publish
uses: netlify/actions/build@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
# Build sources for every OS
github_build:
name: Build release binaries
strategy:
fail-fast: false
matrix:
include:
- target: x86_64-unknown-linux-gnu
os: ubuntu-latest
name: starship-x86_64-unknown-linux-gnu.tar.gz
- target: x86_64-unknown-linux-musl
os: ubuntu-latest
name: starship-x86_64-unknown-linux-musl.tar.gz
- target: i686-unknown-linux-musl
os: ubuntu-latest
name: starship-i686-unknown-linux-musl.tar.gz
- target: aarch64-unknown-linux-musl
os: ubuntu-latest
name: starship-aarch64-unknown-linux-musl.tar.gz
- target: arm-unknown-linux-musleabihf
os: ubuntu-latest
name: starship-arm-unknown-linux-musleabihf.tar.gz
- target: x86_64-apple-darwin
os: macOS-latest
name: starship-x86_64-apple-darwin.tar.gz
- target: aarch64-apple-darwin
os: macOS-latest
name: starship-aarch64-apple-darwin.tar.gz
- target: x86_64-pc-windows-msvc
os: windows-latest
name: starship-x86_64-pc-windows-msvc.zip
- target: i686-pc-windows-msvc
os: windows-latest
name: starship-i686-pc-windows-msvc.zip
- target: aarch64-pc-windows-msvc
os: windows-latest
name: starship-aarch64-pc-windows-msvc.zip
- target: x86_64-unknown-freebsd
os: ubuntu-latest
name: starship-x86_64-unknown-freebsd.tar.gz
runs-on: ${{ matrix.os }}
continue-on-error: true
steps:
- name: Setup | Checkout
uses: actions/checkout@v2
# Cache files between builds
- name: Setup | Cache Cargo
uses: actions/cache@v2
with:
path: |
~/.cargo/registry
~/.cargo/git
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Setup | Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
profile: minimal
target: ${{ matrix.target }}
- name: Build | Build
uses: actions-rs/cargo@v1
# TODO: Remove this once it's the default
env:
SDKROOT: /Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk
with:
command: build
args: --release --features tls-vendored --target ${{ matrix.target }}
use-cross: ${{ matrix.os == 'ubuntu-latest' }}
- name: Post Build | Prepare artifacts [Windows]
if: matrix.os == 'windows-latest'
run: |
cd target/${{ matrix.target }}/release
strip starship.exe
7z a ../../../${{ matrix.name }} starship.exe
cd -
- name: Post Build | Prepare artifacts [-nix]
if: matrix.os != 'windows-latest'
run: |
cd target/${{ matrix.target }}/release
# TODO: investigate better cross platform stripping
strip starship || true
tar czvf ../../../${{ matrix.name }} starship
cd -
- name: Deploy | Upload artifacts
uses: actions/upload-artifact@v2
with:
name: ${{ matrix.name }}
path: ${{ matrix.name }}
# Create GitHub release with Rust build targets and release notes
github_release:
name: Create GitHub Release
needs: github_build
runs-on: ubuntu-latest
steps:
- name: Setup | Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Setup | Go
uses: actions/setup-go@v2
with:
go-version: "^1.15.7"
- name: Setup | Artifacts
uses: actions/download-artifact@v2
- name: Setup | Checksums
run: for file in starship-*/starship-*; do openssl dgst -sha256 -r "$file" | awk '{print $1}' > "${file}.sha256"; done
- name: Setup | Release notes
run: |
GO111MODULE=on go get github.com/git-chglog/git-chglog/cmd/git-chglog@0.9.1
git-chglog -c .github/chglog/release.yml $(git describe --tags) > RELEASE.md
- name: Build | Publish
uses: softprops/action-gh-release@v1
with:
files: starship-*/starship-*
body_path: RELEASE.md
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+21
View File
@@ -0,0 +1,21 @@
---
name: Security audit
on:
pull_request:
paths:
- '**/Cargo.toml'
- '**/Cargo.lock'
push:
paths:
- '**/Cargo.toml'
- '**/Cargo.lock'
schedule:
- cron: '0 0 * * *'
jobs:
security_audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions-rs/audit-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
+111 -186
View File
@@ -1,222 +1,147 @@
name: Workflow
on: [push, pull_request]
---
name: Main workflow
on:
push:
paths-ignore:
- "docs/**"
- "**.md"
pull_request:
paths-ignore:
- "docs/**"
- "**.md"
jobs:
# Run the `rustfmt` code formatter
rustfmt:
name: Rustfmt [Formatter]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
- name: Setup | Checkout
uses: actions/checkout@v2
- name: Setup | Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- run: rustup component add rustfmt
- uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check
profile: minimal
components: rustfmt
- name: Setup | libdbus (ubuntu)
run: sudo apt-get install libdbus-1-dev
- name: Build | Format
run: cargo fmt --all -- --check
# Run the `clippy` linting tool
clippy:
name: Clippy [Linter]
runs-on: ubuntu-latest
strategy:
matrix:
os: [ubuntu-latest, macOS-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- run: rustup component add clippy
- uses: actions-rs/clippy-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
args: --all-targets --all-features -- -D clippy::all
- name: Setup | Checkout
uses: actions/checkout@v2
# Run a security audit on dependencies
cargo_audit:
name: Cargo Audit [Security]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
# Cache files between builds
# - name: Setup | Cache Cargo
# uses: actions/cache@v2
# with:
# path: |
# ~/.cargo/registry
# ~/.cargo/git
# target
# key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Setup | libdbus (ubuntu)
if: matrix.os == 'ubuntu-latest'
run: sudo apt-get install libdbus-1-dev
- name: Setup | Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- run: cargo install --force cargo-audit
- run: cargo generate-lockfile
- uses: actions-rs/cargo@v1
profile: minimal
components: clippy
- name: Build | Lint
uses: actions-rs/cargo@v1
with:
command: audit
command: clippy
args: --all-targets --all-features -- -D clippy::all
# Ensure that the project could be successfully compiled
cargo_check:
name: Compile
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- uses: actions-rs/cargo@v1
with:
command: check
args: --all
- name: Setup | Checkout
uses: actions/checkout@v2
# Run tests on Linux, and macOS
# On both Rust stable and Rust nightly
test:
name: Test Suite
needs: [cargo_check]
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macOS-latest]
rust: [stable, nightly]
steps:
# Checkout the branch being tested
- uses: actions/checkout@v1
# Cache files between builds
# - name: Setup | Cache Cargo
# uses: actions/cache@v2
# with:
# path: |
# ~/.cargo/registry
# ~/.cargo/git
# target
# key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
# Install all the required dependencies for testing
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
# Install Node.js at a fixed version
- uses: actions/setup-node@master
with:
node-version: "12.0.0"
# Install Golang at a fixed version
- uses: actions/setup-go@master
with:
go-version: "1.12.1"
# Install Ruby at a fixed version
- uses: actions/setup-ruby@master
with:
ruby-version: "2.6.3"
# Install Python at a fixed version
- uses: actions/setup-python@master
with:
python-version: "3.6.9"
# Install dotnet at a fixed version
- uses: actions/setup-dotnet@master
with:
dotnet-version: "2.2.402"
# Run the ignored tests that expect the above setup
- name: Run all tests
uses: actions-rs/cargo@v1
with:
command: test
args: -- -Z unstable-options --include-ignored
# Run the tests in the Docker image
docker_test:
name: Test in Docker
needs: [cargo_check]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Pull the pre-built Docker image
run: docker pull starshipcommand/starship-test
- name: Fix file permissions
run: chmod -R a+w .
- name: Build the Docker image
run:
docker build -f tests/Dockerfile --tag starshipcommand/starship-test --cache-from
starshipcommand/starship-test .
- name: Run tests in Docker
run: docker run --rm -v $(pwd):/src/starship starshipcommand/starship-test
# Publish all packages to Crates.io
cargo_publish:
if: startsWith(github.ref, 'refs/tags/v')
name: Publish Cargo Packages
needs: [test, docker_test]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- run: cargo install --force cargo-publish-all
- run: cargo-publish-all --token $CRATES_IO_TOKEN --yes
github_release:
if: startsWith(github.ref, 'refs/tags/v')
name: Create GitHub release [${{ matrix.target }}]
needs: [test, docker_test]
strategy:
fail-fast: false
matrix:
# In order to use different target names on parallel ubuntu builds,
# we use `ubuntu-latest` and `ubuntu-18.04` to include them separately
os: [ubuntu-latest, ubuntu-18.04, macOS-latest]
include:
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
bin: starship
name: starship-x86_64-unknown-linux-gnu.tar.gz
- os: ubuntu-18.04
target: x86_64-unknown-linux-musl
bin: starship
name: starship-x86_64-unknown-linux-musl.tar.gz
- os: macOS-latest
target: x86_64-apple-darwin
bin: starship
name: starship-x86_64-apple-darwin.tar.gz
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v1
- name: Install Rust toolchain
- name: Setup | Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
override: true
target: ${{ matrix.target }}
- name: Install musl tools
if: matrix.target == 'x86_64-unknown-linux-musl'
run: sudo apt-get install -y musl-tools
- name: Build | Check
run: cargo check --all
- name: Build target
uses: actions-rs/cargo@v1
# Run tests on Linux, macOS, and Windows
# On both Rust stable and Rust nightly
test:
name: Test Suite
runs-on: ${{ matrix.os }}
needs: cargo_check # First check then run expansive tests
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macOS-latest, windows-latest]
rust: [stable, nightly]
steps:
- name: Setup | Checkout
uses: actions/checkout@v2
- name: Setup | libdbus (ubuntu)
if: matrix.os == 'ubuntu-latest'
run: sudo apt-get install libdbus-1-dev
# Cache files between builds
# - name: Setup | Cache Cargo
# uses: actions/cache@v2
# with:
# path: |
# ~/.cargo/registry
# ~/.cargo/git
# target
# key: ${{ runner.os }}-${{ matrix.rust }}-cargo-${{ hashFiles('**/Cargo.lock') }}
# Install all the required dependencies for testing
- name: Setup | Rust
uses: actions-rs/toolchain@v1
with:
command: build
args: --release --target ${{ matrix.target }}
toolchain: ${{ matrix.rust }}
profile: minimal
override: true
- name: Prepare build artifacts
run: |
strip target/${{ matrix.target }}/release/${{ matrix.bin }}
cd target/${{ matrix.target }}/release
if [[ "${{ matrix.os }}" == "windows-latest" ]]
then
7z a ../../../${{ matrix.name }} ${{ matrix.bin }}
else
tar czvf ../../../${{ matrix.name }} ${{ matrix.bin }}
fi
cd -
# Install Mercurial (pre-installed on Linux and windows)
- name: Setup | Mercurial (macos)
if: matrix.os == 'macOS-latest'
run: brew install mercurial
- name: Generate release notes
run: |
# Temporary fix for https://github.com/actions/setup-go/issues/14
export PATH=$PATH:$(go env GOPATH)/bin
go get -u github.com/git-chglog/git-chglog/cmd/git-chglog
git-chglog -c .github/chglog/release.yml $(git describe --tags $(git rev-list --tags --max-count=1)) > RELEASE.txt
- name: Create GitHub release ${{ matrix.target }}
uses: softprops/action-gh-release@v1
with:
files: ${{ matrix.name }}
body_path: RELEASE.txt
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# Run the ignored tests that expect the above setup
- name: Build | Test
run: cargo test --all-features -- -Z unstable-options --include-ignored
+8 -1
View File
@@ -11,13 +11,20 @@ Cargo.lock
# VSCode configuration
.vscode/
# Intellij IDE configuration
# Sublime Text configuration
*.sublime-*
# IntelliJ IDE configuration
.idea/
/*.iml
# Vim swap files
*.swp
# Emacs
*~
\#*\#
# Compiled files for documentation
docs/node_modules
docs/.vuepress/dist/
+5
View File
@@ -0,0 +1,5 @@
# This file intentionally left almost blank
#
# The empty `rustfmt.toml` makes rustfmt use the default configuration,
# overriding any which may be found in the contributor's home or parent
# folders.
+153 -20
View File
@@ -24,18 +24,62 @@ The project begins in [`main.rs`](src/main.rs), where the appropriate `print::`
Any styling that is applied to a module is inherited by its segments. Module prefixes and suffixes by default don't have any styling applied to them.
## Environment Variables and external commands
We have custom functions to be able to test our modules better. Here we show you how.
### Environment Variables
To get an environment variable we have special function to allow for mocking of vars. Here's a quick example:
```rust
use super::{Context, Module, RootModuleConfig};
use crate::configs::php::PhpConfig;
use crate::formatter::StringFormatter;
pub fn module<'a>(context: &'a Context) -> Option<Module<'a>> {
// Here `my_env_var` will be either the contents of the var or the function
// will exit if the variable is not set.
let my_env_var = context.get_env("MY_VAR")?;
// Then you can happily use the value
}
```
## External commands
To run a external command (e.g. to get the version of a tool) and to allow for mocking use the `context.exec_cmd` function. Here's a quick example:
```rust
use super::{Context, Module, RootModuleConfig};
use crate::configs::php::PhpConfig;
use crate::formatter::StringFormatter;
pub fn module<'a>(context: &'a Context) -> Option<Module<'a>> {
// Here `output` will be either the stdout of the called command or the function
// will exit if the called program was not installed or could not be run.
let output = context.exec_cmd("my_command", &["first_arg", "second_arg"])?.stdout;
// Then you can happily use the output
}
```
## Logging
Debug logging in starship is done with [pretty_env_logger](https://crates.io/crates/pretty_env_logger).
To run starship with debug logs, set the `RUST_LOG` environment variable to the log level needed.
Debug logging in starship is done with our custom logger implementation.
To run starship with debug logs, set the `STARSHIP_LOG` environment variable to the log level needed.
For example, to enable the trace logs, run the following:
```sh
# Run installed starship
RUST_LOG=starship=trace starship
STARSHIP_LOG=trace starship
# Run with cargo
RUST_LOG=starship=trace cargo run
STARSHIP_LOG=trace cargo run
```
## Linting
@@ -44,49 +88,138 @@ Starship source files are linted with [clippy](https://crates.io/crates/clippy).
```sh
rustup component add clippy
cargo clippy
cargo clippy --all-targets --all-features
```
## Formatting
Starship source files are formatted with [rustfmt](https://crates.io/crates/rustfmt-nightly). Rustfmt will be ran as part of CI. Unformatted code will fail a build, so it is suggested that you run rustfmt locally:
Starship source files are formatted with [rustfmt](https://crates.io/crates/rustfmt-nightly), using the default configuration. Rustfmt will be ran as part of CI. Unformatted code will fail a build, so it is suggested that you run rustfmt locally:
```sh
rustup component add rustfmt
cargo fmt
```
## Testing
Testing is critical to making sure starship works as intended on systems big and small. Starship interfaces with many applications and system APIs when generating the prompt, so there's a lot of room for bugs to slip in.
Unit tests and a subset of acceptance tests can be run with `cargo test`.
The full acceptance test suite can be run in a Docker container with the included [`./acceptance_test`](acceptance_test) script.
Unit tests are written using the built-in Rust testing library in the same file as the implementation, as is traditionally done in Rust codebases. These tests can be run with `cargo test` and are run on GitHub as part of our GitHub Actions continuous integration to ensure consistent behavior.
### Unit Testing
All tests that test the rendered output of a module should use `ModuleRenderer`. For Example:
Unit tests are written using the built-in Rust testing library in the same file as the implementation, as is traditionally done in Rust codebases. These tests can be run with `cargo test`.
```rust
use super::{Context, Module, RootModuleConfig};
use crate::configs::php::PhpConfig;
use crate::formatter::StringFormatter;
use crate::utils;
pub fn module<'a>(context: &'a Context) -> Option<Module<'a>> {
/* This is where your module code goes */
}
#[cfg(test)]
mod tests {
use super::*;
use crate::test::ModuleRenderer;
use ansi_term::Color;
use std::fs::File;
use std::io;
#[test]
fn should_render() -> io::Result<()> {
// Here you setup the testing environment
let tempdir = tempfile::tempdir()?;
// Create some file needed to render the module
File::create(dir.path().join("YOUR_FILE"))?.sync_all()?;
// The output of the module
let actual = ModuleRenderer::new("YOUR_MODULE_NAME")
// For a custom path
.path(&tempdir.path())
// For a custom config
.config(toml::toml!{
[YOUR_MODULE_NAME]
val = 1
})
// For env mocking
.env("KEY","VALUE")
// Run the module and collect the output
.collect();
// The value that should be rendered by the module.
let expected = Some(format!("{} ",Color::Black.paint("THIS SHOULD BE RENDERED")));
// Assert that the actual and expected values are the same
assert_eq!(actual, expected);
// Close the tempdir
tempdir.close()
}
}
```
If a module depends on output of another program, then that output should be added to the match statement in [`utils.rs`](src/utils.rs). The match has to be exactly the same as the call to `utils::exec_cmd()`, including positional arguments and flags. The array of arguments are joined by a `" "`, so `utils::exec_cmd("program", &["arg", "more_args"])` would match with the `program arg more_args` match statement.
If the program cannot be mocked (e.g. It performs some filesystem operations, either writing or reading files) then it has to added to the project's GitHub Actions workflow file([`.github/workflows/workflow.yml`](.github/workflows/workflow.yml)) and the test has to be marked with an `#[ignored]`. This ensures that anyone can run the test suite locally without needing to pre-configure their environment. The `#[ignored]` attribute is bypassed during CI runs in GitHub Actions.
Unit tests should be fully isolated, only testing a given function's expected output given a specific input, and should be reproducible on any machine. Unit tests should not expect the computer running them to be in any particular state. This includes having any applications pre-installed, having any environment variables set, etc.
The previous point should be emphasized: even seemingly innocuous ideas like "if we can see the directory, we can read it" or "nobody will have their home directory be a git repo" have bitten us in the past. Having even a single test fail can completely break installation on some platforms, so be careful with tests!
### Acceptance Testing
### Test Programming Guidelines
Acceptance tests are located in the [`tests/`](tests) directory and are also written using the built-in Rust testing library.
Any tests that depend on File I/O should use [`sync_all()`](https://doc.rust-lang.org/std/fs/struct.File.html#method.sync_all) when creating files or after writing to files.
Acceptance tests should test full modules or the entire prompt. All acceptance tests expecting the testing environment to have preexisting state or making permanent changes to the filesystem should have the `#[ignore]` attribute. All tests that don't depend on any preexisting state will be run alongside the unit tests with `cargo test`.
Any tests that use `tempfile::tempdir` should take care to call `dir.close()` after usage to ensure the lifecycle of the directory can be reasoned about. This includes `fixture_repo()` as it returns a TempDir that should be closed.
Acceptance tests require Docker to be installed, as they are run inside a Docker container. This can be done as described in the official [documentation](https://docs.docker.com/install/). The acceptance tests can then be executed by running the included [`./acceptance_test`](acceptance_test) script. It might be necessary to run [`./acceptance_test`](acceptance_test) with `sudo` if your user is not part of the `docker` group.
## Documentation
### Crowdin Translated Pages
For tests that depend on having preexisting state, whatever needed state will have to be added to the project's Dockerfile ([`tests/Dockerfile`](tests/Dockerfile)) as well as the project's Azure Pipelines configuration ([`azure-pipelines.yml`](azure-pipelines.yml)).
Many documentation pages have versions in non-English languages. These
translated pages are managed by
[Crowdin](https://crowdin.com/project/starship-prompt). Please do not edit
these pages directly, even for changes that do not need to be translated (e.g.
whitespace or emoji changes), since this can cause merges to fail.
The reason for having _both_ the Dockerfile as well as the Azure Pipelines configuration is in order to allow acceptance tests to be run on your local development environment via Docker, while also running our test suite on all supported OSes (Windows, Mac, Linux) on Azure Pipelines.
If you would like to contribute translations or corrections to the Crowdin
generated pages, please visit our Crowdin site.
### Benchmarking
### Running the Documentation Website Locally
Benchmarks are located in the [`benches/`](benches) directory and are written using the [Criterion](https://crates.io/crates/criterion) library.
Changes to documentation can be viewed in a rendered state from the GitHub PR page
(go to the CI section at the bottom of the page and look for "deploy preview", then
click on "details"). If you want to view changes locally as well, follow these steps.
For the time being, benchmarks aren't actively used, but we plan to integrate benchmark comparison reporting into our CI pipeline in the near future. For the time being, they can be manually run with `cargo bench`.
After cloning the project, you can do the following to run the VuePress website on your local machine:
1. `cd` into the `/docs` directory.
2. Install the project dependencies:
```sh
npm install
```
3. Start the project in development mode:
```sh
npm run dev
```
Once setup is complete, you can refer to VuePress documentation on the actual implementation here: <https://vuepress.vuejs.org/guide/>.
## Git/GitHub workflow
This is our preferred process for opening a PR on GitHub:
1. Fork this repository
2. Create a branch off of `master` for your work: `git checkout -b my-feature-branch`
3. Make some changes, committing them along the way
4. When your changes are ready for review, push your branch: `git push origin my-feature-branch`
5. Create a pull request from your branch to `starship/master`
6. No need to assign the pull request to anyone, we'll review it when we can
7. When the changes have been reviewed and approved, someone will squash and merge for you
Generated
+1463 -544
View File
File diff suppressed because it is too large Load Diff
+101 -5
View File
@@ -1,5 +1,101 @@
[workspace]
members = [
"starship",
"starship_module_config_derive",
]
[package]
name = "starship"
version = "0.51.0"
edition = "2018"
authors = ["Matan Kushner <hello@matchai.me>"]
homepage = "https://starship.rs"
documentation = "https://starship.rs/guide/"
repository = "https://github.com/starship/starship"
readme = "README.md"
license = "ISC"
keywords = ["prompt", "shell", "bash", "fish", "zsh"]
categories = ["command-line-utilities"]
build = "build.rs"
description = """
The minimal, blazing-fast, and infinitely customizable prompt for any shell! ☄🌌️
"""
exclude = ["docs/**/*", "media/**/*"]
[badges]
is-it-maintained-issue-resolution = { repository = "starship/starship" }
is-it-maintained-open-issues = { repository = "starship/starship" }
maintenance = { status = "actively-developed" }
[features]
default = ["battery", "http"]
http = ["attohttpc"]
# Vendor OpenSSL, use this if you have trouble cross-compiling starship
tls-vendored = ["native-tls/vendored"]
[dependencies]
clap = "2.33.3"
ansi_term = "0.12.1"
dirs-next = "2.0.0"
git2 = { version = "0.13.17", default-features = false }
toml = { version = "0.5.8", features = ["preserve_order"] }
rust-ini = "0.16.1"
serde_json = "1.0.64"
rayon = "1.5.0"
log = { version = "0.4.14", features = ["std"] }
# battery is optional (on by default) because the crate doesn't currently build for Termux
# see: https://github.com/svartalf/rust-battery/issues/33
battery = { version = "0.7.8", optional = true }
path-slash = "0.1.4"
unicode-segmentation = "1.7.1"
gethostname = "0.2.1"
once_cell = "1.7.2"
chrono = "0.4.19"
sys-info = "0.8.0"
byte-unit = "4.0.10"
starship_module_config_derive = { version = "0.1.2", path = "starship_module_config_derive" }
yaml-rust = "0.4.5"
pest = "2.1.3"
pest_derive = "2.1.0"
regex = "1.4.5"
os_info = "3.0.1"
urlencoding = "1.1.1"
open = "1.6.0"
unicode-width = "0.1.8"
term_size = "0.3.2"
quick-xml = "0.22.0"
rand = "0.8.3"
serde = { version = "1.0.125", features = ["derive"] }
indexmap = "1.6.2"
notify-rust = { version = "4.3.0", optional = true }
semver = "0.11.0"
which = "4.0.2"
shadow-rs = "0.5.24"
process_control = { version = "3.0.1", features = ["crossbeam-channel"] }
# Optional/http:
attohttpc = { version = "0.16.3", optional = true, default-features = false, features = ["tls", "form"] }
native-tls = { version = "0.2.7", optional = true }
shell-words = "1.0.0"
[target.'cfg(windows)'.dependencies]
winapi = { version = "0.3.9", features = [
"winuser",
"securitybaseapi",
"processthreadsapi",
"handleapi",
"impl-default",
] }
[target.'cfg(not(windows))'.dependencies]
nix = "0.20.0"
[build-dependencies]
shadow-rs = "0.5.24"
[dev-dependencies]
tempfile = "3.2.0"
[profile.release]
codegen-units = 1
lto = true
[[bin]]
name = "starship"
path = "src/main.rs"
+2
View File
@@ -0,0 +1,2 @@
[target.x86_64-unknown-freebsd]
image = "docker.io/rustembedded/cross:x86_64-unknown-freebsd"
+1 -1
View File
@@ -1,6 +1,6 @@
ISC License
Copyright (c) 2019, Starship Contributors
Copyright (c) 2019-2021, Starship Contributors
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
+181 -163
View File
@@ -1,160 +1,180 @@
<p align="center">
<br /><img
<img
width="400"
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
alt="Starship Cross-shell prompt"
/>
</p>
<p align="center">
<a href="https://crates.io/crates/starship"
><img src="https://badgen.net/crates/v/starship" alt="Crates.io version"
/></a>
<a href="https://dev.azure.com/starship-control/starship/_build"
<a href="https://github.com/starship/starship/actions"
><img
src="https://badgen.net/azure-pipelines/starship-control/starship/Starship%20Test%20Suite"
alt="Azure Pipelines Build Status"
src="https://img.shields.io/github/workflow/status/starship/starship/Main workflow/master?label=workflow&style=flat-square"
alt="GitHub Actions workflow status"
/></a>
<a href="https://crates.io/crates/starship"
><img
src="https://img.shields.io/crates/v/starship?style=flat-square"
alt="Crates.io version"
/></a>
<a href="https://repology.org/project/starship/versions"
><img
src="https://repology.org/badge/tiny-repos/starship.svg"
src="https://img.shields.io/repology/repositories/starship?label=in%20repositories&style=flat-square"
alt="Packaging status"/></a
><br /><a href="#contributors"
><br />
<a href="https://discord.gg/starship"
><img
src="https://badgen.net/badge/all%20contributors/35/orange"
alt="All Contributors"
/></a>
<a href="https://discord.gg/8Jzqu3T"
><img
src="https://badgen.net/badge/chat/on%20discord/7289da"
src="https://img.shields.io/discord/567163873606500352?label=discord&logoColor=white&style=flat-square"
alt="Chat on Discord"
/></a>
<a href="https://twitter.com/StarshipPrompt"
><img
src="https://img.shields.io/badge/twitter-@StarshipPrompt-1DA1F3?style=flat-square"
alt="Follow @StarshipPrompt on Twitter"
/></a>
</p>
<h4 align="center">
<br />
<p align="center">
<a href="https://starship.rs">Website</a>
·
<a href="#-installation">Installation</a>
<a href="#🚀-installation">Installation</a>
·
<a href="https://starship.rs/config/">Configuration</a>
</h4>
</p>
<p align="center">
<a href="./README.md"
><img height="20" src="./media/flag-us.png" alt="English"
<a href="https://github.com/starship/starship/blob/master/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
alt="English"
/></a>
&#0020;
<a href="./translations/README.ja.md"
><img height="20" src="./media/flag-jp.png" alt="日本語"
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
alt="日本語"
/></a>
&#0020;
<a href="https://translate.starship.rs/project/starship-prompt/zh-CN"
><img height="20" src="./media/flag-cn.png" alt="中文"
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
alt="繁體中文"
/></a>
&#0020;
<a href="https://translate.starship.rs/project/starship-prompt/de"
><img height="20" src="./media/flag-de.png" alt="Deutsch"
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
alt="Русский"
/></a>
&#0020;
<a href="https://translate.starship.rs/project/starship-prompt/fr"
><img height="20" src="./media/flag-fr.png" alt="Français"
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
alt="Deutsch"
/></a>
&#0020;
<a href="https://translate.starship.rs/project/starship-prompt/ru"
><img height="20" src="./media/flag-ru.png" alt="Русский"
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
alt="简体中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
alt="Español"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
alt="Français"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
alt="Tiếng Việt"
/></a>
</p>
<h1></h1>
<p align="center">
Starship is the minimal, blazing fast, and extremely customizable prompt for any shell!<br>
The prompt shows information you need while you're working, while staying sleek and out of the way.
<p>
<img
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
alt="Starship with iTerm2 and the Snazzy theme"
width="50%"
align="right"
/>
**The minimal, blazing-fast, and infinitely customizable prompt for any shell!**
- **Fast:** it's fast _really really_ fast! 🚀
- **Customizable:** configure every aspect of your prompt.
- **Universal:** works on any shell, on any operating system.
- **Intelligent:** shows relevant information at a glance.
- **Feature rich:** support for all your favorite tools.
- **Easy:** quick to install  start using it in minutes.
<p align="center">
<br>
<img alt="Starship with iTerm2 and the Snazzy theme" src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif" width="80%">
<br>
<br>
<a href="https://starship.rs/config/"><strong>Explore the Starship docs&nbsp;&nbsp;▶</strong></a>
</p>
## 🍬 Features
- Prompt character turns red if the last command exits with non-zero code
- Current username if not the same as the logged-in user
- Current Java version(`☕`)
- Current Node.js version(`⬢`)
- Current Rust version (`🦀`)
- Current Ruby version (`💎`)
- Current Python version (`🐍`)
- Current Go version (`🐹`)
- Nix-shell environment detection
- Print an environment variable
- Current version of package in current directory (`📦`)
- npm (Node.js)
- cargo (Rust)
- poetry (Python)
- Current battery level and status
- Current Git branch and rich repo status:
- `=` — conflicting changes
- `⇡` — ahead of remote branch
- `⇣` — behind of remote branch
- `⇕` — diverged changes
- `?` — untracked changes
- `$` — stashed changes
- `!` — modified files
- `+` — added files
- `»` — renamed files
- `✘` — deleted files
- Execution time of the last command if it exceeds the set threshold
- Indicator for jobs in the background (`✦`)
- Current Kubernetes Cluster and Namespace (`☸`)
<a name="🚀-installation"></a>
## 🚀 Installation
### Prerequisites
- A [Powerline font](https://github.com/powerline/fonts) installed and enabled in your terminal (for example, try [Fira Code](https://github.com/tonsky/FiraCode)).
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (for example, try the [Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)).
### Getting Started
**Note**: due to the proliferation of different platforms, only a subset of supported platforms are
shown below. Can't see yours? Have a look at the [extra platform instructions](https://starship.rs/installing/).
1. Install the **starship** binary:
**[Download archives of precompiled binaries](https://github.com/starship/starship/releases)** if you don't use the platforms below.
#### Install Latest Version
#### Homebrew
##### From prebuilt binary, with Shell:
```sh
$ brew install starship
curl -fsSL https://starship.rs/install.sh | bash
```
#### Rust (v1.33 or higher)
#### Install via Package Manager
##### Example: [Homebrew](https://brew.sh/):
```sh
$ cargo install starship
brew install starship
```
#### Arch Linux (AUR)
##### With [Scoop](https://scoop.sh):
Starship is available on the AUR under the name `starship`. Install it with `yay` or your favorite AUR helper.
```sh
$ yay -S starship
```powershell
scoop install starship
```
#### Nix (unstable)
```sh
$ nix-env --install starship
```
#### Termux
```sh
$ pkg install starship
```
1. Add the init script to your shell's config file:
2. Add the init script to your shell's config file:
#### Bash
@@ -173,7 +193,7 @@ The prompt shows information you need while you're working, while staying sleek
```sh
# ~/.config/fish/config.fish
eval (starship init fish)
starship init fish | source
```
#### Zsh
@@ -186,82 +206,80 @@ The prompt shows information you need while you're working, while staying sleek
eval "$(starship init zsh)"
```
## 🔧 Configuration
#### PowerShell
For details on how to configure Starship, check out our [documentation](https://starship.rs/config/).
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```powershell
Invoke-Expression (&starship init powershell)
```
#### Ion
Add the following to the end of `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
**Warning** Only elvish v0.15 or higher is supported.
Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
## 🤝 Contributing
We are always looking for contributors of **all skill levels**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
### High Priority Needs
- 👩‍💼 **Product Manager**
- We have a GitHub Project and many unorganized/unprioritized features, as well as ideas that haven't yet been made into issues. Starship needs someone to own the product direction!
- 👩‍🎨 **Designer**
- Like making eye-catching websites? Excellent! We are looking to create a beautiful landing page showing off Starship in all its glory. Helping design for Starship's brand is a great opportunity to try out new ideas!
- 👩‍💻 **Rust Developer**
- There is _a lot_ of low-hanging fruit when it comes to writing idiomatic Rust, designing effective Rust architecture, performance optimizations, cross-platform build optimizations, and more! I ([@matchai](https://github.com/matchai)) am a beginner to Rust. Come point us in the right direction!
If you are fluent in a non-English language, we greatly appreciate any help keeping our docs translated and up-to-date in other languages. If you would like to help, translations can be contributed on the [Starship Crowdin](https://translate.starship.rs/).
If you are interested in helping contribute to starship, please take a look at our [Contributing Guide](https://github.com/starship/starship/blob/master/CONTRIBUTING.md). Also, feel free to drop into our [Discord server](https://discord.gg/8Jzqu3T) and say hi. 👋
### Contributors
### Code Contributors
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
This project exists thanks to all the people who contribute. [[Contribute](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)].
<a href="https://github.com/starship/starship/graphs/contributors"><img src="https://opencollective.com/starship/contributors.svg?width=890&button=false" /></a>
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore -->
<table>
<tr>
<td align="center"><a href="https://twitter.com/matchai"><img src="https://avatars0.githubusercontent.com/u/4658208?v=4" width="100px;" alt="Matan Kushner"/><br /><sub><b>Matan Kushner</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=matchai" title="Code">💻</a> <a href="#design-matchai" title="Design">🎨</a> <a href="#ideas-matchai" title="Ideas, Planning, & Feedback">🤔</a> <a href="#infra-matchai" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#maintenance-matchai" title="Maintenance">🚧</a> <a href="#review-matchai" title="Reviewed Pull Requests">👀</a> <a href="https://github.com/starship/starship/commits?author=matchai" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/johnletey"><img src="https://avatars0.githubusercontent.com/u/30328854?v=4" width="100px;" alt="John Letey"/><br /><sub><b>John Letey</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=johnletey" title="Code">💻</a> <a href="#ideas-johnletey" title="Ideas, Planning, & Feedback">🤔</a> <a href="#review-johnletey" title="Reviewed Pull Requests">👀</a> <a href="https://github.com/starship/starship/commits?author=johnletey" title="Tests">⚠️</a></td>
<td align="center"><a href="http://timmulqueen.com"><img src="https://avatars1.githubusercontent.com/u/6132021?v=4" width="100px;" alt="Tim Mulqueen"/><br /><sub><b>Tim Mulqueen</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=Multimo" title="Code">💻</a> <a href="#ideas-Multimo" title="Ideas, Planning, & Feedback">🤔</a> <a href="#review-Multimo" title="Reviewed Pull Requests">👀</a> <a href="https://github.com/starship/starship/commits?author=Multimo" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/sirMerr"><img src="https://avatars2.githubusercontent.com/u/11183523?v=4" width="100px;" alt="Tiffany Le-Nguyen"/><br /><sub><b>Tiffany Le-Nguyen</b></sub></a><br /><a href="#ideas-sirMerr" title="Ideas, Planning, & Feedback">🤔</a> <a href="#maintenance-sirMerr" title="Maintenance">🚧</a> <a href="#review-sirMerr" title="Reviewed Pull Requests">👀</a> <a href="https://github.com/starship/starship/commits?author=sirMerr" title="Documentation">📖</a></td>
<td align="center"><a href="https://about.snuggi.es"><img src="https://avatars0.githubusercontent.com/u/26250962?v=4" width="100px;" alt="Snuggle"/><br /><sub><b>Snuggle</b></sub></a><br /><a href="#design-Snuggle" title="Design">🎨</a> <a href="#ideas-Snuggle" title="Ideas, Planning, & Feedback">🤔</a> <a href="#maintenance-Snuggle" title="Maintenance">🚧</a> <a href="#review-Snuggle" title="Reviewed Pull Requests">👀</a></td>
<td align="center"><a href="https://github.com/mehcode"><img src="https://avatars1.githubusercontent.com/u/753919?v=4" width="100px;" alt="Ryan Leckey"/><br /><sub><b>Ryan Leckey</b></sub></a><br /><a href="#review-mehcode" title="Reviewed Pull Requests">👀</a></td>
<td align="center"><a href="https://github.com/youssefhabri"><img src="https://avatars3.githubusercontent.com/u/1578005?v=4" width="100px;" alt="Youssef Habri"/><br /><sub><b>Youssef Habri</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=youssefhabri" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/chipbuster"><img src="https://avatars2.githubusercontent.com/u/4605384?v=4" width="100px;" alt="Kevin Song"/><br /><sub><b>Kevin Song</b></sub></a><br /><a href="https://github.com/starship/starship/issues?q=author%3Achipbuster" title="Bug reports">🐛</a> <a href="https://github.com/starship/starship/commits?author=chipbuster" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=chipbuster" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=chipbuster" title="Tests">⚠️</a></td>
<td align="center"><a href="https://andrewda.me"><img src="https://avatars1.githubusercontent.com/u/10191084?v=4" width="100px;" alt="Andrew Dassonville"/><br /><sub><b>Andrew Dassonville</b></sub></a><br /><a href="https://github.com/starship/starship/issues?q=author%3Aandrewda" title="Bug reports">🐛</a> <a href="https://github.com/starship/starship/commits?author=andrewda" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/MaT1g3R"><img src="https://avatars1.githubusercontent.com/u/15258494?v=4" width="100px;" alt="MaT1g3R"/><br /><sub><b>MaT1g3R</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=MaT1g3R" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=MaT1g3R" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=MaT1g3R" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/AZanellato"><img src="https://avatars3.githubusercontent.com/u/30451287?v=4" width="100px;" alt="André Zanellato"/><br /><sub><b>André Zanellato</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=AZanellato" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=AZanellato" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=AZanellato" title="Tests">⚠️</a></td>
<td align="center"><a href="https://saghm.com"><img src="https://avatars2.githubusercontent.com/u/5875560?v=4" width="100px;" alt="Saghm Rossi"/><br /><sub><b>Saghm Rossi</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=saghm" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=saghm" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=saghm" title="Tests">⚠️</a></td>
<td align="center"><a href="https://medium.com/@cappyzawa"><img src="https://avatars3.githubusercontent.com/u/12455284?v=4" width="100px;" alt="Shu Kutsuzawa"/><br /><sub><b>Shu Kutsuzawa</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=cappyzawa" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=cappyzawa" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=cappyzawa" title="Tests">⚠️</a> <a href="#translation-cappyzawa" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/iamsauravsharma"><img src="https://avatars0.githubusercontent.com/u/38726015?v=4" width="100px;" alt="Saurav Sharma"/><br /><sub><b>Saurav Sharma</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=iamsauravsharma" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=iamsauravsharma" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/andytom"><img src="https://avatars1.githubusercontent.com/u/108836?v=4" width="100px;" alt="Thomas O'Donnell"/><br /><sub><b>Thomas O'Donnell</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=andytom" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=andytom" title="Tests">⚠️</a> <a href="https://github.com/starship/starship/commits?author=andytom" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/bbigras"><img src="https://avatars1.githubusercontent.com/u/24027?v=4" width="100px;" alt="Bruno Bigras"/><br /><sub><b>Bruno Bigras</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=bbigras" title="Code">💻</a> <a href="#review-bbigras" title="Reviewed Pull Requests">👀</a></td>
<td align="center"><a href="https://neilkistner.com/"><img src="https://avatars1.githubusercontent.com/u/186971?v=4" width="100px;" alt="Neil Kistner"/><br /><sub><b>Neil Kistner</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=wyze" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=wyze" title="Tests">⚠️</a> <a href="#review-wyze" title="Reviewed Pull Requests">👀</a></td>
<td align="center"><a href="http://ca.linkedin.com/in/qstrahl"><img src="https://avatars3.githubusercontent.com/u/2235277?v=4" width="100px;" alt="Quinn Strahl"/><br /><sub><b>Quinn Strahl</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=qstrahl" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=qstrahl" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/tivervac"><img src="https://avatars2.githubusercontent.com/u/3389524?v=4" width="100px;" alt="Titouan Vervack"/><br /><sub><b>Titouan Vervack</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=tivervac" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=tivervac" title="Tests">⚠️</a></td>
<td align="center"><a href="http://nosubstance.me"><img src="https://avatars1.githubusercontent.com/u/1269815?v=4" width="100px;" alt="Francisco Lopes"/><br /><sub><b>Francisco Lopes</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=oblitum" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/ahouts"><img src="https://avatars1.githubusercontent.com/u/16907671?v=4" width="100px;" alt="Andrew Houts"/><br /><sub><b>Andrew Houts</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=ahouts" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=ahouts" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=ahouts" title="Tests">⚠️</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/nickwb"><img src="https://avatars2.githubusercontent.com/u/594211?v=4" width="100px;" alt="Nick Young"/><br /><sub><b>Nick Young</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=nickwb" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=nickwb" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=nickwb" title="Tests">⚠️</a> <a href="#review-nickwb" title="Reviewed Pull Requests">👀</a></td>
<td align="center"><a href="https://github.com/g2p"><img src="https://avatars1.githubusercontent.com/u/61678?v=4" width="100px;" alt="Gabriel de Perthuis"/><br /><sub><b>Gabriel de Perthuis</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=g2p" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Hofer-Julian"><img src="https://avatars1.githubusercontent.com/u/30049909?v=4" width="100px;" alt="Hofer-Julian"/><br /><sub><b>Hofer-Julian</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=Hofer-Julian" title="Documentation">📖</a></td>
<td align="center"><a href="http://blog.unhappychoice.com"><img src="https://avatars3.githubusercontent.com/u/5608948?v=4" width="100px;" alt="Yuji Ueki"/><br /><sub><b>Yuji Ueki</b></sub></a><br /><a href="#content-unhappychoice" title="Content">🖋</a> <a href="#translation-unhappychoice" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/heyrict"><img src="https://avatars3.githubusercontent.com/u/25698503?v=4" width="100px;" alt="谢祯晖"/><br /><sub><b>谢祯晖</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=heyrict" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=heyrict" title="Documentation">📖</a> <a href="#translation-heyrict" title="Translation">🌍</a> <a href="#review-heyrict" title="Reviewed Pull Requests">👀</a></td>
<td align="center"><a href="https://twitter.com/bookun2851"><img src="https://avatars2.githubusercontent.com/u/10346162?v=4" width="100px;" alt="Kutsuzawa Ryo"/><br /><sub><b>Kutsuzawa Ryo</b></sub></a><br /><a href="#review-bookun" title="Reviewed Pull Requests">👀</a> <a href="https://github.com/starship/starship/commits?author=bookun" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=bookun" title="Tests">⚠️</a> <a href="#translation-bookun" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/hdevalke"><img src="https://avatars1.githubusercontent.com/u/2261239?v=4" width="100px;" alt="hdevalke"/><br /><sub><b>hdevalke</b></sub></a><br /><a href="#ideas-hdevalke" title="Ideas, Planning, & Feedback">🤔</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/jakubclark"><img src="https://avatars0.githubusercontent.com/u/19486495?v=4" width="100px;" alt="Kuba Clark"/><br /><sub><b>Kuba Clark</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=jakubclark" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=jakubclark" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=jakubclark" title="Tests">⚠️</a></td>
<td align="center"><a href="http://breax.org"><img src="https://avatars2.githubusercontent.com/u/862483?v=4" width="100px;" alt="Gimbar"/><br /><sub><b>Gimbar</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=gimbar" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=gimbar" title="Tests">⚠️</a> <a href="https://github.com/starship/starship/commits?author=gimbar" title="Documentation">📖</a></td>
<td align="center"><a href="http://tomhotston.net"><img src="https://avatars0.githubusercontent.com/u/22729355?v=4" width="100px;" alt="Tom Hotston"/><br /><sub><b>Tom Hotston</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=TomHotston" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=TomHotston" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/bijancn"><img src="https://avatars3.githubusercontent.com/u/2117164?v=4" width="100px;" alt="Bijan Chokoufe Nejad"/><br /><sub><b>Bijan Chokoufe Nejad</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=bijancn" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=bijancn" title="Tests">⚠️</a> <a href="#review-bijancn" title="Reviewed Pull Requests">👀</a></td>
<td align="center"><a href="https://github.com/yuri1969"><img src="https://avatars3.githubusercontent.com/u/13468636?v=4" width="100px;" alt="yuri"/><br /><sub><b>yuri</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=yuri1969" title="Code">💻</a> <a href="https://github.com/starship/starship/commits?author=yuri1969" title="Documentation">📖</a> <a href="https://github.com/starship/starship/commits?author=yuri1969" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/TsubasaKawajiri"><img src="https://avatars2.githubusercontent.com/u/39114857?v=4" width="100px;" alt="TsubasaKawajiri"/><br /><sub><b>TsubasaKawajiri</b></sub></a><br /><a href="#translation-TsubasaKawajiri" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/qryxip"><img src="https://avatars2.githubusercontent.com/u/14125495?v=4" width="100px;" alt="Ryo Yamashita"/><br /><sub><b>Ryo Yamashita</b></sub></a><br /><a href="https://github.com/starship/starship/commits?author=qryxip" title="Code">💻</a></td>
</tr>
</table>
### Financial Contributors
<!-- ALL-CONTRIBUTORS-LIST:END -->
Become a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/starship/contribute)]
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
#### Individuals
<a href="https://opencollective.com/starship"><img src="https://opencollective.com/starship/individuals.svg?width=890"></a>
#### Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/starship/contribute)]
<a href="https://opencollective.com/starship/organization/0/website"><img src="https://opencollective.com/starship/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/1/website"><img src="https://opencollective.com/starship/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/2/website"><img src="https://opencollective.com/starship/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/3/website"><img src="https://opencollective.com/starship/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/4/website"><img src="https://opencollective.com/starship/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/5/website"><img src="https://opencollective.com/starship/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/6/website"><img src="https://opencollective.com/starship/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/7/website"><img src="https://opencollective.com/starship/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/8/website"><img src="https://opencollective.com/starship/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/9/website"><img src="https://opencollective.com/starship/organization/9/avatar.svg"></a>
## 💭 Inspired By
-16
View File
@@ -1,16 +0,0 @@
#!/bin/bash
if ! (docker --version); then
printf 'Docker is required to run the starship acceptance tests.\n'
printf 'Please download and install Docker in order to run these tests locally.\n'
exit 1
fi
printf 'Building test docker image:\n'
docker build -f tests/Dockerfile \
--tag starshipcommand/starship-test \
--cache-from starshipcommand/starship-test \
.
printf 'Running test suite:\n'
docker run --rm -v $(pwd):/src/starship --security-opt="label=disable" starshipcommand/starship-test
+3
View File
@@ -0,0 +1,3 @@
fn main() -> shadow_rs::SdResult<()> {
shadow_rs::new()
}
+4 -3
View File
@@ -1,8 +1,9 @@
pull_request_title: 'docs(i18n): new Crowdin updates'
files:
- source: /docs/**/*.md
ignore:
- /docs/%two_letters_code%
- /docs/%locale%
- /docs/guide
translation: /docs/%two_letters_code%/**/%original_file_name%
translation: /docs/%locale%/**/%original_file_name%
- source: /README.md
translation: /translations/%file_name%.%two_letters_code%.%file_extension%
translation: /docs/%locale%/guide/%file_name%.%file_extension%
+211 -13
View File
@@ -3,15 +3,64 @@ module.exports = {
"/": {
lang: "en-US",
title: "Starship",
description: "The cross-shell prompt for astronauts"
description: "The minimal, blazing-fast, and infinitely customizable prompt for any shell!"
},
"/ja/": {
"/de-DE/": {
lang: "de-DE",
title: "Starship",
description: "The minimal, blazing-fast, and infinitely customizable prompt for any shell!"
},
"/es-ES/": {
lang: "es-ES",
title: "Starship",
description: "¡El prompt minimalista, ultrarápido e infinitamente personalizable para cualquier intérprete de comandos!"
},
"/fr-FR/": {
lang: "fr-FR",
title: "Starship",
description: "L'invite minimaliste, ultra-rapide et personnalisable à l'infini pour n'importe quel shell !"
},
"/ru-RU/": {
lang: "ru-RU",
title: "Starship",
description: "Минималистичная, быстрая и бесконечно настраиваемая командная строка для любой оболочки!"
},
"/ja-JP/": {
lang: "ja-JP",
title: "Starship",
description: "The cross-shell prompt for astronauts"
description: "シェル用の最小限の、非常に高速で、無限にカスタマイズ可能なプロンプトです!"
},
"/zh-CN/": {
lang: "zh-CN",
title: "Starship",
description: "轻量级、反应迅速,可定制的高颜值终端!"
},
"/zh-TW/": {
lang: "zh-TW",
title: "Starship",
description: "The minimal, blazing-fast, and infinitely customizable prompt for any shell!"
},
"/vi-VN/": {
lang: "vi-VN",
title: "Starship",
description: "Nhỏ gọn, cực nhanh, và khả năng tuỳ chỉnh vô hạn prompt cho bất kì shell nào!"
}
},
head: [["link", { rel: "icon", href: "/icon.png" }]],
// prettier-ignore
head: [
["link", { rel: "icon", href: "/icon.png" }],
["meta", { property: "og:title", content: "Starship: Cross-Shell Prompt" }],
["meta", { property: "og:description", content: "Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZSH, Ion, and Powershell."}],
["meta", { property: "og:type", content: "website" }],
["meta", { property: "og:url", content: "https://starship.rs/" }],
["meta", { property: "og:image", content: "https://starship.rs/icon.png" }],
["meta", { name: "twitter:card", content: "summary"}],
["meta", { name: "twitter:title", content: "Starship: Cross-Shell Prompt"}],
["meta", { name: "twitter:description", content: "Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZSH, Ion, and Powershell."}],
["meta", { name: "twitter:image", content: "https://starship.rs/icon.png"}],
["meta", { name: "twitter:alt", content: "Starship: Cross-Shell Prompt"}],
],
theme: "default-prefers-color-scheme",
themeConfig: {
logo: "/icon.png",
// the GitHub repo path
@@ -22,6 +71,11 @@ module.exports = {
docsDir: "docs",
// defaults to false, set to true to enable
editLinks: true,
// enables Algolia DocSearch
algolia: {
apiKey: "107bdc34b894d5d1dd0824b420184c2d",
indexName: "starship"
},
locales: {
"/": {
// text for the language dropdown
@@ -36,11 +90,91 @@ module.exports = {
sidebar: [
"/",
["/guide/", "Guide"],
["/installing/", "Advanced Installation"],
["/config/", "Configuration"],
["/advanced-config/", "Advanced Configuration"]
],
["/advanced-config/", "Advanced Configuration"],
["/faq/", "Frequently Asked Questions"],
["/presets/", "Presets"],
["/migrating-to-0.45.0/", "Migrating to v0.45.0"]
]
},
"/ja/": {
"/de-DE/": {
// text for the language dropdown
selectText: "Sprachen",
// label for this locale in the language dropdown
label: "Deutsch",
// Custom text for edit link. Defaults to "Edit this page"
editLinkText: "Bearbeite diese Seite auf GitHub",
// Custom navbar values
nav: [{ text: "Konfiguration", link: "/config/" }],
// Custom sidebar values
sidebar: [
"/de-DE/",
["/de-DE/guide/", "Anleitung"],
["/de-DE/config/", "Konfiguration"],
["/de-DE/advanced-config/", "Erweiterte Konfiguration"],
["/de-DE/faq/", "Häufig gestellte Fragen"],
["/de-DE/presets/", "Konfigurations-Beispiele"]
]
},
"/es-ES/": {
// text for the language dropdown
selectText: "Idiomas",
// label for this locale in the language dropdown
label: "Español",
// Custom text for edit link. Defaults to "Edit this page"
editLinkText: "Edita esta página en GitHub",
// Custom navbar values
nav: [{ text: "Configuración", link: "/es-ES/config/" }],
// Custom sidebar values
sidebar: [
"/es-ES/",
["/es-ES/guide/", "Guía"],
["/es-ES/config/", "Configuración"],
["/es-ES/advanced-config/", "Configuración Avanzada"],
["/es-ES/faq/", "Preguntas frecuentes"],
["/es-ES/presets/", "Ajustes predeterminados"]
]
},
"/fr-FR/": {
// text for the language dropdown
selectText: "Langues",
// label for this locale in the language dropdown
label: "Français",
// Custom text for edit link. Defaults to "Edit this page"
editLinkText: "Éditez cette page sur GitHub",
// Custom navbar values
nav: [{ text: "Configuration", link: "/fr-FR/config/" }],
// Custom sidebar values
sidebar: [
"/fr-FR/",
["/fr-FR/guide/", "Guide"],
["/fr-FR/config/", "Configuration"],
["/fr-FR/advanced-config/", "Configuration avancée"],
["/fr-FR/faq/", "Foire aux questions"],
["/fr-FR/presets/", "Paramètres par défaut"]
]
},
"/ru-RU/": {
// text for the language dropdown
selectText: "Языки",
// label for this locale in the language dropdown
label: "Русский",
// Custom text for edit link. Defaults to "Edit this page"
editLinkText: "Редактировать эту страницу на GitHub",
// Custom navbar values
nav: [{ text: "Настройка", link: "/ru-RU/config/" }],
// Custom sidebar values
sidebar: [
"/ru-RU/",
["/ru-RU/guide/", "Руководство"],
["/ru-RU/config/", "Настройка"],
["/ru-RU/advanced-config/", "Расширенная Настройка"],
["/ru-RU/faq/", "Часто Задаваемые Вопросы"],
["/ru-RU/presets/", "Предустановки"]
]
},
"/ja-JP/": {
// text for the language dropdown
selectText: "言語",
// label for this locale in the language dropdown
@@ -48,15 +182,73 @@ module.exports = {
// Custom text for edit link. Defaults to "Edit this page"
editLinkText: "GitHub で編集する",
// Custom navbar values
nav: [{ text: "設定", link: "/ja/config/" }],
nav: [{ text: "設定", link: "/ja-JP/config/" }],
// Custom sidebar values
sidebar: [
"/ja/",
["/ja/guide/", "ガイド"],
["/ja/config/", "設定"],
["/ja/advanced-config/", "高度な設定"]
],
"/ja-JP/",
["/ja-JP/guide/", "ガイド"],
["/ja-JP/config/", "設定"],
["/ja-JP/advanced-config/", "高度な設定"],
["/ja-JP/faq/", "FAQ"],
["/ja-JP/presets/", "準備するもの"],
["/ja-JP/migrating-to-0.45.0/", "v0.45への移行"]
]
},
"/zh-TW/": {
// text for the language dropdown
selectText: "語言",
// label for this locale in the language dropdown
label: "繁體中文",
// Custom text for edit link. Defaults to "Edit this page"
editLinkText: "在 GitHub 上修改此頁面",
// Custom navbar values
nav: [{ text: "設定", link: "/zh-TW/config/" }],
// Custom sidebar values
sidebar: [
"/zh-TW/",
["/zh-TW/guide/", "指引"],
["/zh-TW/config/", "設定"],
["/zh-TW/advanced-config/", "進階設定"]
]
},
"/zh-CN/": {
// text for the language dropdown
selectText: "语言",
// label for this locale in the language dropdown
label: "简体中文",
// Custom text for edit link. Defaults to "Edit this page"
editLinkText: "在 GitHub 上修改此页",
// Custom navbar values
nav: [{ text: "配置", link: "/zh-CN/config/" }],
// Custom sidebar values
sidebar: [
"/zh-CN/",
["/zh-CN/guide/", "指南"],
["/zh-CN/config/", "配置"],
["/zh-CN/advanced-config/", "高级配置"],
["/zh-CN/faq/", "常见问题"],
["/zh-CN/presets/", "社区配置分享"]
]
},
"/vi-VN/": {
// text for the language dropdown
selectText: "Ngôn ngữ",
// label for this locale in the language dropdown
label: "Tiếng Việt",
// Custom text for edit link. Defaults to "Edit this page"
editLinkText: "Chỉnh sửa trang này trên GitHub",
// Custom navbar values
nav: [{ text: "Cấu hình", link: "/vi-VN/config/" }],
// Custom sidebar values
sidebar: [
"/vi-VN/",
["/vi-VN/guide/", "Hướng dẫn"],
["/vi-VN/config/", "Cấu hình"],
["/vi-VN/advanced-config/", "Cấu hình nâng cao"],
["/vi-VN/faq/", "Các hỏi thường gặp"],
["/vi-VN/presets/", "Mẫu thiết lập"]
]
}
}
},
plugins: [
@@ -65,6 +257,12 @@ module.exports = {
{
ga: "UA-71160903-4"
}
],
[
"sitemap",
{
hostname: "https://starship.rs"
}
]
]
};
+1
View File
@@ -0,0 +1 @@
../../../install/install.sh
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 334 KiB

+2
View File
@@ -0,0 +1,2 @@
User-agent: *
Disallow:
+29
View File
@@ -0,0 +1,29 @@
.home .hero img
max-width: 500px !important
min-width: 300px
width: 100%
.center
margin 0 auto;
width: 80%
.demo-video
width: 100%
margin: 50px 0
border-radius: 6px
.hero
margin: 150px 25px 70px
.action-button
background-color: #dd0b78 !important
border-bottom: #c6096b !important
@font-face
font-family: 'Nerd Font';
src: url("/nerd-font.woff2") format("woff2");
font-weight: 400;
font-style: normal
code
font-family: 'Nerd Font', source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace;
overflow-wrap: break-word
+3 -19
View File
@@ -1,22 +1,6 @@
$accentColor = #DD0B78
$accentDarkColor = #ff33b8
$textColor = #2c3e50
$borderColor = #eaecef
$codeBgColor = #282c34
.home .hero img
max-width: 500px
min-width: 300px
width: 100%
.center
margin 0 auto;
width: 80%
.demo-video
width: 100%
margin: 50px 0
#main-title
display: none
.hero
margin: 150px 25px 70px
$codeBgLightColor = #282c34
$preTextLightColor = #fff
+68 -40
View File
@@ -1,28 +1,26 @@
---
home: true
heroImage: /logo.svg
heroText: null
tagline: The minimal, blazing-fast, and infinitely customizable prompt for any shell!
actionText: Get Started →
actionLink: /guide/
actionLink: ./guide/
features:
- title: Compatibility First
details: Works on the most common shells on the most common operating systems. Use it everywhere!
- title: Rust-Powered
details: Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.
- title: Customizable
details: Every little detail is customizable to your liking, to make this prompt as minimal or feature-rich as you'd like it to be.
footer: ISC Licensed | Copyright © 2019-present Starship Contributors
# Used for the description meta tag, for SEO
metaTitle: "Starship: Cross-Shell Prompt"
description: Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZSH, Ion, and PowerShell.
---
<div class="features">
<div class="feature">
<h2>Compatibility First</h2>
<p>Works on the most common shells on the most common operating systems. Use it everywhere!</p>
</div>
<div class="feature">
<h2>Rust-Powered</h2>
<p>Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.</p>
</div>
<div class="feature">
<h2>Customizable</h2>
<p>Every little detail is customizable to your liking, to make this prompt as minimal or feature-rich as you'd like it to be.</p>
</div>
</div>
<div class="center">
<video class="demo-video" autoplay muted loop>
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
@@ -32,38 +30,26 @@ footer: ISC Licensed | Copyright © 2019-present Starship Contributors
1. Install the **starship** binary:
**[Download archives of precompiled binaries](https://github.com/starship/starship/releases)** if you don't use the platforms below.
#### Install Latest Version
#### Homebrew
With Shell:
```sh
$ brew install starship
curl -fsSL https://starship.rs/install.sh | bash
```
#### Rust (v1.33 or higher)
#### Install via Package Manager
With [Homebrew](https://brew.sh/):
```sh
$ cargo install starship
brew install starship
```
#### Arch Linux (AUR)
With [Scoop](https://scoop.sh):
Starship is available on the AUR under the name `starship`. Install it with `yay` or your favorite AUR helper.
```sh
$ yay -S starship
```
#### Nix (unstable)
```sh
$ nix-env --install starship
```
#### Termux
```sh
$ pkg install starship
```powershell
scoop install starship
```
1. Add the init script to your shell's config file:
@@ -85,7 +71,7 @@ footer: ISC Licensed | Copyright © 2019-present Starship Contributors
```sh
# ~/.config/fish/config.fish
eval (starship init fish)
starship init fish | source
```
#### Zsh
@@ -97,3 +83,45 @@ footer: ISC Licensed | Copyright © 2019-present Starship Contributors
eval "$(starship init zsh)"
```
#### Powershell
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
Add the following to the end of `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: warning
Only elvish v0.15 or higher is supported.
:::
Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
+12 -2
View File
@@ -73,7 +73,17 @@ precmd_functions+=(set_win_title)
```
If you like the result, add these lines to your shell configuration file
(`~/.bashrc` or `~/.zsrhc`) to make it permanent.
(`~/.bashrc` or `~/.zshrc`) to make it permanent.
For example, if you want to display your current directory in your terminal tab title,
add the following snippet to your `~/.bashrc` or `~/.zshrc`:
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## Style Strings
@@ -89,7 +99,7 @@ Style strings are a list of words, separated by whitespace. The words are not ca
where `<color>` is a color specifier (discussed below). `fg:<color>` and `<color>` currently do the same thing , though this may change in the future. The order of words in the string does not matter.
The `none` token overrides all other tokens in a string, so that e.g. `fg:red none fg:blue` will still create a string with no styling. It may become an error to use `none` in conjunction with other tokens in the future.
The `none` token overrides all other tokens in a string if it is not part of a `bg:` specifier, so that e.g. `fg:red none fg:blue` will still create a string with no styling. `bg:none` sets the background to the default color so `fg:red bg:none` is equivalent to `red` or `fg:red` and `bg:green fg:red bg:none` is also equivalent to `fg:red` or `red`. It may become an error to use `none` in conjunction with other tokens in the future.
A color specifier can be one of the following:
+136
View File
@@ -0,0 +1,136 @@
---
home: true
heroImage: /logo.svg
heroText:
tagline: The minimal, blazing-fast, and infinitely customizable prompt for any shell!
actionText: Get Started →
actionLink: ./guide/
features:
-
title: Compatibility First
details: Works on the most common shells on the most common operating systems. Use it everywhere!
-
title: Rust-Powered
details: Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.
-
title: Customizable
details: Every little detail is customizable to your liking, to make this prompt as minimal or feature-rich as you'd like it to be.
footer: ISC Licensed | Copyright © 2019-present Starship Contributors
#Used for the description meta tag, for SEO
metaTitle: "Starship: Cross-Shell Prompt"
description: Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZSH, Ion, and PowerShell.
---
<div class="center">
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### Quick Install
1. Install the **starship** binary:
#### Install Latest Version
With Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Install via Package Manager
With [Homebrew](https://brew.sh/):
```sh
brew install starship
```
With [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
1. Add the init script to your shell's config file:
#### Bash
Add the following to the end of `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Add the following to the end of `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Add the following to the end of `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### Powershell
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
Add the following to the end of `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: warning Only elvish v0.15 or higher is supported. :::
Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
@@ -57,7 +57,16 @@ In `zsh`, add this to the `precmd_functions` array:
precmd_functions+=(set_win_title)
```
If you like the result, add these lines to your shell configuration file (`~/.bashrc` or `~/.zsrhc`) to make it permanent.
If you like the result, add these lines to your shell configuration file (`~/.bashrc` or `~/.zshrc`) to make it permanent.
For example, if you want to display your current directory in your terminal tab title, add the following snippet to your `~/.bashrc` or `~/.zshrc`:
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## Style Strings
@@ -73,7 +82,7 @@ Style strings are a list of words, separated by whitespace. The words are not ca
where `<color>` is a color specifier (discussed below). `fg:<color>` and `<color>` currently do the same thing , though this may change in the future. The order of words in the string does not matter.
The `none` token overrides all other tokens in a string, so that e.g. `fg:red none fg:blue` will still create a string with no styling. It may become an error to use `none` in conjunction with other tokens in the future.
The `none` token overrides all other tokens in a string if it is not part of a `bg:` specifier, so that e.g. `fg:red none fg:blue` will still create a string with no styling. `bg:none` sets the background to the default color so `fg:red bg:none` is equivalent to `red` or `fg:red` and `bg:green fg:red bg:none` is also equivalent to `fg:red` or `red`. It may become an error to use `none` in conjunction with other tokens in the future.
A color specifier can be one of the following:
File diff suppressed because it is too large Load Diff
+96
View File
@@ -0,0 +1,96 @@
# FAQ
## What is the configuration used in the demo GIF?
- **Terminal Emulator**: [iTerm2](https://iterm2.com/)
- **Theme**: Minimal
- **Color Scheme**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **Font**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **Shell**: [Fish Shell](https://fishshell.com/)
- **Configuration**: [matchai's Dotfiles](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **Prompt**: [Starship](https://starship.rs/)
## How do I get command completion as shown in the demo GIF?
Completion support, or autocomplete, is provided by your shell of choice. In the case of the demo, the demo was done with [Fish Shell](https://fishshell.com/), which provides completions by default. If you use Z Shell (zsh), I'd suggest taking a look at [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions).
## Do top level `format` and `<module>.disabled` do the same thing?
Yes, they can both be used to disable modules in the prompt. If all you plan to do is disable modules, `<module>.disabled` is the preferred way to do so for these reasons:
- Disabling modules is more explicit than omitting them from the top level `format`
- Newly created modules will be added to the prompt as Starship is updated
## The docs say Starship is cross-shell. Why isn't my preferred shell supported?
The way Starship is built, it should be possible to add support for virtually any shell. The starship binary is stateless and shell agnostic, so as long as your shell supports prompt customization and shell expansion, Starship can be used.
Here's a small example getting Starship working with bash:
```sh
# Get the status code from the last command executed
STATUS=$?
# Get the number of jobs running.
NUM_JOBS=$(jobs -p | wc -l)
# Set the prompt to the output of `starship prompt`
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
```
The [Bash implementation](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#command-duration) and to ensure that Starship is compatible with pre-installed Bash configurations.
For a list of all flags accepted by `starship prompt`, use the following command:
```sh
starship prompt --help
```
The prompt will use as much context as is provided, but no flags are "required".
## How do I run Starship on Linux distributions with older versions of glibc?
If you get an error like "_version 'GLIBC_2.18' not found (required by starship)_" when using the prebuilt binary (for example, on CentOS 6 or 7), you can use a binary compiled with `musl` instead of `glibc`:
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- --platform unknown-linux-musl
```
## I see symbols I don't understand or expect, what do they mean?
If you see symbols that you don't recognise you can use `starship explain` to explain the currently showing modules.
## Why don't I see a glyph symbol in my prompt?
The most common cause of this is system misconfiguration. Some Linux distros in particular do not come with font support out-of-the-box. You need to ensure that:
- Your locale is set to a UTF-8 value, like `de_DE.UTF-8` or `ja_JP.UTF-8`. If `LC_ALL` is not a UTF-8 value, [you will need to change it](https://www.tecmint.com/set-system-locales-in-linux/).
- You have an emoji font installed. Most systems come with an emoji font by default, but some (notably Arch Linux) do not. You can usually install one through your system's package manager--[noto emoji](https://www.google.com/get/noto/help/emoji/) is a popular choice.
- You are using a [Nerd Font](https://www.nerdfonts.com/).
To test your system, run the following commands in a terminal:
```sh
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
```
The first line should produce a [snake emoji](https://emojipedia.org/snake/), while the second should produce a [powerline branch symbol (e0a0)](https://github.com/ryanoasis/powerline-extra-symbols#glyphs).
If either symbol fails to display correctly, your system is still misconfigured. Unfortunately, getting font configuration correct is sometimes difficult. Users on the Discord may be able to help. If both symbols display correctly, but you still don't see them in starship, [file a bug report!](https://github.com/starship/starship/issues/new/choose)
## How do I uninstall Starship?
Starship is just as easy to uninstall as it is to install in the first place.
1. Remove any lines in your shell config (e.g. `~/.bashrc`) used to initialize Starship.
1. Delete the Starship binary.
If Starship was installed using a package manager, please refer to their docs for uninstallation instructions.
If Starship was installed using the `curl | bash` script, the following command will delete the binary:
```sh
# Locate and delete the starship binary
rm "$(which starship)"
```
+311
View File
@@ -0,0 +1,311 @@
<p align="center">
<img
width="400"
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
alt="Starship Cross-shell prompt"
/>
</p>
<p align="center">
<a href="https://github.com/starship/starship/actions"
><img
src="https://img.shields.io/github/workflow/status/starship/starship/Main workflow/master?label=workflow&style=flat-square"
alt="GitHub Actions workflow status"
/></a>
<a href="https://crates.io/crates/starship"
><img
src="https://img.shields.io/crates/v/starship?style=flat-square"
alt="Crates.io version"
/></a>
<a href="https://repology.org/project/starship/versions"
><img
src="https://img.shields.io/repology/repositories/starship?label=in%20repositories&style=flat-square"
alt="Packaging status" /></a
><br />
<a href="https://discord.gg/starship"
><img
src="https://img.shields.io/discord/567163873606500352?label=discord&logoColor=white&style=flat-square"
alt="Chat on Discord"
/></a>
<a href="https://twitter.com/StarshipPrompt"
><img
src="https://img.shields.io/badge/twitter-@StarshipPrompt-1DA1F3?style=flat-square"
alt="Follow @StarshipPrompt on Twitter"
/></a>
</p>
<p align="center">
<a href="https://starship.rs">Website</a>
·
<a href="#🚀-installation">Installation</a>
·
<a href="https://starship.rs/config/">Configuration</a>
</p>
<p align="center">
<a href="https://github.com/starship/starship/blob/master/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
alt="English"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
alt="日本語"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
alt="繁體中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
alt="Русский"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
alt="Deutsch"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
alt="简体中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
alt="Español"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
alt="Français"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
alt="Tiếng Việt"
/></a>
</p>
<h1></h1>
<img
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
alt="Starship with iTerm2 and the Snazzy theme"
width="50%"
align="right"
/>
**The minimal, blazing-fast, and infinitely customizable prompt for any shell!**
- **Fast:** it's fast _really really_ fast! 🚀
- **Customizable:** configure every aspect of your prompt.
- **Universal:** works on any shell, on any operating system.
- **Intelligent:** shows relevant information at a glance.
- **Feature rich:** support for all your favorite tools.
- **Easy:** quick to install  start using it in minutes.
<p align="center">
<a href="https://starship.rs/config/"><strong>Explore the Starship docs&nbsp;&nbsp;▶</strong></a>
</p>
<a name="🚀-installation"></a>
## 🚀 Installation
### Prerequisites
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (for example, try the [Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)).
### Getting Started
**Note**: due to the proliferation of different platforms, only a subset of supported platforms are shown below. Can't see yours? Have a look at the [extra platform instructions](https://starship.rs/installing/).
1. Install the **starship** binary:
#### Install Latest Version
##### From prebuilt binary, with Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Install via Package Manager
##### Example: [Homebrew](https://brew.sh/):
```sh
brew install starship
```
##### With [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
2. Add the init script to your shell's config file:
#### Bash
Add the following to the end of `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Add the following to the end of `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Add the following to the end of `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### PowerShell
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```powershell
Invoke-Expression (&starship init powershell)
```
#### Ion
Add the following to the end of `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
**Warning** Only elvish v0.15 or higher is supported. Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
## 🤝 Contributing
We are always looking for contributors of **all skill levels**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
If you are fluent in a non-English language, we greatly appreciate any help keeping our docs translated and up-to-date in other languages. If you would like to help, translations can be contributed on the [Starship Crowdin](https://translate.starship.rs/).
If you are interested in helping contribute to starship, please take a look at our [Contributing Guide](https://github.com/starship/starship/blob/master/CONTRIBUTING.md). Also, feel free to drop into our [Discord server](https://discord.gg/8Jzqu3T) and say hi. 👋
### Code Contributors
This project exists thanks to all the people who contribute. [[Contribute](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)].
<a href="https://github.com/starship/starship/graphs/contributors"><img src="https://opencollective.com/starship/contributors.svg?width=890&button=false" /></a>
### Financial Contributors
Become a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/starship/contribute)]
#### Individuals
<a href="https://opencollective.com/starship"><img src="https://opencollective.com/starship/individuals.svg?width=890"></a>
#### Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/starship/contribute)]
<a href="https://opencollective.com/starship/organization/0/website"><img src="https://opencollective.com/starship/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/1/website"><img src="https://opencollective.com/starship/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/2/website"><img src="https://opencollective.com/starship/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/3/website"><img src="https://opencollective.com/starship/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/4/website"><img src="https://opencollective.com/starship/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/5/website"><img src="https://opencollective.com/starship/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/6/website"><img src="https://opencollective.com/starship/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/7/website"><img src="https://opencollective.com/starship/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/8/website"><img src="https://opencollective.com/starship/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/9/website"><img src="https://opencollective.com/starship/organization/9/avatar.svg"></a>
## 💭 Inspired By
Please check out these previous works that helped inspire the creation of starship. 🙏
- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** - A ZSH prompt for astronauts.
- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** - Cross-shell robbyrussell theme written in JavaScript.
- **[reujab/silver](https://github.com/reujab/silver)** - A cross-shell customizable powerline-like prompt with icons.
<p align="center">
<br>
<img width="100" src="https://raw.githubusercontent.com/starship/starship/master/media/icon.png" alt="Starship rocket icon">
</p>
## 📝 License
Copyright © 2019-present, [Starship Contributors](https://github.com/starship/starship/graphs/contributors).<br /> This project is [ISC](https://github.com/starship/starship/blob/master/LICENSE) licensed.
+84
View File
@@ -0,0 +1,84 @@
# 🚀 Advanced Installation
To install starship, you need to do two things:
1. Get the **starship** binary onto your computer
1. Tell your shell to use the starship binary as its prompt by modifying its init scripts
For most users, the instructions on [the main page](/guide/#🚀-installation) will work great. However, for some more specialized platforms, different instructions are needed.
There are so many platforms out there that they didn't fit into the main README.md file, so here are some installation instructions for other platforms from the community. Is yours not here? Please do add it here if you figure it out!
## [Chocolatey](https://chocolatey.org)
### Prerequisites
Head over to the [Chocolatey installation page](https://chocolatey.org/install) and follow the instructions to install Chocolatey.
### Installation
```powershell
choco install starship
```
## [termux](https://termux.com)
### Prerequisites
```sh
pkg install getconf
```
### Installation
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- -b /data/data/com.termux/files/usr/bin
```
## [Nix](https://nixos.wiki/wiki/Nix)
### Getting the Binary
#### Imperatively
```sh
nix-env -iA nixos.starship
```
#### Declarative, single user, via [home-manager](home-manager)
Enable the `programs.starship` module in your `home.nix` file, and add your settings
```nix
{
programs.starship = {
enable = true;
enableZshIntegration = true;
# Configuration written to ~/.config/starship.toml
settings = {
# add_newline = false;
# character = {
# success_symbol = "[➜](bold green)";
# error_symbol = "[➜](bold red)";
# };
# package.disabled = true;
};
};
}
```
then run
```sh
home-manager switch
```
#### Declarative, system-wide, with NixOS
Add `pkgs.starship` to `environment.systemPackages` in your `configuration.nix`, then run
```sh
sudo nixos-rebuild switch
```
+267
View File
@@ -0,0 +1,267 @@
# Migrating to v0.45.0
Starship v0.45.0 is a release containing breaking changes, in preparation for the big v1.0.0. We have made some major changes around how configuration is done on the prompt, to allow for a greater degree of customization.
This guide is intended to walk you through the breaking changes.
## `prompt_order` has been replaced by a root-level `format`
Previously to v0.45.0, `prompt_order` would accept an array of module names in the order which they should be rendered by Starship.
Starship v0.45.0 instead accepts a `format` value, allowing for customization of the prompt outside of the modules themselves.
**Example pre-v0.45.0 configuration**
```toml
prompt_order = [
"username",
"hostname",
"directory",
"git_branch",
"git_commit",
"git_state",
"git_status",
"cmd_duration",
"custom",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
**Example v0.45.0 configuration**
```toml
format = """\
$username\
$hostname\
$directory\
$git_branch\
$git_commit\
$git_state\
$git_status\
$cmd_duration\
$custom\
$line_break\
$jobs\
$battery\
$time\
$character\
"""
```
## Module `prefix` and `suffix` have been replaced by `format`
Previously to v0.45.0, some modules would accept `prefix` and/or `suffix` in order to stylize the way that modules are rendered.
Starship v0.45.0 instead accepts a `format` value, allowing for further customization of how modules are rendered. Instead of defining a prefix and suffix for the context-based variables, the variables can now be substituted from within a format string, which represents the module's output.
**Example pre-v0.45.0 configuration**
```toml
[cmd_duration]
prefix = "took "
```
**Example v0.45.0 configuration**
```toml
[cmd_duration]
# $duration The command duration (e.g. "15s")
# $style The default style of the module (e.g. "bold yellow")
format = "took [$duration]($style) "
```
### Affected Modules
#### Character
| Removed Property | Replacement |
| ----------------------- | ---------------- |
| `symbol` | `success_symbol` |
| `use_symbol_for_status` | `error_symbol` |
| `style_success` | `success_symbol` |
| `style_failure` | `error_symbol` |
**Changes to the Default Configuration**
```diff
[character]
-- symbol = ""
-- error_symbol = "✖"
-- use_symbol_for_status = true
-- vicmd_symbol = ""
++ success_symbol = "[](bold green)"
++ error_symbol = "[](bold red)"
++ vicmd_symbol = "[](bold green)"
```
Previously, the `use_symbol_for_status` property was used to configure the prompt to show the `error_symbol` when the last command resulted in a non-zero status code.
With the release of v0.45.0, we now always use `error_symbol` after non-zero status codes, unifying `use_symbol_for_status` and `error_symbol` properties.
To configure the prompt to use the older `use_symbol_for_status = true` configuration, add the following to your config file:
```toml
[character]
error_symbol = "[✖](bold red)"
```
*Note:* The `character` element automatically adds a space after, so unlike the other `format` strings, we specifically do not add one in the above examples.
#### Command Duration
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
**Changes to the Default Configuration**
```diff
[cmd_duration]
-- prefix = "took "
++ format = "took [$duration]($style) "
```
#### Directory
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
**Changes to the Default Configuration**
```diff
[directory]
-- prefix = "in "
++ format = "[$path]($style)[$read_only]($read_only_style) "
```
#### Environment Variable
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[env_var]
-- prefix = ""
-- suffix = ""
++ format = "with [$env_value]($style) "
```
#### Git Commit
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[git_commit]
-- prefix = "("
-- suffix = ")"
++ format = '[\($hash\)]($style) '
```
#### Git Status
| Removed Property | Replacement |
| ----------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
| `show_sync_count` | `format` |
**Changes to the Default Configuration**
```diff
[git_status]
-- prefix = "["
-- suffix = "]"
-- show_sync_count = false
++ format = '([\[$all_status$ahead_behind\]]($style) )'
```
Previously, the `show_sync_count` property was used to configure the prompt to show the number of commits the branch was ahead or behind the remote branch.
With the release of v0.45.0, this has been replaced with three separate properties, `ahead`, `behind`, and `diverged`.
To configure the prompt to use the older `show_sync_count = true` configuration, set the following to your config file:
```toml
[git_status]
ahead = "⇡${count}"
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
behind = "⇣${count}"
```
#### Hostname
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[hostname]
-- prefix = ""
-- suffix = ""
++ format = "[$hostname]($style) in "
```
#### Singularity
| Removed Property | Replacement |
| ---------------- | ----------- |
| `label` | `format` |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[singularity]
-- prefix = ""
-- suffix = ""
++ format = '[$symbol\[$env\]]($style) '
```
#### Time
| Removed Property | Replacement |
| ---------------- | ------------- |
| `format` | `time_format` |
**Changes to the Default Configuration**
```diff
[time]
-- format = "🕙[ %T ]"
++ time_format = "%T"
++ format = "at 🕙[$time]($style) "
```
#### Custom Commands
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[custom.example]
-- prefix = ""
-- suffix = ""
++ format = "[$symbol$output]($style) "
```
+92
View File
@@ -0,0 +1,92 @@
# Presets
Here is a collection of community-submitted configuration presets for Starship. If you have a preset to share, please [submit a PR](https://github.com/starship/starship/edit/master/docs/presets/README.md) updating this file! 😊
## Nerd Font Symbols
This preset doesn't change anything except for the symbols used for each module. If emojis aren't your thing, this might catch your eye!
![Screenshot of Nerd Font Symbols preset](/presets/nerd-font-symbols.png)
### Prerequisites
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (the example uses Fira Code Nerd Font)
### Configuration
```toml
[aws]
symbol = " "
[conda]
symbol = " "
[dart]
symbol = " "
[directory]
read_only = " "
[docker]
symbol = " "
[elixir]
symbol = " "
[elm]
symbol = " "
[git_branch]
symbol = " "
[golang]
symbol = " "
[haskell]
symbol = " "
[hg_branch]
symbol = " "
[java]
symbol = " "
[julia]
symbol = " "
[memory_usage]
symbol = " "
[nim]
symbol = " "
[nix_shell]
symbol = " "
[nodejs]
symbol = " "
[package]
symbol = " "
[perl]
symbol = " "
[php]
symbol = " "
[python]
symbol = " "
[ruby]
symbol = " "
[rust]
symbol = " "
[scala]
symbol = " "
[swift]
symbol = "ﯣ "
```
+136
View File
@@ -0,0 +1,136 @@
---
home: true
heroImage: /logo.svg
heroText:
tagline: The minimal, blazing-fast, and infinitely customizable prompt for any shell!
actionText: Get Started →
actionLink: ./guide/
features:
-
title: Compatibility First
details: Works on the most common shells on the most common operating systems. Use it everywhere!
-
title: Rust-Powered
details: Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.
-
title: Customizable
details: Every little detail is customizable to your liking, to make this prompt as minimal or feature-rich as you'd like it to be.
footer: ISC Licensed | Copyright © 2019-present Starship Contributors
#Used for the description meta tag, for SEO
metaTitle: "Starship: Cross-Shell Prompt"
description: Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZSH, Ion, and PowerShell.
---
<div class="center">
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### Quick Install
1. Install the **starship** binary:
#### Install Latest Version
With Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Install via Package Manager
With [Homebrew](https://brew.sh/):
```sh
brew install starship
```
With [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
1. Add the init script to your shell's config file:
#### Bash
Add the following to the end of `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Add the following to the end of `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Add the following to the end of `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### Powershell
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
Add the following to the end of `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: warning Only elvish v0.15 or higher is supported. :::
Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
@@ -57,7 +57,16 @@ In `zsh`, add this to the `precmd_functions` array:
precmd_functions+=(set_win_title)
```
If you like the result, add these lines to your shell configuration file (`~/.bashrc` or `~/.zsrhc`) to make it permanent.
If you like the result, add these lines to your shell configuration file (`~/.bashrc` or `~/.zshrc`) to make it permanent.
For example, if you want to display your current directory in your terminal tab title, add the following snippet to your `~/.bashrc` or `~/.zshrc`:
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## Style Strings
@@ -73,7 +82,7 @@ Style strings are a list of words, separated by whitespace. The words are not ca
where `<color>` is a color specifier (discussed below). `fg:<color>` and `<color>` currently do the same thing , though this may change in the future. The order of words in the string does not matter.
The `none` token overrides all other tokens in a string, so that e.g. `fg:red none fg:blue` will still create a string with no styling. It may become an error to use `none` in conjunction with other tokens in the future.
The `none` token overrides all other tokens in a string if it is not part of a `bg:` specifier, so that e.g. `fg:red none fg:blue` will still create a string with no styling. `bg:none` sets the background to the default color so `fg:red bg:none` is equivalent to `red` or `fg:red` and `bg:green fg:red bg:none` is also equivalent to `fg:red` or `red`. It may become an error to use `none` in conjunction with other tokens in the future.
A color specifier can be one of the following:
File diff suppressed because it is too large Load Diff
+96
View File
@@ -0,0 +1,96 @@
# FAQ
## What is the configuration used in the demo GIF?
- **Terminal Emulator**: [iTerm2](https://iterm2.com/)
- **Theme**: Minimal
- **Color Scheme**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **Font**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **Shell**: [Fish Shell](https://fishshell.com/)
- **Configuration**: [matchai's Dotfiles](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **Prompt**: [Starship](https://starship.rs/)
## How do I get command completion as shown in the demo GIF?
Completion support, or autocomplete, is provided by your shell of choice. In the case of the demo, the demo was done with [Fish Shell](https://fishshell.com/), which provides completions by default. If you use Z Shell (zsh), I'd suggest taking a look at [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions).
## Do top level `format` and `<module>.disabled` do the same thing?
Yes, they can both be used to disable modules in the prompt. If all you plan to do is disable modules, `<module>.disabled` is the preferred way to do so for these reasons:
- Disabling modules is more explicit than omitting them from the top level `format`
- Newly created modules will be added to the prompt as Starship is updated
## The docs say Starship is cross-shell. Why isn't my preferred shell supported?
The way Starship is built, it should be possible to add support for virtually any shell. The starship binary is stateless and shell agnostic, so as long as your shell supports prompt customization and shell expansion, Starship can be used.
Here's a small example getting Starship working with bash:
```sh
# Get the status code from the last command executed
STATUS=$?
# Get the number of jobs running.
NUM_JOBS=$(jobs -p | wc -l)
# Set the prompt to the output of `starship prompt`
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
```
The [Bash implementation](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#command-duration) and to ensure that Starship is compatible with pre-installed Bash configurations.
For a list of all flags accepted by `starship prompt`, use the following command:
```sh
starship prompt --help
```
The prompt will use as much context as is provided, but no flags are "required".
## How do I run Starship on Linux distributions with older versions of glibc?
If you get an error like "_version 'GLIBC_2.18' not found (required by starship)_" when using the prebuilt binary (for example, on CentOS 6 or 7), you can use a binary compiled with `musl` instead of `glibc`:
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- --platform unknown-linux-musl
```
## I see symbols I don't understand or expect, what do they mean?
If you see symbols that you don't recognise you can use `starship explain` to explain the currently showing modules.
## Why don't I see a glyph symbol in my prompt?
The most common cause of this is system misconfiguration. Some Linux distros in particular do not come with font support out-of-the-box. You need to ensure that:
- Your locale is set to a UTF-8 value, like `de_DE.UTF-8` or `ja_JP.UTF-8`. If `LC_ALL` is not a UTF-8 value, [you will need to change it](https://www.tecmint.com/set-system-locales-in-linux/).
- You have an emoji font installed. Most systems come with an emoji font by default, but some (notably Arch Linux) do not. You can usually install one through your system's package manager--[noto emoji](https://www.google.com/get/noto/help/emoji/) is a popular choice.
- You are using a [Nerd Font](https://www.nerdfonts.com/).
To test your system, run the following commands in a terminal:
```sh
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
```
The first line should produce a [snake emoji](https://emojipedia.org/snake/), while the second should produce a [powerline branch symbol (e0a0)](https://github.com/ryanoasis/powerline-extra-symbols#glyphs).
If either symbol fails to display correctly, your system is still misconfigured. Unfortunately, getting font configuration correct is sometimes difficult. Users on the Discord may be able to help. If both symbols display correctly, but you still don't see them in starship, [file a bug report!](https://github.com/starship/starship/issues/new/choose)
## How do I uninstall Starship?
Starship is just as easy to uninstall as it is to install in the first place.
1. Remove any lines in your shell config (e.g. `~/.bashrc`) used to initialize Starship.
1. Delete the Starship binary.
If Starship was installed using a package manager, please refer to their docs for uninstallation instructions.
If Starship was installed using the `curl | bash` script, the following command will delete the binary:
```sh
# Locate and delete the starship binary
rm "$(which starship)"
```
+311
View File
@@ -0,0 +1,311 @@
<p align="center">
<img
width="400"
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
alt="Starship Cross-shell prompt"
/>
</p>
<p align="center">
<a href="https://github.com/starship/starship/actions"
><img
src="https://img.shields.io/github/workflow/status/starship/starship/Main workflow/master?label=workflow&style=flat-square"
alt="GitHub Actions workflow status"
/></a>
<a href="https://crates.io/crates/starship"
><img
src="https://img.shields.io/crates/v/starship?style=flat-square"
alt="Crates.io version"
/></a>
<a href="https://repology.org/project/starship/versions"
><img
src="https://img.shields.io/repology/repositories/starship?label=in%20repositories&style=flat-square"
alt="Packaging status" /></a
><br />
<a href="https://discord.gg/starship"
><img
src="https://img.shields.io/discord/567163873606500352?label=discord&logoColor=white&style=flat-square"
alt="Chat on Discord"
/></a>
<a href="https://twitter.com/StarshipPrompt"
><img
src="https://img.shields.io/badge/twitter-@StarshipPrompt-1DA1F3?style=flat-square"
alt="Follow @StarshipPrompt on Twitter"
/></a>
</p>
<p align="center">
<a href="https://starship.rs">Website</a>
·
<a href="#🚀-installation">Installation</a>
·
<a href="https://starship.rs/config/">Configuration</a>
</p>
<p align="center">
<a href="https://github.com/starship/starship/blob/master/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
alt="English"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
alt="日本語"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
alt="繁體中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
alt="Русский"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
alt="Deutsch"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
alt="简体中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
alt="Español"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
alt="Français"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
alt="Tiếng Việt"
/></a>
</p>
<h1></h1>
<img
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
alt="Starship with iTerm2 and the Snazzy theme"
width="50%"
align="right"
/>
**The minimal, blazing-fast, and infinitely customizable prompt for any shell!**
- **Fast:** it's fast _really really_ fast! 🚀
- **Customizable:** configure every aspect of your prompt.
- **Universal:** works on any shell, on any operating system.
- **Intelligent:** shows relevant information at a glance.
- **Feature rich:** support for all your favorite tools.
- **Easy:** quick to install  start using it in minutes.
<p align="center">
<a href="https://starship.rs/config/"><strong>Explore the Starship docs&nbsp;&nbsp;▶</strong></a>
</p>
<a name="🚀-installation"></a>
## 🚀 Installation
### Prerequisites
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (for example, try the [Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)).
### Getting Started
**Note**: due to the proliferation of different platforms, only a subset of supported platforms are shown below. Can't see yours? Have a look at the [extra platform instructions](https://starship.rs/installing/).
1. Install the **starship** binary:
#### Install Latest Version
##### From prebuilt binary, with Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Install via Package Manager
##### Example: [Homebrew](https://brew.sh/):
```sh
brew install starship
```
##### With [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
2. Add the init script to your shell's config file:
#### Bash
Add the following to the end of `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Add the following to the end of `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Add the following to the end of `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### PowerShell
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```powershell
Invoke-Expression (&starship init powershell)
```
#### Ion
Add the following to the end of `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
**Warning** Only elvish v0.15 or higher is supported. Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
## 🤝 Contributing
We are always looking for contributors of **all skill levels**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
If you are fluent in a non-English language, we greatly appreciate any help keeping our docs translated and up-to-date in other languages. If you would like to help, translations can be contributed on the [Starship Crowdin](https://translate.starship.rs/).
If you are interested in helping contribute to starship, please take a look at our [Contributing Guide](https://github.com/starship/starship/blob/master/CONTRIBUTING.md). Also, feel free to drop into our [Discord server](https://discord.gg/8Jzqu3T) and say hi. 👋
### Code Contributors
This project exists thanks to all the people who contribute. [[Contribute](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)].
<a href="https://github.com/starship/starship/graphs/contributors"><img src="https://opencollective.com/starship/contributors.svg?width=890&button=false" /></a>
### Financial Contributors
Become a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/starship/contribute)]
#### Individuals
<a href="https://opencollective.com/starship"><img src="https://opencollective.com/starship/individuals.svg?width=890"></a>
#### Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/starship/contribute)]
<a href="https://opencollective.com/starship/organization/0/website"><img src="https://opencollective.com/starship/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/1/website"><img src="https://opencollective.com/starship/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/2/website"><img src="https://opencollective.com/starship/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/3/website"><img src="https://opencollective.com/starship/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/4/website"><img src="https://opencollective.com/starship/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/5/website"><img src="https://opencollective.com/starship/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/6/website"><img src="https://opencollective.com/starship/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/7/website"><img src="https://opencollective.com/starship/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/8/website"><img src="https://opencollective.com/starship/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/9/website"><img src="https://opencollective.com/starship/organization/9/avatar.svg"></a>
## 💭 Inspired By
Please check out these previous works that helped inspire the creation of starship. 🙏
- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** - A ZSH prompt for astronauts.
- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** - Cross-shell robbyrussell theme written in JavaScript.
- **[reujab/silver](https://github.com/reujab/silver)** - A cross-shell customizable powerline-like prompt with icons.
<p align="center">
<br>
<img width="100" src="https://raw.githubusercontent.com/starship/starship/master/media/icon.png" alt="Starship rocket icon">
</p>
## 📝 License
Copyright © 2019-present, [Starship Contributors](https://github.com/starship/starship/graphs/contributors).<br /> This project is [ISC](https://github.com/starship/starship/blob/master/LICENSE) licensed.
+84
View File
@@ -0,0 +1,84 @@
# 🚀 Advanced Installation
To install starship, you need to do two things:
1. Get the **starship** binary onto your computer
1. Tell your shell to use the starship binary as its prompt by modifying its init scripts
For most users, the instructions on [the main page](/guide/#🚀-installation) will work great. However, for some more specialized platforms, different instructions are needed.
There are so many platforms out there that they didn't fit into the main README.md file, so here are some installation instructions for other platforms from the community. Is yours not here? Please do add it here if you figure it out!
## [Chocolatey](https://chocolatey.org)
### Prerequisites
Head over to the [Chocolatey installation page](https://chocolatey.org/install) and follow the instructions to install Chocolatey.
### Installation
```powershell
choco install starship
```
## [termux](https://termux.com)
### Prerequisites
```sh
pkg install getconf
```
### Installation
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- -b /data/data/com.termux/files/usr/bin
```
## [Nix](https://nixos.wiki/wiki/Nix)
### Getting the Binary
#### Imperatively
```sh
nix-env -iA nixos.starship
```
#### Declarative, single user, via [home-manager](home-manager)
Enable the `programs.starship` module in your `home.nix` file, and add your settings
```nix
{
programs.starship = {
enable = true;
enableZshIntegration = true;
# Configuration written to ~/.config/starship.toml
settings = {
# add_newline = false;
# character = {
# success_symbol = "[➜](bold green)";
# error_symbol = "[➜](bold red)";
# };
# package.disabled = true;
};
};
}
```
then run
```sh
home-manager switch
```
#### Declarative, system-wide, with NixOS
Add `pkgs.starship` to `environment.systemPackages` in your `configuration.nix`, then run
```sh
sudo nixos-rebuild switch
```
+267
View File
@@ -0,0 +1,267 @@
# Migrating to v0.45.0
Starship v0.45.0 is a release containing breaking changes, in preparation for the big v1.0.0. We have made some major changes around how configuration is done on the prompt, to allow for a greater degree of customization.
This guide is intended to walk you through the breaking changes.
## `prompt_order` has been replaced by a root-level `format`
Previously to v0.45.0, `prompt_order` would accept an array of module names in the order which they should be rendered by Starship.
Starship v0.45.0 instead accepts a `format` value, allowing for customization of the prompt outside of the modules themselves.
**Example pre-v0.45.0 configuration**
```toml
prompt_order = [
"username",
"hostname",
"directory",
"git_branch",
"git_commit",
"git_state",
"git_status",
"cmd_duration",
"custom",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
**Example v0.45.0 configuration**
```toml
format = """\
$username\
$hostname\
$directory\
$git_branch\
$git_commit\
$git_state\
$git_status\
$cmd_duration\
$custom\
$line_break\
$jobs\
$battery\
$time\
$character\
"""
```
## Module `prefix` and `suffix` have been replaced by `format`
Previously to v0.45.0, some modules would accept `prefix` and/or `suffix` in order to stylize the way that modules are rendered.
Starship v0.45.0 instead accepts a `format` value, allowing for further customization of how modules are rendered. Instead of defining a prefix and suffix for the context-based variables, the variables can now be substituted from within a format string, which represents the module's output.
**Example pre-v0.45.0 configuration**
```toml
[cmd_duration]
prefix = "took "
```
**Example v0.45.0 configuration**
```toml
[cmd_duration]
# $duration The command duration (e.g. "15s")
# $style The default style of the module (e.g. "bold yellow")
format = "took [$duration]($style) "
```
### Affected Modules
#### Character
| Removed Property | Replacement |
| ----------------------- | ---------------- |
| `symbol` | `success_symbol` |
| `use_symbol_for_status` | `error_symbol` |
| `style_success` | `success_symbol` |
| `style_failure` | `error_symbol` |
**Changes to the Default Configuration**
```diff
[character]
-- symbol = ""
-- error_symbol = "✖"
-- use_symbol_for_status = true
-- vicmd_symbol = ""
++ success_symbol = "[](bold green)"
++ error_symbol = "[](bold red)"
++ vicmd_symbol = "[](bold green)"
```
Previously, the `use_symbol_for_status` property was used to configure the prompt to show the `error_symbol` when the last command resulted in a non-zero status code.
With the release of v0.45.0, we now always use `error_symbol` after non-zero status codes, unifying `use_symbol_for_status` and `error_symbol` properties.
To configure the prompt to use the older `use_symbol_for_status = true` configuration, add the following to your config file:
```toml
[character]
error_symbol = "[✖](bold red)"
```
*Note:* The `character` element automatically adds a space after, so unlike the other `format` strings, we specifically do not add one in the above examples.
#### Command Duration
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
**Changes to the Default Configuration**
```diff
[cmd_duration]
-- prefix = "took "
++ format = "took [$duration]($style) "
```
#### Directory
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
**Changes to the Default Configuration**
```diff
[directory]
-- prefix = "in "
++ format = "[$path]($style)[$read_only]($read_only_style) "
```
#### Environment Variable
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[env_var]
-- prefix = ""
-- suffix = ""
++ format = "with [$env_value]($style) "
```
#### Git Commit
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[git_commit]
-- prefix = "("
-- suffix = ")"
++ format = '[\($hash\)]($style) '
```
#### Git Status
| Removed Property | Replacement |
| ----------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
| `show_sync_count` | `format` |
**Changes to the Default Configuration**
```diff
[git_status]
-- prefix = "["
-- suffix = "]"
-- show_sync_count = false
++ format = '([\[$all_status$ahead_behind\]]($style) )'
```
Previously, the `show_sync_count` property was used to configure the prompt to show the number of commits the branch was ahead or behind the remote branch.
With the release of v0.45.0, this has been replaced with three separate properties, `ahead`, `behind`, and `diverged`.
To configure the prompt to use the older `show_sync_count = true` configuration, set the following to your config file:
```toml
[git_status]
ahead = "⇡${count}"
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
behind = "⇣${count}"
```
#### Hostname
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[hostname]
-- prefix = ""
-- suffix = ""
++ format = "[$hostname]($style) in "
```
#### Singularity
| Removed Property | Replacement |
| ---------------- | ----------- |
| `label` | `format` |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[singularity]
-- prefix = ""
-- suffix = ""
++ format = '[$symbol\[$env\]]($style) '
```
#### Time
| Removed Property | Replacement |
| ---------------- | ------------- |
| `format` | `time_format` |
**Changes to the Default Configuration**
```diff
[time]
-- format = "🕙[ %T ]"
++ time_format = "%T"
++ format = "at 🕙[$time]($style) "
```
#### Custom Commands
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[custom.example]
-- prefix = ""
-- suffix = ""
++ format = "[$symbol$output]($style) "
```
+92
View File
@@ -0,0 +1,92 @@
# Presets
Here is a collection of community-submitted configuration presets for Starship. If you have a preset to share, please [submit a PR](https://github.com/starship/starship/edit/master/docs/presets/README.md) updating this file! 😊
## Nerd Font Symbols
This preset doesn't change anything except for the symbols used for each module. If emojis aren't your thing, this might catch your eye!
![Screenshot of Nerd Font Symbols preset](/presets/nerd-font-symbols.png)
### Prerequisites
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (the example uses Fira Code Nerd Font)
### Configuration
```toml
[aws]
symbol = " "
[conda]
symbol = " "
[dart]
symbol = " "
[directory]
read_only = " "
[docker]
symbol = " "
[elixir]
symbol = " "
[elm]
symbol = " "
[git_branch]
symbol = " "
[golang]
symbol = " "
[haskell]
symbol = " "
[hg_branch]
symbol = " "
[java]
symbol = " "
[julia]
symbol = " "
[memory_usage]
symbol = " "
[nim]
symbol = " "
[nix_shell]
symbol = " "
[nodejs]
symbol = " "
[package]
symbol = " "
[perl]
symbol = " "
[php]
symbol = " "
[python]
symbol = " "
[ruby]
symbol = " "
[rust]
symbol = " "
[scala]
symbol = " "
[swift]
symbol = "ﯣ "
```
+2277 -314
View File
File diff suppressed because it is too large Load Diff
+136
View File
@@ -0,0 +1,136 @@
---
home: true
heroImage: /logo.svg
heroText:
tagline: Minimale, super schnelle und unendlich anpassbare Prompt für jede Shell!
actionText: Loslegen →
actionLink: ./guide/
features:
-
title: Kompatibel
details: Läuft mit den beliebtesten Shells auf den beliebtesten Betriebssystemen. Überall einsetzbar!
-
title: Rust-Powered
details: Bringt die schnelligkeit und zuverlässigkeit von Rust in deinen Shell-prompt.
-
title: Individualisierbar
details: Jedes noch so kleine Detail kann nach Deinen Wünschen angepasst werden, um die Eingabeaufforderung so minimal oder funktionsreich zu gestalten, wie Du es möchtest.
footer: ICS lizenziert | Copyright © 2019-heute Starship-Mitwirkende
#Used for the description meta tag, for SEO
metaTitle: "Starship: Cross-Shell Prompt"
description: Starship ist eine minimale, super schnelle, und extrem anpassbare Prompt für jede Shell! Shows the information you need, while staying sleek and minimal. Schnellinstallation verfügbar für Bash, Fish, ZSH, Ion und PowerShell.
---
<div class="center">
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### Schnellinstallation
1. Installiere die Binärversion von **starship**:
#### Neueste Version installieren
With Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Installation mithilfe eines Paket-Managers
Mit [Homebrew](https://brew.sh/):
```sh
brew install starship
```
Mit [scoop](https://scoop.sh):
```powershell
scoop install starship
```
1. Füge das init-Skript zur Konfigurationsdatei deiner Shell hinzu:
#### Bash
Trage folgendes am Ende der `~/.bashrc` ein:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Trage folgendes am Ende der `~/.config/fish/config.fish` ein:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Trage folgendes am Ende der `~/.zshrc` ein:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### Powershell
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
Trage folgendes am Ende der `~/.config/ion/initrc` ein:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: warning Only elvish v0.15 or higher is supported. :::
Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
+93
View File
@@ -0,0 +1,93 @@
# Erweiterte Konfiguration
Auch wenn Starship eine vielseitige Shell ist, reichen manche Konfigurationen in der `starship.toml` nicht aus, um erweiterte Einstellungen vorzunehmen. Diese Seite beschreibt einige fortgeschrittene Konfigurationen für Starship.
::: Warnung
Die hier beschriebenen Konfigurationen werden sich mit kommenden Updates von Starship verändern.
:::
## Benutzerdefinierte Pre-Prompt- und Pre-Execution-Befehle in der Bash
Die Bash Shell hat, im Gegensatz zu vielen anderen Shells, kein konventionelles preexec/precmd Framework. Daher gestaltet es sich schwierig, vollständig anpassbare Hooks für `bash` anzubieten. Starship bietet daher die begrenzte Möglichkeit, eigene Funktionen in das prompt rendering Verfahren einzufügen:
- Um eine benutzerdefinierte Funktion kurz vor Anzeige der Eingabeaufforderung auszuführen, definiere eine neue Funktion und weise den Namen `starship_precmd_user_func` zu. Um beispielsweise eine Rakete anzuzeigen, bevor die Eingabeaufforderung erscheint, würde man folgendes tun
```bash
function blastoff(){
echo "🚀"
}
starship_precmd_user_func="blastoff"
```
- Um eine benutzerdefinierte Funktion direkt vor der Ausführung eines Befehls auszulösen, kann man den [`DEBUG` trap](https://jichu4n.com/posts/debug-trap-and-prompt_command-in-bash/) Mechanismus verwenden. Allerdings **muss** das DEBUG Signal *vor* der Initialisierung von Starship getrapped werden! Starship kann den Wert der DEBUG-trap speichern. Wenn der Wert der DEBUG-trap überschrieben wird nachdem Starship gestartet ist kann es zu Fehlern im Bezug auf die verwendete DEBUG-trap kommen.
```bash
function blastoff(){
echo "🚀"
}
trap blastoff DEBUG # DEBUG-Trap *bevor* Starship läuft
eval $(starship init bash)
```
## Fenstertitel anpassen
Manche shell prompts können den Fenstertitel ändern. Fish ist standardmäßig so konfiguriert. Starship ändert standardmäßig den Fenstertitel nicht, aber es ist sehr einfach die Funktion zu `bash` oder `zsh` hinzuzufügen.
Zuerst wird eine Funktion definiert um den Fenstertitel zu ändern ( für bash und zsh ist die Funktion identisch):
```bash
function set_win_title(){
echo -ne "\033]0; DEIN_FENSTERTITEL_HIER \007"
}
```
Sie können Variablen verwenden, um diesen Titel anzupassen (`$USER`, `$HOSTNAME`, `$PWD`).
Für `bash` muss die Funktion als "precmd starship"-Funktion gesetzt werden:
```bash
starship_precmd_user_func="set_win_title"
```
Füge dies in `Zsh` zum `precmd_functions`-Array hinzu:
```bash
precmd_functions+=(set_win_title)
```
If you like the result, add these lines to your shell configuration file (`~/.bashrc` or `~/.zshrc`) to make it permanent.
For example, if you want to display your current directory in your terminal tab title, add the following snippet to your `~/.bashrc` or `~/.zshrc`:
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## Style-Strings
Style-String sind Wortlisten, getrennt durch Leerzeichen. Die Wörter haben keine Groß- und Kleinschreibung (z.B. `bold` und `BoLd` werden als dieselbe Zeichenkette betrachtet). Jedes Wort kann eines der folgenden sein:
- `bold`
- `underline`
- `dimmed`
- `bg:<color>`
- `fg:<color>`
- `<color>`
- `none`
wobei `<color>` eine Farbspezifikation ist (siehe unten). `fg:<color>` und `<color>` tun derzeit dasselbe , das kann sich in Zukunft aber ändern. Die Reihenfolge der Wörter in der Liste spielt keine Rolle.
The `none` token overrides all other tokens in a string if it is not part of a `bg:` specifier, so that e.g. `fg:red none fg:blue` will still create a string with no styling. `bg:none` sets the background to the default color so `fg:red bg:none` is equivalent to `red` or `fg:red` and `bg:green fg:red bg:none` is also equivalent to `fg:red` or `red`. In der Zukunft könnte die Unterstützung von `none` in Verbindung mit anderen Tokens fallen gelassen werden.
Eine Farbspezifikation kann wie folgt aussehen:
- Einer der Standardfarben der Konsole: `black`, `red`, `green`, `blue`, `yellow`, `purple`, `cyan`, `white`. Optional kann ein `bright-` vorangestellt werden um die helle Version zu erhalten (z.B. `bright-white`).
- Eine `#` gefolgt von einer sechsstelligen Hexadezimalnummer. Dies ergibt einen [RGB hex Farbcode](https://www.w3schools.com/colors/colors_hexadecimal.asp).
- Eine Zahl zwischen 0-255. Dies ergibt einen [8-bit ANSI-Farbcode](https://i.stack.imgur.com/KTSQa.png).
Wenn mehrere Farben für Vordergrund oder Hintergrund angegeben werden, hat die letzte Farbe der Zeichenkette Priorität.
File diff suppressed because it is too large Load Diff
+96
View File
@@ -0,0 +1,96 @@
# FAQ
## Wie ist die Konfiguration im Demo GIF?
- **Terminal Emulator**: [iTerm2](https://iterm2.com/)
- **Theme**: Minimal
- **Farbschema**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **Font**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **Shell**: [Fish Shell](https://fishshell.com/)
- **Konfiguration**: [Matchai's Dotfiles](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **Prompt**: [Starship](https://starship.rs/)
## How do I get command completion as shown in the demo GIF?
Completion support, or autocomplete, is provided by your shell of choice. In the case of the demo, the demo was done with [Fish Shell](https://fishshell.com/), which provides completions by default. If you use Z Shell (zsh), I'd suggest taking a look at [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions).
## Do top level `format` and `<module>.disabled` do the same thing?
Ja, beide können benutzt werden, um Module in der Prompt zu deaktivieren. Wenn nur Module deaktiviert werden wollen, sollte `<module>.disabled` benutzt werden, aus den folgenden Gründen:
- Disabling modules is more explicit than omitting them from the top level `format`
- Mit der Aktualisierung von Starship werden neu erstellte Module an die Eingabezeile angefügt
## The docs say Starship is cross-shell. Why isn't my preferred shell supported?
Starship ist auf so eine Weise gebaut, das die Unterstützung so gut wie jeder Shell möglch sein sollte. Die Starship Binärdatei läuft völlig unabhängig von der Shell, und sollte auf jeder benutzt werden können, die eine Anpassung des Stils erlaubt.
Hier ist ein kleines Beispiel, wie man Starship auf bash zum Laufen bringt:
```sh
# Den Statuscode des zuletzt ausgeführten Befehls abrufen
STATUS=$?
# Gibt die Anzahl der laufenden Jobs an.
NUM_JOBS=$(jobs -p | wc -l)
# Set the prompt to the output of `starship prompt`
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
```
The [Bash implementation](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#command-duration) and to ensure that Starship is compatible with pre-installed Bash configurations.
Für eine Liste aller Flaggen, die von `Starship-Eingabeaufforderung` akzeptiert wird, verwenden Sie den folgenden Befehl:
```sh
starship prompt --help
```
Die Eingabeaufforderung verwendet so viel Kontext wie möglich, aber keine Flagge ist "notwendig".
## How do I run Starship on Linux distributions with older versions of glibc?
If you get an error like "_version 'GLIBC_2.18' not found (required by starship)_" when using the prebuilt binary (for example, on CentOS 6 or 7), you can use a binary compiled with `musl` instead of `glibc`:
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- --platform unknown-linux-musl
```
## I see symbols I don't understand or expect, what do they mean?
If you see symbols that you don't recognise you can use `starship explain` to explain the currently showing modules.
## Why don't I see a glyph symbol in my prompt?
The most common cause of this is system misconfiguration. Some Linux distros in particular do not come with font support out-of-the-box. You need to ensure that:
- Your locale is set to a UTF-8 value, like `de_DE.UTF-8` or `ja_JP.UTF-8`. If `LC_ALL` is not a UTF-8 value, [you will need to change it](https://www.tecmint.com/set-system-locales-in-linux/).
- You have an emoji font installed. Most systems come with an emoji font by default, but some (notably Arch Linux) do not. You can usually install one through your system's package manager--[noto emoji](https://www.google.com/get/noto/help/emoji/) is a popular choice.
- You are using a [Nerd Font](https://www.nerdfonts.com/).
To test your system, run the following commands in a terminal:
```sh
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
```
The first line should produce a [snake emoji](https://emojipedia.org/snake/), while the second should produce a [powerline branch symbol (e0a0)](https://github.com/ryanoasis/powerline-extra-symbols#glyphs).
If either symbol fails to display correctly, your system is still misconfigured. Unfortunately, getting font configuration correct is sometimes difficult. Users on the Discord may be able to help. If both symbols display correctly, but you still don't see them in starship, [file a bug report!](https://github.com/starship/starship/issues/new/choose)
## How do I uninstall Starship?
Starship is just as easy to uninstall as it is to install in the first place.
1. Remove any lines in your shell config (e.g. `~/.bashrc`) used to initialize Starship.
1. Delete the Starship binary.
If Starship was installed using a package manager, please refer to their docs for uninstallation instructions.
If Starship was installed using the `curl | bash` script, the following command will delete the binary:
```sh
# Locate and delete the starship binary
rm "$(which starship)"
```
+311
View File
@@ -0,0 +1,311 @@
<p align="center">
<img
width="400"
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
alt="Starship Cross-Shell Prompt"
/>
</p>
<p align="center">
<a href="https://github.com/starship/starship/actions"
><img
src="https://img.shields.io/github/workflow/status/starship/starship/Main workflow/master?label=workflow&style=flat-square"
alt="Workflow-Status der GitHub Actions"
/></a>
<a href="https://crates.io/crates/starship"
><img
src="https://img.shields.io/crates/v/starship?style=flat-square"
alt="Crates.io-Version"
/></a>
<a href="https://repology.org/project/starship/versions"
><img
src="https://img.shields.io/repology/repositories/starship?label=in%20repositories&style=flat-square"
alt="Paket-Status" /></a
><br />
<a href="https://discord.gg/starship"
><img
src="https://img.shields.io/discord/567163873606500352?label=discord&logoColor=white&style=flat-square"
alt="Chat auf Discord"
/></a>
<a href="https://twitter.com/StarshipPrompt"
><img
src="https://img.shields.io/badge/twitter-@StarshipPrompt-1DA1F3?style=flat-square"
alt="Folge @StarshipPrompt auf Twitter"
/></a>
</p>
<p align="center">
<a href="https://starship.rs">Website</a>
·
<a href="#🚀-installation">Installation</a>
·
<a href="https://starship.rs/config/">Konfiguration</a>
</p>
<p align="center">
<a href="https://github.com/starship/starship/blob/master/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
alt="Englisch"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
alt="日本語"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
alt="繁體中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
alt="Russisch"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
alt="Deutsch"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
alt="简体中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
alt="Español"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
alt="Français"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
alt="Tiếng Việt"
/></a>
</p>
<h1></h1>
<img
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
alt="Starship mit iTem2 und dem Theme „Snazzy“"
width="50%"
align="right"
/>
**Minimale, super schnelle und unendlich anpassbare Prompt für jede Shell!**
- **Fast:** it's fast _really really_ fast! 🚀
- **Customizable:** configure every aspect of your prompt.
- **Universal:** works on any shell, on any operating system.
- **Intelligent:** shows relevant information at a glance.
- **Feature rich:** support for all your favorite tools.
- **Easy:** quick to install  start using it in minutes.
<p align="center">
<a href="https://starship.rs/config/"><strong>Explore the Starship docs&nbsp;&nbsp;▶</strong></a>
</p>
<a name="🚀-installation"></a>
## 🚀 Installation
### Voraussetzungen
- Eine [Nerd Schriftart](https://www.nerdfonts.com/) installiert und im Terminal aktiviert (zum Beispiel [Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)).
### Erste Schritte
**Note**: due to the proliferation of different platforms, only a subset of supported platforms are shown below. Can't see yours? Have a look at the [extra platform instructions](https://starship.rs/installing/).
1. Installiere **starship**:
#### Neueste Version installieren
##### Neuster GitHub Release über die Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Installation mithilfe eines Paket-Managers
##### Example: [Homebrew](https://brew.sh/):
```sh
brew install starship
```
##### Mit [scoop](https://scoop.sh):
```powershell
scoop install starship
```
2. Füge das init-Skript zur Konfigurationsdatei deiner Shell hinzu:
#### Bash
Trage folgendes am Ende der `~/.bashrc` ein:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Trage folgendes am Ende der `~/.config/fish/config.fish` ein:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Trage folgendes am Ende der `~/.zshrc` ein:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### PowerShell
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```powershell
Invoke-Expression (&starship init powershell)
```
#### Ion
Trage folgendes am Ende der `~/.config/ion/initrc` ein:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
**Warning** Only elvish v0.15 or higher is supported. Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
## 🤝 Mitwirken
Wir laden Leute **aller Erfahrungsstufen** herzlich ein mitzumachen! Falls du dich mit dem Projekt vertaut machen willst, versuche ein [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
Wenn du eine andere Sprache flüssig sprichts, würden wir uns sehr freuen wenn du helfen würdest die Dokumentation in anderen Sprachen auf dem aktuellsten Stand zu halten. Hier kannst du bei der Übersetzung helfen [Starship Crowdin](https://translate.starship.rs/).
Falls du an Starship mitwirken willst, wirf bitte einen Blick auf den [Leitfaden zum Mitwirken](https://github.com/starship/starship/blob/master/CONTRIBUTING.md). Schau auch gerne auf unserem [Discord-Server](https://discord.gg/8Jzqu3T) vorbei. 👋
### Mitwirkenden
Das Projekt existiert dank aller der, die Mitwirken. [[Mitmachen](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)].
<a href="https://github.com/starship/starship/graphs/contributors"><img src="https://opencollective.com/starship/contributors.svg?width=890&button=false" /></a>
### Finanzielle Unterstützung
Become a financial contributor and help us sustain our community. [[Mitmachen](https://opencollective.com/starship/contribute)]
#### Individuals
<a href="https://opencollective.com/starship"><img src="https://opencollective.com/starship/individuals.svg?width=890"></a>
#### Organisationen
Support this project with your organization. Your logo will show up here with a link to your website. [[Mitmachen](https://opencollective.com/starship/contribute)]
<a href="https://opencollective.com/starship/organization/0/website"><img src="https://opencollective.com/starship/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/1/website"><img src="https://opencollective.com/starship/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/2/website"><img src="https://opencollective.com/starship/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/3/website"><img src="https://opencollective.com/starship/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/4/website"><img src="https://opencollective.com/starship/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/5/website"><img src="https://opencollective.com/starship/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/6/website"><img src="https://opencollective.com/starship/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/7/website"><img src="https://opencollective.com/starship/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/8/website"><img src="https://opencollective.com/starship/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/9/website"><img src="https://opencollective.com/starship/organization/9/avatar.svg"></a>
## 💭 Inspiriert durch
Bitte schaue dir diese früheren Projekte an, die dazu beigetragen haben, Starship zu kreieren. 🙏
- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** - Ein ZSH-Prompt für Astronauten.
- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** - Ein Shell-übergreifendes und in JavaScript geschriebenes robbyrussell-Theme.
- **[reujab/silver](https://github.com/reujab/silver)** - Shell-übergreifendes, anpassbares und Powerline-ähnliches Prompt mit Symbolen.
<p align="center">
<br>
<img width="100" src="https://raw.githubusercontent.com/starship/starship/master/media/icon.png" alt="Starship Raketen-Symbol">
</p>
## 📝 Lizenz
Copyright © 2019-heute [Starship-Mitwirkende](https://github.com/starship/starship/graphs/contributors).<br /> Dieses Projekt ist [ISC](https://github.com/starship/starship/blob/master/LICENSE) lizenziert.
+84
View File
@@ -0,0 +1,84 @@
# 🚀 Advanced Installation
Um starship zu installieren, musst du zwei Dinge tun:
1. Get the **starship** binary onto your computer
1. Tell your shell to use the starship binary as its prompt by modifying its init scripts
For most users, the instructions on [the main page](/guide/#🚀-installation) will work great. However, for some more specialized platforms, different instructions are needed.
There are so many platforms out there that they didn't fit into the main README.md file, so here are some installation instructions for other platforms from the community. Is yours not here? Please do add it here if you figure it out!
## [Chocolatey](https://chocolatey.org)
### Voraussetzungen
Head over to the [Chocolatey installation page](https://chocolatey.org/install) and follow the instructions to install Chocolatey.
### Installation
```powershell
choco install starship
```
## [termux](https://termux.com)
### Voraussetzungen
```sh
pkg install getconf
```
### Installation
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- -b /data/data/com.termux/files/usr/bin
```
## [Nix](https://nixos.wiki/wiki/Nix)
### Getting the Binary
#### Imperatively
```sh
nix-env -iA nixos.starship
```
#### Declarative, single user, via [home-manager](home-manager)
Enable the `programs.starship` module in your `home.nix` file, and add your settings
```nix
{
programs.starship = {
enable = true;
enableZshIntegration = true;
# Configuration written to ~/.config/starship.toml
settings = {
# add_newline = false;
# character = {
# success_symbol = "[➜](bold green)";
# error_symbol = "[➜](bold red)";
# };
# package.disabled = true;
};
};
}
```
then run
```sh
home-manager switch
```
#### Declarative, system-wide, with NixOS
Add `pkgs.starship` to `environment.systemPackages` in your `configuration.nix`, then run
```sh
sudo nixos-rebuild switch
```
+267
View File
@@ -0,0 +1,267 @@
# Migrating to v0.45.0
Starship v0.45.0 is a release containing breaking changes, in preparation for the big v1.0.0. We have made some major changes around how configuration is done on the prompt, to allow for a greater degree of customization.
This guide is intended to walk you through the breaking changes.
## `prompt_order` has been replaced by a root-level `format`
Previously to v0.45.0, `prompt_order` would accept an array of module names in the order which they should be rendered by Starship.
Starship v0.45.0 instead accepts a `format` value, allowing for customization of the prompt outside of the modules themselves.
**Example pre-v0.45.0 configuration**
```toml
prompt_order = [
"username",
"hostname",
"directory",
"git_branch",
"git_commit",
"git_state",
"git_status",
"cmd_duration",
"custom",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
**Example v0.45.0 configuration**
```toml
format = """\
$username\
$hostname\
$directory\
$git_branch\
$git_commit\
$git_state\
$git_status\
$cmd_duration\
$custom\
$line_break\
$jobs\
$battery\
$time\
$character\
"""
```
## Module `prefix` and `suffix` have been replaced by `format`
Previously to v0.45.0, some modules would accept `prefix` and/or `suffix` in order to stylize the way that modules are rendered.
Starship v0.45.0 instead accepts a `format` value, allowing for further customization of how modules are rendered. Instead of defining a prefix and suffix for the context-based variables, the variables can now be substituted from within a format string, which represents the module's output.
**Example pre-v0.45.0 configuration**
```toml
[cmd_duration]
prefix = "took "
```
**Example v0.45.0 configuration**
```toml
[cmd_duration]
# $duration The command duration (e.g. "15s")
# $style The default style of the module (e.g. "bold yellow")
format = "took [$duration]($style) "
```
### Affected Modules
#### Zeichen
| Removed Property | Replacement |
| ----------------------- | ---------------- |
| `symbol` | `success_symbol` |
| `use_symbol_for_status` | `error_symbol` |
| `style_success` | `success_symbol` |
| `style_failure` | `error_symbol` |
**Changes to the Default Configuration**
```diff
[character]
-- symbol = ""
-- error_symbol = "✖"
-- use_symbol_for_status = true
-- vicmd_symbol = ""
++ success_symbol = "[](bold green)"
++ error_symbol = "[](bold red)"
++ vicmd_symbol = "[](bold green)"
```
Previously, the `use_symbol_for_status` property was used to configure the prompt to show the `error_symbol` when the last command resulted in a non-zero status code.
With the release of v0.45.0, we now always use `error_symbol` after non-zero status codes, unifying `use_symbol_for_status` and `error_symbol` properties.
To configure the prompt to use the older `use_symbol_for_status = true` configuration, add the following to your config file:
```toml
[character]
error_symbol = "[✖](bold red)"
```
*Note:* The `character` element automatically adds a space after, so unlike the other `format` strings, we specifically do not add one in the above examples.
#### Befehlsdauer
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
**Changes to the Default Configuration**
```diff
[cmd_duration]
-- prefix = "took "
++ format = "took [$duration]($style) "
```
#### Verzeichnis
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
**Changes to the Default Configuration**
```diff
[directory]
-- prefix = "in "
++ format = "[$path]($style)[$read_only]($read_only_style) "
```
#### Umgebungsvariablen
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[env_var]
-- prefix = ""
-- suffix = ""
++ format = "with [$env_value]($style) "
```
#### Git Commit
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[git_commit]
-- prefix = "("
-- suffix = ")"
++ format = '[\($hash\)]($style) '
```
#### Git-Status
| Removed Property | Replacement |
| ----------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
| `show_sync_count` | `format` |
**Changes to the Default Configuration**
```diff
[git_status]
-- prefix = "["
-- suffix = "]"
-- show_sync_count = false
++ format = '([\[$all_status$ahead_behind\]]($style) )'
```
Previously, the `show_sync_count` property was used to configure the prompt to show the number of commits the branch was ahead or behind the remote branch.
With the release of v0.45.0, this has been replaced with three separate properties, `ahead`, `behind`, and `diverged`.
To configure the prompt to use the older `show_sync_count = true` configuration, set the following to your config file:
```toml
[git_status]
ahead = "⇡${count}"
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
behind = "⇣${count}"
```
#### Hostname
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[hostname]
-- prefix = ""
-- suffix = ""
++ format = "[$hostname]($style) in "
```
#### Singularity
| Removed Property | Replacement |
| ---------------- | ----------- |
| `label` | `format` |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[singularity]
-- prefix = ""
-- suffix = ""
++ format = '[$symbol\[$env\]]($style) '
```
#### Zeit
| Removed Property | Replacement |
| ---------------- | ------------- |
| `format` | `time_format` |
**Changes to the Default Configuration**
```diff
[time]
-- format = "🕙[ %T ]"
++ time_format = "%T"
++ format = "at 🕙[$time]($style) "
```
#### Custom Commands
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[custom.example]
-- prefix = ""
-- suffix = ""
++ format = "[$symbol$output]($style) "
```
+92
View File
@@ -0,0 +1,92 @@
# Presets
Here is a collection of community-submitted configuration presets for Starship. If you have a preset to share, please [submit a PR](https://github.com/starship/starship/edit/master/docs/presets/README.md) updating this file! 😊
## Nerd Font Symbols
This preset doesn't change anything except for the symbols used for each module. If emojis aren't your thing, this might catch your eye!
![Screenshot of Nerd Font Symbols preset](/presets/nerd-font-symbols.png)
### Voraussetzungen
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (the example uses Fira Code Nerd Font)
### Konfiguration
```toml
[aws]
symbol = " "
[conda]
symbol = " "
[dart]
symbol = " "
[directory]
read_only = " "
[docker]
symbol = " "
[elixir]
symbol = " "
[elm]
symbol = " "
[git_branch]
symbol = " "
[golang]
symbol = " "
[haskell]
symbol = " "
[hg_branch]
symbol = " "
[java]
symbol = " "
[julia]
symbol = " "
[memory_usage]
symbol = " "
[nim]
symbol = " "
[nix_shell]
symbol = " "
[nodejs]
symbol = " "
[package]
symbol = " "
[perl]
symbol = " "
[php]
symbol = " "
[python]
symbol = " "
[ruby]
symbol = " "
[rust]
symbol = " "
[scala]
symbol = " "
[swift]
symbol = "ﯣ "
```
-107
View File
@@ -1,107 +0,0 @@
---
home: true
heroImage: /logo.svg
actionText: Get Started →
actionLink: /guide/
footer: ISC Licensed | Copyright © 2019-present Starship Contributors
---
<div class="features">
<div class="feature">
<h2>Compatibility First</h2>
<p>Works on the most common shells on the most common operating systems. Use it everywhere!</p>
</div>
<div class="feature">
<h2>Rust-Powered</h2>
<p>Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.</p>
</div>
<div class="feature">
<h2>Customizable</h2>
<p>Every little detail is customizable to your liking, to make this prompt as minimal or feature-rich as you'd like it to be.</p>
</div>
</div>
<div class="center">
<video class="demo-video" autoplay muted loop>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### Quick Install
1. Install the **starship** binary:
**[Download archives of precompiled binaries](https://github.com/starship/starship/releases)** if you don't use the platforms below.
#### Homebrew
```sh
$ brew install starship
```
#### Rust (v1.33 or higher)
```sh
$ cargo install starship
```
#### Arch Linux (AUR)
Starship is available on the AUR under the name `starship`. Install it with `yay` or your favorite AUR helper.
```sh
$ yay -S starship
```
#### Nix (unstable)
```sh
$ nix-env --install starship
```
#### Termux
```sh
$ pkg install starship
```
1. Add the init script to your shell's config file:
#### Bash
Add the following to the end of `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Add the following to the end of `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
eval (starship init fish)
```
#### Zsh
Add the following to the end of `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
-857
View File
@@ -1,857 +0,0 @@
# Configuration
::: tip
🔥 Configuration is currently being worked on. Many new configuration options will be available in coming releases.
:::
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```shell
$ touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
```toml
# Don't print a new line at the start of the prompt
add_newline = false
# Replace the "" symbol in the prompt with "➜"
[character] # The name of the module we are configuring is "character"
symbol = "➜" # The "symbol" segment is being set to "➜"
# Disable the package module, hiding it from the prompt completely
[package]
disabled = true
```
### Terminology
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of NodeJS that is currently installed on your computer, if your current directory is a NodeJS project.
**Segment**: Smaller sub-components that compose a module. For example, the "symbol" segment in the "nodejs" module contains the character that is shown before the version number (⬢ by default).
Here is the representation of the node module. In the following example, "symbol" and "version" are segments within it. Every module also has a prefix and suffix that are the default terminal color.
```
[prefix] [symbol] [version] [suffix]
"via " "⬢" "v10.4.1" ""
```
### Style Strings
Most modules in starship allow you to configure their display styles. This is done with an entry (usually called `style`) which is a string specifying the configuration. Here are some examples of style strings along with what they do. For details on the full syntax, consult the [advanced config guide](/advanced-config/).
- `"fg:green bg:blue"` sets green text on a blue background
- `"bg:blue fg:bright-green"` sets bright green text on a blue background
- `"bold fg:27"` sets bold text with [ANSI color](https://i.stack.imgur.com/KTSQa.png) 27
- `"underline bg:#bf5700"` sets underlined text on a burnt orange background
- `"bold italic fg:purple"` sets bold italic purple text
- `""` explicitly disables all styling
Note that what styling looks like will be controlled by your terminal emulator. For example, some terminal emulators will brighten the colors instead of bolding text, and some color themes use the same values for the normal and bright colors. Also, to get italic text, your terminal must support italics.
## Prompt
This is the list of prompt-wide configuration options.
### Options
| Variable | Default | Description |
| -------------- | ----------------------------- | ------------------------------------------------------ |
| `add_newline` | `true` | Add a new line before the start of the prompt. |
| `prompt_order` | [link](#default-prompt-order) | Configure the order in which the prompt module occurs. |
### Example
```toml
# ~/.config/starship.toml
# Disable the newline at the start of the prompt
add_newline = false
# Overwrite a default_prompt_order and use custom prompt_order
prompt_order=["rust","line_break","package","line_break","character"]
```
### Default Prompt Order
The default `prompt_order` is used to define the order in which modules are shown in the prompt, if empty or no `prompt_order` is provided. The default is as shown:
```toml
prompt_order = [
"username",
"hostname",
"kubernetes",
"directory",
"git_branch",
"git_state",
"git_status",
"package",
"dotnet",
"golang",
"java",
"nodejs",
"python",
"ruby",
"rust",
"nix_shell",
"memory_usage",
"aws",
"env_var",
"cmd_duration",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
## AWS
The `aws` module shows the current AWS profile. This is based on the `AWS_PROFILE` env var.
### Options
| Variable | Default | Description |
| ---------- | --------------- | ---------------------------------------------------------- |
| `symbol` | `"☁️ "` | The symbol used before displaying the current AWS profile. |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `AWS` module. |
### Example
```toml
# ~/.config/starship.toml
[aws]
style = "bold blue"
symbol = "🅰 "
```
## Battery
The `battery` module shows how charged the device's battery is and its current charging status. The module is only visible when the device's battery is below 10%.
### Options
| Variable | Default | Description |
| -------------------- | ------------------------ | ------------------------------------------------- |
| `full_symbol` | `"•"` | The symbol shown when the battery is full. |
| `charging_symbol` | `"⇡"` | The symbol shown when the battery is charging. |
| `discharging_symbol` | `"⇣"` | The symbol shown when the battery is discharging. |
| `display` | [link](#battery-display) | Display threshold and style for the module. |
| `disabled` | `false` | Disables the `battery` module. |
<details>
<summary>There are also options for some uncommon battery states.</summary>
| Variable | Description |
| ---------------- | --------------------------------------------------- |
| `unknown_symbol` | The symbol shown when the battery state is unknown. |
| `empty_symbol` | The symbol shown when the battery state is empty. |
Note: Battery indicator will be hidden if the status is `unknown` or `empty` unless you specify the option in the config.
</details>
### Example
```toml
# ~/.config/starship.toml
[battery]
full_symbol = "🔋"
charging_symbol = "⚡️"
discharging_symbol = "💀"
```
### Battery Display
The `display` configuration option is used to define when the battery indicator should be shown (threshold) and what it looks like (style). If no `display` is provided. The default is as shown:
```toml
[[battery.display]]
threshold = 10
style = "bold red"
```
#### Options
The `display` option is an array of the following table.
| Variable | Description |
| ----------- | ----------------------------------------------- |
| `threshold` | The upper bound for the display option. |
| `style` | The style used if the display option is in use. |
#### Example
```toml
[[battery.display]] # "bold red" style when capacity is between 0% and 10%
threshold = 10
style = "bold red"
[[battery.display]] # "bold yellow" style when capacity is between 10% and 30%
threshold = 30
style = "bold yellow"
# when capacity is over 30%, the battery indicator will not be displayed
```
## Character
The `character` module shows a character (usually an arrow) beside where the text is entered in your terminal.
The character will tell you whether the last command was successful or not. It can do this in two ways: by changing color (red/green) or by changing its shape (/✖). The latter will only be done if `use_symbol_for_status` is set to `true`.
### Options
| Variable | Default | Description |
| ----------------------- | -------------- | ----------------------------------------------------------------------------------- |
| `symbol` | `""` | The symbol used before the text input in the prompt. |
| `error_symbol` | `"✖"` | The symbol used before text input if the previous command failed. |
| `use_symbol_for_status` | `false` | Indicate error status by changing the symbol. |
| `vicmd_symbol` | `""` | The symbol used before the text input in the prompt if shell is in vim normal mode. |
| `style_success` | `"bold green"` | The style used if the last command was successful. |
| `style_failure` | `"bold red"` | The style used if the last command failed. |
| `disabled` | `false` | Disables the `character` module. |
### Example
```toml
# ~/.config/starship.toml
[character]
symbol = "➜"
error_symbol = "✗"
use_symbol_for_status = true
```
## Command Duration
The `cmd_duration` module shows how long the last command took to execute. The module will be shown only if the command took longer than two seconds, or the `min_time` config value, if it exists.
::: warning Do not hook the DEBUG trap in Bash
If you are running Starship in `bash`, do not hook the `DEBUG` trap after running `eval $(starship init $0)`, or this module **will** break.
:::
Bash users who need preexec-like functionality can use [rcaloras's bash_preexec framework](https://github.com/rcaloras/bash-preexec). Simply define the arrays `preexec_functions` and `precmd_functions` before running `eval $(starship init $0)`, and then proceed as normal.
### Options
| Variable | Default | Description |
| ---------- | --------------- | ---------------------------------------------------------- |
| `min_time` | `2` | Shortest duration to show time for. |
| `prefix` | `took` | Prefix to display immediately before the command duration. |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `cmd_duration` module. |
### Example
```toml
# ~/.config/starship.toml
[cmd_duration]
min_time = 4
prefix = "underwent "
```
## Directory
The `directory` module shows the path to your current directory, truncated to three parent folders. Your directory will also be truncated to the root of the git repo that you're currently in.
When using the fish style pwd option, instead of hiding the path that is truncated, you will see a shortened name of each directory based on the number you enable for the option.
For example, given `~/Dev/Nix/nixpkgs/pkgs` where `nixpkgs` is the repo root, and the option set to `1`. You will now see `~/D/N/nixpkgs/pkgs`, whereas before it would have been `nixpkgs/pkgs`.
### Options
| Variable | Default | Description |
| ------------------- | ------------- | -------------------------------------------------------------------------------- |
| `truncation_length` | `3` | The number of parent folders that the current directory should be truncated to. |
| `truncate_to_repo` | `true` | Whether or not to truncate to the root of the git repo that you're currently in. |
| `style` | `"bold cyan"` | The style for the module. |
| `disabled` | `false` | Disables the `directory` module. |
<details>
<summary>This module has a few advanced configuration options that control how the directory is displayed.</summary>
| Variable | Default | Description |
| --------------------------- | ------- | ---------------------------------------------------------------------------------------- |
| `fish_style_pwd_dir_length` | `0` | The number of characters to use when applying fish shell pwd path logic. |
| `use_logical_path` | `true` | Displays the logical path provided by the shell (`PWD`) instead of the path from the OS. |
</details>
### Example
```toml
# ~/.config/starship.toml
[directory]
truncation_length = 8
```
## Dotnet
The `dotnet` module shows the relevant version of the .NET Core SDK for the current directory. If the SDK has been pinned in the current directory, the pinned version is shown. Otherwise the module shows the latest installed version of the SDK.
This module will only be shown in your prompt when one of the following files are present in the current directory: `global.json`, `project.json`, `*.sln`, `*.csproj`, `*.fsproj`, `*.xproj`. You'll also need the .NET Core command-line tools installed in order to use it correctly.
Internally, this module uses its own mechanism for version detection. Typically it is twice as fast as running `dotnet --version`, but it may show an incorrect version if your .NET project has an unusual directory layout. If accuracy is more important than speed, you can disable the mechanism by setting `heuristic = false` in the module options.
### Options
| Variable | Default | Description |
| ----------- | ------------- | -------------------------------------------------------- |
| `symbol` | `"•NET "` | The symbol used before displaying the version of dotnet. |
| `style` | `"bold blue"` | The style for the module. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `disabled` | `false` | Disables the `dotnet` module. |
### Example
```toml
# ~/.config/starship.toml
[dotnet]
symbol = "🥅 "
style = "green"
heuristic = false
```
## Environment Variable
The `env_var` module displays the current value of a selected environment variable. The module will be shown only if any of the following conditions are met:
- The `variable` configuration option matches an existing environment variable
- The `variable` configuration option is not defined, but the `default` configuration option is
### Options
| Variable | Default | Description |
| ---------- | ---------------- | ---------------------------------------------------------------------------- |
| `symbol` | | The symbol used before displaying the variable value. |
| `variable` | | The environment variable to be displayed. |
| `default` | | The default value to be displayed when the selected variable is not defined. |
| `prefix` | `""` | Prefix to display immediately before the variable value. |
| `suffix` | `""` | Suffix to display immediately after the variable value. |
| `style` | `"dimmed black"` | The style for the module. |
| `disabled` | `false` | Disables the `env_var` module. |
### Example
```toml
# ~/.config/starship.toml
[env_var]
variable = "SHELL"
default = "unknown shell"
```
## Git Branch
The `git_branch` module shows the active branch of the repo in your current directory.
### Options
| Variable | Default | Description |
| ------------------- | --------------- | ------------------------------------------------------------------------------------- |
| `symbol` | `" "` | The symbol used before the branch name of the repo in your current directory. |
| `truncation_length` | `2^63 - 1` | Truncates a git branch to X graphemes |
| `truncation_symbol` | `"…"` | The symbol used to indicate a branch name was truncated. You can use "" for no symbol |
| `style` | `"bold purple"` | The style for the module. |
| `disabled` | `false` | Disables the `git_branch` module. |
### Example
```toml
# ~/.config/starship.toml
[git_branch]
symbol = "🌱 "
truncation_length = "4"
truncation_symbol = ""
```
## Git State
The `git_state` module will show in directories which are part of a git repository, and where there is an operation in progress, such as: _REBASING_, _BISECTING_, etc. If there is progress information (e.g., REBASING 3/10), that information will be shown too.
### Options
| Variable | Default | Description |
| ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------- |
| `rebase` | `"REBASING"` | The text displayed when a `rebase` is in progress. |
| `merge` | `"MERGING"` | The text displayed when a `merge` is in progress. |
| `revert` | `"REVERTING"` | The text displayed when a `revert` is in progress. |
| `cherry_pick` | `"CHERRY-PICKING"` | The text displayed when a `cherry-pick` is in progress. |
| `bisect` | `"BISECTING"` | The text displayed when a `bisect` is in progress. |
| `am` | `"AM"` | The text displayed when an `apply-mailbox` (`git am`) is in progress. |
| `am_or_rebase` | `"AM/REBASE"` | The text displayed when an ambiguous `apply-mailbox` or `rebase` is in progress. |
| `progress_divider` | `"/"` | The symbol or text which will separate the current and total progress amounts. (e.g., `" of "`, for `"3 of 10"`) |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `git_state` module. |
### Example
```toml
# ~/.config/starship.toml
[git_state]
progress_divider = " of "
cherry_pick = "🍒 PICKING"
```
## Git Status
The `git_status` module shows symbols representing the state of the repo in your current directory.
### Options
| Variable | Default | Description |
| ----------------- | ------------ | ------------------------------------------------------- |
| `conflicted` | `"="` | This branch has merge conflicts. |
| `ahead` | `"⇡"` | This branch is ahead of the branch being tracked. |
| `behind` | `"⇣"` | This branch is behind of the branch being tracked. |
| `diverged` | `"⇕"` | This branch has diverged from the branch being tracked. |
| `untracked` | `"?"` | There are untracked files in the working directory. |
| `stashed` | `"$"` | A stash exists for the local repository. |
| `modified` | `"!"` | There are file modifications in the working directory. |
| `staged` | `"+"` | A new file has been added to the staging area. |
| `renamed` | `"»"` | A renamed file has been added to the staging area. |
| `deleted` | `"✘"` | A file's deletion has been added to the staging area. |
| `show_sync_count` | `false` | Show ahead/behind count of the branch being tracked. |
| `prefix` | `[` | Prefix to display immediately before git status. |
| `suffix` | `]` | Suffix to display immediately after git status. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `git_status` module. |
### Example
```toml
# ~/.config/starship.toml
[git_status]
conflicted = "🏳"
ahead = "🏎💨"
behind = "😰"
diverged = "😵"
untracked = "🤷‍"
stashed = "📦"
modified = "📝"
staged = ""
renamed = "👅"
deleted = "🗑"
```
## Golang
The `golang` module shows the currently installed version of Golang. The module will be shown if any of the following conditions are met:
- The current directory contains a `go.mod` file
- The current directory contains a `go.sum` file
- The current directory contains a `glide.yaml` file
- The current directory contains a `Gopkg.yml` file
- The current directory contains a `Gopkg.lock` file
- The current directory contains a `Godeps` directory
- The current directory contains a file with the `.go` extension
### Options
| Variable | Default | Description |
| ---------- | ------------- | -------------------------------------------------------- |
| `symbol` | `"🐹 "` | The symbol used before displaying the version of Golang. |
| `style` | `"bold cyan"` | The style for the module. |
| `disabled` | `false` | Disables the `golang` module. |
### Example
```toml
# ~/.config/starship.toml
[golang]
symbol = "🏎💨 "
```
## Hostname
The `hostname` module shows the system hostname.
### Options
| Variable | Default | Description |
| ---------- | --------------------- | ---------------------------------------------------- |
| `ssh_only` | `true` | Only show hostname when connected to an SSH session. |
| `prefix` | `""` | Prefix to display immediately before the hostname. |
| `suffix` | `""` | Suffix to display immediately after the hostname. |
| `style` | `"bold dimmed green"` | The style for the module. |
| `disabled` | `false` | Disables the `hostname` module. |
### Example
```toml
# ~/.config/starship.toml
[hostname]
ssh_only = false
prefix = "⟪"
suffix = "⟫"
disabled = false
```
## Jobs
The `jobs` module shows the current number of jobs running. The module will be shown only if there are background jobs running. The module will show the number of jobs running if there is more than 1 job, or more than the `threshold` config value, if it exists.
### Options
| Variable | Default | Description |
| ----------- | ------------- | ----------------------------------------------------- |
| `symbol` | `"✦ "` | The symbol used before displaying the number of jobs. |
| `threshold` | `1` | Show number of jobs if exceeded. |
| `style` | `"bold blue"` | The style for the module. |
| `disabled` | `false` | Disables the `jobs` module. |
### Example
```toml
# ~/.config/starship.toml
[jobs]
symbol = "+ "
threshold = 4
```
## Kubernetes
Displays the current Kubernetes context name and, if set, the namespace from the kubeconfig file. The namespace needs to be set in the kubeconfig file, this can be done via `kubectl config set-context starship-cluster --namespace
astronaut`. If the `$KUBECONFIG` env var is set the module will use that if not it will use the `~/.kube/config`.
### Options
| Variable | Default | Description |
| ---------- | ------------- | --------------------------------------------------- |
| `symbol` | `"☸ "` | The symbol used before displaying the Cluster info. |
| `style` | `"bold blue"` | The style for the module. |
| `disabled` | `false` | Disables the `kubernetes` module |
### Example
```toml
# ~/.config/starship.toml
[kubernetes]
symbol = "⛵ "
style = "dim green"
disabled = true
```
## Line Break
The `line_break` module separates the prompt into two lines.
### Options
| Variable | Default | Description |
| ---------- | ------- | ------------------------------------------------------------------ |
| `disabled` | `false` | Disables the `line_break` module, making the prompt a single line. |
### Example
```toml
# ~/.config/starship.toml
[line_break]
disabled = true
```
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
### Options
| Variable | Default | Description |
| ------------ | ------------ | ---------------------------------- |
| `use_name` | `false` | Display the name of the nix-shell. |
| `impure_msg` | `impure` | Customize the "impure" msg. |
| `pure_msg` | `pure` | Customize the "pure" msg. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `nix_shell` module. |
### Example
```toml
# ~/.config/starship.toml
[nix_shell]
disabled = true
use_name = true
impure_msg = "impure shell"
pure_msg = "pure shell"
```
## Memory Usage
The `memory_usage` module shows current system memory and swap usage.
By default the swap usage is displayed if the total system swap is non-zero.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
:::
### Options
| Variable | Default | Description |
| ----------------- | ------------------------ | ------------------------------------------------------------- |
| `show_percentage` | `false` | Display memory usage as a percentage of the available memory. |
| `show_swap` | when total swap non-zero | Display swap usage. |
| `threshold` | `75` | Hide the memory usage unless it exceeds this percentage. |
| `symbol` | `"🐏 "` | The symbol used before displaying the memory usage. |
| `style` | `"bold dimmed white"` | The style for the module. |
| `disabled` | `true` | Disables the `memory_usage` module. |
### Example
```toml
# ~/.config/starship.toml
[memory_usage]
show_percentage = true
show_swap = true
threshold = -1
icon = " "
style = "bold dimmed green"
```
## Java
The `java` module shows the currently installed version of Java. The module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml` or `build.gradle` file
- The current directory contains a file with the `.java`, `.class` or `.jar` extension
### Options
| Variable | Default | Description |
| ---------- | -------------- | ------------------------------------------------------ |
| `symbol` | `"☕ "` | The symbol used before displaying the version of Java. |
| `style` | `"dimmed red"` | The style for the module. |
| `disabled` | `false` | Disables the `java` module. |
### Example
```toml
# ~/.config/starship.toml
[java]
symbol = "🌟 "
```
## NodeJS
The `nodejs` module shows the currently installed version of NodeJS. The module will be shown if any of the following conditions are met:
- The current directory contains a `package.json` file
- The current directory contains a `node_modules` directory
- The current directory contains a file with the `.js` extension
### Options
| Variable | Default | Description |
| ---------- | -------------- | -------------------------------------------------------- |
| `symbol` | `"⬢ "` | The symbol used before displaying the version of NodeJS. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
### Example
```toml
# ~/.config/starship.toml
[nodejs]
symbol = "🤖 "
```
## Package Version
The `package` module is shown when the current directory is the repository for a package, and shows its current version. The module currently supports `npm`, `cargo`, and `poetry` packages.
- **npm** The `npm` package version is extracted from the `package.json` present in the current directory
- **cargo** The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- **poetry** The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
### Options
| Variable | Default | Description |
| ---------- | ------------ | ---------------------------------------------------------- |
| `symbol` | `"📦 "` | The symbol used before displaying the version the package. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `package` module. |
### Example
```toml
# ~/.config/starship.toml
[package]
symbol = "🎁 "
```
## Python
The `python` module shows the currently installed version of Python.
If `pyenv_version_name` is set to `true`, it will display the pyenv version name.
Otherwise, it will display the version number from `python --version` and show the current Python virtual environment if one is activated.
The module will be shown if any of the following conditions are met:
- The current directory contains a `.python-version` file
- The current directory contains a `requirements.txt` file
- The current directory contains a `pyproject.toml` file
- The current directory contains a file with the `.py` extension
- The current directory contains a `Pipfile` file
- The current directory contains a `tox.ini` file
### Options
| Variable | Default | Description |
| -------------------- | --------------- | --------------------------------------------------------------------------- |
| `symbol` | `"🐍 "` | The symbol used before displaying the version of Python. |
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `"pyenv "` | Prefix before pyenv version display (default display is `pyenv MY_VERSION`) |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `python` module. |
### Example
```toml
# ~/.config/starship.toml
[python]
symbol = "👾 "
pyenv_version_name = true
pyenv_prefix = "foo "
```
## Ruby
The `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
- The current directory contains a `Gemfile` file
- The current directory contains a `.rb` file
### Options
| Variable | Default | Description |
| ---------- | ------------ | ------------------------------------------------------ |
| `symbol` | `"💎 "` | The symbol used before displaying the version of Ruby. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `ruby` module. |
### Example
```toml
# ~/.config/starship.toml
[ruby]
symbol = "🔺 "
```
## Rust
The `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
- The current directory contains a `Cargo.toml` file
- The current directory contains a file with the `.rs` extension
### Options
| Variable | Default | Description |
| ---------- | ------------ | ------------------------------------------------------ |
| `symbol` | `"🦀 "` | The symbol used before displaying the version of Rust. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `rust` module. |
### Example
```toml
# ~/.config/starship.toml
[rust]
symbol = "⚙️ "
```
## Time
The `time` module shows the current **local** time. The `format` configuration value is used by the [`chrono`](https://crates.io/crates/chrono) crate to control how the time is displayed. Take a look [at the chrono strftime docs](https://docs.rs/chrono/0.4.7/chrono/format/strftime/index.html) to see what options are available.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
:::
### Options
| Variable | Default | Description |
| ---------- | ------------- | ------------------------------------------------------------------------------------------------------------------- |
| `12hr` | `false` | Enables 12 hour formatting |
| `format` | see below | The [chrono format string](https://docs.rs/chrono/0.4.7/chrono/format/strftime/index.html) used to format the time. |
| `style` | `bold yellow` | The style for the module time |
| `disabled` | `true` | Disables the `time` module. |
If `12hr` is `true`, then `format` defaults to `"%r"`. Otherwise, it defaults to `"%T"`. Manually setting `format` will override the `12hr` setting.
### Example
```toml
# ~/.config/starship.toml
[time]
disabled = false
format = "🕙[ %T ]"
```
## Username
The `username` module shows active user's username. The module will be shown if any of the following conditions are met:
- The current user is root
- The current user isn't the same as the one that is logged in
- The user is currently connected as an SSH session
- The variable `show_always` is set to true
### Options
| Variable | Default | Description |
| ------------- | --------------- | ------------------------------------- |
| `style_root` | `"bold red"` | The style used when the user is root. |
| `style_user` | `"bold yellow"` | The style used for non-root users. |
| `show_always` | `false` | Always shows the `username` module. |
| `disabled` | `false` | Disables the `username` module. |
### Example
```toml
# ~/.config/starship.toml
[username]
disabled = true
```
-1
View File
@@ -1 +0,0 @@
../../../translations/README.de.md
+136
View File
@@ -0,0 +1,136 @@
---
home: true
heroImage: /logo.svg
heroText:
tagline: '¡El prompt minimalista, ultrarápido e infinitamente personalizable para cualquier intérprete de comandos!'
actionText: Comenzar →
actionLink: ./guide/
features:
-
title: Compatibilidad primero
details: Funciona en los intérprete de comandos más comunes de los sistemas operativos más comunes. ¡Úsalo en todas partes!
-
title: Desarrollado en Rust
details: Obtén la mayor velocidad y seguridad de Rust, para hacer tu prompt lo más rápida y segura posible.
-
title: Personalizable
details: Puedes personalizar cada pequeño detalle a tu gusto, de manera que puedes tener un prompt minimalista o rico en funcionalidades.
footer: Bajo una licencia ISC | Derechos de autor © 2019-presente Colaboradores de Starship
#Used for the description meta tag, for SEO
metaTitle: "Starship: el prompt multi-intérprete"
description: '¡Starship es el prompt minimalista, ultrarápido e infinitamente personalizable para cualquier intérprete de comandos! Muestra la información que necesitas, a la par que es elegante y minimalista. Instalación rápida disponible para Bash, Fish, ZSH, Ion y PowerShell.'
---
<div class="center">
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### Instalación rápida
1. Instalar el binario de **Starship**:
#### Instalar la última versión
Con el intérprete de comandos:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Instalar con un gestor de paquetes
Con [Homebrew](https://brew.sh/):
```sh
brew install starship
```
Con [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
1. Añade el guión de inicio al archivo de configuración de tu intérprete de comandos:
#### Bash
Añade el siguiente código al final de `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Añade el siguiente código al final de `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Añade el siguiente código al final de `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### Powershell
Añade lo siguiente al final de `Microsoft.PowerShell_profile.ps1`. Puedes comprobar la ubicación de este archivo consultando la variable `$PROFILE` en PowerShell. Normalmente la ruta es `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` o `~/.config/powershell/Microsoft.PowerShell_profile.ps1` en -Nix.
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
Añade el siguiente código al final de `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: advertencia Solo se admite Elvish v0.15 o superior. :::
Añade el siguiente código al final de `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Añade el siguiente código al final de `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
+93
View File
@@ -0,0 +1,93 @@
# Configuración Avanzada
Mientras que Starship es un prompt versátil, a veces necesitas más que editar `starhip.toml` para que haga ciertas cosas. Esta página detalla algunas de las técnicas de configuración más avanzadas en Starship.
::: aviso
Las configuraciones de esta sección están sujetos a cambios en futuras versiones de Starship.
:::
## Comandos pre-prompt y pre-ejecucución personalizados en Bash
Bash no posee un framework oficial de preexec/precmd como la mayoría de los demás intérpretes de comandos. Debido a esto, es difícil proporcionar "hooks" totalmente personalizables en `Bash`. Sin embargo, Starship te da la posibilidad de insertar de forma limitada tus propias funciones en el proceso de renderizado del prompt:
- Para ejecutar una función personalizada previa al renderizado del prompt, define una nueva función y asigna su nombre a `starship_precmd_user_func`. Por ejemplo, para renderizar un cohete antes del prompt, se puede realizar así:
```bash
function blastoff(){
echo "🚀"
}
starship_precmd_user_func="blastoff"
```
- Para ejecutar una función personalizada antes de que un comando sea ejecutado, es posible usar el [mecanismo trap `DEBUG`](https://jichu4n.com/posts/debug-trap-and-prompt_command-in-bash/). No obstante, ¡**debes** atrapar la señal DEBUG *antes* de inicializar Starship! Starship puede preservar el valor de la trampa DEBUG, pero si la trampa es reemplazada después de que Starship inicie, alguna funcionalidad fallará.
```bash
function blastoff(){
echo "🚀"
}
trap blastoff DEBUG # Trampa DEBUG *antes* de la ejecución de Starship
eval $(starship init bash)
```
## Cambiar el Título de la Ventana
Algunos intérpretes de comandos van a cambiar automáticamente el título de la ventana por ti (p. ej., para mostrar tu directorio actual). Fish incluso lo hace por defecto. Starship no hace esto, pero es bastante sencillo añadir esta funcionalidad a `Bash` o `zsh`.
Primero, define una función para el cambio de título de la ventana (idéntico en Bash y zsh):
```bash
function set_win_title(){
echo -ne "\033]0; TU_TÍTULO_DE_VENTANA_AQUÍ \007"
}
```
Puedes usar variables para personalizar este título (`$USER`, `$HOSTNAME` y `$PWD` son opciones populares).
En `Bash`, establece que esta función sea la función precmd de Starship:
```bash
starship_precmd_user_func="set_win_title"
```
En `zsh`, añade esto al array `precmd_functions`:
```bash
precmd_functions+=(set_win_title)
```
Si te gusta el resultado, añade estas líneas a tu archivo de configuración del intérprete de comandos (`~/.bashrc` o `~/.zsrhc`) para hacerlo permanente.
Por ejemplo, si quieres mostrar tu directorio actual en el título de la pestaña de la terminal, añade el siguiente fragmento a tu `~/.bashrc` o `~/.zshrc`:
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## Cadenas de Estilo
Las cadenas de estilo son una lista de palabras, separadas por espacios en blanco. Las palabras no son sensibles a mayúsculas (es decir, `bold` y `BoLd` se consideran la misma cadena). Cada palabra puede ser una de las siguientes:
- `bold`
- `underline`
- `dimmed`
- `bg:<color>`
- `fg:<color>`
- `<color>`
- `none`
donde `<color>` es un especificador de color (discutido a continuación). `fg:<color>` y `<color>` hacen actualmente lo mismo, aunque esto puede cambiar en el futuro. El orden de las palabras en la cadena no importa.
El token `none` anula todos los demás tokens en una cadena si no es parte de un especificador `bg:`, de modo que por ejemplo `fg:red none fg:blue` creará una cadena sin ningún estilo. `bg:none` establece el fondo al color por defecto, así que `fg:red bg:none` es equivalente a `red` o `fg:red` y `bg:green fg:red bg:none` también es equivalente a `fg:red` o `red`. Puede convertirse en un error usar `none` junto con otros tokens en el futuro.
Un especificador de color puede ser uno de los siguientes:
- Uno de los colores estándar del terminal: `black`, `red`, `green`, `blue`, `yellow`, `purple`, `cyan`, `white`. Opcionalmente puedes agregar el prefijo `bright-` para obtener la versión brillante (por ejemplo, `bright-white`).
- Un `#` seguido de un número hexadecimal de seis dígitos. Esto especifica un [código hexadecimal de color RGB](https://www.w3schools.com/colors/colors_hexadecimal.asp).
- Un número entre 0-255. Esto especifica un [Código de color ANSI de 8-bits](https://i.stack.imgur.com/KTSQa.png).
Si se especifican varios colores para el primer plano/fondo, el último en la cadena tendrá prioridad.
File diff suppressed because it is too large Load Diff
+96
View File
@@ -0,0 +1,96 @@
# Preguntas frecuentes (FAQ)
## ¿Cuál es la configuración usada en el GIF de demostración?
- **Emulador de terminal**: [iTerm2](https://iterm2.com/)
- **Tema**: Mínimo
- **Esquema de color**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **Font**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **Intérprete de comandos**: [Fish Shell](https://fishshell.com/)
- **Configuración**: [archivos de configuración de matchai](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **Prompt**: [Starship](https://starship.rs/)
## ¿Cómo obtengo el autocompletado del comando como se muestra en el GIF?
El soporte de terminación, o autocompletado, es proporcionado por tu intérprete de comandos de elección. En el caso de la demo, la demo se realizó con [Fish Shell](https://fishshell.com/), que proporciona el completado por defecto. Si usas Z Shell (zsh), te sugerimos echar un vistazo a [zsh-autosuggeries,](https://github.com/zsh-users/zsh-autosuggestions).
## ¿`prompt_order` y `<module>.disabled` hacen lo mismo?
Sí, se pueden usar ambos para desactivar los módulos en el prompt. Si todo lo que planeas es desactivar módulos, `<module>.disabled` es el método preferido por las siguientes razones:
- Deshabilitar módulos es más explícito que omitirlos del nivel superior `format`
- Los nuevos módulos se añadirán al prompt en cuanto Starship se actualice
## La documentación dice que Starship es "cross-shell". ¿Por qué no es compatible mi intérprete de comandos preferido?
Por la forma en que Starship está construído, debería ser posible añadir soporte para prácticamente cualquier intérprete de comandos. El binario de Starship es sin estado y agnóstico, por lo que mientras que tu intérprete de comandos se pueda ampliar y soporte la personalización del prompt, puedes utilizar Starship.
Aquí tienes un pequeño ejemplo haciendo que Starship funcione con bash:
```sh
# Obtener el código de estado del último comando ejecutado
STATUS=$?
# Calcula el número de tareas ejecutándose.
NUM_JOBS=$(jobs -p | wc -l)
# Establece el prompt a la salida de `starship prompt`
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
```
The [Bash implementation](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#command-duration) and to ensure that Starship is compatible with pre-installed Bash configurations.
Para obtener una lista de todos los parámetros aceptados por `el prompt de Starship`, usa el siguiente comando:
```sh
starship prompt --help
```
El símbolo de sistema usará tanto contexto como le proveas, pero no hay parámetros "obligatorios".
## ¿Cómo lanzo Starship en distribuciones Linux con versiones antiguas de glibc?
Si obtienes un error como "_version 'GLIBC_2.18' not found (required by starship)_" al usar el binario precompilado (por ejemplo, en CentOS 6 o 7), puedes usar el binario compilado con `musl` en vez de `glibc`:
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- --platform unknown-linux-musl
```
## Veo símbolos que no entiendo ni espero, ¿qué significan?
Si ves símbolos que no reconoces, puedes usar `starship explain` para explicar los módulos que se muestran actualmente.
## ¿Por qué no veo un símbolo de glifo en mi prompt?
La causa más común de esto es la mala configuración del sistema. Algunas distribuciones de Linux en particular no vienen con soporte de fuentes listos para usarse. Tienes que garantizar que:
- Tu configuración regional está establecida con un valor UTF-8, como `de_DE.UTF-8` o `ja_JP.UTF-8`. Si `LC_ALL` no es un valor UTF-8, [necesitarás cambiarlo](https://www.tecmint.com/set-system-locales-in-linux/).
- Tienes una fuente emoji instalada. La mayoría de los sistemas vienen con una fuente emoji por defecto, pero algunos (notablemente Arch Linux) no. Generalmente puedes instalar uno a través del gestor de paquetes del sistema --[noto emoji](https://www.google.com/get/noto/help/emoji/) es una elección popular.
- Estás usando un [Nerd Font](https://www.nerdfonts.com/).
Para probar tu sistema, ejecua los siguientes comandos en un terminal:
```sh
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
```
La primera línea debe producir un [emoji snake](https://emojipedia.org/snake/), mientras que la segunda debe producir un [símbolo de rama de Powerline(e0a0)](https://github.com/ryanoasis/powerline-extra-symbols#glyphs).
Si cualquiera de los dos símbolos no se puede mostrar correctamente, su sistema todavía está mal configurado. Desafortunadamente, obtener la configuración correcta de las fuentes es a veces difícil. Los usuarios en el Discord pueden ayudar. Si ambos símbolos se muestran correctamente, pero todavía no los ves en Starship, [¡envía un informe de error!](https://github.com/starship/starship/issues/new/choose)
## ¿Cómo puedo desinstalar Starship?
Starship es tan fácil de desinstalar como de instalar en primer lugar.
1. Elimina cualquier línea de tu configuración de intérprete de comandos (por ejemplo, `~/.bashrc`) usada para inicializar Starship.
1. Elimina el binario de Starship.
Si Starship fue instalado usando un gestor de paquetes, por favor refiérete a sus documentos para instrucciones de desinstalación.
Si Starship fue instalado usando el script `curl | bash`, el siguiente comando eliminará el binario:
```sh
# Localiza y elimina el binario de starship
rm "$(which starship)"
```
+311
View File
@@ -0,0 +1,311 @@
<p align="center">
<img
width="400"
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
alt="Starship - Prompt multi-intérprete de comandos"
/>
</p>
<p align="center">
<a href="https://github.com/starship/starship/actions"
><img
src="https://img.shields.io/github/workflow/status/starship/starship/Main workflow/master?label=workflow&style=flat-square"
alt="Estado del flujo de trabajo de GitHub Actions"
/></a>
<a href="https://crates.io/crates/starship"
><img
src="https://img.shields.io/crates/v/starship?style=flat-square"
alt="Versión de Crates.io"
/></a>
<a href="https://repology.org/project/starship/versions"
><img
src="https://img.shields.io/repology/repositories/starship?label=in%20repositories&style=flat-square"
alt="Estado de empaquetado" /></a
><br />
<a href="https://discord.gg/starship"
><img
src="https://img.shields.io/discord/567163873606500352?label=discord&logoColor=white&style=flat-square"
alt="Chat en Discord"
/></a>
<a href="https://twitter.com/StarshipPrompt"
><img
src="https://img.shields.io/badge/twitter-@StarshipPrompt-1DA1F3?style=flat-square"
alt="Sigue a @StarshipPrompt en Twitter"
/></a>
</p>
<p align="center">
<a href="https://starship.rs">Sitio Web</a>
·
<a href="#🚀-installation">Instalación</a>
·
<a href="https://starship.rs/config/">Configuración</a>
</p>
<p align="center">
<a href="https://github.com/starship/starship/blob/master/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
alt="English"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
alt="日本語"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
alt="繁體中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
alt="Русский"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
alt="Deutsch"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
alt="简体中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
alt="Español"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
alt="Francés"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
alt="Tiếng Việt"
/></a>
</p>
<h1></h1>
<img
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
alt="Starship con iTerm 2 y el tema Snazzy"
width="50%"
align="right"
/>
**¡El prompt minimalista, ultrarápido e infinitamente personalizable para cualquier intérprete de comandos!**
- **Rápido:** es rápido _realmente_ rápido! 🚀
- **Personalizable:** configura cada parte de tu prompt.
- **Universal:** funciona en cualquier intérprete de comandos, en cualquier sistema operativo.
- **Inteligente:** muestra información relevante de un vistazo.
- **Repleto de funciones**: con soporte para tus herramientas favoritas.
- **Fácil:** rápido de instalar empieza a usarlo en minutos.
<p align="center">
<a href="https://starship.rs/config/"><strong>Explora la documentación de Starship&nbsp;&nbsp;▶</strong></a>
</p>
<a name="🚀-installation"></a>
## 🚀 Instalación
### Prerequisitos
- Una [Nerd Font](https://www.nerdfonts.com/) instalada y habilitada en tu terminal (por ejemplo, prueba [Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)).
### Comenzar
**Nota**: debido a la proliferación de diferentes plataformas, solo un subconjunto de plataformas soportadas se muestra a continuación. ¿No puedes ver el tuyo? Echa un vistazo a las [instrucciones adicionales de la plataforma](https://starship.rs/installing/).
1. Instala el binario de **Starship**:
#### Instalar la última versión
##### Desde un binario preconstruido, con el intérprete de comandos:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Instalar con un gestor de paquetes
##### Ejemplo: [Homebrew](https://brew.sh/):
```sh
brew install starship
```
##### Con [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
2. Añade el guión de inicio al archivo de configuración de tu intérprete de comandos:
#### Bash
Añade el siguiente código al final de `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Añade el siguiente código al final de `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Añade el siguiente código al final de `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### PowerShell
Añade lo siguiente al final de `Microsoft.PowerShell_profile.ps1`. Puedes comprobar la ubicación de este archivo consultando la variable `$PROFILE` en PowerShell. Normalmente la ruta es `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` o `~/.config/powershell/Microsoft.PowerShell_profile.ps1` en -Nix.
```powershell
Invoke-Expression (&starship init powershell)
```
#### Ion
Añade el siguiente código al final de `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
**Advertencia** Sólo se admite Elvish v0.15 o superior. Añade el siguiente código al final de `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Añade el siguiente código al final de `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
## 🤝 Colaborando
¡Siempre estamos buscando colaboradores de **todos los niveles y habilidades**! Si estas buscando una manera fácil de ayudar este proyecto, puedes intentar resolver un problema con la etiqueta "[good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue)".
Si hablas con fluidez en un idioma que no sea inglés, agradecemos mucho cualquier ayuda para mantener nuestros documentos traducidos y actualizados en otros idiomas. Si quieres ayudar, puedes contribuir con las traducciones en el [Crowdin de Starship](https://translate.starship.rs/).
Si quieres ayudar a colaborar a Starship, por favor mira nuestra [Guía de Colaboradores](https://github.com/starship/starship/blob/master/CONTRIBUTING.md). Además, siéntete libre de entrar en nuestro [servidor de Discord](https://discord.gg/8Jzqu3T) y di "¡Hola!". 👋
### Desarrolladores
Este proyecto existe gracias a todas las personas que han ayudado. [[Contribuir](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)].
<a href="https://github.com/starship/starship/graphs/contributors"><img src="https://opencollective.com/starship/contributors.svg?width=890&button=false" /></a>
### Financiadores
Conviértete en un financiador y ayúdanos a mantener nuestra comunidad. [[Contribuir](https://opencollective.com/starship/contribute)]
#### Personas
<a href="https://opencollective.com/starship"><img src="https://opencollective.com/starship/individuals.svg?width=890"></a>
#### Organizaciones
Apoya este proyecto con tu organización. Su logo se mostrará aquí con un enlace a su sitio web. [[Contribuir](https://opencollective.com/starship/contribute)]
<a href="https://opencollective.com/starship/organization/0/website"><img src="https://opencollective.com/starship/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/1/website"><img src="https://opencollective.com/starship/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/2/website"><img src="https://opencollective.com/starship/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/3/website"><img src="https://opencollective.com/starship/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/4/website"><img src="https://opencollective.com/starship/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/5/website"><img src="https://opencollective.com/starship/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/6/website"><img src="https://opencollective.com/starship/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/7/website"><img src="https://opencollective.com/starship/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/8/website"><img src="https://opencollective.com/starship/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/9/website"><img src="https://opencollective.com/starship/organization/9/avatar.svg"></a>
## 💭 Inspirado por
Por favor, revisa estos trabajos previos que ayudaron a inspirar la creación de starship. 🙏
- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** - Un prompt ZSH para astronautas.
- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** - robbyrussel, tema multi-intérprete de comandos escrito en JavaScript.
- **[reujab/silver](https://github.com/reujab/silver)** - Un prompt multi-intérprete de comandos personalizable, basada en Powerline con iconos.
<p align="center">
<br>
<img width="100" src="https://raw.githubusercontent.com/starship/starship/master/media/icon.png" alt="Icono de cohete de Starship">
</p>
## 📝 Licencia
Derechos de autor © 2019-presente, [Colaboradores de Starship](https://github.com/starship/starship/graphs/contributors).<br />Este proyecto está bajo una licencia [ISC](https://github.com/starship/starship/blob/master/LICENSE).
+84
View File
@@ -0,0 +1,84 @@
# 🚀 Instalación avanzada
Para instalar Starship, necesitas hacer dos cosas:
1. Consigue el binario de **Starship** en tu ordenador
1. Decirle a tu intérprete de comandos que use el binario de Starship como su prompt modificando sus guiones de inicio
Para la mayoría de los usuarios, las instrucciones en [la página principal](/guide/#🚀-installation) funcionarán genial. Sin embargo, para algunas plataformas más especializadas, se necesitan diferentes instrucciones.
Hay tantas plataformas ahí fuera que no cabían en el README.md principal, así que aquí están algunas instrucciones de instalación para otras plataformas de la comunidad. ¿No está usted aquí? ¡Por favor, añádelo aquí si lo encuentras!
## [Chocolatey](https://chocolatey.org)
### Prerequisitos
Dirígete a la página de instalación de [Chocolatey](https://chocolatey.org/install) y sigue las instrucciones para instalar Chocolatey.
### Instalación
```powershell
choco install starship
```
## [termux](https://termux.com)
### Prerequisitos
```sh
pkg install getconf
```
### Instalación
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- -b /data/data/com.termux/files/usr/bin
```
## [Nix](https://nixos.wiki/wiki/Nix)
### Obtener el binario
#### Imperativamente
```sh
nix-env -iA nixos.starship
```
#### Declarativo, usuario único, a través de [home-manager](home-manager)
Activa el módulo `programs.starship` en tu archivo `home.nix` y añade tus ajustes
```nix
{
programs.starship = {
enable = true;
enableZshIntegration = true;
# Configuration written to ~/.config/starship.toml
settings = {
# add_newline = false;
# character = {
# success_symbol = "[](bold green)";
# error_symbol = "[](bold red)";
# };
# package.disabled = true;
};
};
}
```
luego ejecutar
```sh
home-manager switch
```
#### Declarativo, en todo el sistema, con NixOS
Añade `pkgs.starship` a `environment.systemPackages` en tu `configuration.nix`, luego ejecuta
```sh
sudo nixos-rebuild switch
```
+267
View File
@@ -0,0 +1,267 @@
# Migrando a v0.45.0
Starship v0.45.0 es un lanzamiento que contiene cambios de ruptura, en preparación para la gran v1.0.0. Hemos hecho algunos cambios importantes en la forma en que se realiza la configuración en el prompt, para permitir un mayor grado de personalización.
Esta guía pretende guiarle a través de los cambios de ruptura.
## `prompt_order` ha sido reemplazado por un "nivel raíz" `format`
Anterioramente a v0.45.0, `prompt_order` aceptaría un arreglo de nombres de módulos en el orden que deberían ser renderizados por Starship.
En su lugar, Starship v0.45.0 acepta un valor de `format`, permitiendo la personalización del indicador fuera de los propios módulos.
**Configuración de ejemplo pre-v0.45.0**
```toml
prompt_order = [
"username",
"hostname",
"directory",
"git_branch",
"git_commit",
"git_state",
"git_status",
"cmd_duration",
"custom",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
**Configuración de ejemplo v0.45.0**
```toml
format = """\
$username\
$hostname\
$directory\
$git_branch\
$git_commit\
$git_state\
$git_status\
$cmd_duration\
$custom\
$line_break\
$jobs\
$battery\
$time\
$character\
"""
```
## El módulo `prefix` y `suffix` han sido reemplazados por `format`
Anteriormente a v0.45.0, algunos módulos aceptarían `prefix` y/o `suffix` para estilizar la forma en que se renderizan los módulos.
En su lugar, Starship v0.45.0 acepta un valor `format`, lo que permite una mayor personalización de cómo se renderizan los módulos. En lugar de definir un prefijo y un sufijo para las variables basadas en contextos, las variables ahora pueden ser sustituidas dentro de una cadena de formato, que representa la salida del módulo.
**Configuración de ejemplo pre-v0.45.0**
```toml
[cmd_duration]
prefix = "tomó "
```
**Configuración de ejemplo v0.45.0**
```toml
[cmd_duration]
# $duration La duración del comando (p. ej. "15s")
# $style El estilo por defecto del módulo (p. ej. "bold yellow")
format = "tomó [$duration]($style) "
```
### Módulos afectados
#### Character
| Propiedad eliminada | Reemplazo |
| ----------------------- | ---------------- |
| `symbol` | `success_symbol` |
| `use_symbol_for_status` | `error_symbol` |
| `style_success` | `success_symbol` |
| `style_failure` | `error_symbol` |
**Cambios a la configuración por defecto**
```diff
[character]
-- symbol = ""
-- error_symbol = "✖"
-- use_symbol_for_status = true
-- vicmd_symbol = ""
++ success_symbol = "[](bold green)"
++ error_symbol = "[](bold red)"
++ vicmd_symbol = "[](bold green)"
```
Anteriormente, la propiedad `use_symbol_for_status` fue usada para configurar el prompt para mostrar el `error_symbol` cuando el último comando resultó en un código de estado distinto de cero.
Con la liberación de v0.45.0, ahora siempre usamos las propiedades `error_symbol` después de códigos de estado diferentes de cero, unificando `use_symbol_for_status` y `error_symbol`.
Para configurar el prompt para usar la configuración anterior `use_symbol_for_status = true`, agrega lo siguiente a tu archivo de configuración:
```toml
[character]
error_symbol = "[](bold red)"
```
*Nota:* El elemento `character` añade automáticamente un espacio, así que a diferencia del otras cadenas `format`, no añadimos uno en los ejemplos anteriores.
#### Tiempo de Ejecución
| Propiedad eliminada | Reemplazo |
| ------------------- | --------- |
| `prefix` | `format` |
**Cambios a la configuración por defecto**
```diff
[cmd_duration]
-- prefix = "took "
++ format = "took [$duration]($style) "
```
#### Directory
| Propiedad eliminada | Reemplazo |
| ------------------- | --------- |
| `prefix` | `format` |
**Cambios a la configuración por defecto**
```diff
[directory]
-- prefix = "in "
++ format = "[$path]($style)[$read_only]($read_only_style) "
```
#### Variable de entorno
| Propiedad eliminada | Reemplazo |
| ------------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Cambios a la configuración por defecto**
```diff
[env_var]
-- prefix = ""
-- suffix = ""
++ format = "with [$env_value]($style) "
```
#### Git commit
| Propiedad eliminada | Reemplazo |
| ------------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Cambios a la configuración por defecto**
```diff
[git_commit]
-- prefix = "("
-- suffix = ")"
++ format = '[\($hash\)]($style) '
```
#### Git status
| Propiedad eliminada | Reemplazo |
| ------------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
| `show_sync_count` | `format` |
**Cambios a la configuración por defecto**
```diff
[git_status]
-- prefix = "["
-- suffix = "]"
-- show_sync_count = false
++ format = '([\[$all_status$ahead_behind\]]($style) )'
```
Anteriormente, la propiedad `show_sync_count` fue usada para configurar el prompt para mostrar el número de confirmaciones que la rama estaba por delante o detrás de la rama remota.
Con el lanzamiento de v0.45.0, esto ha sido reemplazado por tres propiedades separadas, `ahead`, `behind`, y `diverged`.
Para configurar el prompt para usar la configuración anterior `show_sync_count = true`, establece lo siguiente en tu archivo de configuración:
```toml
[git_status]
ahead = "⇡${count}"
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
behind = "⇣${count}"
```
#### Hostname
| Propiedad eliminada | Reemplazo |
| ------------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Cambios a la configuración por defecto**
```diff
[hostname]
-- prefix = ""
-- suffix = ""
++ format = "[$hostname]($style) in "
```
#### Singularity
| Propiedad eliminada | Reemplazo |
| ------------------- | --------- |
| `label` | `format` |
| `prefix` | `format` |
| `suffix` | `format` |
**Cambios a la configuración por defecto**
```diff
[singularity]
-- prefix = ""
-- suffix = ""
++ format = '[$symbol\[$env\]]($style) '
```
#### Hora
| Propiedad eliminada | Reemplazo |
| ------------------- | ------------- |
| `format` | `time_format` |
**Cambios a la configuración por defecto**
```diff
[time]
-- format = "🕙[ %T ]"
++ time_format = "%T"
++ format = "at 🕙[$time]($style) "
```
#### Comandos Personalizados
| Propiedad eliminada | Reemplazo |
| ------------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Cambios a la configuración por defecto**
```diff
[custom.example]
-- prefix = ""
-- suffix = ""
++ format = "[$symbol$output]($style) "
```
+92
View File
@@ -0,0 +1,92 @@
# Ajustes por defecto
Aquí hay una colección de ajustes por defecto creados por la comunidad de Starship. ¡Si quieres compartir un ajuste por defecto, por favor, [envía un PR](https://github.com/starship/starship/edit/master/docs/presets/README.md) actualizando este archivo! 😊
## Símbolos de Nerd Font
Este ajuste por defecto no modifica nada excepto los símbolos usados para cada módulo. Si los emojis no son lo tuyo, ¡esto podría llamar tu atención!
![Captura de pantalla de los ajustes por defecto de los Símbolos de Nerd Font](/presets/nerd-font-symbols.png)
### Prerequisitos
- Una [Nerd Font](https://www.nerdfonts.com/) instalada y habilitada en tu terminal (el ejemplo usa Fira Code Nerd Font)
### Configuración
```toml
[aws]
symbol = " "
[conda]
symbol = " "
[dart]
symbol = " "
[directory]
read_only = " "
[docker]
symbol = " "
[elixir]
symbol = " "
[elm]
symbol = " "
[git_branch]
symbol = " "
[golang]
symbol = " "
[haskell]
symbol = " "
[hg_branch]
symbol = " "
[java]
symbol = " "
[julia]
symbol = " "
[memory_usage]
symbol = " "
[nim]
symbol = " "
[nix_shell]
symbol = " "
[nodejs]
symbol = " "
[package]
symbol = " "
[perl]
symbol = " "
[php]
symbol = " "
[python]
symbol = " "
[ruby]
symbol = " "
[rust]
symbol = " "
[scala]
symbol = " "
[swift]
symbol = "ﯣ "
```
+105
View File
@@ -0,0 +1,105 @@
# FAQ
## What is the configuration used in the demo GIF?
- **Terminal Emulator**: [iTerm2](https://iterm2.com/)
- **Theme**: Minimal
- **Color Scheme**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **Font**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **Shell**: [Fish Shell](https://fishshell.com/)
- **Configuration**: [matchai's Dotfiles](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **Prompt**: [Starship](https://starship.rs/)
## How do I get command completion as shown in the demo GIF?
Completion support, or autocomplete, is provided by your shell of choice. In the case of the demo, the demo was done with [Fish Shell](https://fishshell.com/), which provides completions by default. If you use Z Shell (zsh), I'd suggest taking a look at [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions).
## Do top level `format` and `<module>.disabled` do the same thing?
Yes, they can both be used to disable modules in the prompt. If all you plan to do is disable modules, `<module>.disabled` is the preferred way to do so for these reasons:
- Disabling modules is more explicit than omitting them from the top level `format`
- Newly created modules will be added to the prompt as Starship is updated
## The docs say Starship is cross-shell. Why isn't my preferred shell supported?
The way Starship is built, it should be possible to add support for virtually any shell. The starship binary is stateless and shell agnostic, so as long as your shell supports prompt customization and shell expansion, Starship can be used.
Here's a small example getting Starship working with bash:
```sh
# Get the status code from the last command executed
STATUS=$?
# Get the number of jobs running.
NUM_JOBS=$(jobs -p | wc -l)
# Set the prompt to the output of `starship prompt`
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
```
The [Bash implementation](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#command-duration) and to ensure that Starship is compatible with pre-installed Bash configurations.
For a list of all flags accepted by `starship prompt`, use the following command:
```sh
starship prompt --help
```
The prompt will use as much context as is provided, but no flags are "required".
## How do I run Starship on Linux distributions with older versions of glibc?
If you get an error like "_version 'GLIBC_2.18' not found (required by starship)_" when using the prebuilt binary (for example, on CentOS 6 or 7), you can use a binary compiled with `musl` instead of `glibc`:
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- --platform unknown-linux-musl
```
## I see symbols I don't understand or expect, what do they mean?
If you see symbols that you don't recognise you can use `starship explain` to
explain the currently showing modules.
## Why don't I see a glyph symbol in my prompt?
The most common cause of this is system misconfiguration. Some Linux distros in
particular do not come with font support out-of-the-box. You need to ensure that:
- Your locale is set to a UTF-8 value, like `de_DE.UTF-8` or `ja_JP.UTF-8`. If `LC_ALL` is not a UTF-8 value,
[you will need to change it](https://www.tecmint.com/set-system-locales-in-linux/).
- You have an emoji font installed. Most systems come with an emoji font by default, but
some (notably Arch Linux) do not. You can usually install one through your system's
package manager--[noto emoji](https://www.google.com/get/noto/help/emoji/) is a popular choice.
- You are using a [Nerd Font](https://www.nerdfonts.com/).
To test your system, run the following commands in a terminal:
```sh
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
```
The first line should produce a [snake emoji](https://emojipedia.org/snake/),
while the second should produce a [powerline branch symbol (e0a0)](https://github.com/ryanoasis/powerline-extra-symbols#glyphs).
If either symbol fails to display correctly, your system is still misconfigured.
Unfortunately, getting font configuration correct is sometimes difficult. Users
on the Discord may be able to help. If both symbols display correctly, but
you still don't see them in starship, [file a bug report!](https://github.com/starship/starship/issues/new/choose)
## How do I uninstall Starship?
Starship is just as easy to uninstall as it is to install in the first place.
1. Remove any lines in your shell config (e.g. `~/.bashrc`) used to initialize Starship.
1. Delete the Starship binary.
If Starship was installed using a package manager, please refer to their docs for uninstallation instructions.
If Starship was installed using the `curl | bash` script, the following command will delete the binary:
```sh
# Locate and delete the starship binary
rm "$(which starship)"
```
+136
View File
@@ -0,0 +1,136 @@
---
home: true
heroImage: /logo.svg
heroText:
tagline: L'invite minimaliste, ultra-rapide et personnalisable à l'infini pour n'importe quel shell !
actionText: Commencez →
actionLink: ./guide/
features:
-
title: Compatibilité avant tout
details: Fonctionne sur tous les principaux shells et système d'exploitation. Utilisez-le partout !
-
title: Propulsé par Rust
details: Profiter de toute la rapidité et la sécurité de Rust pour rendre votre invite de commandes le plus rapide et fiable possible.
-
title: Personnalisable
details: Tous les petits détails sont personnalisable à votre goût, pour rendre votre invite de commandes aussi léger ou complet que le vous souhaitez.
footer: Licence ISC | Copyright © 2019-présent Contributeurs Starship
#Used for the description meta tag, for SEO
metaTitle: "Starship : Invite Multi-Shell"
description: Starship est un invite minimaliste, ultra-rapide et hautement personnalisable pour n'importe quel shell ! Montre les informations dont vous avez besoin tout en restant élégant et minimaliste. Installation rapide disponible pour Bash, Fish, ZSH, Ion et PowerShell.
---
<div class="center">
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### Installation
1. Installer le binaire **starship** :
#### Installer la dernière version
Avec Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Installer via le gestionnaire de paquets
Avec [Homebrew](https://brew.sh/):
```sh
brew install starship
```
Avec [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
1. Ajouter le script dinitialisation au fichier configuration de votre shell:
#### Bash
Ajouter ce qui suit à la fin de `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Ajoute ce qui suit à la fin de `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Ajouter ce qui suit à la fin de `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### Powershell
Ajoutez ce qui suit à la fin de `Microsoft.PowerShell_profile.ps1`. Vous pouvez vérifier l'emplacement de ce fichier en regardant la variable `$PROFILE` dans PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
Ajouter ce qui suit à la fin de `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: warning Only elvish v0.15 or higher is supported. :::
Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
+93
View File
@@ -0,0 +1,93 @@
# Configuration avancée
Même si Starship est un shell polyvalent, éditer `starship.toml` ne suffit parfois pas pour faire certaines choses. Cette page détaille quelques techniques de configuration avancées utilisées dans starship.
::: warning
Les configurations dans cette section sont sujettes à modification dans les futures versions de Starship.
:::
## Personnalisation des commandes pré-commande et pré-exécution en Bash
Bash n'a pas de structure officielle préexec/précmd comme la plupart des autres shells. C'est pourquoi il est difficile de fournir des hooks entièrement personnalisables dans `bash`. Cependant, Starship vous donne une capacité limitée à insérer vos propres fonctions dans la procédure de rendu commande :
- Pour exécuter une fonction personnalisée juste avant que commande soit dessinée, définissez une nouvelle fonction et assignez son nom à `starship_precmd_user_func`. Par exemple, pour dessiner une fusée avant la commande, vous feriez
```bash
function blastoff(){
echo "🚀"
}
starship_precmd_user_func="blastoff"
```
- Pour exécuter une fonction personnalisée juste avant l'exécution d'une commande, vous pouvez utiliser le [` DEBUG` mécanisme d'interruption ](https://jichu4n.com/posts/debug-trap-and-prompt_command-in-bash/). Cependant, vous **devez** piéger le signal DEBUG *avant* initialisation du Starship ! Starship peut préserver la valeur du piège DEBUG, mais si le piège est écrasé après le démarrage de Starship, certaines fonctionnalités vont casser.
```bash
function blastoff(){
echo "🚀"
}
trap blastoff DEBUG # Pièger DEBUG *avant* l'initiation de starship
eval $(starship init bash)
```
## Modifier le style des fenêtres commande
Certaines commandes du shell changeront automatiquement le titre de la fenêtre (par exemple, refléter votre répertoire de travail). Fish le fait par défaut. Starship ne le fait pas, mais il est assez simple d'ajouter cette fonctionnalité à `bash` ou `zsh`.
Tout d'abord, définir une fonction de changement de titre de fenêtre (identique en bash et zsh) :
```bash
function set_titre_fenetre(){
echo -ne "\033]0; TON_TITRE_FENETRE_ICI \007"
}
```
Vous pouvez utiliser des variables pour personnaliser ce titre (`$USER`, `$HOSTNAME`, et `$PWD` sont des choix populaires).
Dans `bash`, définissez cette fonction comme la fonction precmd Starship :
```bash
starship_precmd_user_func="set_titre_gagnante"
```
Dans `zsh`, ajoutez ceci au tableau `precmd_functions` :
```bash
précmd_functions+=(set_titre_gagnant)
```
Si vous aimez le résultat, ajoutez ces lignes à votre fichier de configuration shell (`~/.bashrc` ou `~/.zshrc`) pour le rendre permanent.
Par exemple, si vous voulez afficher votre répertoire actuel dans votre titre d'onglets de terminal, ajoutez le snippet suivant à votre `~/.bashrc` ou `~/.zshrc`:
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## Chaînes de style
Les chaînes de style sont une liste de mots, séparés par des espaces. Les mots ne sont pas sensibles à la casse (c'est-à-dire `gras` et `GrAs` sont considérés comme le même mot). Chaque mot peut être l'un des suivants :
- `bold`
- `underline`
- `dimmed`
- `bg:<color>`
- `fg:<color>`
- `<color>`
- `none`
`<color>` est un spécificateur de couleur (discuté ci-dessous). `fg:<color>` et `<color>` font actuellement la même chose, même si cela peut changer plus tard. L'ordre des mots dans le string n'a pas d'importance.
The `none` token overrides all other tokens in a string if it is not part of a `bg:` specifier, so that e.g. `fg:red none fg:blue` will still create a string with no styling. `bg:none` sets the background to the default color so `fg:red bg:none` is equivalent to `red` or `fg:red` and `bg:green fg:red bg:none` is also equivalent to `fg:red` or `red`. Il peut devenir une erreur d'utiliser `none` en conjonction avec d'autres jetons dans le futur.
Un spécificateur de couleur peut être l'un des éléments suivants :
- Une des couleurs standard du terminal : `black`, `red`, `green`, `blue`, `yellow`, `purple`, `cyan`, `white`. Vous pouvez éventuellement les préfixer avec `bright-` pour obtenir la version lumineuse (par exemple `bright-white`).
- Un `#` suivi d'un nombre hexadécimal de six chiffres. Ceci spécifie un [ Code hexadécimal de couleur RVB ](https://www.w3schools.com/colors/colors_hexadecimal.asp).
- Un nombre entre 0-255. Ceci spécifie un [code de couleur ANSI 8 bits](https://i.stack.imgur.com/KTSQa.png).
Si plusieurs couleurs sont spécifiées pour le premier plan/arrière-plan, la dernière dans le string prendra la priorité.
File diff suppressed because it is too large Load Diff
+96
View File
@@ -0,0 +1,96 @@
# Foire aux questions
## Quelle est la configuration utilisée dans le GIF de démonstration ?
- **Émulateur de terminal**: [iTerm2](https://iterm2.com/)
- **Thème** : Minimal
- **Palette de couleurs**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **Police**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **Shell** : [Fish Shell](https://fishshell.com/)
- **Configuration**: [Dotfiles de matchai](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **Invite de commande**: [Starship](https://starship.rs/)
## Comment puis-je obtenir la complétion de commandes comme montré dans le GIF de démo?
L'aide à la complétion ou autocomplétion est fournie par le shell que vous avez choisi. Dans le cas de la démo, elle a été faite avec [Fish Shell](https://fishshell.com/), qui fournit des complétions par défaut. Si vous utilisez le Shell Z (zsh), vous pouvez jeter un œil à [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions).
## Est-ce que l'option globale `format` et `<module>.disabled` font la même chose ?
Oui, ils peuvent tous deux être utilisés pour désactiver les modules dans l'invite de commande. Si tout ce que vous prévoyez de faire est de désactiver les modules, `<module>.disabled` est le meilleur moyen de le faire pour ces raisons :
- Désactiver les modules est plus explicite que de les omettre du `format global`
- Les modules nouvellement créés seront ajoutés à l'invite de commande au fur et à mesure que Starship sera mis à jour
## The docs say Starship is cross-shell. Why isn't my preferred shell supported?
Étant donné la façon dont Starship est construit, il devrait être possible d'ajouter le support pour pratiquement n'importe quel shell. Starship est sans état et agnostique, donc tant que votre shell supporte la personnalisation rapide et l'expansion, Starship peut être utilisé.
Voici un petit exemple pour que Starship fonctionne avec bash :
```sh
# Récupère le code d'état de la dernière commande exécutée
STATUS=$?
# Récupère le nombre de tâches en cours d'exécution.
NUM_JOBS=$(jobs -p | wc -l)
# Définit l'invite de commande a `starship prompt`
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
```
The [Bash implementation](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#command-duration) and to ensure that Starship is compatible with pre-installed Bash configurations.
Pour une liste de tous les flags acceptés par `starship`, utilisez la commande suivante :
```sh
starship prompt --help
```
L'invite utilisera autant de contexte que possible, mais aucun paramètre n'est "requis".
## Comment utiliser Starship sur des distributions Linux avec des versions de glibc plus ancienne ?
Si vous obtenez une erreur du type "_version 'GLIBC_2.18' not found (required by starship)_" lors de l'utilisation de l'exécutable précompilé (par exemple sur CentOS 6 ou 7), vous pouvez utiliser un exécutable compilé avec `musl` au lieu de `glibc`:
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- --platform unknown-linux-musl
```
## I see symbols I don't understand or expect, what do they mean?
If you see symbols that you don't recognise you can use `starship explain` to explain the currently showing modules.
## Why don't I see a glyph symbol in my prompt?
The most common cause of this is system misconfiguration. Some Linux distros in particular do not come with font support out-of-the-box. You need to ensure that:
- Votre locale est définie à une valeur UTF-8, comme `de_DE.UTF-8` ou `ja_JP.UTF-8`. Si `LC_ALL` n'est pas une valeur UTF-8, [vous aurez besoin de la modifier](https://www.tecmint.com/set-system-locales-in-linux/).
- Vous avez une police emoji installée. La plupart des systèmes sont fournis avec une police emoji par défaut, mais certains (notamment Arch Linux) ne le font pas. Vous pouvez habituellement en installer un par le biais du gestionnaire de paquets de votre système -[noto emoji](https://www.google.com/get/noto/help/emoji/) est un choix populaire.
- Vous utilisez une police [Nerd Font](https://www.nerdfonts.com/).
To test your system, run the following commands in a terminal:
```sh
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
```
The first line should produce a [snake emoji](https://emojipedia.org/snake/), while the second should produce a [powerline branch symbol (e0a0)](https://github.com/ryanoasis/powerline-extra-symbols#glyphs).
If either symbol fails to display correctly, your system is still misconfigured. Unfortunately, getting font configuration correct is sometimes difficult. Users on the Discord may be able to help. If both symbols display correctly, but you still don't see them in starship, [file a bug report!](https://github.com/starship/starship/issues/new/choose)
## How do I uninstall Starship?
Starship is just as easy to uninstall as it is to install in the first place.
1. Supprimez les lignes de la configuration de votre shell (par exemple `~/.bashrc`) utilisées pour initialiser Starship.
1. Supprimer l'exécutable de Starship.
If Starship was installed using a package manager, please refer to their docs for uninstallation instructions.
If Starship was installed using the `curl | bash` script, the following command will delete the binary:
```sh
# Localiser et supprimer l'exécutable de Starship
rm "$(which starship)"
```
+311
View File
@@ -0,0 +1,311 @@
<p align="center">
<img
width="400"
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
alt="Starship Prompt Shell multi-platformes"
/>
</p>
<p align="center">
<a href="https://github.com/starship/starship/actions"
><img
src="https://img.shields.io/github/workflow/status/starship/starship/Main workflow/master?label=workflow&style=flat-square"
alt="Statut du workflow actions GitHub"
/></a>
<a href="https://crates.io/crates/starship"
><img
src="https://img.shields.io/crates/v/starship?style=flat-square"
alt="Version Crates.io"
/></a>
<a href="https://repology.org/project/starship/versions"
><img
src="https://img.shields.io/repology/repositories/starship?label=in%20repositories&style=flat-square"
alt="Statut du package" /></a
><br />
<a href="https://discord.gg/starship"
><img
src="https://img.shields.io/discord/567163873606500352?label=discord&logoColor=white&style=flat-square"
alt="Discuter sur Discord"
/></a>
<a href="https://twitter.com/StarshipPrompt"
><img
src="https://img.shields.io/badge/twitter-@StarshipPrompt-1DA1F3?style=flat-square"
alt="Suivez @StarshipPrompt sur Twitter"
/></a>
</p>
<p align="center">
<a href="https://starship.rs">Site web</a>
·
<a href="#🚀-installation">Installation</a>
·
<a href="https://starship.rs/config/">Configuration</a>
</p>
<p align="center">
<a href="https://github.com/starship/starship/blob/master/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
alt="English"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
alt="日本語"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
alt="繁體中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
alt="Русский"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
alt="Deutsch"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
alt="简体中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
alt="Espagnol"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
alt="Français"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
alt="Tiếng Việt"
/></a>
</p>
<h1></h1>
<img
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
alt="Starship avec iTerm2 et le thème Snazzy"
width="50%"
align="right"
/>
**L'invite minimaliste, ultra-rapide et personnalisable à l'infini pour n'importe quel shell !**
- **Rapide** : il est rapide - _vraiment vraiment_ rapide ! 🚀
- **Personnalisable:** configurer chaque élément de votre invite.
- **Universel:** fonctionne avec n'importe quel shell, sur n'importe quel système d'exploitation.
- **Intelligent:** affiche les informations utiles en un coup d'œil.
- **Riche en fonctionnalités:** supporte tous vos outils favoris.
- **Facile:** rapide à installer - commencer à l'utiliser en quelques minutes.
<p align="center">
<a href="https://starship.rs/config/"><strong>Consulter la documentation de Starship&nbsp;&nbsp;▶</strong></a>
</p>
<a name="🚀-installation"></a>
## 🚀 Installation
### Pré-requis
- Une police [Nerd Font](https://www.nerdfonts.com/) installée et activée dans votre terminal (Par exemple, essayez [Fira Code](https://www.nerdfonts.com/font-downloads)).
### Démarrage rapide
**Note**: due to the proliferation of different platforms, only a subset of supported platforms are shown below. Can't see yours? Have a look at the [extra platform instructions](https://starship.rs/installing/).
1. Installer l'exécutable **starship** :
#### Installer la dernière version
##### Depuis une version pré-compilée, depuis le shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Installer via le gestionnaire de paquets
##### Example: [Homebrew](https://brew.sh/):
```sh
brew install starship
```
##### Avec [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
2. Ajouter le script dinitialisation au fichier de configuration de votre shell:
#### Bash
Ajouter ce qui suit à la fin de `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Ajoute ce qui suit à la fin de `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Ajouter ce qui suit à la fin de `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### PowerShell
Ajouter ce qui suit à la fin de `Microsoft.PowerShell_profile.ps1`. Vous pouvez vérifier l'emplacement de ce fichier en regardant la variable `$PROFILE` dans PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
```powershell
Invoke-Expression (&starship init powershell)
```
#### Ion
Ajouter ce qui suit à la fin de `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
**Warning** Only elvish v0.15 or higher is supported. Add the following to the end of `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Add the following to the end of `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
## 🤝Contribution
Nous sommes toujours à la recherche de contributeurs de **tous niveaux de compétence**! Si vous cherchez à faciliter votre entrée dans le projet, essayez un [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
If you are fluent in a non-English language, we greatly appreciate any help keeping our docs translated and up-to-date in other languages. If you would like to help, translations can be contributed on the [Starship Crowdin](https://translate.starship.rs/).
Si vous êtes intéressé pour aider et contribuer à Starship, veuillez jeter un coup d'œil à notre [Guide de contribution](https://github.com/starship/starship/blob/master/CONTRIBUTING.md). Aussi, n'hésitez pas à vous rendre sur notre [serveur Discord](https://discord.gg/8Jzqu3T) pour dire bonjour. 👋
### Contributeurs
Ce projet existe grâce à toutes les personnes qui y contribuent. [[Contribuer](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)].
<a href="https://github.com/starship/starship/graphs/contributors"><img src="https://opencollective.com/starship/contributors.svg?width=890&button=false" /></a>
### Contributeurs financiers
Devenez un contributeur financier et aidez-nous à soutenir notre communauté. [[Contribuer](https://opencollective.com/starship/contribute)]
#### Particuliers
<a href="https://opencollective.com/starship"><img src="https://opencollective.com/starship/individuals.svg?width=890"></a>
#### Organisations
Soutenez ce projet avec votre organisation. Votre logo apparaîtra ici avec un lien vers votre site Web. [[Contribuer](https://opencollective.com/starship/contribute)]
<a href="https://opencollective.com/starship/organization/0/website"><img src="https://opencollective.com/starship/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/1/website"><img src="https://opencollective.com/starship/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/2/website"><img src="https://opencollective.com/starship/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/3/website"><img src="https://opencollective.com/starship/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/4/website"><img src="https://opencollective.com/starship/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/5/website"><img src="https://opencollective.com/starship/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/6/website"><img src="https://opencollective.com/starship/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/7/website"><img src="https://opencollective.com/starship/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/8/website"><img src="https://opencollective.com/starship/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/9/website"><img src="https://opencollective.com/starship/organization/9/avatar.svg"></a>
## 💭Inspiré par
Voyez ces travaux précédents qui ont contribué à inspirer la création de vaisseau. 🙏
- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** - Un invite de commandes ZSH pour les astronautes.
- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** - Thème multi-shell robbyrussell écrit en JavaScript.
- **[reujab/silver](https://github.com/reujab/silver)** - Un shell multi-platformes de type powerline personnalisable avec des icônes.
<p align="center">
<br>
<img width="100" src="https://raw.githubusercontent.com/starship/starship/master/media/icon.png" alt="Icône de fusée de Starship">
</p>
## 📝 License
Copyright © 2019-présent, [Contributeurs Starship](https://github.com/starship/starship/graphs/contributors).<br /> Ce projet est sous licence[ISC](https://github.com/starship/starship/blob/master/LICENSE).
+84
View File
@@ -0,0 +1,84 @@
# 🚀 Installation avancée
Pour installer starship, vous devez faire deux choses:
1. Installez le binaire **starship** sur votre ordinateur
1. Dites à votre shell d'utiliser le binaire de starship comme invite en modifiant ses scripts d'initialisation
Pour la plupart des utilisateurs, les instructions sur [la page principale](/guide/#🚀-installation) fonctionneront bien. Cependant, pour certaines plateformes plus spécialisées, des instructions différentes sont nécessaires.
Il y a tellement de plates-formes, qu'il aurait été déraisonnable de les faire apparaître dans le README principal, voici donc quelques instructions d'installation supplémentaires pour celles-ci, écrient par la commaunauté. La vôtre n'est-elle pas là ? S'il vous plaît, ajoutez-la ici pour les suivants !
## [Chocolatey](https://chocolatey.org)
### Pré-requis
Head over to the [Chocolatey installation page](https://chocolatey.org/install) and follow the instructions to install Chocolatey.
### Installation
```powershell
choco install starship
```
## [termux](https://termux.com)
### Pré-requis
```sh
pkg install getconf
```
### Installation
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- -b /data/data/com.termux/files/usr/bin
```
## [Nix](https://nixos.wiki/wiki/Nix)
### Getting the Binary
#### Impératif
```sh
nix-env -iA nixos.starship
```
#### Déclaration, utilisateur unique, via [home-manager](home-manager)
Enable the `programs.starship` module in your `home.nix` file, and add your settings
```nix
{
programs.starship = {
enable = true;
enableZshIntegration = true;
# Configuration written to ~/.config/starship.toml
settings = {
# add_newline = false;
# character = {
# success_symbol = "[](bold green)";
# error_symbol = "[](bold red)";
# };
# package.disabled = true;
};
};
}
```
then run
```sh
home-manager switch
```
#### Déclaration, au niveau du système, avec NixOS
Add `pkgs.starship` to `environment.systemPackages` in your `configuration.nix`, then run
```sh
sudo nixos-rebuild switch
```
+267
View File
@@ -0,0 +1,267 @@
# Migrating to v0.45.0
Starship v0.45.0 is a release containing breaking changes, in preparation for the big v1.0.0. We have made some major changes around how configuration is done on the prompt, to allow for a greater degree of customization.
This guide is intended to walk you through the breaking changes.
## `prompt_order` has been replaced by a root-level `format`
Previously to v0.45.0, `prompt_order` would accept an array of module names in the order which they should be rendered by Starship.
Starship v0.45.0 instead accepts a `format` value, allowing for customization of the prompt outside of the modules themselves.
**Example pre-v0.45.0 configuration**
```toml
prompt_order = [
"username",
"hostname",
"directory",
"git_branch",
"git_commit",
"git_state",
"git_status",
"cmd_duration",
"custom",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
**Example v0.45.0 configuration**
```toml
format = """\
$username\
$hostname\
$directory\
$git_branch\
$git_commit\
$git_state\
$git_status\
$cmd_duration\
$custom\
$line_break\
$jobs\
$battery\
$time\
$character\
"""
```
## Module `prefix` and `suffix` have been replaced by `format`
Previously to v0.45.0, some modules would accept `prefix` and/or `suffix` in order to stylize the way that modules are rendered.
Starship v0.45.0 instead accepts a `format` value, allowing for further customization of how modules are rendered. Instead of defining a prefix and suffix for the context-based variables, the variables can now be substituted from within a format string, which represents the module's output.
**Example pre-v0.45.0 configuration**
```toml
[cmd_duration]
prefix = "took "
```
**Example v0.45.0 configuration**
```toml
[cmd_duration]
# $duration The command duration (e.g. "15s")
# $style The default style of the module (e.g. "bold yellow")
format = "took [$duration]($style) "
```
### Affected Modules
#### Caractères
| Removed Property | Replacement |
| ----------------------- | ---------------- |
| `symbol` | `success_symbol` |
| `use_symbol_for_status` | `error_symbol` |
| `style_success` | `success_symbol` |
| `style_failure` | `error_symbol` |
**Changes to the Default Configuration**
```diff
[character]
-- symbol = ""
-- error_symbol = "✖"
-- use_symbol_for_status = true
-- vicmd_symbol = ""
++ success_symbol = "[](bold green)"
++ error_symbol = "[](bold red)"
++ vicmd_symbol = "[](bold green)"
```
Previously, the `use_symbol_for_status` property was used to configure the prompt to show the `error_symbol` when the last command resulted in a non-zero status code.
With the release of v0.45.0, we now always use `error_symbol` after non-zero status codes, unifying `use_symbol_for_status` and `error_symbol` properties.
To configure the prompt to use the older `use_symbol_for_status = true` configuration, add the following to your config file:
```toml
[character]
error_symbol = "[](bold red)"
```
*Note:* The `character` element automatically adds a space after, so unlike the other `format` strings, we specifically do not add one in the above examples.
#### Temps d'exécution
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
**Changes to the Default Configuration**
```diff
[cmd_duration]
-- prefix = "took "
++ format = "took [$duration]($style) "
```
#### Dossier
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
**Changes to the Default Configuration**
```diff
[directory]
-- prefix = "in "
++ format = "[$path]($style)[$read_only]($read_only_style) "
```
#### Environment Variable
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[env_var]
-- prefix = ""
-- suffix = ""
++ format = "with [$env_value]($style) "
```
#### Git Commit
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[git_commit]
-- prefix = "("
-- suffix = ")"
++ format = '[\($hash\)]($style) '
```
#### Git Status
| Removed Property | Replacement |
| ----------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
| `show_sync_count` | `format` |
**Changes to the Default Configuration**
```diff
[git_status]
-- prefix = "["
-- suffix = "]"
-- show_sync_count = false
++ format = '([\[$all_status$ahead_behind\]]($style) )'
```
Previously, the `show_sync_count` property was used to configure the prompt to show the number of commits the branch was ahead or behind the remote branch.
With the release of v0.45.0, this has been replaced with three separate properties, `ahead`, `behind`, and `diverged`.
To configure the prompt to use the older `show_sync_count = true` configuration, set the following to your config file:
```toml
[git_status]
ahead = "⇡${count}"
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
behind = "⇣${count}"
```
#### Hostname
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[hostname]
-- prefix = ""
-- suffix = ""
++ format = "[$hostname]($style) in "
```
#### Singularity
| Removed Property | Replacement |
| ---------------- | ----------- |
| `label` | `format` |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[singularity]
-- prefix = ""
-- suffix = ""
++ format = '[$symbol\[$env\]]($style) '
```
#### Temps
| Removed Property | Replacement |
| ---------------- | ------------- |
| `format` | `time_format` |
**Changes to the Default Configuration**
```diff
[time]
-- format = "🕙[ %T ]"
++ time_format = "%T"
++ format = "at 🕙[$time]($style) "
```
#### Custom Commands
| Removed Property | Replacement |
| ---------------- | ----------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Changes to the Default Configuration**
```diff
[custom.example]
-- prefix = ""
-- suffix = ""
++ format = "[$symbol$output]($style) "
```
+92
View File
@@ -0,0 +1,92 @@
# Paramètres par défaut
Voici un ensemble de configuration par défaut soumis par la communauté pour Starship. Si vous avez une configuration à partager, veuillez [proposer une PR](https://github.com/starship/starship/edit/master/docs/presets/README.md) pour mettre à jour ce fichier! 😊
## Nerd Font Symbols
Cette configuration ne modifie rien sauf les symboles utilisés pour chaque module. Si les émoticônes ne sont pas votre tasse de thé, elle pourrait retenir votre attention!
![Capture d'écran du pré-réglage Nerd Font Symbols](/presets/nerd-font-symbols.png)
### Pré-requis
- Une [Nerd Font](https://www.nerdfonts.com/) est installée et activée dans votre terminal (l'exemple utilise Fira Code Nerd Font)
### Configuration
```toml
[aws]
symbol = " "
[conda]
symbol = " "
[dart]
symbol = " "
[directory]
read_only = " "
[docker]
symbol = " "
[elixir]
symbol = " "
[elm]
symbol = " "
[git_branch]
symbol = " "
[golang]
symbol = " "
[haskell]
symbol = " "
[hg_branch]
symbol = " "
[java]
symbol = " "
[julia]
symbol = " "
[memory_usage]
symbol = " "
[nim]
symbol = " "
[nix_shell]
symbol = " "
[nodejs]
symbol = " "
[package]
symbol = " "
[perl]
symbol = " "
[php]
symbol = " "
[python]
symbol = " "
[ruby]
symbol = " "
[rust]
symbol = " "
[scala]
symbol = " "
[swift]
symbol = "ﯣ "
```
-107
View File
@@ -1,107 +0,0 @@
---
home: true
heroImage: /logo.svg
actionText: Get Started →
actionLink: /guide/
footer: ISC Licensed | Copyright © 2019-present Starship Contributors
---
<div class="features">
<div class="feature">
<h2>Compatibility First</h2>
<p>Works on the most common shells on the most common operating systems. Use it everywhere!</p>
</div>
<div class="feature">
<h2>Rust-Powered</h2>
<p>Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.</p>
</div>
<div class="feature">
<h2>Customizable</h2>
<p>Every little detail is customizable to your liking, to make this prompt as minimal or feature-rich as you'd like it to be.</p>
</div>
</div>
<div class="center">
<video class="demo-video" autoplay muted loop>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### Quick Install
1. Install the **starship** binary:
**[Download archives of precompiled binaries](https://github.com/starship/starship/releases)** if you don't use the platforms below.
#### Homebrew
```sh
$ brew install starship
```
#### Rust (v1.33 or higher)
```sh
$ cargo install starship
```
#### Arch Linux (AUR)
Starship is available on the AUR under the name `starship`. Install it with `yay` or your favorite AUR helper.
```sh
$ yay -S starship
```
#### Nix (unstable)
```sh
$ nix-env --install starship
```
#### Termux
```sh
$ pkg install starship
```
1. Add the init script to your shell's config file:
#### Bash
Add the following to the end of `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Add the following to the end of `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
eval (starship init fish)
```
#### Zsh
Add the following to the end of `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
-857
View File
@@ -1,857 +0,0 @@
# Configuration
::: tip
🔥 Configuration is currently being worked on. Many new configuration options will be available in coming releases.
:::
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```shell
$ touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
```toml
# Don't print a new line at the start of the prompt
add_newline = false
# Replace the "" symbol in the prompt with "➜"
[character] # The name of the module we are configuring is "character"
symbol = "➜" # The "symbol" segment is being set to "➜"
# Disable the package module, hiding it from the prompt completely
[package]
disabled = true
```
### Terminology
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of NodeJS that is currently installed on your computer, if your current directory is a NodeJS project.
**Segment**: Smaller sub-components that compose a module. For example, the "symbol" segment in the "nodejs" module contains the character that is shown before the version number (⬢ by default).
Here is the representation of the node module. In the following example, "symbol" and "version" are segments within it. Every module also has a prefix and suffix that are the default terminal color.
```
[prefix] [symbol] [version] [suffix]
"via " "⬢" "v10.4.1" ""
```
### Style Strings
Most modules in starship allow you to configure their display styles. This is done with an entry (usually called `style`) which is a string specifying the configuration. Here are some examples of style strings along with what they do. For details on the full syntax, consult the [advanced config guide](/advanced-config/).
- `"fg:green bg:blue"` sets green text on a blue background
- `"bg:blue fg:bright-green"` sets bright green text on a blue background
- `"bold fg:27"` sets bold text with [ANSI color](https://i.stack.imgur.com/KTSQa.png) 27
- `"underline bg:#bf5700"` sets underlined text on a burnt orange background
- `"bold italic fg:purple"` sets bold italic purple text
- `""` explicitly disables all styling
Note that what styling looks like will be controlled by your terminal emulator. For example, some terminal emulators will brighten the colors instead of bolding text, and some color themes use the same values for the normal and bright colors. Also, to get italic text, your terminal must support italics.
## Prompt
This is the list of prompt-wide configuration options.
### Options
| Variable | Default | Description |
| -------------- | ----------------------------- | ------------------------------------------------------ |
| `add_newline` | `true` | Add a new line before the start of the prompt. |
| `prompt_order` | [link](#default-prompt-order) | Configure the order in which the prompt module occurs. |
### Example
```toml
# ~/.config/starship.toml
# Disable the newline at the start of the prompt
add_newline = false
# Overwrite a default_prompt_order and use custom prompt_order
prompt_order=["rust","line_break","package","line_break","character"]
```
### Default Prompt Order
The default `prompt_order` is used to define the order in which modules are shown in the prompt, if empty or no `prompt_order` is provided. The default is as shown:
```toml
prompt_order = [
"username",
"hostname",
"kubernetes",
"directory",
"git_branch",
"git_state",
"git_status",
"package",
"dotnet",
"golang",
"java",
"nodejs",
"python",
"ruby",
"rust",
"nix_shell",
"memory_usage",
"aws",
"env_var",
"cmd_duration",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
## AWS
The `aws` module shows the current AWS profile. This is based on the `AWS_PROFILE` env var.
### Options
| Variable | Default | Description |
| ---------- | --------------- | ---------------------------------------------------------- |
| `symbol` | `"☁️ "` | The symbol used before displaying the current AWS profile. |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `AWS` module. |
### Example
```toml
# ~/.config/starship.toml
[aws]
style = "bold blue"
symbol = "🅰 "
```
## Battery
The `battery` module shows how charged the device's battery is and its current charging status. The module is only visible when the device's battery is below 10%.
### Options
| Variable | Default | Description |
| -------------------- | ------------------------ | ------------------------------------------------- |
| `full_symbol` | `"•"` | The symbol shown when the battery is full. |
| `charging_symbol` | `"⇡"` | The symbol shown when the battery is charging. |
| `discharging_symbol` | `"⇣"` | The symbol shown when the battery is discharging. |
| `display` | [link](#battery-display) | Display threshold and style for the module. |
| `disabled` | `false` | Disables the `battery` module. |
<details>
<summary>There are also options for some uncommon battery states.</summary>
| Variable | Description |
| ---------------- | --------------------------------------------------- |
| `unknown_symbol` | The symbol shown when the battery state is unknown. |
| `empty_symbol` | The symbol shown when the battery state is empty. |
Note: Battery indicator will be hidden if the status is `unknown` or `empty` unless you specify the option in the config.
</details>
### Example
```toml
# ~/.config/starship.toml
[battery]
full_symbol = "🔋"
charging_symbol = "⚡️"
discharging_symbol = "💀"
```
### Battery Display
The `display` configuration option is used to define when the battery indicator should be shown (threshold) and what it looks like (style). If no `display` is provided. The default is as shown:
```toml
[[battery.display]]
threshold = 10
style = "bold red"
```
#### Options
The `display` option is an array of the following table.
| Variable | Description |
| ----------- | ----------------------------------------------- |
| `threshold` | The upper bound for the display option. |
| `style` | The style used if the display option is in use. |
#### Example
```toml
[[battery.display]] # "bold red" style when capacity is between 0% and 10%
threshold = 10
style = "bold red"
[[battery.display]] # "bold yellow" style when capacity is between 10% and 30%
threshold = 30
style = "bold yellow"
# when capacity is over 30%, the battery indicator will not be displayed
```
## Character
The `character` module shows a character (usually an arrow) beside where the text is entered in your terminal.
The character will tell you whether the last command was successful or not. It can do this in two ways: by changing color (red/green) or by changing its shape (/✖). The latter will only be done if `use_symbol_for_status` is set to `true`.
### Options
| Variable | Default | Description |
| ----------------------- | -------------- | ----------------------------------------------------------------------------------- |
| `symbol` | `""` | The symbol used before the text input in the prompt. |
| `error_symbol` | `"✖"` | The symbol used before text input if the previous command failed. |
| `use_symbol_for_status` | `false` | Indicate error status by changing the symbol. |
| `vicmd_symbol` | `""` | The symbol used before the text input in the prompt if shell is in vim normal mode. |
| `style_success` | `"bold green"` | The style used if the last command was successful. |
| `style_failure` | `"bold red"` | The style used if the last command failed. |
| `disabled` | `false` | Disables the `character` module. |
### Example
```toml
# ~/.config/starship.toml
[character]
symbol = "➜"
error_symbol = "✗"
use_symbol_for_status = true
```
## Command Duration
The `cmd_duration` module shows how long the last command took to execute. The module will be shown only if the command took longer than two seconds, or the `min_time` config value, if it exists.
::: warning Do not hook the DEBUG trap in Bash
If you are running Starship in `bash`, do not hook the `DEBUG` trap after running `eval $(starship init $0)`, or this module **will** break.
:::
Bash users who need preexec-like functionality can use [rcaloras's bash_preexec framework](https://github.com/rcaloras/bash-preexec). Simply define the arrays `preexec_functions` and `precmd_functions` before running `eval $(starship init $0)`, and then proceed as normal.
### Options
| Variable | Default | Description |
| ---------- | --------------- | ---------------------------------------------------------- |
| `min_time` | `2` | Shortest duration to show time for. |
| `prefix` | `took` | Prefix to display immediately before the command duration. |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `cmd_duration` module. |
### Example
```toml
# ~/.config/starship.toml
[cmd_duration]
min_time = 4
prefix = "underwent "
```
## Directory
The `directory` module shows the path to your current directory, truncated to three parent folders. Your directory will also be truncated to the root of the git repo that you're currently in.
When using the fish style pwd option, instead of hiding the path that is truncated, you will see a shortened name of each directory based on the number you enable for the option.
For example, given `~/Dev/Nix/nixpkgs/pkgs` where `nixpkgs` is the repo root, and the option set to `1`. You will now see `~/D/N/nixpkgs/pkgs`, whereas before it would have been `nixpkgs/pkgs`.
### Options
| Variable | Default | Description |
| ------------------- | ------------- | -------------------------------------------------------------------------------- |
| `truncation_length` | `3` | The number of parent folders that the current directory should be truncated to. |
| `truncate_to_repo` | `true` | Whether or not to truncate to the root of the git repo that you're currently in. |
| `style` | `"bold cyan"` | The style for the module. |
| `disabled` | `false` | Disables the `directory` module. |
<details>
<summary>This module has a few advanced configuration options that control how the directory is displayed.</summary>
| Variable | Default | Description |
| --------------------------- | ------- | ---------------------------------------------------------------------------------------- |
| `fish_style_pwd_dir_length` | `0` | The number of characters to use when applying fish shell pwd path logic. |
| `use_logical_path` | `true` | Displays the logical path provided by the shell (`PWD`) instead of the path from the OS. |
</details>
### Example
```toml
# ~/.config/starship.toml
[directory]
truncation_length = 8
```
## Dotnet
The `dotnet` module shows the relevant version of the .NET Core SDK for the current directory. If the SDK has been pinned in the current directory, the pinned version is shown. Otherwise the module shows the latest installed version of the SDK.
This module will only be shown in your prompt when one of the following files are present in the current directory: `global.json`, `project.json`, `*.sln`, `*.csproj`, `*.fsproj`, `*.xproj`. You'll also need the .NET Core command-line tools installed in order to use it correctly.
Internally, this module uses its own mechanism for version detection. Typically it is twice as fast as running `dotnet --version`, but it may show an incorrect version if your .NET project has an unusual directory layout. If accuracy is more important than speed, you can disable the mechanism by setting `heuristic = false` in the module options.
### Options
| Variable | Default | Description |
| ----------- | ------------- | -------------------------------------------------------- |
| `symbol` | `"•NET "` | The symbol used before displaying the version of dotnet. |
| `style` | `"bold blue"` | The style for the module. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `disabled` | `false` | Disables the `dotnet` module. |
### Example
```toml
# ~/.config/starship.toml
[dotnet]
symbol = "🥅 "
style = "green"
heuristic = false
```
## Environment Variable
The `env_var` module displays the current value of a selected environment variable. The module will be shown only if any of the following conditions are met:
- The `variable` configuration option matches an existing environment variable
- The `variable` configuration option is not defined, but the `default` configuration option is
### Options
| Variable | Default | Description |
| ---------- | ---------------- | ---------------------------------------------------------------------------- |
| `symbol` | | The symbol used before displaying the variable value. |
| `variable` | | The environment variable to be displayed. |
| `default` | | The default value to be displayed when the selected variable is not defined. |
| `prefix` | `""` | Prefix to display immediately before the variable value. |
| `suffix` | `""` | Suffix to display immediately after the variable value. |
| `style` | `"dimmed black"` | The style for the module. |
| `disabled` | `false` | Disables the `env_var` module. |
### Example
```toml
# ~/.config/starship.toml
[env_var]
variable = "SHELL"
default = "unknown shell"
```
## Git Branch
The `git_branch` module shows the active branch of the repo in your current directory.
### Options
| Variable | Default | Description |
| ------------------- | --------------- | ------------------------------------------------------------------------------------- |
| `symbol` | `" "` | The symbol used before the branch name of the repo in your current directory. |
| `truncation_length` | `2^63 - 1` | Truncates a git branch to X graphemes |
| `truncation_symbol` | `"…"` | The symbol used to indicate a branch name was truncated. You can use "" for no symbol |
| `style` | `"bold purple"` | The style for the module. |
| `disabled` | `false` | Disables the `git_branch` module. |
### Example
```toml
# ~/.config/starship.toml
[git_branch]
symbol = "🌱 "
truncation_length = "4"
truncation_symbol = ""
```
## Git State
The `git_state` module will show in directories which are part of a git repository, and where there is an operation in progress, such as: _REBASING_, _BISECTING_, etc. If there is progress information (e.g., REBASING 3/10), that information will be shown too.
### Options
| Variable | Default | Description |
| ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------- |
| `rebase` | `"REBASING"` | The text displayed when a `rebase` is in progress. |
| `merge` | `"MERGING"` | The text displayed when a `merge` is in progress. |
| `revert` | `"REVERTING"` | The text displayed when a `revert` is in progress. |
| `cherry_pick` | `"CHERRY-PICKING"` | The text displayed when a `cherry-pick` is in progress. |
| `bisect` | `"BISECTING"` | The text displayed when a `bisect` is in progress. |
| `am` | `"AM"` | The text displayed when an `apply-mailbox` (`git am`) is in progress. |
| `am_or_rebase` | `"AM/REBASE"` | The text displayed when an ambiguous `apply-mailbox` or `rebase` is in progress. |
| `progress_divider` | `"/"` | The symbol or text which will separate the current and total progress amounts. (e.g., `" of "`, for `"3 of 10"`) |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `git_state` module. |
### Example
```toml
# ~/.config/starship.toml
[git_state]
progress_divider = " of "
cherry_pick = "🍒 PICKING"
```
## Git Status
The `git_status` module shows symbols representing the state of the repo in your current directory.
### Options
| Variable | Default | Description |
| ----------------- | ------------ | ------------------------------------------------------- |
| `conflicted` | `"="` | This branch has merge conflicts. |
| `ahead` | `"⇡"` | This branch is ahead of the branch being tracked. |
| `behind` | `"⇣"` | This branch is behind of the branch being tracked. |
| `diverged` | `"⇕"` | This branch has diverged from the branch being tracked. |
| `untracked` | `"?"` | There are untracked files in the working directory. |
| `stashed` | `"$"` | A stash exists for the local repository. |
| `modified` | `"!"` | There are file modifications in the working directory. |
| `staged` | `"+"` | A new file has been added to the staging area. |
| `renamed` | `"»"` | A renamed file has been added to the staging area. |
| `deleted` | `"✘"` | A file's deletion has been added to the staging area. |
| `show_sync_count` | `false` | Show ahead/behind count of the branch being tracked. |
| `prefix` | `[` | Prefix to display immediately before git status. |
| `suffix` | `]` | Suffix to display immediately after git status. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `git_status` module. |
### Example
```toml
# ~/.config/starship.toml
[git_status]
conflicted = "🏳"
ahead = "🏎💨"
behind = "😰"
diverged = "😵"
untracked = "🤷‍"
stashed = "📦"
modified = "📝"
staged = ""
renamed = "👅"
deleted = "🗑"
```
## Golang
The `golang` module shows the currently installed version of Golang. The module will be shown if any of the following conditions are met:
- The current directory contains a `go.mod` file
- The current directory contains a `go.sum` file
- The current directory contains a `glide.yaml` file
- The current directory contains a `Gopkg.yml` file
- The current directory contains a `Gopkg.lock` file
- The current directory contains a `Godeps` directory
- The current directory contains a file with the `.go` extension
### Options
| Variable | Default | Description |
| ---------- | ------------- | -------------------------------------------------------- |
| `symbol` | `"🐹 "` | The symbol used before displaying the version of Golang. |
| `style` | `"bold cyan"` | The style for the module. |
| `disabled` | `false` | Disables the `golang` module. |
### Example
```toml
# ~/.config/starship.toml
[golang]
symbol = "🏎💨 "
```
## Hostname
The `hostname` module shows the system hostname.
### Options
| Variable | Default | Description |
| ---------- | --------------------- | ---------------------------------------------------- |
| `ssh_only` | `true` | Only show hostname when connected to an SSH session. |
| `prefix` | `""` | Prefix to display immediately before the hostname. |
| `suffix` | `""` | Suffix to display immediately after the hostname. |
| `style` | `"bold dimmed green"` | The style for the module. |
| `disabled` | `false` | Disables the `hostname` module. |
### Example
```toml
# ~/.config/starship.toml
[hostname]
ssh_only = false
prefix = "⟪"
suffix = "⟫"
disabled = false
```
## Jobs
The `jobs` module shows the current number of jobs running. The module will be shown only if there are background jobs running. The module will show the number of jobs running if there is more than 1 job, or more than the `threshold` config value, if it exists.
### Options
| Variable | Default | Description |
| ----------- | ------------- | ----------------------------------------------------- |
| `symbol` | `"✦ "` | The symbol used before displaying the number of jobs. |
| `threshold` | `1` | Show number of jobs if exceeded. |
| `style` | `"bold blue"` | The style for the module. |
| `disabled` | `false` | Disables the `jobs` module. |
### Example
```toml
# ~/.config/starship.toml
[jobs]
symbol = "+ "
threshold = 4
```
## Kubernetes
Displays the current Kubernetes context name and, if set, the namespace from the kubeconfig file. The namespace needs to be set in the kubeconfig file, this can be done via `kubectl config set-context starship-cluster --namespace
astronaut`. If the `$KUBECONFIG` env var is set the module will use that if not it will use the `~/.kube/config`.
### Options
| Variable | Default | Description |
| ---------- | ------------- | --------------------------------------------------- |
| `symbol` | `"☸ "` | The symbol used before displaying the Cluster info. |
| `style` | `"bold blue"` | The style for the module. |
| `disabled` | `false` | Disables the `kubernetes` module |
### Example
```toml
# ~/.config/starship.toml
[kubernetes]
symbol = "⛵ "
style = "dim green"
disabled = true
```
## Line Break
The `line_break` module separates the prompt into two lines.
### Options
| Variable | Default | Description |
| ---------- | ------- | ------------------------------------------------------------------ |
| `disabled` | `false` | Disables the `line_break` module, making the prompt a single line. |
### Example
```toml
# ~/.config/starship.toml
[line_break]
disabled = true
```
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
### Options
| Variable | Default | Description |
| ------------ | ------------ | ---------------------------------- |
| `use_name` | `false` | Display the name of the nix-shell. |
| `impure_msg` | `impure` | Customize the "impure" msg. |
| `pure_msg` | `pure` | Customize the "pure" msg. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `nix_shell` module. |
### Example
```toml
# ~/.config/starship.toml
[nix_shell]
disabled = true
use_name = true
impure_msg = "impure shell"
pure_msg = "pure shell"
```
## Memory Usage
The `memory_usage` module shows current system memory and swap usage.
By default the swap usage is displayed if the total system swap is non-zero.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
:::
### Options
| Variable | Default | Description |
| ----------------- | ------------------------ | ------------------------------------------------------------- |
| `show_percentage` | `false` | Display memory usage as a percentage of the available memory. |
| `show_swap` | when total swap non-zero | Display swap usage. |
| `threshold` | `75` | Hide the memory usage unless it exceeds this percentage. |
| `symbol` | `"🐏 "` | The symbol used before displaying the memory usage. |
| `style` | `"bold dimmed white"` | The style for the module. |
| `disabled` | `true` | Disables the `memory_usage` module. |
### Example
```toml
# ~/.config/starship.toml
[memory_usage]
show_percentage = true
show_swap = true
threshold = -1
icon = " "
style = "bold dimmed green"
```
## Java
The `java` module shows the currently installed version of Java. The module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml` or `build.gradle` file
- The current directory contains a file with the `.java`, `.class` or `.jar` extension
### Options
| Variable | Default | Description |
| ---------- | -------------- | ------------------------------------------------------ |
| `symbol` | `"☕ "` | The symbol used before displaying the version of Java. |
| `style` | `"dimmed red"` | The style for the module. |
| `disabled` | `false` | Disables the `java` module. |
### Example
```toml
# ~/.config/starship.toml
[java]
symbol = "🌟 "
```
## NodeJS
The `nodejs` module shows the currently installed version of NodeJS. The module will be shown if any of the following conditions are met:
- The current directory contains a `package.json` file
- The current directory contains a `node_modules` directory
- The current directory contains a file with the `.js` extension
### Options
| Variable | Default | Description |
| ---------- | -------------- | -------------------------------------------------------- |
| `symbol` | `"⬢ "` | The symbol used before displaying the version of NodeJS. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
### Example
```toml
# ~/.config/starship.toml
[nodejs]
symbol = "🤖 "
```
## Package Version
The `package` module is shown when the current directory is the repository for a package, and shows its current version. The module currently supports `npm`, `cargo`, and `poetry` packages.
- **npm** The `npm` package version is extracted from the `package.json` present in the current directory
- **cargo** The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- **poetry** The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
### Options
| Variable | Default | Description |
| ---------- | ------------ | ---------------------------------------------------------- |
| `symbol` | `"📦 "` | The symbol used before displaying the version the package. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `package` module. |
### Example
```toml
# ~/.config/starship.toml
[package]
symbol = "🎁 "
```
## Python
The `python` module shows the currently installed version of Python.
If `pyenv_version_name` is set to `true`, it will display the pyenv version name.
Otherwise, it will display the version number from `python --version` and show the current Python virtual environment if one is activated.
The module will be shown if any of the following conditions are met:
- The current directory contains a `.python-version` file
- The current directory contains a `requirements.txt` file
- The current directory contains a `pyproject.toml` file
- The current directory contains a file with the `.py` extension
- The current directory contains a `Pipfile` file
- The current directory contains a `tox.ini` file
### Options
| Variable | Default | Description |
| -------------------- | --------------- | --------------------------------------------------------------------------- |
| `symbol` | `"🐍 "` | The symbol used before displaying the version of Python. |
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `"pyenv "` | Prefix before pyenv version display (default display is `pyenv MY_VERSION`) |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `python` module. |
### Example
```toml
# ~/.config/starship.toml
[python]
symbol = "👾 "
pyenv_version_name = true
pyenv_prefix = "foo "
```
## Ruby
The `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
- The current directory contains a `Gemfile` file
- The current directory contains a `.rb` file
### Options
| Variable | Default | Description |
| ---------- | ------------ | ------------------------------------------------------ |
| `symbol` | `"💎 "` | The symbol used before displaying the version of Ruby. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `ruby` module. |
### Example
```toml
# ~/.config/starship.toml
[ruby]
symbol = "🔺 "
```
## Rust
The `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
- The current directory contains a `Cargo.toml` file
- The current directory contains a file with the `.rs` extension
### Options
| Variable | Default | Description |
| ---------- | ------------ | ------------------------------------------------------ |
| `symbol` | `"🦀 "` | The symbol used before displaying the version of Rust. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `rust` module. |
### Example
```toml
# ~/.config/starship.toml
[rust]
symbol = "⚙️ "
```
## Time
The `time` module shows the current **local** time. The `format` configuration value is used by the [`chrono`](https://crates.io/crates/chrono) crate to control how the time is displayed. Take a look [at the chrono strftime docs](https://docs.rs/chrono/0.4.7/chrono/format/strftime/index.html) to see what options are available.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
:::
### Options
| Variable | Default | Description |
| ---------- | ------------- | ------------------------------------------------------------------------------------------------------------------- |
| `12hr` | `false` | Enables 12 hour formatting |
| `format` | see below | The [chrono format string](https://docs.rs/chrono/0.4.7/chrono/format/strftime/index.html) used to format the time. |
| `style` | `bold yellow` | The style for the module time |
| `disabled` | `true` | Disables the `time` module. |
If `12hr` is `true`, then `format` defaults to `"%r"`. Otherwise, it defaults to `"%T"`. Manually setting `format` will override the `12hr` setting.
### Example
```toml
# ~/.config/starship.toml
[time]
disabled = false
format = "🕙[ %T ]"
```
## Username
The `username` module shows active user's username. The module will be shown if any of the following conditions are met:
- The current user is root
- The current user isn't the same as the one that is logged in
- The user is currently connected as an SSH session
- The variable `show_always` is set to true
### Options
| Variable | Default | Description |
| ------------- | --------------- | ------------------------------------- |
| `style_root` | `"bold red"` | The style used when the user is root. |
| `style_user` | `"bold yellow"` | The style used for non-root users. |
| `show_always` | `false` | Always shows the `username` module. |
| `disabled` | `false` | Disables the `username` module. |
### Example
```toml
# ~/.config/starship.toml
[username]
disabled = true
```
-1
View File
@@ -1 +0,0 @@
../../../translations/README.fr.md
+89
View File
@@ -0,0 +1,89 @@
# 🚀 Advanced Installation
To install starship, you need to do two things:
1. Get the **starship** binary onto your computer
1. Tell your shell to use the starship binary as its prompt by modifying its init scripts
For most users, the instructions on [the main page](/guide/#🚀-installation) will work great. However,
for some more specialized platforms, different instructions are needed.
There are so many platforms out there that they didn't fit into the main
README.md file, so here are some installation instructions for other platforms
from the community. Is yours not here? Please do add it here if you figure it
out!
## [Chocolatey](https://chocolatey.org)
### Prerequisites
Head over to the [Chocolatey installation page](https://chocolatey.org/install) and follow the instructions to install Chocolatey.
### Installation
```powershell
choco install starship
```
## [termux](https://termux.com)
### Prerequisites
```sh
pkg install getconf
```
### Installation
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- -b /data/data/com.termux/files/usr/bin
```
## [Nix](https://nixos.wiki/wiki/Nix)
### Getting the Binary
#### Imperatively
```sh
nix-env -iA nixos.starship
```
#### Declarative, single user, via [home-manager](home-manager)
Enable the `programs.starship` module in your `home.nix` file, and add your settings
```nix
{
programs.starship = {
enable = true;
enableZshIntegration = true;
# Configuration written to ~/.config/starship.toml
settings = {
# add_newline = false;
# character = {
# success_symbol = "[](bold green)";
# error_symbol = "[](bold red)";
# };
# package.disabled = true;
};
};
}
```
then run
```sh
home-manager switch
```
#### Declarative, system-wide, with NixOS
Add `pkgs.starship` to `environment.systemPackages` in your `configuration.nix`,
then run
```sh
sudo nixos-rebuild switch
```
+136
View File
@@ -0,0 +1,136 @@
---
home: true
heroImage: /logo.svg
heroText:
tagline: Il prompt minimalista, super veloce e infinitamente personalizzabile per qualsiasi shell!
actionText: Inizia →
actionLink: ./guide/
features:
-
title: Prima la compatibilità
details: Funziona sulle shell e sui sistemi operativi più comuni. Usalo ovunque!
-
title: Generato in Rust
details: Sfrutta la velocità e sicurezza migliori di Rust, per rendere il tuo prompt il più veloce e il più affidabile.
-
title: Personalizzabile
details: Ogni più piccolo dettaglio è personalizzabile a piacere, per rendere questo messaggio prompt minimalista o ricco delle funzionalità che desideri.
footer: Licenza ISC | Copyright © 2019-present Starship Collaboratori
#Used for the description meta tag, for SEO
metaTitle: "Starship: Cross-Shell Prompt"
description: Starship è il prompt minimalista, super veloce ed estremamente personalizzabile per qualsiasi shell! Mostra le informazioni di cui hai bisogno, rimanendo elegante e minimale. Installazione rapida disponibile per Bash, Fish, ZSH, Ion e PowerShell.
---
<div class="center">
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### Installazione Veloce
1. Installa il binario **starship**:
#### Installa l'ultima Versione
Con Shell:
```sh
curl -fsSL https://starship.rs/install.sh <unk> bash
```
#### Installa con Package Manager
Con [Homebrew](https://brew.sh/):
```sh
brew install starship
```
Con [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
1. Aggiungi lo script di inizializzazione al file di configurazione della shell:
#### Bash
Aggiungi quanto segue alla fine di `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Aggiungi quanto segue alla fine di `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Aggiungi quanto segue alla fine di `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### Powershell
Aggiungi quanto segue alla fine di `Microsoft.PowerShell_profile.ps1`. Puoi controllare la posizione di questo file interrogando la variabile `$PROFILE` in PowerShell. In genere il percorso è `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` oppure `~/.config/powershell/Microsoft.PowerShell_profile.ps1` in -Nix.
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
Aggiungi quanto segue alla fine di `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: warning Only elvish v0.15 or higher is supported. :::
Aggiungi quanto segue alla fine di `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Aggiungi quanto segue alla fine di `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
+93
View File
@@ -0,0 +1,93 @@
# Configurazione Avanzata
Nonostante Starship sia una shell versatile, a volte devi fare qualche modifica in più in `starship.toml` per ottenere alcune cose. Questa pagina descrive alcune tecniche di configurazione avanzate utilizzate in Starship.
::: Attenzione
Le configurazioni in questa sezione sono soggette a modifiche nelle future versioni di Starship.
:::
## Comandi personalizzati di pre-prompt e pre-esecuzione per Bash
Bash non ha un framework preexec/precmd formale come la maggior parte delle altre shell. Per questo motivo, è difficile fornire hook completamente personalizzabile in `bash`. Tuttavia, Starship dà la limitata possibilità di inserire le tue funzioni nella procedura prompt-rendering:
- Per eseguire una funzione personalizzata a destra del prompt prima che venga disegnato, definisci una nuova funzione e assegna il suo nome a `starship_precmd_user_func`. Per esempio, per visualizzare l'icona di un razzo prima del prompt, si può usare il codice seguente
```bash
function blastoff(){
echo "🚀"
}
starship_precmd_user_func="blastoff"
```
- Per eseguire una funzione personalizzata prima dell'esecuzione di un comando, è possibile utilizzare il meccanismo trappola [`DEBUG`](https://jichu4n.com/posts/debug-trap-and-prompt_command-in-bash/). Tuttavia, **devi** intrappolare il segnale DEBUG *prima di* inizializzare Starship! Starship può preservare il valore trappola di DEBUG, ma se la trappola viene sovrascritta dopo l'avvio di Starship, alcune funzionalità non funzioneranno.
```bash
function blastoff(){
echo "🚀"
}
trap blastoff DEBUG # Trap DEBUG *prima* di eseguire starship
eval $(starship bash)
```
## Cambia il titolo della finestra
Alcune shell prompt cambieranno automaticamente il titolo della finestra (ad esempio per riflettere la directory di lavoro). Fish lo fa per impostazione predefinita. Starship non lo fa, ma è abbastanza semplice aggiungere questa funzionalità a `bash` o `zsh`.
Innanzitutto, bisogna definire una funzione per il cambio del titolo della finestra (identica sia per bash che zsh):
```bash
function set_win_title(){
echo -ne "\033]0; IL_TUO_TITOLO_QUI \007"
}
```
Puoi usare delle variabili per personalizzare questo titolo (`$USER`, `$HOSTNAME`, e `$PWD` sono le scelte più popolari).
In `bash`, impostare questa funzione per essere la precmd Starship function:
```bash
starship_precmd_user_func="set_win_title"
```
In `zsh`, aggiungi questo `precmd_functions` all'array:
```bash
precmd_functions+=(set_win_title)
```
Se ti piace il risultato, aggiungi queste righe al tuo file shell di configurazione (`~/. ashrc` o `~/.zshrc`) per renderlo permanente.
Ad esempio, se desideri visualizzare la directory corrente nel titolo della scheda del terminale, aggiungi la seguente snippet al tuo `~/. ashrc` or `~/.zshrc`:
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## Stringhe di stile
Le stringhe di stile sono un elenco di parole, separate da spazi bianchi. Le parole non sono sensibili alle maiuscole (cioè `grassetto` e `BoLd` sono considerate la stessa stringa). Ogni parola può essere una delle seguenti:
- `bold`
- `underline`
- `dimmed`
- `bg:<color>`
- `fg:<color>`
- `<color>`
- `none`
dove `<color>` è un colore specifico (discusso in seguito). `fg:<color>` e `<color>` attualmente fanno la stessa cosa , anche se questo potrebbe cambiare in futuro. L'ordine delle parole nella stringa non conta.
Il token `none` sovrascrive tutti gli altri token in una stringa se non fa parte di uno specificatore `bg:`, così ad esempio `fg:red none fg:blue` creerà una stringa senza stile. `bg:none` imposta come colore di sfondo quello predefinito così `fg:red bg:none` è equivalente a `red` o `fg:red` e `bg:green fg:red bg:none` è equivalente a `fg:red` o `rosso`. Potrà diventare un errore usare `nessuno` in combinazione con altri token in futuro.
Uno colore specifico può essere uno di questi:
- Uno dei colori standard del terminale: `nero`, `rosso`, `verde`, `blu`, `giallo`, `viola`, `ciano`, `bianco`. Puoi eventualmente utilizzare il prefisso `bright-` per ottenere la versione luminosa (es. `bright-white`).
- Un `#` seguito da un valore esadecimale a sei cifre. Questo specifica un [colore esagesimale in RGB](https://www.w3schools.com/colors/colors_hexadecimal.asp).
- Un numero compreso tra 0-255. Specifica un [codice colore ANSI a 8 bit](https://i.stack.imgur.com/KTSQa.png).
Se sono specificati più colori per il primo piano/sfondo, l'ultimo nella stringa avrà la priorità.
File diff suppressed because it is too large Load Diff
+96
View File
@@ -0,0 +1,96 @@
# FAQ
## Qual è la configurazione utilizzata nella GIF demo?
- **Terminale Emulato**: [iTerm2](https://iterm2.com/)
- **Tema**: Minimale
- **Schema Colore**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **Font**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **Shell**: [Fish Shell](https://fishshell.com/)
- **Configurazione**: [matchai Dotfiles](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **Chiedi**: [Starship](https://starship.rs/)
## Come posso ottenere il completamento dei comandi come mostrato nella GIF demo?
Completion support, or autocomplete, is provided by your shell of choice. Nel caso della demo, la demo è stata fatta con [Fish Shell](https://fishshell.com/), che fornisce i completamenti per impostazione predefinita. Se usi Z Shell (zsh), ti suggerirei di dare un'occhiata a [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions).
## Il formato di primo livello `` e `<module>.disabled` fanno la stessa cosa?
Sì, entrambi possono essere utilizzati per disabilitare i moduli nel prompt. Se tutto quello che pensi di fare è disabilitare i moduli, `<module>.disabled` è il modo preferito per per queste ragioni:
- Disabilitare i moduli è più esplicito che ometterli dal primo `formato` di livello
- I nuovi moduli creati saranno aggiunti al prompt come Starship viene aggiornato
## The docs say Starship is cross-shell. Why isn't my preferred shell supported?
Il modo in cui Starship è costruito, dovrebbe rendere possibile aggiungere il supporto per qualsiasi shell. Il binario di Starship è apolide e indipendente dalla shell, fino a quando la tua shell supporterà prompt personalizzati, Starship può essere utilizzato.
Ecco un piccolo esempio per avere Starship lavorando con bash:
```sh
# Ottenere lo status code dall'ultimo comando eseguito
STATUS=$?
# Ottieni il numero di processi in esecuzione.
NUM_JOBS=$(jobs -p | wc -l)
# Imposta il prompt come output di `starship prompt`
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
```
The [Bash implementation](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#command-duration) and to ensure that Starship is compatible with pre-installed Bash configurations.
Per un elenco di tutti i flag accettati da `starship prompt`, utilizzare il seguente comando:
```sh
starship prompt --help
```
The prompt will use as much context as is provided, but no flags are "required".
## Come faccio a eseguire le distribuzioni Starship su Linux con vecchie versioni di glibc?
Se si ottiene un errore come "_versione 'GLIBC_2. 8' non trovato (richiesta da Starship)_" quando si utilizza il binario precostruito (per esempio, su CentOS 6 o 7), puoi usare un binario compilato con `musl` invece di `glibc`:
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- --platform unknown-linux-musl
```
## I see symbols I don't understand or expect, what do they mean?
If you see symbols that you don't recognise you can use `starship explain` to explain the currently showing modules.
## Why don't I see a glyph symbol in my prompt?
The most common cause of this is system misconfiguration. Some Linux distros in particular do not come with font support out-of-the-box. You need to ensure that:
- In locale sia impostato un valore UTF-8, come `de_DE.UTF-8` o `ja_JP.UTF-8`. Se `LC_ALL` non è un valore UTF-8, [dovrai cambiarlo](https://www.tecmint.com/set-system-locales-in-linux/).
- Hai un font emoji installato. La maggior parte dei sistemi ha un font emoji per impostazione predefinita, ma alcuni (in particolare Arch Linux) non lo fanno. Di solito puoi installarne uno attraverso il gestore dei pacchetti del tuo sistema-[noto emoji](https://www.google.com/get/noto/help/emoji/) è uno dei popolari.
- Stai usando un [font Nerd](https://www.nerdfonts.com/).
To test your system, run the following commands in a terminal:
```sh
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
```
The first line should produce a [snake emoji](https://emojipedia.org/snake/), while the second should produce a [powerline branch symbol (e0a0)](https://github.com/ryanoasis/powerline-extra-symbols#glyphs).
If either symbol fails to display correctly, your system is still misconfigured. Unfortunately, getting font configuration correct is sometimes difficult. Users on the Discord may be able to help. If both symbols display correctly, but you still don't see them in starship, [file a bug report!](https://github.com/starship/starship/issues/new/choose)
## How do I uninstall Starship?
Starship is just as easy to uninstall as it is to install in the first place.
1. Rimuovi qualsiasi riga utilizzata per inizializzare Starship nella configurazione della tua shell (ad es. `~/.bashrc`).
1. Elimina il binario di Starship.
If Starship was installed using a package manager, please refer to their docs for uninstallation instructions.
If Starship was installed using the `curl | bash` script, the following command will delete the binary:
```sh
# Individua ed elimina il binario di Starship
rm "$(che starship)"
```
+311
View File
@@ -0,0 +1,311 @@
<p align="center">
<img
width="400"
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
alt="Starship: Cross-Shell Prompt"
/>
</p>
<p align="center">
<a href="https://github.com/starship/starship/actions"
><img
src="https://img.shields.io/github/workflow/status/starship/starship/Main workflow/master?label=workflow&style=flat-square"
alt="GitHub Actions workflow status"
/></a>
<a href="https://crates.io/crates/starship"
><img
src="https://img.shields.io/crates/v/starship?style=flat-square"
alt="Versione Crates.io"
/></a>
<a href="https://repology.org/project/starship/versions"
><img
src="https://img.shields.io/repology/repositories/starship?label=in%20repositories&style=flat-square"
alt="Stato del pacchetto" /></a
><br />
<a href="https://discord.gg/starship"
><img
src="https://img.shields.io/discord/567163873606500352?label=discord&logoColor=white&style=flat-square"
alt="Chat su Discord"
/></a>
<a href="https://twitter.com/StarshipPrompt"
><img
src="https://img.shields.io/badge/twitter-@StarshipPrompt-1DA1F3?style=flat-square"
alt="Segui @StarshipPrompt su Twitter"
/></a>
</p>
<p align="center">
<a href="https://starship.rs">Sito web</a>
·
<a href="#🚀-installation">Installazione</a>
·
<a href="https://starship.rs/config/">Configurazione</a>
</p>
<p align="center">
<a href="https://github.com/starship/starship/blob/master/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
alt="Inglese"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
alt="日本語"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
alt="繁體中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
alt="Russo"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
alt="Tedesco"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
alt="简体中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
alt="Spagnolo"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
alt="Francese"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
alt="Tiếng Việt"
/></a>
</p>
<h1></h1>
<img
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
alt="Starship con iTerm2 e il tema Snazzy"
width="50%"
align="right"
/>
**Il prompt minimalista, super veloce e infinitamente personalizzabile per qualsiasi shell!**
- **Velocità:** è veloce _davvero_ veloce! 🚀
- **Personalizzabile:** configura ogni aspetto del tuo prompt.
- **Universale:** funziona su qualsiasi shell, con qualsiasi sistema operativo.
- **Intelligente:** mostra le informazioni rilevanti a colpo d'occhio.
- **Ricco di funzionalità:** supporta tutti i tuoi strumenti preferiti.
- **Facile:** veloce da installare - inizia ad usarlo in pochi minuti.
<p align="center">
<a href="https://starship.rs/config/"><strong>Esplora la documentazione di Starship&nbsp;&nbsp;▶</strong></a>
</p>
<a name="🚀-installation"></a>
## 🚀 Installazione
### Prerequisiti
- Un [Nerd Font](https://www.nerdfonts.com/) installato e abilitato nel tuo terminale (per esempio, prova [Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)).
### Inizia
**Nota**: a causa della proliferazione di piattaforme diverse, un sottoinsieme di piattaforme supportate sono mostrate di seguito. Non riesci a vedere la tua? Dai un'occhiata alle [istruzioni aggiuntive della piattaforma](https://starship.rs/installing/).
1. Installa il binario **starship**:
#### Installa l'ultima Versione
##### Da un binario precompilato, con Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### Installa via Package Manager
##### Esempio: [Homebrew](https://brew.sh/):
```sh
brew install starship
```
##### Con [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
2. Aggiungi lo script di inizializzazione al file di configurazione della shell:
#### Bash
Aggiungi quanto segue alla fine di `~/.bashrc`:
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
Aggiungi quanto segue alla fine di `~/.config/fish/config.fish`:
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
Aggiungi quanto segue alla fine di `~/.zshrc`:
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### PowerShell
Aggiungi quanto segue alla fine di `Microsoft.PowerShell_profile.ps1`. Puoi controllare la posizione di questo file interrogando la variabile `$PROFILE` in PowerShell. Tipicamente il percorso è `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` oppure `~/.config/powershell/Microsoft.PowerShell_profile.ps1` su -Nix.
```powershell
Invoke-Expression (&starship init powershell)
```
#### Ion
Aggiungi quanto segue alla fine di `~/.config/ion/initrc`:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
**Attenzione** È supportato solo elvish v0.15 o superiore. Aggiungi quanto segue alla fine di `~/.elvish/rc.elv`:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
Aggiungi quanto segue alla fine di `~/.tcshrc`:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
## 🤝 Contribuire
Siamo sempre alla ricerca di collaboratori di **tutti i livelli**! Se stai cercando di entrare facilmente nel progetto, prova un [buon primo problema](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
Se parli correntemente una lingua diversa dall'inglese, apprezziamo molto qualsiasi aiuto per mantenere i nostri documenti tradotti e aggiornati in altre lingue. Se desideri collaborare, le traduzioni possono essere fornite su [Starship Crowdin](https://translate.starship.rs/).
Se sei interessato ad aiutare a contribuire a Starship, dai un'occhiata alla nostra [Guida al Contributo](https://github.com/starship/starship/blob/master/CONTRIBUTING.md). Inoltre, sentiti libero di entrare nel nostro [server Discord](https://discord.gg/8Jzqu3T) e dire ciao. 👋
### Contributori di codice
Questi progetto esiste grazie a tutte le persone che contribuiscono. [[Contributo](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)].
<a href="https://github.com/starship/starship/graphs/contributors"><img src="https://opencollective.com/starship/contributors.svg?width=890&button=false" /></a>
### Contributori Finanziari
Diventa un contributore finanziario e aiutaci a sostenere la nostra comunità. [[Contribuisci](https://opencollective.com/starship/contribute)]
#### Privati
<a href="https://opencollective.com/starship"><img src="https://opencollective.com/starship/individuals.svg?width=890"></a>
#### Organizzazioni
Supporta questo progetto con la tua organizzazione. Il tuo logo apparirà qui con un link al tuo sito web. [[Contribuisci](https://opencollective.com/starship/contribute)]
<a href="https://opencollective.com/starship/organization/0/website"><img src="https://opencollective.com/starship/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/1/website"><img src="https://opencollective.com/starship/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/2/website"><img src="https://opencollective.com/starship/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/3/website"><img src="https://opencollective.com/starship/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/4/website"><img src="https://opencollective.com/starship/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/5/website"><img src="https://opencollective.com/starship/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/6/website"><img src="https://opencollective.com/starship/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/7/website"><img src="https://opencollective.com/starship/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/8/website"><img src="https://opencollective.com/starship/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/9/website"><img src="https://opencollective.com/starship/organization/9/avatar.svg"></a>
## 💭 Ispirato Da
Ti invito di controllare questi lavori precedenti che hanno contribuito a ispirare la creazione di Starship. 🙏
- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** - Un prompt ZSH per astronauti.
- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** - Tema robbyrussell Cross-shell scritto in JavaScript.
- **[reujab/silver](https://github.com/reujab/silver)** - Un prompt multi-shell personalizzabile powerline-like con icone.
<p align="center">
<br>
<img width="100" src="https://raw.githubusercontent.com/starship/starship/master/media/icon.png" alt="Starship rocket icon">
</p>
## 📝 Licenza
Copyright © 2019-presente, [Starship Contributors](https://github.com/starship/starship/graphs/contributors).<br /> Questo progetto è sotto licenza [ISC](https://github.com/starship/starship/blob/master/LICENSE).
+84
View File
@@ -0,0 +1,84 @@
# 🚀 Advanced Installation
To install starship, you need to do two things:
1. Get the **starship** binary onto your computer
1. Tell your shell to use the starship binary as its prompt by modifying its init scripts
For most users, the instructions on [the main page](/guide/#🚀-installation) will work great. However, for some more specialized platforms, different instructions are needed.
There are so many platforms out there that they didn't fit into the main README.md file, so here are some installation instructions for other platforms from the community. Is yours not here? Please do add it here if you figure it out!
## [Chocolatey](https://chocolatey.org)
### Prerequisiti
Head over to the [Chocolatey installation page](https://chocolatey.org/install) and follow the instructions to install Chocolatey.
### Installation
```powershell
choco install starship
```
## [termux](https://termux.com)
### Prerequisiti
```sh
pkg install getconf
```
### Installation
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- -b /data/data/com.termux/files/usr/bin
```
## [Nix](https://nixos.wiki/wiki/Nix)
### Getting the Binary
#### Imperatively
```sh
nix-env -iA nixos.starship
```
#### Declarative, single user, via [home-manager](home-manager)
Enable the `programs.starship` module in your `home.nix` file, and add your settings
```nix
{
programs.starship = {
enable = true;
enableZshIntegration = true;
# Configuration written to ~/.config/starship.toml
settings = {
# add_newline = false;
# character = {
# success_symbol = "[](bold green)";
# error_symbol = "[](bold red)";
# };
# package.disabled = true;
};
};
}
```
then run
```sh
home-manager switch
```
#### Declarative, system-wide, with NixOS
Add `pkgs.starship` to `environment.systemPackages` in your `configuration.nix`, then run
```sh
sudo nixos-rebuild switch
```
+267
View File
@@ -0,0 +1,267 @@
# Migrazione alla versione 0.45.0
Starship v0.45.0 è una versione contenente importanti cambiamenti in preparazione della grande versione 1.0.0. Abbiamo apportato alcuni importanti cambiamenti per come la configurazione viene fatta sul prompt, al fine di consentire un maggior grado di personalizzazione.
Questa guida è destinata ad attraversare questi grandi cambiamenti.
## `prompt_order` è stato sostituito da un formato root-level ``
Previously to v0.45.0, `prompt_order` would accept an array of module names in the order which they should be rendered by Starship.
Starship v0.45.0 invece accetta un valore `format`, consentendo la personalizzazione del prompt al di fuori dei moduli stessi.
**Esempio di configurazione pre-v0.45.0**
```toml
prompt_order = [
"username",
"hostname",
"directory",
"git_branch",
"git_commit",
"git_state",
"git_status",
"cmd_duration",
"custom",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
**Esempio di configurazione v0.45.0**
```toml
format = """\
$username\
$hostname\
$directory\
$git_branch\
$git_commit\
$git_state\
$git_status\
$cmd_duration\
$custom\
$line_break\
$jobs\
$battery\
$time\
$character\
"""
```
## Il prefisso `del modulo` e il suffisso `` sono stati sostituiti dal formato ``
Precedentemente la v0.45.0, alcuni moduli accetterebbero `prefisso` e/o `suffisso` per stilare il modo in cui i moduli vengono renderizzati.
Starship v0.45.0 invece accetta un valore `format`, consentendo la personalizzazione del prompt al di fuori dei moduli stessi. Invece di definire un prefisso e un suffisso per le variabili basate sul contesto, le variabili possono ora essere sostituite da una stringa di formato, che rappresenta l'output del modulo.
**Esempio di configurazione pre-v0.45.0**
```toml
[cmd_duration]
prefisso = "tak"
```
**Esempio di configurazione v0.45.0**
```toml
[cmd_duration]
# $duration The command duration (e.g. "15s")
# $style The default style of the module (e.g. "bold yellow")
format = "took [$duration]($style) "
```
### Moduli soggetti
#### Character
| Proprietà rimossa | Sostituta |
| ----------------------- | ---------------- |
| `symbol` | `success_symbol` |
| `use_symbol_for_status` | `error_symbol` |
| `style_success` | `success_symbol` |
| `style_failure` | `error_symbol` |
**Modifiche alla configurazione predefinita**
```diff
[character]
-- symbol = ""
-- error_symbol = "✖"
-- use_symbol_for_status = true
-- vicmd_symbol = ""
++ success_symbol = "[](bold green)"
++ error_symbol = "[](bold red)"
++ vicmd_symbol = "[](bold green)"
```
Precedentemente, la proprietà `use_symbol_for_status` è stata utilizzata per configurare il prompt per mostrare `error_symbol` quando l'ultimo comando ha prodotto un codice di stato diverso da zero.
Con il rilascio di v0.45.0, ora usiamo sempre `error_symbol` dopo codici di stato diversi da zero, unificando le proprietà `use_symbol_for_status` e `error_symbol`.
Per configurare il prompt al fine di usare la vecchia configurazione `use_symbol_for_status = true`, aggiungi quanto segue al tuo file di configurazione:
```toml
[character]
error_symbol = "[](bold red)"
```
*Nota:* L'elemento `carattere` aggiunge dopo automaticamente uno spazio, quindi a differenza delle altre stringhe `formato`, non ne aggiungiamo uno specificamente agli esempi di cui sopra.
#### Command Duration
| Proprietà rimossa | Sostituta |
| ----------------- | --------- |
| `prefix` | `format` |
**Modifiche alla configurazione predefinita**
```diff
[cmd_duration]
-- prefix = "took "
++ format = "took [$duration]($style) "
```
#### Directory
| Proprietà rimossa | Sostituta |
| ----------------- | --------- |
| `prefix` | `format` |
**Modifiche alla configurazione predefinita**
```diff
[directory]
-- prefix = "in "
++ format = "[$path]($style)[$read_only]($read_only_style) "
```
#### Variabili di ambiente
| Proprietà rimossa | Sostituta |
| ----------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Modifiche alla configurazione predefinita**
```diff
[env_var]
-- prefix = ""
-- suffix = ""
++ format = "with [$env_value]($style) "
```
#### Git Commit
| Proprietà rimossa | Sostituta |
| ----------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Modifiche alla configurazione predefinita**
```diff
[git_commit]
-- prefix = "("
-- suffix = ")"
++ format = '[\($hash\)]($style) '
```
#### Git Status
| Proprietà rimossa | Sostituta |
| ----------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
| `show_sync_count` | `format` |
**Modifiche alla configurazione predefinita**
```diff
[git_status]
-- prefix = "["
-- suffix = "]"
-- show_sync_count = false
++ format = '([\[$all_status$ahead_behind\]]($style) )'
```
Precedentemente, la proprietà `show_sync_count` è stata utilizzata per configurare il prompt per mostrare il numero di commit che il ramo era avanti o dietro il ramo in remoto.
Con il rilascio della v0.45.0, questo è stato sostituito con tre proprietà separate, `ahead`, ` behind` e `diverged`.
Per configurare il prompt al fine di usare la vecchia configurazione `show_sync_count = true`, aggiungi quanto segue al tuo file di configurazione:
```toml
[git_status]
ahead = "⇡${count}"
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
behind = "⇣${count}"
```
#### Hostname
| Proprietà rimossa | Sostituta |
| ----------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Modifiche alla configurazione predefinita**
```diff
[hostname]
-- prefix = ""
-- suffix = ""
++ format = "[$hostname]($style) in "
```
#### Singolarità
| Proprietà rimossa | Sostituta |
| ----------------- | --------- |
| `label` | `format` |
| `prefix` | `format` |
| `suffix` | `format` |
**Modifiche alla configurazione predefinita**
```diff
[singularity]
-- prefix = ""
-- suffix = ""
++ format = '[$symbol\[$env\]]($style) '
```
#### Time
| Proprietà rimossa | Sostituta |
| ----------------- | ------------- |
| `format` | `time_format` |
**Modifiche alla configurazione predefinita**
```diff
[time]
-- format = "🕙[ %T ]"
++ time_format = "%T"
++ format = "at 🕙[$time]($style) "
```
#### Comandi Personalizzati
| Proprietà rimossa | Sostituta |
| ----------------- | --------- |
| `prefix` | `format` |
| `suffix` | `format` |
**Modifiche alla configurazione predefinita**
```diff
[custom.example]
-- prefix = ""
-- suffix = ""
++ format = "[$symbol$output]($style) "
```
+92
View File
@@ -0,0 +1,92 @@
# Preset
Ecco una raccolta dei preset di configurazione inviati dalla community per Starship. Se hai un preset da condividere, per favore [ invia un PR ](https://github.com/starship/starship/edit/master/docs/presets/README.md) aggiornando questo file! 😊
## Nerd Font Symbols
Questo preset non cambia nulla tranne i simboli utilizzati per ogni modulo. Se gli emoji non fanno per te, questo potrebbe attirare la tua attenzione!
![Screenshot dei preset di Nerd Font Symbols](/presets/nerd-font-symbols.png)
### Prerequisiti
- Un [ Nerd Font ](https://www.nerdfonts.com/) installato e abilitato nel tuo terminale (l'esempio usa Fira Code Nerd Font)
### Configurazione
```toml
[aws]
symbol = " "
[conda]
symbol = " "
[dart]
symbol = " "
[directory]
read_only = " "
[docker]
symbol = " "
[elixir]
symbol = " "
[elm]
symbol = " "
[git_branch]
symbol = " "
[golang]
symbol = " "
[haskell]
symbol = " "
[hg_branch]
symbol = " "
[java]
symbol = " "
[julia]
symbol = " "
[memory_usage]
symbol = " "
[nim]
symbol = " "
[nix_shell]
symbol = " "
[nodejs]
symbol = " "
[package]
symbol = " "
[perl]
symbol = " "
[php]
symbol = " "
[python]
symbol = " "
[ruby]
symbol = " "
[rust]
symbol = " "
[scala]
symbol = " "
[swift]
symbol = "ﯣ "
```
+136
View File
@@ -0,0 +1,136 @@
---
home: true
heroImage: /logo.svg
heroText:
tagline: シェル用の最小限の、非常に高速で、無限にカスタマイズ可能なプロンプトです!
actionText: Get Started →
actionLink: ./guide/
features:
-
title: 互換性優先
details: 一般的なほとんどのOSの一般的なほとんどのシェル上で動作します。 あらゆるところで使用してください!
-
title: Rust 製
details: Rust の最高レベルの速度と安全性を用いることで、可能な限り高速かつ信頼性を高くしています。
-
title: カスタマイズ可能
details: それぞれの細かい点は好みにカスタマイズが出来るため、ミニマルにも多機能にも好きなようにプロンプトを設定することができます。
footer: ISC Licensed | Copyright © 2019-present Starship Contributors
#Used for the description meta tag, for SEO
metaTitle: "Starship: Cross-Shell Prompt"
description: Starship はミニマルで、非常に高速で、カスタマイズ性の高い、あらゆるシェルのためのプロンプトです! ミニマルかつ洗練された形で、あなたに必要な情報を表示します。 Bash, Fish, ZSH, Ion, PowerShellへ簡単にインストール出来ます。
---
<div class="center">
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### クイックインストール
1. **Starship** のバイナリをインストール
#### 最新版のインストール
Shellを利用する
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### パッケージマネージャー経由でインストール
[ Homebrew ](https://brew.sh/)の場合:
```sh
brew install starship
```
[ Scoop ](https://scoop.sh)の場合:
```powershell
scoop install starship
```
1. 初期化のためのスクリプトをシェルの設定ファイルに追加
#### Bash
`~/.bashrc` の最後に以下を追記してください
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
`~/.config/fish/config.fish` の最後に以下を追記してください
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
`~/.zshrc` の最後に以下を追記してください
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### Powershell
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. 通常、パスは `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` または -Nix 上では `~/.config/powershell/Microsoft.PowerShell_profile.ps1` です。
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
`~/.config/ion/initrc `の最後に次を追加してください
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: warning Only elvish v0.15 or higher is supported. :::
`~/.elvish/rc.elv` の最後に以下を追記してください。
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
`~/.tcshrc` の最後に以下を追加します:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
@@ -57,7 +57,16 @@ starship_precmd_user_func="set_win_title"
precmd_functions+=(set_win_title)
```
もし結果に満足したら、永続化のためそれぞれの行を (`~/.bashrc` もしくは `~/.zsrhc`) に追加してください。
もし結果に満足したら、永続化のためそれぞれの行を (`~/.bashrc` もしくは `~/.zshrc`) に追加してください。
たとえば、現在のディレクトリをターミナルタブのタイトルに表示したい場合は、 `~/.bashrc`または`~/.zshrc`に以下のスニペットを追加します。
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## スタイルの設定
@@ -73,7 +82,7 @@ precmd_functions+=(set_win_title)
ここで、 `<color>` は色を指定します(以下で述べます)。 `fg:<color>``<color>` は現在同様の動作ですが、将来変更される可能性があります。 文字列中の単語の順序は関係ありません。
えば `fg:red none fg:blue` は依然としてスタイルのない文字列となるように、 `none` は他の文字列中の他の単語すべてを上書きします。 将来 `none` を他の単語と一緒に使用することはエラーになるかもしれません。
`none` トークンは、文字列中の`bg:` 指定子の一部でない場合、他のすべてのトークンをオーバーライドします。そのため、たとえば`fg:red none fg:blue` と指定した場合、スタイルなしの文字列が作られます。 `bg:none` sets the background to the default color so `fg:red bg:none` is equivalent to `red` or `fg:red` and `bg:green fg:red bg:none` is also equivalent to `fg:red` or `red`. 将来 `none` を他の単語と一緒に使用することはエラーになるかもしれません。
色は以下のいずれか1つを指定できます。
File diff suppressed because it is too large Load Diff
+96
View File
@@ -0,0 +1,96 @@
# FAQ
## デモGIFで使用される構成は何ですか?
- **ターミナルエミュレータ**:[ iTerm2 ](https://iterm2.com/)
- **テーマ**: Minimal
- **カラースキーム**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **フォント**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **シェル**: [Fish Shell](https://fishshell.com/)
- **設定**: [matchaiのDotfiles](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **プロンプト**: [Starship](https://starship.rs/)
## デモのGIFのようにコマンド補完はどうしたら使用できますか?
補完サポート、または自動補完は選択したシェルによって提供されます。 デモ中では、デフォルトの[Fish Shell](https://fishshell.com/)によって補完されています。 Z Shell (zsh) を利用しているのであれば、[zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions)を照参してください。
## トップレベルの`format``<module>.disabled`は同じように動作しますか?
はい、両方ともプロンプトでモジュールを無効にするために使用できます。 モジュールを無効にするだけの場合は、これらの理由から` <module> .disabled `を無効にする方法をお勧めします。
- モジュールを無効化することは、トップレベルの`format`を削除するよりも明示的です。
- Starshipが更新されると、新しく作成されたモジュールがプロンプトに追加されます
## Starshipはcross-shellとのことです。 私の好みのshellはサポートしていないようですが。
Starshipの構築方法は、事実上すべてのシェルのサポートを追加できるはずです。 Starshipのバイナリはステートレスであり、シェルに依存しないため、シェルがプロンプトのカスタマイズとシェルの拡張をサポートしている限り、Starshipを使用できます。
Starshipをbashで動作させる例を次に示します。
```sh
# Get the status code from the last command executed
STATUS=$?
# 実行中のジョブの数を取得します。
NUM_JOBS=$(jobs -p | wc -l)
# プロンプトを `starship prompt`に設定
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
```
The [Bash implementation](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#command-duration) and to ensure that Starship is compatible with pre-installed Bash configurations.
`Starshipのプロンプト`で受け入れられるすべてのフラグのリストは、次のコマンドを取得できます。
```sh
starship prompt --help
```
プロンプトは提供されているコンテキストを使用しますが、フラグは「必須」ではありません。
## 古いバージョンの glibc を使用する Linux ディストリビューションで Starship を実行するにはどうすればよいですか?
CentOS6や7などで事前にビルドされたバイナリを使用していて、"_version 'GLIBC_2.18' not found (required by starship)_" のようなエラーが出た場合、`glibc`の替わりに `musl`でコンパイルされたバイナリを使用できます。
```sh
curl -fsSL https://starship.rs/install.sh | bash -s --- -platform unknown-linux-musl
```
## よくわからない記号を見つけました。これはどういった意味ですか?
不明な記号に遭遇した場合、`starship explain` を使用することで、現在表示しているモジュールの説明を見ることができます。
## 私のプロンプトで記号のグリフがないのはなぜですか?
よくある原因はシステム上での設定ミスです。 いくつかのLinuxディストリビューションの初期設定にフォントサポートがありません。 次のことを確認してください。
- ロケールが、`de_DE.UTF-8`` ja_JP.UTF-8`などのUTF-8に設定されている。 `LC_ALL`がUTF-8でない場合、[変更する必要があります](https://www.tecmint.com/set-system-locales-in-linux/)。
- 絵文字フォントがインストールされている。 ほとんどのシステムにはデフォルトで絵文字フォントが付属していますが、 一部 (特にArch Linux) はそうではありません。 通常、システムの パッケージマネージャーからインストールすることができます。--[noto emoji](https://www.google.com/get/noto/help/emoji/)は一般的な選択肢です。
- [Nerd Font](https://www.nerdfonts.com/)を使用している。
ターミナルで以下のコマンドを実行することでテストできます。
```sh
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
```
一行目は[蛇の絵文字](https://emojipedia.org/snake/)、二行目は[powerline branch symbol (e0a0)](https://github.com/ryanoasis/powerline-extra-symbols#glyphs)が表示されるはずです。
もし、どちらの記号とも正しく表示されない場合は、システムの設定が間違っています。 不幸にも、正しくフォントを設定するのは難しいものです。 Discordのユーザーが助けてくれるかもしれません! もし記号が正しく表示されているのにもかかわらず、Starshipが正しく表示されていない場合は、[バグの報告](https://github.com/starship/starship/issues/new/choose)をお願いします。
## Starshipをアンインストールしたい
Starshipのアンインストールはインストールと同じぐらい簡単です。
1. Starshipを初期化するために使用した、シェルの設定行を削除します (例:`~/.bashrc`)。
1. Starshipのバイナリを削除します。
パッケージマネージャーを使用してStarshipをインストールした場合は、パッケージマネージャーのアンインストールガイドを参照してください。
`curl | bash` スクリプトを使用してStarshipをインストールした場合は、以下のコマンドでバイナリを削除してください。
```sh
# starshipバイナリを見つけて削除
rm "$(which starship)"
```
+311
View File
@@ -0,0 +1,311 @@
<p align="center">
<img
width="400"
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
alt="Starship Cross-shell prompt"
/>
</p>
<p align="center">
<a href="https://github.com/starship/starship/actions"
><img
src="https://img.shields.io/github/workflow/status/starship/starship/Main workflow/master?label=workflow&style=flat-square"
alt="GitHub Actions workflow status"
/></a>
<a href="https://crates.io/crates/starship"
><img
src="https://img.shields.io/crates/v/starship?style=flat-square"
alt="Crates.io version"
/></a>
<a href="https://repology.org/project/starship/versions"
><img
src="https://img.shields.io/repology/repositories/starship?label=in%20repositories&style=flat-square"
alt="Packaging status" /></a
><br />
<a href="https://discord.gg/starship"
><img
src="https://img.shields.io/discord/567163873606500352?label=discord&logoColor=white&style=flat-square"
alt="Chat on Discord"
/></a>
<a href="https://twitter.com/StarshipPrompt"
><img
src="https://img.shields.io/badge/twitter-@StarshipPrompt-1DA1F3?style=flat-square"
alt="Follow @StarshipPrompt on Twitter"
/></a>
</p>
<p align="center">
<a href="https://starship.rs">ウェブサイト</a>
·
<a href="#🚀-installation">インストール</a>
·
<a href="https://starship.rs/config/">設定</a>
</p>
<p align="center">
<a href="https://github.com/starship/starship/blob/master/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
alt="English"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
alt="日本語"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
alt="繁體中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
alt="Русский"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
alt="Deutsch"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
alt="简体中文"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
alt="Español"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
alt="Français"
/></a>
&nbsp;
<a
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
><img
height="20"
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
alt="Tiếng Việt"
/></a>
</p>
<h1></h1>
<img
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
alt="Starship with iTerm2 and the Snazzy theme"
width="50%"
align="right"
/>
**シェル用の最小限の、非常に高速で、無限にカスタマイズ可能なプロンプトです!**
- **高速:** _本当に_ 高速です! 🚀
- **カスタマイズ可能:** プロンプトのあらゆる側面を構成します。
- **ユニバーサル:** あらゆるシェル、あらゆるオペレーティングシステムで動作します。
- **インテリジェント:** 関連情報を一目で示します。
- **豊富な機能:** お気に入りのツールをすべてサポートします。
- **簡単:** 迅速なインストールが可能であり、数分で使用開始可能です。
<p align="center">
<a href="https://starship.rs/config/"><strong>Starshipのドキュメントを見る&nbsp;&nbsp;▶</strong></a>
</p>
<a name="🚀-installation"></a>
## 🚀 インストール
### 必要なもの
- [Nerd Font](https://www.nerdfonts.com/)がインストールされ、端末にて有効になっている(例えば、[Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)を試してみてください)。
### 入門
**注意**: さまざまなプラットフォームが急増しているため、ここでは対応プラットフォームの一部だけを挙げています。 自分が使っているシェルがありませんか? [extra platform instructions](https://starship.rs/installing/) を確認してください。
1. **Starship** のバイナリをインストール
#### 最新版のインストール
##### ビルド済みのバイナリをインストール
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### パッケージマネージャー経由でインストール
##### 例: [Homebrew の場合](https://brew.sh/):
```sh
brew install starship
```
##### [ Scoop ](https://scoop.sh)の場合:
```powershell
scoop install starship
```
2. 初期化のためのスクリプトをシェルの設定ファイルに追加
#### Bash
`~/.bashrc` の最後に以下を追記してください
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
`~/.config/fish/config.fish` の最後に以下を追記してください
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
`~/.zshrc` の最後に以下を追記してください
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### PowerShell
`Microsoft.PowerShell_profile.ps1` の最後に以下を追記してください。 PowerShell 上で `$PROFILE` 変数を問い合わせると、ファイルの場所を確認できます。 通常、パスは `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` または -Nix 上では `~/.config/powershell/Microsoft.PowerShell_profile.ps1` です。
```powershell
Invoke-Expression (&starship init powershell)
```
#### Ion
`~/.config/ion/initrc `の最後に次を追加してください
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
**警告** elvish v0.15 以上のみがサポートされています。 `~/.elvish/rc.elv` の最後に以下を追記してください。
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
`~/.tcshrc` の最後に以下を追加します:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
## 🤝 貢献
私たちは常に**すべてのスキルレベル**の貢献者を探しています! もし簡単にプロジェクトへ参加する方法をお探しなら、 [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue) に取り組んでみてください。
あなたが英語以外の言語に堪能な場合、ドキュメントの翻訳と更新に協力していただけると嬉しいです。 協力してくれる場合、翻訳は [Starship Crowdin](https://translate.starship.rs/) から貢献できます。
もしあなたが Starship への貢献に興味がある場合は、我々の[貢献ガイド](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)をご覧ください。 また、気軽に我々の[Discord サーバー](https://discord.gg/8Jzqu3T)へ顔を出してください。 👋
### コードに貢献していただいた方々
このプロジェクトは、貢献したすべての人々のおかげで存在します。 [[Contribute](https://github.com/starship/starship/blob/master/CONTRIBUTING.md)].
<a href="https://github.com/starship/starship/graphs/contributors"><img src="https://opencollective.com/starship/contributors.svg?width=890&button=false" /></a>
### 財政的な貢献をしていただいた方々
財政的な貢献者になって、私たちのコミュニティを維持するのを助けていただけると嬉しいです。 [[Contribute](https://opencollective.com/starship/contribute)]
#### 個人
<a href="https://opencollective.com/starship"><img src="https://opencollective.com/starship/individuals.svg?width=890"></a>
#### 組織
あなたの組織でこのプロジェクトをサポートします。 あなたのロゴはあなたのウェブサイトへのリンクとここに表示されます。 [[Contribute](https://opencollective.com/starship/contribute)]
<a href="https://opencollective.com/starship/organization/0/website"><img src="https://opencollective.com/starship/organization/0/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/1/website"><img src="https://opencollective.com/starship/organization/1/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/2/website"><img src="https://opencollective.com/starship/organization/2/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/3/website"><img src="https://opencollective.com/starship/organization/3/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/4/website"><img src="https://opencollective.com/starship/organization/4/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/5/website"><img src="https://opencollective.com/starship/organization/5/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/6/website"><img src="https://opencollective.com/starship/organization/6/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/7/website"><img src="https://opencollective.com/starship/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/8/website"><img src="https://opencollective.com/starship/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/starship/organization/9/website"><img src="https://opencollective.com/starship/organization/9/avatar.svg"></a>
## 💭影響を受けたプロダクト
よければStarship の作成に影響を与えた、これまでのプロジェクトをチェックしてください 🙏
- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** - 宇宙飛行士のための ZSH プロンプト。
- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** - 多くの shell に対応した JavaScript で書かれた robbyrussell テーマ。
- **[reujab/silver](https://github.com/reujab/silver)** - 多くの shell に対応しているカスタマイズ可能でアイコンを表示できる powerline のようなプロンプト。
<p align="center">
<br>
<img width="100" src="https://raw.githubusercontent.com/starship/starship/master/media/icon.png" alt="Starship rocket icon">
</p>
## 📝 ライセンス
Copyright © 2019-present, [Starship Contributors](https://github.com/starship/starship/graphs/contributors).<br /> このプロジェクトは [ISC](https://github.com/starship/starship/blob/master/LICENSE) でライセンスされています。
+84
View File
@@ -0,0 +1,84 @@
# 🚀 Advanced Installation
To install starship, you need to do two things:
1. Get the **starship** binary onto your computer
1. Tell your shell to use the starship binary as its prompt by modifying its init scripts
For most users, the instructions on [the main page](/guide/#🚀-installation) will work great. However, for some more specialized platforms, different instructions are needed.
There are so many platforms out there that they didn't fit into the main README.md file, so here are some installation instructions for other platforms from the community. Is yours not here? Please do add it here if you figure it out!
## [Chocolatey](https://chocolatey.org)
### 必要なもの
Head over to the [Chocolatey installation page](https://chocolatey.org/install) and follow the instructions to install Chocolatey.
### Installation
```powershell
choco install starship
```
## [termux](https://termux.com)
### 必要なもの
```sh
pkg install getconf
```
### Installation
```sh
curl -fsSL https://starship.rs/install.sh | bash -s -- -b /data/data/com.termux/files/usr/bin
```
## [Nix](https://nixos.wiki/wiki/Nix)
### Getting the Binary
#### Imperatively
```sh
nix-env -iA nixos.starship
```
#### Declarative, single user, via [home-manager](home-manager)
Enable the `programs.starship` module in your `home.nix` file, and add your settings
```nix
{
programs.starship = {
enable = true;
enableZshIntegration = true;
# Configuration written to ~/.config/starship.toml
settings = {
# add_newline = false;
# character = {
# success_symbol = "[](bold green)";
# error_symbol = "[](bold red)";
# };
# package.disabled = true;
};
};
}
```
then run
```sh
home-manager switch
```
#### Declarative, system-wide, with NixOS
Add `pkgs.starship` to `environment.systemPackages` in your `configuration.nix`, then run
```sh
sudo nixos-rebuild switch
```
+267
View File
@@ -0,0 +1,267 @@
# v0.45への移行
Starship v0.45.0は、v1.0.0の準備として互換性の無い変更を含むリリースになります。 私たちはより多くのカスタマイズを可能にするために、プロンプトでの設定方法にいくつかの大きな変更を加えました。
このガイドは、互換性のない変更を説明することを意図しています。
## `prompt_order`をルートレベルの`format`に置換
Previously to v0.45.0, `prompt_order` would accept an array of module names in the order which they should be rendered by Starship.
Starship v0.45.0 instead accepts a `format` value, allowing for customization of the prompt outside of the modules themselves.
**v0.45.0以前の設定例**
```toml
prompt_order = [
"username",
"hostname",
"directory",
"git_branch",
"git_commit",
"git_state",
"git_status",
"cmd_duration",
"custom",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
**v0.45.0での設定例**
```toml
format = """\
$username\
$hostname\
$directory\
$git_branch\
$git_commit\
$git_state\
$git_status\
$cmd_duration\
$custom\
$line_break\
$jobs\
$battery\
$time\
$character\
"""
```
## Module `prefix` and `suffix` have been replaced by `format`
Previously to v0.45.0, some modules would accept `prefix` and/or `suffix` in order to stylize the way that modules are rendered.
Starship v0.45.0 instead accepts a `format` value, allowing for further customization of how modules are rendered. Instead of defining a prefix and suffix for the context-based variables, the variables can now be substituted from within a format string, which represents the module's output.
**v0.45.0以前の設定例**
```toml
[cmd_duration]
prefix = "took "
```
**v0.45.0での設定例**
```toml
[cmd_duration]
# $duration コマンド実行時間 (例: "15s")
# $style – デフォルトのモジュールスタイル (例: "bold yellow")
format = "took [$duration]($style) "
```
### 影響を受けるモジュール
#### Character
| 削除されたプロパティ | 置換後 |
| ----------------------- | ---------------- |
| `symbol` | `success_symbol` |
| `use_symbol_for_status` | `error_symbol` |
| `style_success` | `success_symbol` |
| `style_failure` | `error_symbol` |
**デフォルト設定への変更**
```diff
[character]
-- symbol = ""
-- error_symbol = "✖"
-- use_symbol_for_status = true
-- vicmd_symbol = ""
++ success_symbol = "[](bold green)"
++ error_symbol = "[](bold red)"
++ vicmd_symbol = "[](bold green)"
```
以前は `use_symbol_for_status` プロパティを使用して、最後のコマンドがステータスコードをゼロにした場合、 `error_symbol` を表示するようにプロンプトを設定しました。
v0.45.0 のリリースでは、ステータスコードがゼロでないときに `error_symbol` を常に使用するようになりました。 `use_symbol_for_status``error_symbol` プロパティを統合します。
以前の `use_symbol_for_status = true` 設定を使用するようにプロンプトを設定するには、次の設定ファイルを追加します。
```toml
[character]
error_symbol = "[](bold red)"
```
*Note:* The `character` element automatically adds a space after, so unlike the other `format` strings, we specifically do not add one in the above examples.
#### Command Duration
| 削除されたプロパティ | 置換後 |
| ---------- | -------- |
| `prefix` | `format` |
**デフォルト設定への変更**
```diff
[cmd_duration]
-- prefix = "took "
++ format = "took [$duration]($style) "
```
#### Directory
| 削除されたプロパティ | 置換後 |
| ---------- | -------- |
| `prefix` | `format` |
**デフォルト設定への変更**
```diff
[directory]
-- prefix = "in "
++ format = "[$path]($style)[$read_only]($read_only_style) "
```
#### Environment Variable
| 削除されたプロパティ | 置換後 |
| ---------- | -------- |
| `prefix` | `format` |
| `suffix` | `format` |
**デフォルト設定への変更**
```diff
[env_var]
-- prefix = ""
-- suffix = ""
++ format = "with [$env_value]($style) "
```
#### Git Commit
| 削除されたプロパティ | 置換後 |
| ---------- | -------- |
| `prefix` | `format` |
| `suffix` | `format` |
**デフォルト設定への変更**
```diff
[git_commit]
-- prefix = "("
-- suffix = ")"
++ format = '[\($hash\)]($style) '
```
#### Git Status
| 削除されたプロパティ | 置換後 |
| ----------------- | -------- |
| `prefix` | `format` |
| `suffix` | `format` |
| `show_sync_count` | `format` |
**デフォルト設定への変更**
```diff
[git_status]
-- prefix = "["
-- suffix = "]"
-- show_sync_count = false
++ format = '([\[$all_status$ahead_behind\]]($style) )'
```
以前は `show_sync_count` プロパティを使用して、 ブランチが先行またはリモートブランチの後ろにあるコミット数を表示するようにプロンプトを設定していました。
With the release of v0.45.0, this has been replaced with three separate properties, `ahead`, `behind`, and `diverged`.
以前の `show_sync_count = true` 設定を使用するようにプロンプトを構成するには、次の設定ファイルを設定します。
```toml
[git_status]
ahead = "⇡${count}"
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
behind = "⇣${count}"
```
#### Hostname
| 削除されたプロパティ | 置換後 |
| ---------- | -------- |
| `prefix` | `format` |
| `suffix` | `format` |
**デフォルト設定への変更**
```diff
[hostname]
-- prefix = ""
-- suffix = ""
++ format = "[$hostname]($style) in "
```
#### Singularity
| 削除されたプロパティ | 置換後 |
| ---------- | -------- |
| `label` | `format` |
| `prefix` | `format` |
| `suffix` | `format` |
**デフォルト設定への変更**
```diff
[singularity]
-- prefix = ""
-- suffix = ""
++ format = '[$symbol\[$env\]]($style) '
```
#### Time
| 削除されたプロパティ | 置換後 |
| ---------- | ------------- |
| `format` | `time_format` |
**デフォルト設定への変更**
```diff
[time]
-- format = "🕙[ %T ]"
++ time_format = "%T"
++ format = "at 🕙[$time]($style) "
```
#### Custom Commands
| 削除されたプロパティ | 置換後 |
| ---------- | -------- |
| `prefix` | `format` |
| `suffix` | `format` |
**デフォルト設定への変更**
```diff
[custom.example]
-- prefix = ""
-- suffix = ""
++ format = "[$symbol$output]($style) "
```
+92
View File
@@ -0,0 +1,92 @@
# 準備するもの
以下は、Starship用にコミュニティに提供された構成プリセットのコレクションです。 共有するプリセットがある場合は、このファイルを更新して[PR](https://github.com/starship/starship/edit/master/docs/presets/README.md)を送信してください! 😊
## Nerd Font Symbols
このプリセットは、各モジュールに使用されるシンボル以外は何も変更しません。 絵文字が気に食わない場合、これはあなたの目を引くかもしれません!
![Screenshot of Nerd Font Symbols preset](/presets/nerd-font-symbols.png)
### 必要なもの
- 端末にインストールされ、有効になっている[Nerd Font](https://www.nerdfonts.com/)(例ではFira Code Nerd Fontを使用)
### 設定
```toml
[aws]
symbol = " "
[conda]
symbol = " "
[dart]
symbol = " "
[directory]
read_only = " "
[docker]
symbol = " "
[elixir]
symbol = " "
[elm]
symbol = " "
[git_branch]
symbol = " "
[golang]
symbol = " "
[haskell]
symbol = " "
[hg_branch]
symbol = " "
[java]
symbol = " "
[julia]
symbol = " "
[memory_usage]
symbol = " "
[nim]
symbol = " "
[nix_shell]
symbol = " "
[nodejs]
symbol = " "
[package]
symbol = " "
[perl]
symbol = " "
[php]
symbol = " "
[python]
symbol = " "
[ruby]
symbol = " "
[rust]
symbol = " "
[scala]
symbol = " "
[swift]
symbol = "ﯣ "
```
-107
View File
@@ -1,107 +0,0 @@
---
home: true
heroImage: /logo.svg
actionText: Get Started →
actionLink: /ja/guide/
footer: ISC Licensed | Copyright © 2019-present Starship Contributors
---
<div class="features">
<div class="feature">
<h2>互換性優先</h2>
<p>一般的なほとんどのOSの一般的なほとんどのシェル上で動作します。 あらゆるところで使用してください!</p>
</div>
<div class="feature">
<h2>Rust 製</h2>
<p>Rust の最高レベルの速度と安全性を用いることで、可能な限り高速かつ信頼性を高くしています。</p>
</div>
<div class="feature">
<h2>カスタマイズ可能</h2>
<p>それぞれの細かい点は好みにカスタマイズが出来るため、ミニマルにも多機能にも好きなようにプロンプトを設定することができます。</p>
</div>
</div>
<div class="center">
<video class="demo-video" autoplay muted loop>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### クイックインストール
1. **Starship** のバイナリをインストール
もし以下のプラットフォームを使用していない場合は **[コンパイル済みのバイナリファイルをダウンロード](https://github.com/starship/starship/releases)** してください。
#### Homebrew
```sh
$ brew install starship
```
#### Rust (v1.33 もしくはそれ以上)
```sh
$ cargo install starship
```
#### Arch Linux (AUR)
Starship は AUR 上の `starship` というパッケージ名で利用可能です。 `yay` またはお好きな AUR ヘルパーでインストールしてください。
```sh
$ yay -S starship
```
#### Nix (unstable)
```sh
$ nix-env --install starship
```
#### Termux
```sh
$ pkg install starship
```
1. 初期化のためのスクリプトをシェルの設定ファイルに追加
#### Bash
`~/.bashrc` の最後に以下を追記してください
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
`~/.config/fish/config.fish` の最後に以下を追記してください
```sh
# ~/.config/fish/config.fish
eval (starship init fish)
```
#### Zsh
`~/.zshrc` の最後に以下を追記してください
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
-858
View File
@@ -1,858 +0,0 @@
# 設定
::: tip
🔥Starshipの開発は現在も進んでいます。 多くの新しいオプションが今後のリリースで利用可能になります。
:::
Starshipの設定を開始するには、`~/.config/starship.toml` ファイルを作成します。
```shell
$ touch ~/.config/starship.toml
```
Starshipのすべての設定は、この[TOML](https://github.com/toml-lang/toml)ファイルで行われます。
```toml
# Don't print a new line at the start of the prompt
add_newline = false
# Replace the "" symbol in the prompt with "➜"
[character] # The name of the module we are configuring is "character"
symbol = "➜" # The "symbol" segment is being set to "➜"
# Disable the package module, hiding it from the prompt completely
[package]
disabled = true
```
### 用語
**モジュール**: OSのコンテキスト情報に基づいて情報を提供するプロンプト内のコンポーネントです。 たとえば、現在のディレクトリがNodeJSプロジェクトである場合、「nodejs」モジュールは、現在コンピューターにインストールされているNodeJSのバージョンを表示します。
**セグメント**: モジュールを構成する小さなサブコンポーネントです。 たとえば、「nodejs」モジュールの「symbol」セグメントには、バージョン番号の前に表示される文字が含まれています(デフォルト: ⬢)。
以下はNode モジュールの表現です。 次の例では、「シンボル」と「バージョン」はその中のセグメントです。 すべてのモジュールには、デフォルトの端末色であるprefixとsuffixもあります。
```
[prefix] [symbol] [version] [suffix]
"via " "⬢" "v10.4.1" ""
```
### スタイルの設定
Starshipのほとんどのモジュールでは、表示スタイルを設定できます。 これは、設定を指定する文字列であるエントリ(`style`)で行われます。 スタイル文字列の例とその機能を次に示します。 完全な構文の詳細については、詳細は [高度な設定](/advanced-config/)を参照してください 。
- `"fg:green bg:blue"` は、青色の背景に緑色のテキストを設定します
- `"bg:blue fg:bright-green"` は、青色の背景に明るい緑色のテキストを設定します
- `"bold fg:27"` は、 [ANSIカラー](https://i.stack.imgur.com/KTSQa.png) 27の太字テキストを設定します
- `"underline bg:#bf5700"` は、焦げたオレンジ色の背景に下線付きのテキストを設定します
- `"bold italic fg:purple"`は、紫色の太字斜体のテキストを設定します
- `""` はすべてのスタイルを明示的に無効にします
スタイリングがどのように見えるかは、端末エミュレータによって制御されることに注意してください。 たとえば、一部の端末エミュレータはテキストを太字にする代わりに色を明るくします。また、一部のカラーテーマは通常の色と明るい色と同じ値を使用します。また、斜体のテキストを取得するには、端末で斜体をサポートする必要があります。スタイリングがどのように見えるかは、端末エミュレータによって制御されることに注意してください。たとえば、一部の端末エミュレータはテキストを太字にする代わりに色を明るくします。また、一部のカラーテーマは通常の色と明るい色と同じ値を使用します。 また、斜体のテキストを取得するには、端末で斜体をサポートする必要があります。
## プロンプト
これは、プロンプト全体のオプションのリストです。
### オプション
| 変数 | デフォルト | 説明 |
| -------------- | ----------------------- | ------------------------ |
| `add_newline` | `true` | プロンプトの開始前に新しい行を追加します。 |
| `prompt_order` | [link](#デフォルトのプロンプト表示順) | プロンプトモジュールを出力する順序を設定します。 |
### 設定例
```toml
# ~/.config/starship.toml
# プロンプト表示の改行を無効にする
add_newline = false
# デフォルトのプロンプト表示順を書き換える
prompt_order=["rust","line_break","package","line_break","character"]
```
### デフォルトのプロンプト表示順
デフォルトの`prompt_order`は、空の場合、または`prompt_order`が指定されていない場合に、プロンプトにモジュールが表示される順序を定義するために使用されます。 デフォルトは次のとおりです。
```toml
prompt_order = [
"username",
"hostname",
"kubernetes",
"directory",
"git_branch",
"git_state",
"git_status",
"package",
"dotnet",
"golang",
"java",
"nodejs",
"python",
"ruby",
"rust",
"nix_shell",
"memory_usage",
"aws",
"env_var",
"cmd_duration",
"line_break",
"jobs",
"battery",
"time",
"character",
]
```
## AWS
`aws` モジュールは現在のAWSプロファイルが表示されます。 これは`AWS_PROFILE`環境変数に基づいています。
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | --------------- | ----------------------------- |
| `symbol` | `"☁️ "` | 現在のAWSプロファイルを表示する前に表示される記号です。 |
| `style` | `"bold yellow"` | モジュールのスタイルです。 |
| `disabled` | `false` | `aws`モジュールを無効にします。 |
### 設定例
```toml
# ~/.config/starship.toml
[aws]
style = "bold blue"
symbol = "🅰 "
```
## バッテリー
`battery`モジュールは、デバイスのバッテリー残量と現在の充電状態を示します。 モジュールは、デバイスのバッテリー残量が10%未満の場合にのみ表示されます。
### オプション
| 変数 | デフォルト | 説明 |
| -------------------- | ------------------------ | ------------------------- |
| `full_symbol` | `"•"` | バッテリーが満タンのときに表示される記号です。 |
| `charging_symbol` | `"⇡"` | バッテリーの充電中に表示される記号です。 |
| `discharging_symbol` | `"⇣"` | バッテリーが放電しているときに表示される記号です。 |
| `display` | [link](#battery-display) | モジュールの閾値とスタイルを表示します。 |
| `disabled` | `false` | `battery`モジュールを無効にします。 |
<details>
<summary>いくつかのまれなバッテリー状態のオプションもあります。</summary>
| 変数 | 説明 |
| ---------------- | ------------------------ |
| `unknown_symbol` | バッテリー状態が不明なときに表示される記号です。 |
| `empty_symbol` | バッテリーが空のときに表示される記号です。 |
オプションを指定しない限り、バッテリーの状態が`unknown`もしくは`empty`になった場合にインジケーターは非表示になります。
</details>
### 設定例
```toml
# ~/.config/starship.toml
[battery]
full_symbol = "🔋"
charging_symbol = "⚡️"
discharging_symbol = "💀"
```
### バッテリーの表示
`display</ 0> オプションを使用して、バッテリーインジケーターを表示するタイミング(閾値)と外観(スタイル)を定義します。
<code>display` が提供されない場合、 デフォルトは次のとおりです。
```toml
[[battery.display]]
threshold = 10
style = "bold red"
```
#### オプション
`display`オプションは、次の表の通りです。
| 変数 | 説明 |
| ----------- | ------------------------------ |
| `threshold` | バッテリーが表示される上限です。 |
| `style` | displayオプションが使用されている場合のスタイルです。 |
#### 設定例
```toml
[[battery.display]] # バッテリー残量が0%〜10%の間は「太字の赤色」スタイルを利用する
threshold = 10
style = "bold red"
[[battery.display]] # バッテリー残量が10%〜30%の間は「太字の黄色」スタイルを利用する
threshold = 30
style = "bold yellow"
# 容量が30%を超えると、バッテリーインジケーターは表示されません
```
## 文字
`character`モジュールは、端末でテキストが入力される場所の横に文字(通常は矢印)を表示します。
文字は、最後のコマンドが成功したかどうかを示します。 これは、色の変更(赤/緑)またはその形状の変更(❯/✖) の2つの方法で行うことができます。 後者は`use_symbol_for_status``true`設定されている場合にのみ行われます。
### オプション
| 変数 | デフォルト | 説明 |
| ----------------------- | -------------- | -------------------------------------------- |
| `symbol` | `""` | プロンプトでテキストを入力する前に使用される記号です。 |
| `error_symbol` | `"✖"` | 前のコマンドが失敗した場合にテキスト入力の前に使用される記号です。 |
| `use_symbol_for_status` | `false` | シンボルを変更してエラーステータスを示します。 |
| `vicmd_symbol` | `""` | シェルがvimの通常モードである場合、プロンプトのテキスト入力の前に使用される記号です。 |
| `style_success` | `"bold green"` | 最後のコマンドが成功した場合に使用されるスタイルです。 |
| `style_failure` | `"bold red"` | 最後のコマンドが失敗した場合に使用されるスタイルです。 |
| `disabled` | `false` | `character`モジュールを無効にします。 |
### 設定例
```toml
# ~/.config/starship.toml
[character]
symbol = "➜"
error_symbol = "✗"
use_symbol_for_status = true
```
## コマンド実行時間
`cmd_duration`モジュールは、最後のコマンドの実行にかかった時間を示します。 モジュールが表示されるのは、コマンドが2秒以上かかった場合、または`min_time`値が存在する場合のみです。
::: warning BashでDEBUGトラップをhookしない
`bash`でStarshipを実行している場合、 `eval $(starship init $0)`実行した後に`DEBUG`トラップをフックしないでください。そうしないと、このモジュールが**おそらくですが**壊れます。
:::
preexecのような機能を必要とするBashユーザーは、 [rcalorasのbash_preexecフレームワーク](https://github.com/rcaloras/bash-preexec)を使用できます。 `eval $(starship init $0)` を実行する前に、`preexec_functions`、および`precmd_functions`定義するだけで、通常どおり続行します。
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | --------------- | ---------------------------------------------------------- |
| `min_time` | `2` | 時間を表示する最短期間です。 |
| `prefix` | `took` | Prefix to display immediately before the command duration. |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `cmd_duration` module. |
### 設定例
```toml
# ~/.config/starship.toml
[cmd_duration]
min_time = 4
prefix = "underwent "
```
## ディレクトリ
`directory`モジュールには、現在のディレクトリへのパスが表示され、3つの親フォルダは切り捨てられます。 ディレクトリは、現在のgitリポジトリであるとルートとなります。
fishスタイルのpwdオプションを使用すると、切り捨てられたパスを非表示にする代わりに、オプションで有効にした番号に基づいて各ディレクトリの短縮名が表示されます。
例として、`~/Dev/Nix/nixpkgs/pkgs`で、`nixpkgs`がリポジトリルートであり、オプションが`1`に設定されている場合を挙げます。 以前は`nixpkgs/pkgs`でしたが、`~/D/N/nixpkgs/pkgs`が表示されます。
### オプション
| 変数 | デフォルト | 説明 |
| ------------------- | ------------- | ----------------------------- |
| `truncation_length` | `3` | 現在のディレクトリを切り捨てる親フォルダーの数です。 |
| `truncate_to_repo` | `true` | 現在いるgitリポジトリのルートに切り捨てるかどうかです。 |
| `style` | `"bold cyan"` | モジュールのスタイルです。 |
| `disabled` | `false` | `directory`モジュールを無効にします。 |
<details>
<summary>このモジュールは、どのようにディレクトリを表示するかについての高度なオプションをいくつか持っています。</summary>
| 変数 | デフォルト | 説明 |
| --------------------------- | ------ | -------------------------------------------- |
| `fish_style_pwd_dir_length` | `0` | fish shellのpwdパスロジックを適用するときに使用する文字数です。 |
| `use_logical_path` | `true` | OSからのパスの代わりに、シェル(`PWD`) によって提供される論理パスを表示します。 |
</details>
### 設定例
```toml
# ~/.config/starship.toml
[directory]
truncation_length = 8
```
## Dotnet
The `dotnet` module shows the relevant version of the .NET Core SDK for the current directory. If the SDK has been pinned in the current directory, the pinned version is shown. Otherwise the module shows the latest installed version of the SDK.
This module will only be shown in your prompt when one of the following files are present in the current directory: `global.json`, `project.json`, `*.sln`, `*.csproj`, `*.fsproj`, `*.xproj`. You'll also need the .NET Core command-line tools installed in order to use it correctly.
Internally, this module uses its own mechanism for version detection. Typically it is twice as fast as running `dotnet --version`, but it may show an incorrect version if your .NET project has an unusual directory layout. If accuracy is more important than speed, you can disable the mechanism by setting `heuristic = false` in the module options.
### オプション
| 変数 | デフォルト | 説明 |
| ----------- | ------------- | -------------------------------------------------------- |
| `symbol` | `"•NET "` | The symbol used before displaying the version of dotnet. |
| `style` | `"bold blue"` | The style for the module. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `disabled` | `false` | Disables the `dotnet` module. |
### 設定例
```toml
# ~/.config/starship.toml
[dotnet]
symbol = "🥅 "
style = "green"
heuristic = false
```
## Environment Variable
The `env_var` module displays the current value of a selected environment variable. The module will be shown only if any of the following conditions are met:
- `variable`オプションが、既存の環境変数と一致する
- `variable`オプションが定義されておらず、`default`オプションが定義されている
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | ---------------- | ---------------------------------------------------------------------------- |
| `symbol` | | The symbol used before displaying the variable value. |
| `variable` | | The environment variable to be displayed. |
| `default` | | The default value to be displayed when the selected variable is not defined. |
| `prefix` | `""` | Prefix to display immediately before the variable value. |
| `suffix` | `""` | Suffix to display immediately after the variable value. |
| `style` | `"dimmed black"` | The style for the module. |
| `disabled` | `false` | Disables the `env_var` module. |
### 設定例
```toml
# ~/.config/starship.toml
[env_var]
variable = "SHELL"
default = "unknown shell"
```
## Git Branch
The `git_branch` module shows the active branch of the repo in your current directory.
### オプション
| 変数 | デフォルト | 説明 |
| ------------------- | --------------- | ------------------------------------------------------------------------------------- |
| `symbol` | `" "` | The symbol used before the branch name of the repo in your current directory. |
| `truncation_length` | `2^63 - 1` | Truncates a git branch to X graphemes |
| `truncation_symbol` | `"…"` | The symbol used to indicate a branch name was truncated. You can use "" for no symbol |
| `style` | `"bold purple"` | The style for the module. |
| `disabled` | `false` | Disables the `git_branch` module. |
### 設定例
```toml
# ~/.config/starship.toml
[git_branch]
symbol = "🌱 "
truncation_length = "4"
truncation_symbol = ""
```
## Git State
The `git_state` module will show in directories which are part of a git repository, and where there is an operation in progress, such as: _REBASING_, _BISECTING_, etc. If there is progress information (e.g., REBASING 3/10), that information will be shown too.
### オプション
| 変数 | デフォルト | 説明 |
| ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------- |
| `rebase` | `"REBASING"` | The text displayed when a `rebase` is in progress. |
| `merge` | `"MERGING"` | The text displayed when a `merge` is in progress. |
| `revert` | `"REVERTING"` | The text displayed when a `revert` is in progress. |
| `cherry_pick` | `"CHERRY-PICKING"` | The text displayed when a `cherry-pick` is in progress. |
| `bisect` | `"BISECTING"` | The text displayed when a `bisect` is in progress. |
| `am` | `"AM"` | The text displayed when an `apply-mailbox` (`git am`) is in progress. |
| `am_or_rebase` | `"AM/REBASE"` | The text displayed when an ambiguous `apply-mailbox` or `rebase` is in progress. |
| `progress_divider` | `"/"` | The symbol or text which will separate the current and total progress amounts. (e.g., `" of "`, for `"3 of 10"`) |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `git_state` module. |
### 設定例
```toml
# ~/.config/starship.toml
[git_state]
progress_divider = " of "
cherry_pick = "🍒 PICKING"
```
## Git Status
The `git_status` module shows symbols representing the state of the repo in your current directory.
### オプション
| 変数 | デフォルト | 説明 |
| ----------------- | ------------ | ------------------------------------------------------- |
| `conflicted` | `"="` | This branch has merge conflicts. |
| `ahead` | `"⇡"` | This branch is ahead of the branch being tracked. |
| `behind` | `"⇣"` | This branch is behind of the branch being tracked. |
| `diverged` | `"⇕"` | This branch has diverged from the branch being tracked. |
| `untracked` | `"?"` | There are untracked files in the working directory. |
| `stashed` | `"$"` | A stash exists for the local repository. |
| `modified` | `"!"` | There are file modifications in the working directory. |
| `staged` | `"+"` | A new file has been added to the staging area. |
| `renamed` | `"»"` | A renamed file has been added to the staging area. |
| `deleted` | `"✘"` | A file's deletion has been added to the staging area. |
| `show_sync_count` | `false` | Show ahead/behind count of the branch being tracked. |
| `prefix` | `[` | Prefix to display immediately before git status. |
| `suffix` | `]` | Suffix to display immediately after git status. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `git_status` module. |
### 設定例
```toml
# ~/.config/starship.toml
[git_status]
conflicted = "🏳"
ahead = "🏎💨"
behind = "😰"
diverged = "😵"
untracked = "🤷‍"
stashed = "📦"
modified = "📝"
staged = ""
renamed = "👅"
deleted = "🗑"
```
## Golang
The `golang` module shows the currently installed version of Golang. The module will be shown if any of the following conditions are met:
- カレントディレクトリに`go.mod`ファイルが含まれている
- カレントディレクトリに`go.sum`ファイルが含まれている
- カレントディレクトリに`glide.yaml`ファイルが含まれている
- カレントディレクトリに`Gopkg.yml`ファイルが含まれている
- カレントディレクトリに`Gopkg.lock`ファイルが含まれている
- カレントディレクトリに`Godeps`ファイルが含まれている
- カレントディレクトリに`.go`の拡張子のファイルが含まれている
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | ------------- | -------------------------------------------------------- |
| `symbol` | `"🐹 "` | The symbol used before displaying the version of Golang. |
| `style` | `"bold cyan"` | The style for the module. |
| `disabled` | `false` | Disables the `golang` module. |
### 設定例
```toml
# ~/.config/starship.toml
[golang]
symbol = "🏎💨 "
```
## Hostname
The `hostname` module shows the system hostname.
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | --------------------- | ---------------------------------------------------- |
| `ssh_only` | `true` | Only show hostname when connected to an SSH session. |
| `prefix` | `""` | Prefix to display immediately before the hostname. |
| `suffix` | `""` | Suffix to display immediately after the hostname. |
| `style` | `"bold dimmed green"` | The style for the module. |
| `disabled` | `false` | Disables the `hostname` module. |
### 設定例
```toml
# ~/.config/starship.toml
[hostname]
ssh_only = false
prefix = "⟪"
suffix = "⟫"
disabled = false
```
## Jobs
The `jobs` module shows the current number of jobs running. The module will be shown only if there are background jobs running. The module will show the number of jobs running if there is more than 1 job, or more than the `threshold` config value, if it exists.
### オプション
| 変数 | デフォルト | 説明 |
| ----------- | ------------- | ----------------------------------------------------- |
| `symbol` | `"✦ "` | The symbol used before displaying the number of jobs. |
| `threshold` | `1` | Show number of jobs if exceeded. |
| `style` | `"bold blue"` | The style for the module. |
| `disabled` | `false` | Disables the `jobs` module. |
### 設定例
```toml
# ~/.config/starship.toml
[jobs]
symbol = "+ "
threshold = 4
```
## Kubernetes
Displays the current Kubernetes context name and, if set, the namespace from the kubeconfig file. The namespace needs to be set in the kubeconfig file, this can be done via `kubectl config set-context starship-cluster --namespace
astronaut`. If the `$KUBECONFIG` env var is set the module will use that if not it will use the `~/.kube/config`.
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | ------------- | --------------------------------------------------- |
| `symbol` | `"☸ "` | The symbol used before displaying the Cluster info. |
| `style` | `"bold blue"` | The style for the module. |
| `disabled` | `false` | Disables the `kubernetes` module |
### 設定例
```toml
# ~/.config/starship.toml
[kubernetes]
symbol = "⛵ "
style = "dim green"
disabled = true
```
## Line Break
The `line_break` module separates the prompt into two lines.
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | ------- | ------------------------------------------------------------------ |
| `disabled` | `false` | Disables the `line_break` module, making the prompt a single line. |
### 設定例
```toml
# ~/.config/starship.toml
[line_break]
disabled = true
```
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
### オプション
| 変数 | デフォルト | 説明 |
| ------------ | ------------ | ---------------------------------- |
| `use_name` | `false` | Display the name of the nix-shell. |
| `impure_msg` | `impure` | Customize the "impure" msg. |
| `pure_msg` | `pure` | Customize the "pure" msg. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `nix_shell` module. |
### 設定例
```toml
# ~/.config/starship.toml
[nix_shell]
disabled = true
use_name = true
impure_msg = "impure shell"
pure_msg = "pure shell"
```
## Memory Usage
The `memory_usage` module shows current system memory and swap usage.
By default the swap usage is displayed if the total system swap is non-zero.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
:::
### オプション
| 変数 | デフォルト | 説明 |
| ----------------- | ------------------------ | ------------------------------------------------------------- |
| `show_percentage` | `false` | Display memory usage as a percentage of the available memory. |
| `show_swap` | when total swap non-zero | Display swap usage. |
| `threshold` | `75` | Hide the memory usage unless it exceeds this percentage. |
| `symbol` | `"🐏 "` | The symbol used before displaying the memory usage. |
| `style` | `"bold dimmed white"` | The style for the module. |
| `disabled` | `true` | Disables the `memory_usage` module. |
### 設定例
```toml
# ~/.config/starship.toml
[memory_usage]
show_percentage = true
show_swap = true
threshold = -1
icon = " "
style = "bold dimmed green"
```
## Java
The `java` module shows the currently installed version of Java. The module will be shown if any of the following conditions are met:
- カレントディレクトリに`pom.xml`, もしくは`build.gradle`ファイルが含まれている
- カレントディレクトリに拡張子が`.java`, `.class`, もしくは`.jar`のファイルが含まれている
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | -------------- | ------------------------------------------------------ |
| `symbol` | `"☕ "` | The symbol used before displaying the version of Java. |
| `style` | `"dimmed red"` | モジュールのスタイルです。 |
| `disabled` | `false` | Disables the `java` module. |
### 設定例
```toml
# ~/.config/starship.toml
[java]
symbol = "🌟 "
```
## NodeJS
The `nodejs` module shows the currently installed version of NodeJS. The module will be shown if any of the following conditions are met:
- カレントディレクトリに`package.json`ファイルが含まれている
- カレントディレクトリに`node_modules`ディレクトリが含まれている
- カレントディレクトリに`.js`の拡張子のファイルが含まれている
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | -------------- | -------------------------------------------------------- |
| `symbol` | `"⬢ "` | The symbol used before displaying the version of NodeJS. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
### 設定例
```toml
# ~/.config/starship.toml
[nodejs]
symbol = "🤖 "
```
## Package Version
The `package` module is shown when the current directory is the repository for a package, and shows its current version. The module currently supports `npm`, `cargo`, and `poetry` packages.
- **npm** `npm`パッケージバージョンは、現在のディレクトリにある`package.json`から抽出されます
- **cargo** `cargo`パッケージバージョンは、現在のディレクトリにある`Cargo.toml`から抽出されます。
- **poetry** `poetry`パッケージバージョンは、現在のディレクトリにある`pyproject.toml`から抽出されます
> ⚠️ 表示されるバージョンは、パッケージマネージャーではなく、ソースコードが現在のディレクトリにあるパッケージのバージョンです。
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | ------------ | ---------------------------------------------------------- |
| `symbol` | `"📦 "` | The symbol used before displaying the version the package. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `package` module. |
### 設定例
```toml
# ~/.config/starship.toml
[package]
symbol = "🎁 "
```
## Python
The `python` module shows the currently installed version of Python.
If `pyenv_version_name` is set to `true`, it will display the pyenv version name.
Otherwise, it will display the version number from `python --version` and show the current Python virtual environment if one is activated.
The module will be shown if any of the following conditions are met:
- カレントディレクトリに`.python-version`ファイルが含まれている
- カレントディレクトリに`requirements.txt`ファイルが含まれている
- カレントディレクトリに`pyproject.toml`ファイルが含まれている
- カレントディレクトリに`.py`の拡張子のファイルが含まれている
- カレントディレクトリに`Pipfile`ファイルが含まれている
- カレントディレクトリに`tox.ini`ファイルが含まれている
### オプション
| 変数 | デフォルト | 説明 |
| -------------------- | --------------- | --------------------------------------------------------------------------- |
| `symbol` | `"🐍 "` | The symbol used before displaying the version of Python. |
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `"pyenv "` | Prefix before pyenv version display (default display is `pyenv MY_VERSION`) |
| `style` | `"bold yellow"` | The style for the module. |
| `disabled` | `false` | Disables the `python` module. |
### 設定例
```toml
# ~/.config/starship.toml
[python]
symbol = "👾 "
pyenv_version_name = true
pyenv_prefix = "foo "
```
## Ruby
The `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
- カレントディレクトリに`Gemfile`ファイルが含まれている
- カレントディレクトリに`.rb`の拡張子のファイルが含まれている
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | ------------ | ------------------------------------------------------ |
| `symbol` | `"💎 "` | The symbol used before displaying the version of Ruby. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `ruby` module. |
### 設定例
```toml
# ~/.config/starship.toml
[ruby]
symbol = "🔺 "
```
## Rust
The `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
- カレントディレクトリに`Cargo.toml`ファイルが含まれている
- カレントディレクトリに`.rs`の拡張子のファイルが含まれている
### オプション
| 変数 | デフォルト | 説明 |
| ---------- | ------------ | ------------------------------------------------------ |
| `symbol` | `"🦀 "` | The symbol used before displaying the version of Rust. |
| `style` | `"bold red"` | The style for the module. |
| `disabled` | `false` | Disables the `rust` module. |
### 設定例
```toml
# ~/.config/starship.toml
[rust]
symbol = "⚙️ "
```
## Time
The `time` module shows the current **local** time. The `format` configuration value is used by the [`chrono`](https://crates.io/crates/chrono) crate to control how the time is displayed. Take a look [at the chrono strftime docs](https://docs.rs/chrono/0.4.7/chrono/format/strftime/index.html) to see what options are available.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
:::
### Options
| Variable | Default | Description |
| ---------- | ------------- | ------------------------------------------------------------------------------------------------------------------- |
| `12hr` | `false` | Enables 12 hour formatting |
| `format` | see below | The [chrono format string](https://docs.rs/chrono/0.4.7/chrono/format/strftime/index.html) used to format the time. |
| `style` | `bold yellow` | The style for the module time |
| `disabled` | `true` | Disables the `time` module. |
If `12hr` is `true`, then `format` defaults to `"%r"`. Otherwise, it defaults to `"%T"`. Manually setting `format` will override the `12hr` setting.
### Example
```toml
# ~/.config/starship.toml
[time]
disabled = false
format = "🕙[ %T ]"
```
## Username
The `username` module shows active user's username. The module will be shown if any of the following conditions are met:
- カレントユーザーがroot
- カレントユーザーが、ログインしているユーザーとは異なる
- ユーザーがSSHセッションとして接続されている
- `show_always`変数がtrueに設定されている
### Options
| Variable | Default | Description |
| ------------- | --------------- | ------------------------------------- |
| `style_root` | `"bold red"` | The style used when the user is root. |
| `style_user` | `"bold yellow"` | The style used for non-root users. |
| `show_always` | `false` | Always shows the `username` module. |
| `disabled` | `false` | Disables the `username` module. |
### Example
```toml
# ~/.config/starship.toml
[username]
disabled = true
```
-1
View File
@@ -1 +0,0 @@
../../../translations/README.ja.md
+136
View File
@@ -0,0 +1,136 @@
---
home: true
heroImage: /logo.svg
heroText:
tagline: The minimal, blazing-fast, and infinitely customizable prompt for any shell!
actionText: Get Started →
actionLink: ./guide/
features:
-
title: Compatibility First
details: Works on the most common shells on the most common operating systems. Use it everywhere!
-
title: Rust-Powered
details: Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.
-
title: Customizable
details: Every little detail is customizable to your liking, to make this prompt as minimal or feature-rich as you'd like it to be.
footer: ISC Licensed | Copyright © 2019-present Starship Contributors
#Used for the description meta tag, for SEO
metaTitle: "Starship: Cross-Shell Prompt"
description: Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZSH, Ion, and PowerShell.
---
<div class="center">
<video class="demo-video" muted autoplay loop playsinline>
<source src="/demo.webm" type="video/webm">
<source src="/demo.mp4" type="video/mp4">
</video>
</div>
### 빠른 설치
1. **starship** 바이러니 설치:
#### 최근 버전 설치
With Shell:
```sh
curl -fsSL https://starship.rs/install.sh | bash
```
#### 패키지 매니저를 이용한 설치
[Homebrew](https://brew.sh/)를 통한 설치:
```sh
brew install starship
```
With [Scoop](https://scoop.sh):
```powershell
scoop install starship
```
1. 쉘 설정에 시동 스크립트를 추가:
#### Bash
`~/.bashrc`에 아래 라인을 추가
```sh
# ~/.bashrc
eval "$(starship init bash)"
```
#### Fish
`~/.config/fish/config.fish`에 아래 라인을 추가
```sh
# ~/.config/fish/config.fish
starship init fish | source
```
#### Zsh
`~/.zshrc`에 아래 라인을 추가
```sh
# ~/.zshrc
eval "$(starship init zsh)"
```
#### Powershell
`Microsoft.PowerShell_profile.ps1`의 끝부분에 아래 내용을 추가. 해당 설정파일은 파워쉘에서 `$PROFILE` 변수 확인을 통해 확인 가능. 일반적으로 해당 파일은 `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` 혹은 -Nix의 경우 `~/.config/powershell/Microsoft.PowerShell_profile.ps1`에 위치.
```sh
Invoke-Expression (&starship init powershell)
```
#### Ion
아래의 라인을 `~/.config/ion/initrc` 마지막에 추가:
```sh
# ~/.config/ion/initrc
eval $(starship init ion)
```
#### Elvish
::: 주의 elvish v0.15 이상만 지원. :::
아래의 라인을 `~/.elvish/rc.elv` 마지막에 추가:
```sh
# ~/.elvish/rc.elv
eval (starship init elvish)
```
#### Tcsh
아래의 라인을 `~/.tcshrc` 마지막에 추가:
```sh
# ~/.tcshrc
eval `starship init tcsh`
```
@@ -57,7 +57,16 @@ In `zsh`, add this to the `precmd_functions` array:
precmd_functions+=(set_win_title)
```
If you like the result, add these lines to your shell configuration file (`~/.bashrc` or `~/.zsrhc`) to make it permanent.
If you like the result, add these lines to your shell configuration file (`~/.bashrc` or `~/.zshrc`) to make it permanent.
For example, if you want to display your current directory in your terminal tab title, add the following snippet to your `~/.bashrc` or `~/.zshrc`:
```bash
function set_win_title(){
echo -ne "\033]0; $(basename $PWD) \007"
}
starship_precmd_user_func="set_win_title"
```
## Style Strings
@@ -73,7 +82,7 @@ Style strings are a list of words, separated by whitespace. The words are not ca
where `<color>` is a color specifier (discussed below). `fg:<color>` and `<color>` currently do the same thing , though this may change in the future. The order of words in the string does not matter.
The `none` token overrides all other tokens in a string, so that e.g. `fg:red none fg:blue` will still create a string with no styling. It may become an error to use `none` in conjunction with other tokens in the future.
The `none` token overrides all other tokens in a string if it is not part of a `bg:` specifier, so that e.g. `fg:red none fg:blue` will still create a string with no styling. `bg:none` sets the background to the default color so `fg:red bg:none` is equivalent to `red` or `fg:red` and `bg:green fg:red bg:none` is also equivalent to `fg:red` or `red`. It may become an error to use `none` in conjunction with other tokens in the future.
A color specifier can be one of the following:

Some files were not shown because too many files have changed in this diff Show More