docs(i18n): new Crowdin updates (#2634)

This commit is contained in:
Matan Kushner 2021-05-01 14:20:08 -04:00 committed by GitHub
parent 7459571a94
commit d6bfe0a3f1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
37 changed files with 7097 additions and 6654 deletions

View File

@ -3,7 +3,7 @@
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### 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.
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | The style for the module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Options
| Option | Default | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | The style for the module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Default | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | The style for the module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Example | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Options
| Option | Default | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | The style for the module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Default | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | The style for the module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Options
| Option | Default | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Options
| Option | Default | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Example | Description |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variable | Example | Description |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Example
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | The style for the module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |

View File

@ -3,7 +3,7 @@
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### 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.
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | The style for the module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Options
| Option | Default | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | The style for the module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Default | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | The style for the module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Example | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Options
| Option | Default | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | The style for the module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Default | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | The style for the module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Options
| Option | Default | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Options
| Option | Default | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Example | Description |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variable | Example | Description |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Example
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | The style for the module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |

View File

@ -81,7 +81,7 @@ Style-String sind Wortlisten, getrennt durch Leerzeichen. Die Wörter haben kein
- `<color>`
- `none`
wobei `<color>` eine Farbspezifikation ist (siehe unten). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. The order of words in the string does not matter.
wobei `<color>` eine Farbspezifikation ist (siehe unten). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. 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.

File diff suppressed because it is too large Load Diff

View File

@ -81,7 +81,7 @@ Las cadenas de estilo son una lista de palabras, separadas por espacios en blanc
- `<color>`
- `none`
donde `<color>` es un especificador de color (discutido a continuación). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. The order of words in the string does not matter.
donde `<color>` es un especificador de color (discutido a continuación). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. 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` 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`. Puede convertirse en un error usar `none` junto con otros tokens en el futuro.

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,7 @@
Pour commencer à configurer starship, créez le fichier suivant : `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
Toute la configuration de starship est faite dans ce fichier [TOML](https://github.com/toml-lang/toml):
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### Terminologie
**Module**: Un composant dans l'invite donnant des informations basées sur des informations contextuelles à propos de votre Système d'Exploitation. Par exemple, le module "nodejs" montre la version de NodeJS qui est actuellement installée sur votre ordinateur, si votre répertoire actuel est un projet NodeJS.
**Module**: Un composant dans l'invite donnant des informations basées sur des informations contextuelles à propos de votre Système d'Exploitation. Par exemple, le module "nodejs" montre la version de Node.js qui est actuellement installée sur votre ordinateur, si votre répertoire actuel est un projet Node.js.
**Variable**: Petits sous-composants qui contiennent des informations fournies par le module. Par exemple, la variable "version" dans le module "nodejs" contient la version actuelle de NodeJS.
**Variable**: Petits sous-composants qui contiennent des informations fournies par le module. Par exemple, la variable "version" dans le module "nodejs" contient la version actuelle de Node.js.
Par convention, la plupart des modules ont un préfixe de la couleur par défaut du terminal (par exemple `via` dans "nodejs") et un espace vide comme suffixe.
@ -384,7 +384,7 @@ Le caractère vous dira si la dernière commande a été réussie ou pas. Il y a
- changement de couleur (`red`/`green`)
- changement de forme (``/`✖`)
Par défaut, seule la couleur change. Si vous désirez également changer sa forme, jetez un œil à [cet exemple](#with-custom-error-shape).
Par défaut, seule la couleur change. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` n'est pas supporté avec elvish. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
Le module `cmake` affiche la version actuellement installée de CMake. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
Le module `cmake` affiche la version actuellement installée de [CMake](https://cmake.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- Le répertoire actuel contient un fichier `CMakeLists.txt`
- Le répertoire actuel contient un fichier ` CMakeCache.txt`
@ -445,8 +445,9 @@ Le module `cmake` affiche la version actuellement installée de CMake. Par défa
### Options
| Option | Défaut | Description |
| ------------------- | -------------------------------------- | ---------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | Le symbole utilisé avant la version de cmake. |
| `detect_extensions` | `[]` | Quelles extensions devraient activer ce module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Quels fichiers devraient activer ce module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
Le module `crystal` affiche la version actuellement installée de Crystal. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
Le module `crystal` affiche la version actuellement installée de [Crystal](https://crystal-lang.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- Le répertoire courant contient un fichier `shard.yml`
- Le répertoire courant contient un fichier `.cr`
@ -563,13 +564,14 @@ Le module `crystal` affiche la version actuellement installée de Crystal. Par d
### Options
| Option | Défaut | Description |
| ------------------------------------ | ------------------------------------ | ---------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | Le symbole utilisé avant d'afficher la version de crystal. |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold green"` | Le style du module. |
| `detect_extensionsdetect_extensions` | `["cr"]` | Quelles extensions devraient activer ce module. |
| `detect_extensions` | `["cr"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["shard.yml"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `disabled` | `false` | Désactive le module `crystal`. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
Le module `dart` affiche la version actuellement installée de Dart. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
Le module `dart` affiche la version actuellement installée de [Dart](https://dart.dev/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- Le répertoire courant contient un fichier `.dart`
- Le répertoire courant contient un répertoire `.dart_tool`
@ -602,10 +604,11 @@ Le module `dart` affiche la version actuellement installée de Dart. Par défaut
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | Une chaîne de caractères représentant le symbole de Dart |
| `detect_extensions` | `['dart']` | Quelles extensions devraient activer ce module. |
| `detect_extensions` | `["dart"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[".dart_tool"]` | Quels dossiers devraient activer ce module. |
| `style` | `"bold blue"` | Le style du module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
Le module `deno` vous montre votre version de Deno actuellement installée. Par défaut, le module sera affiché si l'une des conditions suivantes est remplie :
Le module `deno` affiche la version actuellement installée de [Deno](https://deno.land/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- Le répertoire courant contient un fichier `mod.ts`, `mod.js`, `deps.ts` ou `deps.ts`
### Options
| Option | Défaut | Description |
| ------------------- | -------------------------------------------- | -------------------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | Une chaîne de caractères représentant le symbole de Deno |
| `detect_extensions` | `[]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Quels fichiers devraient activer ce module. |
@ -666,11 +670,11 @@ format = "via [🦕 $version](green bold) "
## Dossier
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.
Le module `Dossier` montre le chemin vers votre répertoire courant, tronqué à trois dossiers parents. Votre répertoire sera également tronqué à la racine du repo git dans lequel vous vous trouvez actuellement.
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.
Lorsque vous utilisez le style de pwd de fish, au lieu de cacher le chemin tronqué, vous verrez une abréviation du nom de chaque dossier, en fonction du nombre que vous avez utilisé comme valeur.
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`.
Par exemple, `~/Dev/Nix/nixpkgs/pkgs``nixpkgs` est la racine du repo, et l'option définie à `1`. Vous verrez maintenant `~/D/N/nixpkgs/pkgs`, alors que vous auriez vu `nixpkgs/pkgs` avant.
### Options
@ -687,7 +691,7 @@ For example, given `~/Dev/Nix/nixpkgs/pkgs` where `nixpkgs` is the repo root, an
| `home_symbol` | `"~"` | Le symbole indiquant le répertoire personnel. |
<details>
<summary>This module has a few advanced configuration options that control how the directory is displayed.</summary>
<summary>Ce module possède quelques options de configuration avancées qui contrôlent l'affichage du répertoire.</summary>
| Options avancées | Défaut | Description |
| --------------------------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
@ -695,7 +699,7 @@ For example, given `~/Dev/Nix/nixpkgs/pkgs` where `nixpkgs` is the repo root, an
| `fish_style_pwd_dir_length` | `0` | Le nombre de caractères à utiliser lors de l'application de la logique de troncature du pwd de fish. |
| `use_logical_path` | `true` | Si `true` affiche le chemin logique issu du shell via `PWD` ou `--logical-path`. Si `false` renvoie plutôt le chemin du système de fichiers physique avec les liens symboliques résolus. |
`substitutions` allows you to define arbitrary replacements for literal strings that occur in the path, for example long network prefixes or development directories (i.e. Java). Note that this will disable the fish style PWD.
`substitutions` vous permet de définir des remplacements arbitraires pour les chaînes littérales qui apparaissent dans le chemin, par exemple pour de longs préfixes de réseau ou des répertoires de développement (ex. Java). Notez que cela désactivera la PWD de style fish.
```toml
[directory.substitutions]
@ -703,7 +707,7 @@ For example, given `~/Dev/Nix/nixpkgs/pkgs` where `nixpkgs` is the repo root, an
"src/com/long/java/path" = "mypath"
```
`fish_style_pwd_dir_length` interacts with the standard truncation options in a way that can be surprising at first: if it's non-zero, the components of the path that would normally be truncated are instead displayed with that many characters. For example, the path `/built/this/city/on/rock/and/roll`, which would normally be displayed as as `rock/and/roll`, would be displayed as `/b/t/c/o/rock/and/roll` with `fish_style_pwd_dir_length = 1`--the path components that would normally be removed are displayed with a single character. For `fish_style_pwd_dir_length = 2`, it would be `/bu/th/ci/on/rock/and/roll`.
`fish_style_pwd_dir_leng` interagit avec les options de troncature d'une manière qui peut être surprenante au début : si elle n'est pas nulle, les composantes du chemin qui seraient normalement tronquées sont affichées à la place avec autant de caractères. Par exemple, le chemin `/built/this/city/on/rock/and/roll`, qui devrait normalement être affiché comme `rock/and/roll`, sera affiché sous la forme de `/b/t/c/o/rock/and/roll` avec `fish_style_pwd_dir_length = 1`--les composants de chemin qui seraient normalement supprimés sont affichés avec un caractère unique. Pour `fish_style_pwd_dir_length = 2`, ce serait `/bu/th/ci/on/rock/and/roll`.
</details>
@ -728,7 +732,7 @@ truncation_symbol = "…/"
## Contexte Docker
The `docker_context` module shows the currently active [Docker context](https://docs.docker.com/engine/context/working-with-contexts/) if it's not set to `default`.
Le module `docker_context` affiche le [contexte Docker](https://docs.docker.com/engine/context/working-with-contexts/) actuellement actif s'il n'est pas réglé à `default`.
### Options
@ -764,9 +768,9 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) for the current directory. Si le SDK a été épinglé dans le répertoire courant, la version épinglée est affichée. Sinon, le module affiche la dernière version installée du SDK.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
Par défaut, ce module ne sera affiché dans votre invite que lorsqu'un ou plusieurs des fichiers suivants sont présents dans le répertoire courant :
- `global.json`
- `project.json`
@ -778,9 +782,9 @@ By default this module will only be shown in your prompt when one or more of the
- `*.fsproj`
- `*.xproj`
You'll also need the .NET Core SDK installed in order to use it correctly.
Vous aurez également besoin du SDK .NET Core pour pouvoir l'utiliser correctement.
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.
En interne, ce module utilise son propre mécanisme de détection de version. Généralement, il est deux fois plus rapide que d'exécuter `dotnet --version`, mais il peut afficher une version incorrecte si votre projet .NET a une arborescence inhabituelle. Si la précision est plus importante que la vitesse, vous pouvez désactiver le mécanisme en définissant `heuristic = false` dans les options du module.
The module will also show the Target Framework Moniker (<https://docs.microsoft.com/en-us/dotnet/standard/frameworks#supported-target-framework-versions>) when there is a csproj file in the current directory.
@ -789,6 +793,7 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
| Option | Défaut | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | Le symbole utilisé avant d'afficher la version de dotnet. |
| `heuristic` | `true` | Utilisez la détection de versions plus rapide pour garder starship instantané. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Quelles extensions devraient activer ce module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- Le répertoire courant contient un fichier `mix.exs`.
### Options
| Option | Défaut | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | Format du module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | Le symbole utilisé avant d'afficher la version d'Elixir/Erlang. |
| `detect_extensions` | `[]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["mix.exs"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `style` | `"bold purple"` | Le style du module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | Format du module elixir. |
| `disabled` | `false` | Désactive le module `elixir`. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- Le répertoire courant contient un fichier `elm.json`
- Le répertoire courant contient un fichier `elm-package.json`
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. Par défaut le mo
### Options
| Option | Défaut | Description |
| ------------------- | -------------------------------------------------- | --------------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | Une chaîne de format représentant le symbole d'Elm. |
| `detect_extensions` | `["elm"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Quels fichiers devraient activer ce module. |
@ -900,7 +907,7 @@ format = "via [ $version](cyan bold) "
## Variable d'environnement
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:
Le module `env_var` affiche la valeur actuelle d'une variable d'environnement sélectionnée. Le module est affiché si l'une de ces conditions est remplie :
- L'option `variable` correspond à une variable d'environnement existante
- L'option `variable` n'est pas définie, mais l'option `default` l'est
@ -937,21 +944,22 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
- Le répertoire courant contient un fichier `rebar.config`.
- Le répertoire courant contient un fichier `erlang.mk`.
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold green"` | Le style du module. |
| `detect_extensions` | `[]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Défaut | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | Format du module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | Format du module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | Le style du module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Exemple | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Reflète la valeur de l'option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,11 +1242,11 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `go.mod` file
- The current directory contains a `go.sum` file
- The current directory contains a `glide.yaml` file
- Le répertoire courant contient un fichier `go.mod`
- Le répertoire courant contient un fichier `go.sum`
- Le répertoire courant contient un fichier `glide.yaml`
- The current directory contains a `Gopkg.yml` file
- The current directory contains a `Gopkg.lock` file
- The current directory contains a `.go-version` file
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. Par défaut
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------------------------------------------------ | ----------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Quels fichiers devraient activer ce module. |
@ -1277,19 +1287,20 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `helmfile.yaml` file
- Le répertoire courant contient un fichier `helmfile.yaml`
- The current directory contains a `Chart.yaml` file
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `symbol` | `"⎈ "` | A format string representing the symbol of Helm. |
| `style` | `"bold white"` | Le style du module. |
| `disabled` | `false` | Disables the `helm` module. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1363,7 +1374,7 @@ The `java` module shows the currently installed version of Java. Par défaut le
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["java", "class", "gradle", "jar", "cljs", "cljc"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["pom.xml", "build.gradle.kts", "build.sbt", ".java-version", ".deps.edn", "project.clj", "build.boot"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `symbol` | `"☕ "` | A format string representing the symbol of Java |
| `style` | `"red dimmed"` | Le style du module. |
| `disabled` | `false` | Disables the `java` module. |
@ -1372,7 +1383,7 @@ The `java` module shows the currently installed version of Java. Par défaut le
| Variable | Exemple | Description |
| --------- | ------- | -------------------------------------- |
| version | `v14` | The version of `java` |
| version | `v14` | La version de `java` |
| symbol | | Reflète la valeur de l'option `symbol` |
| style\* | | Reflète la valeur de l'option `style` |
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,11 +1449,12 @@ The `julia` module shows the currently installed version of Julia. Par défaut l
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `symbol` | `"ஃ "` | A format string representing the symbol of Julia. |
| `style` | `"bold purple"` | Le style du module. |
| `disabled` | `false` | Disables the `julia` module. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,9 +1489,10 @@ The `kotlin` module shows the currently installed version of Kotlin. Par défaut
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `[]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `symbol` | `"🅺 "` | A format string representing the symbol of Kotlin. |
| `style` | `"bold blue"` | Le style du module. |
| `kotlin_binary` | `"kotlin"` | Configures the kotlin binary that Starship executes when getting the version. |
@ -1514,11 +1527,11 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
Ce module est désactivé par défaut. Pour l'activer, configurez `disabled` sur `false` dans votre fichier de configuration.
:::
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. Par défaut le mo
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `[".lua-version"]` | Quels fichiers devraient activer ce module. |
@ -1622,7 +1636,7 @@ 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.
Ce module est désactivé par défaut. Pour l'activer, configurez `disabled` sur `false` dans votre fichier de configuration.
:::
@ -1699,9 +1713,9 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `nim.cfg` file
- Le répertoire courant contient un fichier `nim.cfg`
- The current directory contains a file with the `.nim` extension
- The current directory contains a file with the `.nims` extension
- The current directory contains a file with the `.nimble` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. Par défaut le mo
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["nim.cfg"]` | Quels fichiers devraient activer ce module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,11 +1791,11 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `package.json` file
- Le répertoire courant contient un fichier `package.json`
- The current directory contains a `.node-version` file
- The current directory contains a `.nvmrc` file
- The current directory contains a `node_modules` directory
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. Par défaut
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["package.json", ".node-version"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `["node_modules"]` | Quels dossiers devraient activer ce module. |
| `style` | `"bold green"` | Le style du module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. Par défaut l
### Options
| Option | Défaut | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. Par défaut le
### Options
| Option | Défaut | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `style` | `"bold 149"` | Le style du module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Défaut | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Quelles extensions devraient activer ce module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Quels fichiers devraient activer ce module. | |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. | |
| `style` | `"bold 149"` | Le style du module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,17 +2005,18 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `composer.json` file
- Le répertoire courant contient un fichier `composer.json`
- The current directory contains a `.php-version` file
- The current directory contains a `.php` extension
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["composer.json", ".php-version"]` | Quels fichiers devraient activer ce module. |
@ -2027,22 +2045,23 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `spago.dhall` file
- Le répertoire courant contient un fichier `spago.dhall`
- The current directory contains a file with the `.purs` extension
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | Le symbole utilisé avant d'afficher la version de PureScript. |
| `detect_extensions` | `["purs"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["spago.dhall"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module. |
| `style` | `"bold white"` | Le style du module. |
| `disabled` | `false` | Disables the `purescript` module. |
| `disabled` | `false` | Désactive le module `purescript`. |
### Variables
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2074,10 +2093,10 @@ Par défaut le module sera activé si au moins l'une des conditions suivantes es
- The current directory contains a `.python-version` file
- The current directory contains a `Pipfile` file
- The current directory contains a `__init__.py` file
- The current directory contains a `pyproject.toml` file
- The current directory contains a `requirements.txt` file
- The current directory contains a `setup.py` file
- The current directory contains a `tox.ini` file
- Le répertoire courant contient un fichier `pyproject.toml`
- Le répertoire courant contient un fichier `requirements.txt`
- Le répertoire courant contient un fichier `setup.py`
- Le répertoire courant contient un fichier `tox.ini`
- The current directory contains a file with the `.py` extension.
- A virtual environment is currently activated
@ -2092,7 +2111,7 @@ Par défaut le module sera activé si au moins l'une des conditions suivantes es
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Quelles extensions devraient activer ce module |
| `detect_extensions` | `["py"]` | Quelles extensions devraient activer ce module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Quels fichiers devraient activer ce module |
| `detect_folders` | `[]` | Quels dossiers devraient activer ce module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). Le module est affiché si l'une de ces conditions est remplie :
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). Le module est affiché si l'une de ces conditions est remplie :
- The current directory contains a `Gemfile` file
- The current directory contains a `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). Le module est affiché si l'une de ces conditions est remplie :
- The current directory contains a `Cargo.toml` file
- The current directory contains a file with the `.rs` extension
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,11 +2288,12 @@ The `scala` module shows the currently installed version of Scala. Par défaut l
### Options
| Option | Défaut | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Quels fichiers devraient activer ce module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
| `detect_folders` | `[".metals"]` | Quels dossiers devraient activer ce module. |
| `symbol` | `"🆂 "` | A format string representing the symbol of Scala. |
| `style` | `"red dimmed"` | Le style du module. |
| `disabled` | `false` | Disables the `scala` module. |
@ -2303,14 +2323,14 @@ The `shell` module shows an indicator for currently used shell.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
Ce module est désactivé par défaut. Pour l'activer, configurez `disabled` sur `false` dans votre fichier de configuration.
:::
### Options
| Option | Défaut | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | Format du module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Exemple | Description |
| --------- | ------------ | -------------------------------------- |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Reflète la valeur de l'option `symbol` |
| style\* | | Reflète la valeur de l'option `style` |
@ -2412,7 +2434,7 @@ The `status` module displays the exit code of the previous command. The module w
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
Ce module est désactivé par défaut. Pour l'activer, configurez `disabled` sur `false` dans votre fichier de configuration.
:::
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). Le module est affiché si l'une de ces conditions est remplie :
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["Package.swift"]` | Quels fichiers devraient activer ce module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ Par défaut le module sera activé si au moins l'une des conditions suivantes es
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `[]` | Quels fichiers devraient activer ce module. |
@ -2533,7 +2557,7 @@ Par défaut le module sera activé si au moins l'une des conditions suivantes es
| Variable | Exemple | Description |
| --------- | ---------- | -------------------------------------- |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Reflète la valeur de l'option `symbol` |
| style\* | | Reflète la valeur de l'option `style` |
@ -2541,7 +2565,7 @@ Par défaut le module sera activé si au moins l'une des conditions suivantes es
### Exemple
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ Par défaut le module sera activé si au moins l'une des conditions suivantes es
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2561,33 +2585,33 @@ format = "[🏎💨 $workspace]($style) "
## Date et Heure
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.
Le module `time` affiche l'heure actuelle **localement**. La valeur de `format` est utilisée par le package [`chrono`](https://crates.io/crates/chrono) pour contrôler la façon dont l'heure est affichée. Consultez la [doc de chrono strftime](https://docs.rs/chrono/0.4.7/chrono/format/strftime/index.html) pour découvrir les options disponibles.
::: tip
This module is disabled by default. To enable it, set `disabled` to `false` in your configuration file.
Ce module est désactivé par défaut. Pour l'activer, configurez `disabled` sur `false` dans votre fichier de configuration.
:::
### Options
| Option | Défaut | Description |
| ----------------- | ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| ----------------- | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `format` | `"at [$time]($style) "` | The format string for the module. |
| `use_12hr` | `false` | Enables 12 hour formatting |
| `time_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 |
| `utc_time_offset` | `"local"` | Sets the UTC offset to use. Range from -24 &lt; x &lt; 24. Allows floats to accommodate 30/45 minute timezone offsets. |
| `disabled` | `true` | Disables the `time` module. |
| `use_12hr` | `false` | Activer le format 12h |
| `time_format` | voir plus bas | Le [format chrono](https://docs.rs/chrono/0.4.7/chrono/format/strftime/index.html) utilisé pour formater l'heure. |
| `style` | `"bold yellow"` | Le style utilisé par le module |
| `utc_time_offset` | `"local"` | Définir le décalage horaire UTC à utiliser. Range from -24 &lt; x &lt; 24. Accepte des nombres décimaux pour s'adapter aux décalages de 30/45 minutes. |
| `disabled` | `true` | Désactiver le module `time`. |
| `time_range` | `"-"` | Sets the time range during which the module will be shown. Times must be specified in 24-hours format |
If `use_12hr` is `true`, then `time_format` defaults to `"%r"`. Otherwise, it defaults to `"%T"`. Manually setting `time_format` will override the `use_12hr` setting.
If `use_12hr` is `true`, then `time_format` defaults to `"%r"`. Sinon, il est défini comme `"%T"`. Manually setting `time_format` will override the `use_12hr` setting.
### Variables
| Variable | Exemple | Description |
| --------- | ---------- | ------------------------------------- |
| time | `13:08:10` | The current time. |
| temps | `13:08:10` | The current time. |
| style\* | | Reflète la valeur de l'option `style` |
\* : Cette variable ne peut être utilisée que comme partie d'une chaîne de style
@ -2605,14 +2629,14 @@ utc_time_offset = "-5"
time_range = "10:00:00-14:00:00"
```
## Username
## Nom d'utilisateur
The `username` module shows active user's username. The module will be shown if any of the following conditions are met:
Le module `username` affiche le nom d'utilisateur de l'utilisateur actif. Le module est affiché si l'une de ces conditions est remplie :
- 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
- L'utilisateur courant est root
- L'utilisateur courant est différent de celui connecté
- L'utilisateur est actuellement connecté à une session SSH
- La variable `show_always` a comme valeur true
::: tip
@ -2623,12 +2647,12 @@ SSH connection is detected by checking environment variables `SSH_CONNECTION`, `
### Options
| Option | Défaut | Description |
| ------------- | ----------------------- | ------------------------------------- |
| `style_root` | `"bold green"` | The style used when the user is root. |
| `style_user` | `"bold yellow"` | The style used for non-root users. |
| ------------- | ----------------------- | ------------------------------------------------ |
| `style_root` | `"bold green"` | Le style utilisé quand l'utilisateur est root. |
| `style_user` | `"bold yellow"` | Le style utilisé pour les utilisateurs non-root. |
| `format` | `"[$user]($style) in "` | Format du module. |
| `show_always` | `false` | Always shows the `username` module. |
| `disabled` | `false` | Disables the `username` module. |
| `show_always` | `false` | Toujours afficher le module `username`. |
| `disabled` | `false` | Désactiver le module `username`. |
### Variables
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). Par défaut le module sera activé si au moins l'une des conditions suivantes est remplie:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `["Vagrantfile"]` | Quels fichiers devraient activer ce module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). Le module est affiché si l'une de ces conditions est remplie :
- The current directory contains a `.zig` file
### Options
| Option | Défaut | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | Le style du module. |
| `format` | `"via [$symbol($version )]($style)"` | Format du module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Quelles extensions devraient activer ce module. |
| `detect_files` | `[]` | Quels fichiers devraient activer ce module. |
@ -2813,9 +2839,9 @@ The order in which custom modules are shown can be individually set by including
#### Commandes shell personnalisées
`shell` accepts a non-empty list of strings, where:
`shell` accepte une liste de chaînes non vide, où:
- The first string is the path to the shell to use to execute the command.
- La première chaîne est le chemin vers le shell à utiliser pour exécuter la commande.
- Other following arguments are passed to the shell.
If unset, it will fallback to STARSHIP_SHELL and then to "sh" on Linux, and "cmd /C" on Windows.

View File

@ -32,7 +32,7 @@ description: Starship è il prompt minimalista, super veloce ed estremamente per
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.
### Quick Install
### Installazione Veloce
1. Installa il binario **starship**:

View File

@ -81,7 +81,7 @@ Le stringhe di stile sono un elenco di parole, separate da spazi bianchi. Le par
- `<color>`
- `none`
dove `<color>` è un colore specifico (discusso in seguito). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. The order of words in the string does not matter.
dove `<color>` è un colore specifico (discusso in seguito). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. 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` 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`. Potrà diventare un errore usare `nessuno` in combinazione con altri token in futuro.

View File

@ -3,7 +3,7 @@
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### 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.
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | The style for the module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Options
| Option | Default | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | The style for the module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Default | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | The style for the module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Example | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Options
| Option | Default | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | The style for the module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Default | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | The style for the module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Options
| Option | Default | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Options
| Option | Default | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singolarità
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Example | Description |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variable | Example | Description |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Example
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | The style for the module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |

View File

@ -32,7 +32,7 @@ description: Starship はミニマルで、非常に高速で、カスタマイ
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.
### Quick Install
### クイックインストール
1. **Starship** のバイナリをインストール

View File

@ -81,7 +81,7 @@ starship_precmd_user_func="set_win_title"
- `<color>`
- `none`
ここで、 `<color>` は色を指定します(以下で述べます)。 `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. The order of words in the string does not matter.
ここで、 `<color>` は色を指定します(以下で述べます)。 `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. 文字列中の単語の順序は関係ありません。
`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` を他の単語と一緒に使用することはエラーになるかもしれません。

File diff suppressed because it is too large Load Diff

View File

@ -32,7 +32,7 @@ description: Starship is the minimal, blazing fast, and extremely customizable p
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.
### Quick Install
### 빠른 설치
1. **starship** 바이러니 설치:

View File

@ -3,7 +3,7 @@
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### 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.
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | The style for the module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Options
| Option | Default | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | The style for the module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Default | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | The style for the module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Example | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Options
| Option | Default | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | The style for the module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Default | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | The style for the module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Options
| Option | Default | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Options
| Option | Default | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Example | Description |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variable | Example | Description |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Example
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | The style for the module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |

View File

@ -3,7 +3,7 @@
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### 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.
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | The style for the module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Options
| Option | Default | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | The style for the module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Default | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | The style for the module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Example | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Options
| Option | Default | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | The style for the module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Default | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | The style for the module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Options
| Option | Default | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Options
| Option | Default | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Example | Description |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variable | Example | Description |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Example
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | The style for the module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |

View File

@ -3,7 +3,7 @@
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### 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.
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | The style for the module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Options
| Option | Default | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | The style for the module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Default | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | The style for the module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Example | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Options
| Option | Default | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | The style for the module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Default | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | The style for the module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Options
| Option | Default | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Options
| Option | Default | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Example | Description |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variable | Example | Description |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Example
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | The style for the module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |

View File

@ -32,7 +32,7 @@ description: O Starship é o prompt minimalista, extremamente rápido e extremam
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.
### Quick Install
### Instalação
1. Instale o binário do **starship**:

View File

@ -3,7 +3,7 @@
Para começar a configurar a starship, crie o seguinte arquivo: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
Todas as configurações do starship são feitas neste arquivo [TOML](https://github.com/toml-lang/toml):
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### Terminologia
**Módulo**: Um componente no prompt que fornece informações baseado no contexto do seu SO. Por exemplo, o módulo "nodejs" mostra a versão do NodeJS instalado no seu computador, se o diretório atual for um projeto NodeJS.
**Módulo**: Um componente no prompt que fornece informações baseado no contexto do seu SO. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Opções
| Option | Padrão | Descrição |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -468,7 +469,7 @@ The `cmake` module shows the currently installed version of CMake. By default th
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
::: warning Não utilize o DEBUG-trap no 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.
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | O estilo do módulo. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | O estilo do módulo. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Opções
| Option | Padrão | Descrição |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Opções
| Option | Padrão | Descrição |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | O estilo do módulo. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Opções
| Option | Padrão | Descrição |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | O estilo do módulo. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Opções
| Option | Padrão | Descrição |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | O estilo do módulo. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variável | Exemplo | Descrição |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1555,7 +1568,7 @@ disabled = false
"dev.local.cluster.k8s" = "dev"
```
## Line Break
## Quebra de linha
The `line_break` module separates the prompt into two lines.
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1614,7 +1628,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
format = "via [🌕 $version](bold blue) "
```
## Memory Usage
## Uso de memória
The `memory_usage` module shows current system memory and swap usage.
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Opções
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | O estilo do módulo. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Opções
| Option | Padrão | Descrição |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Opções
| Option | Padrão | Descrição |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | O estilo do módulo. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Padrão | Descrição | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | O estilo do módulo. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Opções
| Option | Padrão | Descrição |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Opções
| Option | Padrão | Descrição |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Opções
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variável | Exemplo | Descrição |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variável | Exemplo | Descrição |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Exemplo
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Opções
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Opções
| Option | Padrão | Descrição |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | O estilo do módulo. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2792,7 +2818,7 @@ The order in which custom modules are shown can be individually set by including
| `command` | | The command whose output should be printed. The command will be passed on stdin to the shell. |
| `when` | | A shell command used as a condition to show the module. The module will be shown if the command returns a `0` status code. |
| `shell` | | [See below](#custom-command-shell) |
| `description` | `"<custom module>"` | The description of the module that is shown when running `starship explain`. |
| `descrição` | `"<custom module>"` | The description of the module that is shown when running `starship explain`. |
| `files` | `[]` | The files that will be searched in the working directory for a match. |
| `directories` | `[]` | The directories that will be searched in the working directory for a match. |
| `extensions` | `[]` | The extensions that will be searched in the working directory for a match. |

View File

@ -3,7 +3,7 @@
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### 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.
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | The style for the module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Options
| Option | Default | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | The style for the module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Default | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | The style for the module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Example | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Options
| Option | Default | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | The style for the module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Default | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | The style for the module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Options
| Option | Default | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Options
| Option | Default | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Example | Description |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variable | Example | Description |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Example
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | The style for the module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |

View File

@ -32,7 +32,7 @@ description: Starship - минимальная, быстрая и бесконе
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.
### Quick Install
### Быстрая установка
1. Установите двоичный файл **starship**:

View File

@ -81,7 +81,7 @@ starship_precmd_user_func="set_win_title"
- `<color>`
- `none`
где `<color>` является цветовым спецификатором (обсуждается ниже). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. The order of words in the string does not matter.
где `<color>` является цветовым спецификатором (обсуждается ниже). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. Порядок слов в строке не имеет значения.
Токен `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` в сочетании с другими токенами может стать ошибкой в будущем.

File diff suppressed because it is too large Load Diff

View File

@ -28,7 +28,7 @@ description: Starship is the minimal, blazing fast, and extremely customizable p
</video>
</div>
### Prerequisites
### Ön koşullar
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.

View File

@ -3,7 +3,7 @@
To get started configuring starship, create the following file: `~/.config/starship.toml`.
```sh
mkdir -p ~/.config && starship print-config --default > ~/.config/starship.toml
mkdir -p ~/.config && touch ~/.config/starship.toml
```
All configuration for starship is done in this [TOML](https://github.com/toml-lang/toml) file:
@ -49,9 +49,9 @@ $ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"
### 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.
**Module**: A component in the prompt giving information based on contextual information from your OS. For example, the "nodejs" module shows the version of Node.js that is currently installed on your computer, if your current directory is a Node.js project.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of NodeJS.
**Variable**: Smaller sub-components that contain information provided by the module. For example, the "version" variable in the "nodejs" module contains the current version of Node.js.
By convention, most modules have a prefix of default terminal color (e.g. `via` in "nodejs") and an empty space as a suffix.
@ -384,7 +384,7 @@ The character will tell you whether the last command was successful or not. It c
- changing color (`red`/`green`)
- changing shape (``/`✖`)
By default it only changes color. If you also want to change it's shape take a look at [this example](#with-custom-error-shape).
By default it only changes color. If you also want to change its shape take a look at [this example](#with-custom-error-shape).
::: warning `error_symbol` is not supported on elvish shell. :::
@ -437,7 +437,7 @@ vicmd_symbol = "[V](bold green) "
## CMake
The `cmake` module shows the currently installed version of CMake. By default the module will be activated if any of the following conditions are met:
The `cmake` module shows the currently installed version of [CMake](https://cmake.org/). By default the module will be activated if any of the following conditions are met:
- The current directory contains a `CMakeLists.txt` file
- The current directory contains a `CMakeCache.txt` file
@ -445,8 +445,9 @@ The `cmake` module shows the currently installed version of CMake. By default th
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------- | -------------------------------------------- |
| ------------------- | -------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"△ "` | The symbol used before the version of cmake. |
| `detect_extensions` | `[]` | Which extensions should trigger this module |
| `detect_files` | `["CMakeLists.txt", "CMakeCache.txt"]` | Which filenames should trigger this module |
@ -555,7 +556,7 @@ format = "[$symbol$environment](dimmed green) "
## Crystal
The `crystal` module shows the currently installed version of Crystal. By default the module will be shown if any of the following conditions are met:
The `crystal` module shows the currently installed version of [Crystal](https://crystal-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `shard.yml` file
- The current directory contains a `.cr` file
@ -563,13 +564,14 @@ The `crystal` module shows the currently installed version of Crystal. By defaul
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `symbol` | `"🔮 "` | The symbol used before displaying the version of crystal. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `["cr"]` | Which extensions should trigger this module. |
| `detect_files` | `["shard.yml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `crystal` module. |
### Variables
@ -593,7 +595,7 @@ format = "via [✨ $version](bold blue) "
## Dart
The `dart` module shows the currently installed version of Dart. By default the module will be shown if any of the following conditions are met:
The `dart` module shows the currently installed version of [Dart](https://dart.dev/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.dart` extension
- The current directory contains a `.dart_tool` directory
@ -602,10 +604,11 @@ The `dart` module shows the currently installed version of Dart. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------- | ----------------------------------------------- |
| ------------------- | ------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🎯 "` | A format string representing the symbol of Dart |
| `detect_extensions` | `['dart']` | Which extensions should trigger this module. |
| `detect_extensions` | `["dart"]` | Which extensions should trigger this module. |
| `detect_files` | `["pubspec.yaml", "pubspec.yml", "pubspec.lock"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".dart_tool"]` | Which folders should trigger this module. |
| `style` | `"bold blue"` | The style for the module. |
@ -632,14 +635,15 @@ format = "via [🔰 $version](bold red) "
## Deno
The `deno` module shows you your currently installed version of Deno. By default the module will be shown if any of the following conditions are met:
The `deno` module shows you your currently installed version of [Deno](https://deno.land/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mod.ts`, `mod.js`, `deps.ts` or `deps.js` file
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🦕 "` | A format string representing the symbol of Deno |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mod.ts", "mod.js", "deps.ts", "deps.js"]` | Which filenames should trigger this module. |
@ -764,7 +768,7 @@ format = "via [🐋 $context](blue bold)"
## 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.
The `dotnet` module shows the relevant version of the [.NET Core SDK](https://dotnet.microsoft.com/) 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.
By default this module will only be shown in your prompt when one or more of the following files are present in the current directory:
@ -787,8 +791,9 @@ The module will also show the Target Framework Moniker (<https://docs.microsoft.
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"[$symbol($version )(🎯 $tfm )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `".NET "` | The symbol used before displaying the version of dotnet. |
| `heuristic` | `true` | Use faster version detection to keep starship snappy. |
| `detect_extensions` | `["sln", "csproj", "fsproj", "xproj"]` | Which extensions should trigger this module. |
@ -821,20 +826,21 @@ heuristic = false
## Elixir
The `elixir` module shows the currently installed version of Elixir and Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `elixir` module shows the currently installed version of [Elixir](https://elixir-lang.org/) and [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `mix.exs` file.
### Options
| Option | Default | Description |
| ------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| ------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💧 "` | The symbol used before displaying the version of Elixir/Erlang. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["mix.exs"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `style` | `"bold purple"` | The style for the module. |
| `format` | `'via [$symbol($version \(OTP $otp_version\) )]($style)'` | The format for the module elixir. |
| `disabled` | `false` | Disables the `elixir` module. |
### Variables
@ -859,7 +865,7 @@ symbol = "🔮 "
## Elm
The `elm` module shows the currently installed version of Elm. By default the module will be shown if any of the following conditions are met:
The `elm` module shows the currently installed version of [Elm](https://elm-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `elm.json` file
- The current directory contains a `elm-package.json` file
@ -870,8 +876,9 @@ The `elm` module shows the currently installed version of Elm. By default the mo
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------- | ----------------------------------------------- |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌳 "` | A format string representing the symbol of Elm. |
| `detect_extensions` | `["elm"]` | Which extensions should trigger this module. |
| `detect_files` | `["elm.json", "elm-package.json", ".elm-version"]` | Which filenames should trigger this module. |
@ -937,7 +944,7 @@ default = "unknown shell"
## Erlang
The `erlang` module shows the currently installed version of Erlang/OTP. By default the module will be shown if any of the following conditions are met:
The `erlang` module shows the currently installed version of [Erlang/OTP](https://erlang.org/doc/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `rebar.config` file.
- The current directory contains a `erlang.mk` file.
@ -945,13 +952,14 @@ The `erlang` module shows the currently installed version of Erlang/OTP. By defa
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | The symbol used before displaying the version of erlang. |
| `style` | `"bold red"` | The style for the module. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["rebar.config", "elang.mk"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `erlang` module. |
### Variables
@ -980,8 +988,8 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Options
| Option | Default | Description |
| ---------------- | ------------------------------------------------ | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(\($region\))]($style) '` | The format for the module. |
| ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------- |
| `format` | `'on [$symbol$account(@$domain)(\($region\))]($style) '` | The format for the module. |
| `symbol` | `"☁️ "` | The symbol used before displaying the current GCP profile. |
| `region_aliases` | | Table of region aliases to display in addition to the GCP name. |
| `style` | `"bold blue"` | The style for the module. |
@ -990,9 +998,10 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
### Variables
| Variable | Example | Description |
| --------- | ----------------- | ------------------------------------------------------------------ |
| --------- | ------------- | ------------------------------------------------------------------ |
| region | `us-central1` | The current GCP region |
| account | `foo@example.com` | The current GCP profile |
| account | `foo` | The current GCP profile |
| domain | `example.com` | The current GCP profile domain |
| project | | The current GCP project |
| active | `default` | The active config name written in `~/.config/gcloud/active_config` |
| symbol | | Mirrors the value of option `symbol` |
@ -1008,7 +1017,7 @@ The `gcloud` module shows the current configuration for [`gcloud`](https://cloud
# ~/.config/starship.toml
[gcloud]
format = 'on [$symbol$account(\($project\))]($style) '
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
```
#### Display active config name only
@ -1233,7 +1242,7 @@ behind = "⇣${count}"
## Golang
The `golang` module shows the currently installed version of Golang. By default the module will be shown if any of the following conditions are met:
The `golang` module shows the currently installed version of [Golang](https://golang.org/). By default 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
@ -1247,8 +1256,9 @@ The `golang` module shows the currently installed version of Golang. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------- |
| ------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐹 "` | A format string representing the symbol of Go. |
| `detect_extensions` | `["go"]` | Which extensions should trigger this module. |
| `detect_files` | `["go.mod", "go.sum", "glide.yaml", "Gopkg.yml", "Gopkg.lock", ".go-version"]` | Which filenames should trigger this module. |
@ -1277,7 +1287,7 @@ format = "via [🏎💨 $version](bold cyan) "
## Helm
The `helm` module shows the currently installed version of Helm. By default the module will be shown if any of the following conditions are met:
The `helm` module shows the currently installed version of [Helm](https://helm.sh/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `helmfile.yaml` file
- The current directory contains a `Chart.yaml` file
@ -1285,8 +1295,9 @@ The `helm` module shows the currently installed version of Helm. By default the
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["helmfile.yaml", "Chart.yaml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1350,7 +1361,7 @@ disabled = false
## Java
The `java` module shows the currently installed version of Java. By default the module will be shown if any of the following conditions are met:
The `java` module shows the currently installed version of [Java](https://www.oracle.com/java/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `pom.xml`, `build.gradle.kts`, `build.sbt`, `.java-version`, `.deps.edn`, `project.clj`, or `build.boot` file
- The current directory contains a file with the `.java`, `.class`, `.gradle`, `.jar`, `.clj`, or `.cljc` extension
@ -1429,7 +1440,7 @@ threshold = 4
## Julia
The `julia` module shows the currently installed version of Julia. By default the module will be shown if any of the following conditions are met:
The `julia` module shows the currently installed version of [Julia](https://julialang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Project.toml` file
- The current directory contains a `Manifest.toml` file
@ -1438,8 +1449,9 @@ The `julia` module shows the currently installed version of Julia. By default th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["jl"]` | Which extensions should trigger this module. |
| `detect_files` | `["Project.toml", "Manifest.toml"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1468,7 +1480,7 @@ symbol = "∴ "
## Kotlin
The `kotlin` module shows the currently installed version of Kotlin. By default the module will be shown if any of the following conditions are met:
The `kotlin` module shows the currently installed version of [Kotlin](https://kotlinlang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.kt` or a `.kts` file
@ -1477,6 +1489,7 @@ The `kotlin` module shows the currently installed version of Kotlin. By default
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["kt", "kts"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this modules. |
@ -1514,7 +1527,7 @@ kotlin_binary = "kotlinc"
## 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`.
Displays the current [Kubernetes context](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/#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`.
::: tip
@ -1576,7 +1589,7 @@ disabled = true
## Lua
The `lua` module shows the currently installed version of Lua. By default the module will be shown if any of the following conditions are met:
The `lua` module shows the currently installed version of [Lua](http://www.lua.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `.lua-version` file
- The current directory contains a `lua` directory
@ -1587,6 +1600,7 @@ The `lua` module shows the currently installed version of Lua. By default the mo
| Option | Default | Description |
| ------------------- | ------------------------------------ | -------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🌙 "` | A format string representing the symbol of Lua. |
| `detect_extensions` | `["lua"]` | Which extensions should trigger this module. |
| `detect_files` | `[".lua-version"]` | Which filenames should trigger this module. |
@ -1699,7 +1713,7 @@ truncation_symbol = ""
## Nim
The `nim` module shows the currently installed version of Nim. By default the module will be shown if any of the following conditions are met:
The `nim` module shows the currently installed version of [Nim](https://nim-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `nim.cfg` file
- The current directory contains a file with the `.nim` extension
@ -1709,8 +1723,9 @@ The `nim` module shows the currently installed version of Nim. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"👑 "` | The symbol used before displaying the version of Nim. |
| `detect_extensions` | `["nim", "nims", "nimble"]` | Which extensions should trigger this module. |
| `detect_files` | `["nim.cfg"]` | Which filenames should trigger this module. |
@ -1740,7 +1755,7 @@ symbol = "🎣 "
## Nix-shell
The `nix_shell` module shows the nix-shell environment. The module will be shown when inside a nix-shell environment.
The `nix_shell` module shows the [nix-shell](https://nixos.org/guides/nix-pills/developing-with-nix-shell.html) environment. The module will be shown when inside a nix-shell environment.
### Options
@ -1776,9 +1791,9 @@ pure_msg = "[pure shell](bold green)"
format = 'via [☃️ $state( \($name\))](bold blue) '
```
## NodeJS
## Node.js
The `nodejs` module shows the currently installed version of NodeJS. By default the module will be shown if any of the following conditions are met:
The `nodejs` module shows the currently installed version of [Node.js](https://nodejs.org/). By default 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-version` file
@ -1790,16 +1805,16 @@ The `nodejs` module shows the currently installed version of NodeJS. By default
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------- |
| ------------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `" "` | A format string representing the symbol of NodeJS. |
| `symbol` | `" "` | A format string representing the symbol of Node.js. |
| `detect_extensions` | `["js", "mjs", "cjs", "ts"]` | Which extensions should trigger this module. |
| `detect_files` | `["package.json", ".node-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `["node_modules"]` | Which folders should trigger this module. |
| `style` | `"bold green"` | The style for the module. |
| `disabled` | `false` | Disables the `nodejs` module. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the NodeJS version. |
| `not_capable_style` | `bold red` | The style for the module when an engines property in package.json does not match the Node.js version. |
### Variables
@ -1822,7 +1837,7 @@ format = "via [🤖 $version](bold green) "
## OCaml
The `ocaml` module shows the currently installed version of OCaml. By default the module will be shown if any of the following conditions are met:
The `ocaml` module shows the currently installed version of [OCaml](https://ocaml.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a file with `.opam` extension or `_opam` directory
- The current directory contains a `esy.lock` directory
@ -1834,8 +1849,9 @@ The `ocaml` module shows the currently installed version of OCaml. By default th
### Options
| Option | Default | Description |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------- |
| ------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)"` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐫 "` | The symbol used before displaying the version of OCaml. |
| `global_switch_indicator` | `""` | The format string used to represent global OPAM switch. |
| `local_switch_indicator` | `"*"` | The format string used to represent local OPAM switch. |
@ -1905,16 +1921,16 @@ symbol = "☁️ "
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`, `poetry`, `composer`, `gradle`, `julia`, `mix` and `helm` 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
- **composer** The `composer` package version is extracted from the `composer.json` present in the current directory
- **gradle** The `gradle` package version is extracted from the `build.gradle` present
- **julia** - The package version is extracted from the `Project.toml` present
- **mix** - The `mix` package version is extracted from the `mix.exs` present
- **helm** - The `helm` chart version is extracted from the `Chart.yaml` present
- **maven** - The `maven` package version is extracted from the `pom.xml` present
- **meson** - The `meson` package version is extracted from the `meson.build` present
- [**npm**](https://docs.npmjs.com/cli/commands/npm) The `npm` package version is extracted from the `package.json` present in the current directory
- [**cargo**](https://doc.rust-lang.org/cargo/) The `cargo` package version is extracted from the `Cargo.toml` present in the current directory
- [**poetry**](https://python-poetry.org/) The `poetry` package version is extracted from the `pyproject.toml` present in the current directory
- [**composer**](https://getcomposer.org/) The `composer` package version is extracted from the `composer.json` present in the current directory
- [**gradle**](https://gradle.org/) The `gradle` package version is extracted from the `build.gradle` present
- [**julia**](https://docs.julialang.org/en/v1/stdlib/Pkg/) - The package version is extracted from the `Project.toml` present
- [**mix**](https://hexdocs.pm/mix/) - The `mix` package version is extracted from the `mix.exs` present
- [**helm**](https://helm.sh/docs/helm/helm_package/) - The `helm` chart version is extracted from the `Chart.yaml` present
- [**maven**](https://maven.apache.org/) - The `maven` package version is extracted from the `pom.xml` present
- [**meson**](https://mesonbuild.com/) - The `meson` package version is extracted from the `meson.build` present
> ⚠️ The version being shown is that of the package whose source code is in your current directory, not your package manager.
@ -1949,7 +1965,7 @@ format = "via [🎁 $version](208 bold) "
## Perl
The `perl` module shows the currently installed version of Perl. By default the module will be shown if any of the following conditions are met:
The `perl` module shows the currently installed version of [Perl](https://www.perl.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Makefile.PL` or `Build.PL` file
- The current directory contains a `cpanfile` or `cpanfile.snapshot` file
@ -1959,15 +1975,16 @@ The `perl` module shows the currently installed version of Perl. By default the
### Options
| Option | Default | Description |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. |
| `detect_folders` | `[]` | Which folders should trigger this module. |
| `style` | `"bold 149"` | The style for the module. |
| `disabled` | `false` | Disables the `perl` module. |
| Option | Default | Description | **** |
| ------------------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ---- |
| `format` | `"via [$symbol($version )]($style)"` | The format string for the module. | |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` | |
| `symbol` | `"🐪 "` | The symbol used before displaying the version of Perl | |
| `detect_extensions` | `["pl", "pm", "pod"]` | Which extensions should trigger this module. | |
| `detect_files` | `["Makefile.PL", "Build.PL", "cpanfile", "cpanfile.snapshot", "META.json", "META.yml", ".perl-version"]` | Which filenames should trigger this module. | |
| `detect_folders` | `[]` | Which folders should trigger this module. | |
| `style` | `"bold 149"` | The style for the module. | |
| `disabled` | `false` | Disables the `perl` module. | |
### Variables
@ -1988,7 +2005,7 @@ format = "via [🦪 $version]($style) "
## PHP
The `php` module shows the currently installed version of PHP. By default the module will be shown if any of the following conditions are met:
The `php` module shows the currently installed version of [PHP](https://www.php.net/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `composer.json` file
- The current directory contains a `.php-version` file
@ -1997,8 +2014,9 @@ The `php` module shows the currently installed version of PHP. By default the mo
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐘 "` | The symbol used before displaying the version of PHP. |
| `detect_extensions` | `["php"]` | Which extensions should trigger this module. |
| `detect_files` | `["composer.json", ".php-version"]` | Which filenames should trigger this module. |
@ -2027,7 +2045,7 @@ format = "via [🔹 $version](147 bold) "
## PureScript
The `purescript` module shows the currently installed version of PureScript version. By default the module will be shown if any of the following conditions are met:
The `purescript` module shows the currently installed version of [PureScript](https://www.purescript.org/) version. By default the module will be shown if any of the following conditions are met:
- The current directory contains a `spago.dhall` file
- The current directory contains a file with the `.purs` extension
@ -2035,8 +2053,9 @@ The `purescript` module shows the currently installed version of PureScript vers
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"<=> "` | The symbol used before displaying the version of PureScript. |
| `detect_extensions` | `["purs"]` | Which extensions should trigger this module. |
| `detect_files` | `["spago.dhall"]` | Which filenames should trigger this module. |
@ -2065,7 +2084,7 @@ format = "via [$symbol$version](bold white)"
## Python
The `python` module shows the currently installed version of Python and the current Python virtual environment if one is activated.
The `python` module shows the currently installed version of [Python](https://www.python.org/) and the current [Python virtual environment](https://docs.python.org/tutorial/venv.html) if one is activated.
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`.
@ -2092,7 +2111,7 @@ By default the module will be shown if any of the following conditions are met:
| `pyenv_version_name` | `false` | Use pyenv to get Python version |
| `pyenv_prefix` | `pyenv` | Prefix before pyenv version display, only used if pyenv is used |
| `python_binary` | `["python", "python3, "python2"]` | Configures the python binaries that Starship should executes when getting the version. |
| `detect_extensions` | `[".py"]` | Which extensions should trigger this module |
| `detect_extensions` | `["py"]` | Which extensions should trigger this module |
| `detect_files` | `[".python-version", "Pipfile", "__init__.py", "pyproject.toml", "requirements.txt", "setup.py", "tox.ini"]` | Which filenames should trigger this module |
| `detect_folders` | `[]` | Which folders should trigger this module |
| `disabled` | `false` | Disables the `python` module. |
@ -2143,7 +2162,7 @@ detect_extensions = []
## Red
By default the `red` module shows the currently installed version of Red. The module will be shown if any of the following conditions are met:
By default the `red` module shows the currently installed version of [Red](https://www.red-lang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a file with `.red` or `.reds` extension
@ -2181,7 +2200,7 @@ symbol = "🔴 "
## Ruby
By default the `ruby` module shows the currently installed version of Ruby. The module will be shown if any of the following conditions are met:
By default the `ruby` module shows the currently installed version of [Ruby](https://www.ruby-lang.org/). 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 `.ruby-version` file
@ -2221,7 +2240,7 @@ symbol = "🔺 "
## Rust
By default the `rust` module shows the currently installed version of Rust. The module will be shown if any of the following conditions are met:
By default the `rust` module shows the currently installed version of [Rust](https://www.rust-lang.org/). 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
@ -2260,7 +2279,7 @@ format = "via [⚙️ $version](red bold)"
## Scala
The `scala` module shows the currently installed version of Scala. By default the module will be shown if any of the following conditions are met:
The `scala` module shows the currently installed version of [Scala](https://www.scala-lang.org/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `build.sbt`, `.scalaenv` or `.sbtenv` file
- The current directory contains a file with the `.scala` or `.sbt` extension
@ -2269,8 +2288,9 @@ The `scala` module shows the currently installed version of Scala. By default th
### Options
| Option | Default | Description |
| ------------------- | ---------------------------------------- | ------------------------------------------------- |
| ------------------- | ---------------------------------------- | ------------------------------------------------------------------------- |
| `format` | `"via [${symbol}(${version} )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `detect_extensions` | `["sbt", "scala"]` | Which extensions should trigger this module. |
| `detect_files` | `[".scalaenv", ".sbtenv", "build.sbt"]` | Which filenames should trigger this module. |
| `detect_folders` | `[".metals"]` | Which folders should trigger this modules. |
@ -2310,7 +2330,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
### Options
| Option | Default | Description |
| ---------------------- | ------------ | --------------------------------------------- |
| ---------------------- | ------------ | ------------------------------------------------------------ |
| `bash_indicator` | `bsh` | A format string used to represent bash. |
| `fish_indicator` | `fsh` | A format string used to represent fish. |
| `zsh_indicator` | `zsh` | A format string used to represent zsh. |
@ -2318,6 +2338,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
| `ion_indicator` | `ion` | A format string used to represent ion. |
| `elvish_indicator` | `esh` | A format string used to represent elvish. |
| `tcsh_indicator` | `tsh` | A format string used to represent tcsh. |
| `unknown_indicator` | | The default value to be displayed when the shell is unknown. |
| `format` | `$indicator` | The format for the module. |
| `disabled` | `true` | Disables the `shell` module. |
@ -2335,6 +2356,7 @@ This module is disabled by default. To enable it, set `disabled` to `false` in y
[shell]
fish_indicator = ""
powershell_indicator = "_"
unknown_indicator = "mystery shell"
disabled = false
```
@ -2376,7 +2398,7 @@ threshold = 3
## Singularity
The `singularity` module shows the current singularity image, if inside a container and `$SINGULARITY_NAME` is set.
The `singularity` module shows the current [Singularity](https://sylabs.io/singularity/) image, if inside a container and `$SINGULARITY_NAME` is set.
### Options
@ -2391,7 +2413,7 @@ The `singularity` module shows the current singularity image, if inside a contai
| Variable | Example | Description |
| --------- | ------------ | ------------------------------------ |
| env | `centos.img` | The current singularity image |
| env | `centos.img` | The current Singularity image |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2465,7 +2487,7 @@ disabled = false
## Swift
By default the `swift` module shows the currently installed version of Swift. The module will be shown if any of the following conditions are met:
By default the `swift` module shows the currently installed version of [Swift](https://swift.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `Package.swift` file
- The current directory contains a file with the `.swift` extension
@ -2473,8 +2495,9 @@ By default the `swift` module shows the currently installed version of Swift. Th
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ------------------------------------------------ |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"🐦 "` | A format string representing the symbol of Swift |
| `detect_extensions` | `["swift"]` | Which extensions should trigger this module. |
| `detect_files` | `["Package.swift"]` | Which filenames should trigger this module. |
@ -2503,11 +2526,11 @@ format = "via [🏎 $version](red bold)"
## Terraform
The `terraform` module shows the currently selected terraform workspace and version.
The `terraform` module shows the currently selected [Terraform workspace](https://www.terraform.io/docs/language/state/workspaces.html) and version.
::: tip
By default the terraform version is not shown, since this is slow for current versions of terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-version).
By default the Terraform version is not shown, since this is slow for current versions of Terraform when a lot of plugins are in use. If you still want to enable it, [follow the example shown below](#with-terraform-version).
:::
@ -2519,8 +2542,9 @@ By default the module will be shown if any of the following conditions are met:
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol$workspace]($style) "` | The format string for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"💠"` | A format string shown before the terraform workspace. |
| `detect_extensions` | `["tf", "hcl"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |
@ -2533,7 +2557,7 @@ By default the module will be shown if any of the following conditions are met:
| Variable | Example | Description |
| --------- | ---------- | ------------------------------------ |
| version | `v0.12.24` | The version of `terraform` |
| workspace | `default` | The current terraform workspace |
| workspace | `default` | The current Terraform workspace |
| symbol | | Mirrors the value of option `symbol` |
| style\* | | Mirrors the value of option `style` |
@ -2541,7 +2565,7 @@ By default the module will be shown if any of the following conditions are met:
### Example
#### With Version
#### With Terraform Version
```toml
# ~/.config/starship.toml
@ -2550,7 +2574,7 @@ By default the module will be shown if any of the following conditions are met:
format = "[🏎💨 $version$workspace]($style) "
```
#### Without version
#### Without Terraform version
```toml
# ~/.config/starship.toml
@ -2652,15 +2676,16 @@ show_always = true
## Vagrant
The `vagrant` module shows the currently installed version of Vagrant. By default the module will be shown if any of the following conditions are met:
The `vagrant` module shows the currently installed version of [Vagrant](https://www.vagrantup.com/). By default the module will be shown if any of the following conditions are met:
- The current directory contains a `Vagrantfile` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | --------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"⍱ "` | A format string representing the symbol of Vagrant. |
| `detect_extensions` | `[]` | Which extensions should trigger this module. |
| `detect_files` | `["Vagrantfile"]` | Which filenames should trigger this module. |
@ -2689,7 +2714,7 @@ format = "via [⍱ $version](bold white) "
## VCSH
The `vcsh` module displays the current active VCSH repository. The module will be shown only if a repository is currently in use.
The `vcsh` module displays the current active [VCSH](https://github.com/RichiH/vcsh) repository. The module will be shown only if a repository is currently in use.
### Options
@ -2721,17 +2746,18 @@ format = "[🆅 $repo](bold blue) "
## Zig
By default the the `zig` module shows the currently installed version of Zig. The module will be shown if any of the following conditions are met:
By default the the `zig` module shows the currently installed version of [Zig](https://ziglang.org/). The module will be shown if any of the following conditions are met:
- The current directory contains a `.zig` file
### Options
| Option | Default | Description |
| ------------------- | ------------------------------------ | ----------------------------------------------------- |
| ------------------- | ------------------------------------ | ------------------------------------------------------------------------- |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `version_format` | `v{raw}` | The version format. Available vars are `raw`, `major`, `minor`, & `patch` |
| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. |
| `style` | `"bold yellow"` | The style for the module. |
| `format` | `"via [$symbol($version )]($style)"` | The format for the module. |
| `disabled` | `false` | Disables the `zig` module. |
| `detect_extensions` | `["zig"]` | Which extensions should trigger this module. |
| `detect_files` | `[]` | Which filenames should trigger this module. |

View File

@ -141,7 +141,7 @@
## 🚀 Installation
### Prerequisites
### Ön koşullar
- 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)).

View File

@ -32,7 +32,7 @@ description: Starship là prompt nhỏ, cực nhanh, và khả năng tuỳ biế
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.
### Quick Install
### Cài đặt nhanh chóng
1. Cài đặt **starship** nhị phân:

View File

@ -81,7 +81,7 @@ Chuỗi kiểu là một danh sách các từ, được phân cách bởi khoả
- `<color>`
- `none`
`<color>` là một nơi quy định màu (được bàn luận ở phía dưới). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. The order of words in the string does not matter.
`<color>` là một nơi quy định màu (được bàn luận ở phía dưới). `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. Thứ tự các từ trong chuỗi là không quan trọng.
Từ mã `none` ghi đè tất cả các từ mã khác trong chuỗi nếu nó không là một phần của `bg:` specifier, vậy nên `fg:red none fg:blue` sẽ vẫn tạo một chuỗi mà không có kiểu. `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`. Nó có thể trở thành một lỗi để sử dụng `none` trong việc kết hợp với các từ mã khác trong tương lai.

File diff suppressed because it is too large Load Diff

View File

@ -32,7 +32,7 @@ description: Starship is the minimal, blazing fast, and extremely customizable p
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.
### Quick Install
### 快速安装
1. 安装 **starship** 二进制文件:

View File

@ -81,7 +81,7 @@ starship_precmd_user_func="set_win_title"
- `<color>`
- `none`
`<color>` 是颜色说明符(下面解释)。 `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. The order of words in the string does not matter.
`<color>` 是颜色说明符(下面解释)。 `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. 字符串中的单词顺序不影响显示结果。
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`. 未来可能会将 `none` 与其它标识符一起使用视为一种错误。

File diff suppressed because it is too large Load Diff

View File

@ -1,16 +1,16 @@
# 常见问题
## 主页 GIF 示例中的效果用的是什么配置?
## 主页示例中的效果用的是什么配置?
- **终端模拟器**[iTerm2](https://iterm2.com/)
- **主题**Minimal
- **颜色方案**[Snazzy](https://github.com/sindresorhus/iterm2-snazzy)
- **Font**: [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)
- **字体**[Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)
- **Shell**[Fish Shell](https://fishshell.com/)
- **fish 配置**[matchai's Dotfiles](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
- **提示符工具**[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).
@ -62,10 +62,10 @@ If you see symbols that you don't recognise you can use `starship explain` to ex
## 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:
最常见的原因是系统配置有问题。 有个别Linux发行版不自带对字体的支持。 请确保:
- 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.
- 安装了 emoji 字体。 大部分系统都会自带 emoji 字体,但有些系统(例如 Arch Linux则没有。 字体一般可以用系统的包管理器安装,常见的字体有 [Noto emoji](https://www.google.com/get/noto/help/emoji/) 等。
- You are using a [Nerd Font](https://www.nerdfonts.com/).
To test your system, run the following commands in a terminal:
@ -75,20 +75,20 @@ 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).
第一行应该显示出一个[蛇的 emoji](https://emojipedia.org/snake/),第二行应该显示出 [powerline 的分支符号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
Starship is just as easy to uninstall as it is to install in the first place.
Starship 的卸载过程与安装过程一样简单。
1. Remove any lines in your shell config (e.g. `~/.bashrc`) used to initialize Starship.
1. Delete the Starship binary.
1. 将 shell 的配置文件(比如 `~/.bashrc`)中初始化 Starship 的部分全部删除。
1. 删除 Starship 的二进制文件。
If Starship was installed using a package manager, please refer to their docs for uninstallation instructions.
如果 Starship 是用包管理器安装的,请到包管理器的文档中查找卸载的步骤。
If Starship was installed using the install script, the following command will delete the binary:
如果 Starship 是用安装脚本安装的,可以用以下命令删除二进制文件:
```sh
# Locate and delete the starship binary

View File

@ -1,11 +1,11 @@
# 🚀 Advanced Installation
# 🚀 高级安装
To install starship, you need to do two things:
安装Starship有以下两个步骤
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
1. 下载 **starship** 的可执行文件
1. 修改 shell 的初始化脚本,让 starship 显示命令提示符
For most users, the instructions on [the main page](/guide/#🚀-installation) will work great. However, for some more specialized platforms, different instructions are needed.
大部分用户按照[主页](/guide/#🚀-installation)上的步骤安装即可, 但有一些特殊系统上的安装步骤不同。
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!
@ -13,9 +13,9 @@ There are so many platforms out there that they didn't fit into the main README.
### 前置要求
Head over to the [Chocolatey installation page](https://chocolatey.org/install) and follow the instructions to install Chocolatey.
按照 [Chocolatey 安装页面](https://chocolatey.org/install)上的步骤安装 Chocolatey。
### Installation
### 安装
```powershell
choco install starship
@ -29,7 +29,7 @@ choco install starship
pkg install getconf
```
### Installation
### 安装
```sh
sh -c "$(curl -fsSL https://starship.rs/install.sh)" -- --bin-dir /data/data/com.termux/files/usr/bin

View File

@ -32,7 +32,7 @@ description: Starship 是適合任何 shell 的最小、極速、高度客製化
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal.
### Quick Install
### 快速安裝
1. 安裝 **starship** 執行檔:

View File

@ -81,7 +81,7 @@ starship_precmd_user_func="set_win_title"
- `<color>`
- `none`
其中 `<color>` 是指定顏色用的(下面解釋)。 `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. The order of words in the string does not matter.
其中 `<color>` 是指定顏色用的(下面解釋)。 `fg:<color>` and `<color>` currently do the same thing, though this may change in the future. `inverted` swaps the background and foreground colors. 單詞在字串中的順序不重要。
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`. 未來可能會將 `none` 與其他符號一起使用的情形視為是一種錯誤。

File diff suppressed because it is too large Load Diff