Skip to content

Налаштування ​

Щоб почати налаштування starship, створіть наступний файл: ~/.config/starship.toml.

sh
mkdir -p ~/.config && touch ~/.config/starship.toml

Всі налаштування для starship виконуються в цьому TOML файлі:

toml
# Отримання автозавершення вводу команд з config-schema.json
"$schema" = 'https://starship.rs/config-schema.json'

# Додавати порожні рядки між командними рядками
add_newline = true

# Заміняти символ '❯' в командному рядку на символ  '➜'
[character] # Назва модуля, який ми налаштовуємо – 'character'
success_symbol = '[➜](bold green)' # Частина 'success_symbol' буде використовувати символ '➜' підсвічений значенням 'bold green'

# Вимкнути модуль package, повністю приховавши його в командному рядку
[package]
disabled = true

Розташування файлу налаштувань ​

Ви можете змінити типове розташування файлу налаштувань за допомогою змінної середовища STARSHIP_CONFIG:

sh
export STARSHIP_CONFIG=~/example/non/default/path/starship.toml

Так само і в PowerShell (Windows), можна додати цей рядок до $PROFILE:

powershell
$ENV:STARSHIP_CONFIG = "$HOME\example\non\default\path\starship.toml"

Або для Cmd (Windows), додайте рядок до вашого файлу starship.lua:

lua
os.setenv('STARSHIP_CONFIG', 'C:\\Users\\user\\example\\non\\default\\path\\starship.toml')

Ведення журналу ​

Стандартно starship виводить попередження та інформацію про помилки у файл ~/.cache/starship/session_${STARSHIP_SESSION_KEY}.log, де ключ сесії відповідає екземпляру вашого термінала. Це, однак, може бути змінено за допомогою змінної середовища STARSHIP_CACHE:

sh
export STARSHIP_CACHE=~/.starship/cache

Так само і в PowerShell (Windows), можна додати цей рядок до $PROFILE:

powershell
$ENV:STARSHIP_CACHE = "$HOME\AppData\Local\Temp"

Або для Cmd (Windows), додайте рядок до вашого файлу starship.lua:

lua
os.setenv('STARSHIP_CACHE', 'C:\\Users\\user\\AppData\\Local\\Temp')

Термінологія ​

Модуль: Компонент командного рядка, що надає інформацію на основі контексту з вашої ОС. Наприклад, модуль "nodejs" показує версію Node.js, яка встановлена на вашому компʼютері, якщо ваша поточна тека є проєктом Node.js.

Змінна: менші субкомпоненти, що містять інформацію, що надається модулем. Наприклад, змінна "version" в модулі "nodejs" містить поточну версію Node.js.

Згідно з правилами, більшість модулів мають префікс стандартного кольору термінала (наприклад, via в "nodejs") та порожнє місце як суфікс.

Рядки ​

В синтаксисі TOML текстові значення оголошуються за допомогою лапок ', ", ''', or """.

Наступні символи синтаксису Starship мають спеціальне призначення у форматуванні рядків і повинні бути екрановані, якщо ви хочете показувати їх як символи: $ [ ] ( ).

СимволТипПримітки
'літералменш екранований
"рядокбільш екранований
'''багаторядковий літералменш екранований
"""багаторядковий рядокбільш екранований, нові рядки в оголошеннях можуть бути проігноровані

Наприклад:

toml
# літерал
format = '☺\☻ '

# звичайний рядок
format = "☺\\☻ "

# екрановані службові символи Starship
format = '\[\$\] '

При використанні символів розриву рядків можна використовувати багаторядкові оголошення. Наприклад, якщо ви хочете вивести символ $ на новий рядок, такі значення для format є еквівалентними:

toml
# для літералів
format = '''

\$'''

# для звичайних багаторядкових рядків
format = """

\\$"""

# для звичайних рядків
format = "\n\\$"

У звичайних рядках, символ нового рядка можна використовувати наступним чином, щоб уникнути його показу.

toml
format = """
line1\
line1\
line1
line2\
line2\
line2
"""

Формат рядків ​

Формат рядків це формат, з яким модуль виводить всі змінні. У більшості модулів є запис з назвою format, який налаштовує формат виводу модуля. Можна використовувати текст, змінні та текстові групи у форматуванні рядків.

Змінна ​

Змінна починається з символу $, за яким йде назва змінної. Назва змінною може складатись лише з літер та цифр та символу _.

Наприклад:

  • '$version – це форматований рядок зі змінною з назвою version.
  • $git_branch$git_commit' – рядок з двома змінними git_branch і git_commit.
  • '$git_branch $git_commit' має дві змінні, розділені пробілом.

Текстова група ​

Текстова група складається з двох різних частин.

Перша частина, яка вкладена у квадратні дужки [] — це форматований рядок. Ви можете додати текст, змінні або навіть вкладені текстові групи.

В наступній частині, що вкладена в круглі дужки (), міститься опис стилю рядка. Ця частина використовується для стилізації першої частини.

Наприклад:

  • '[on](red bold)' – виведе рядок on жирним шрифтом підсвічений червоним.
  • '[⌘ $version](bold green)' – виведе символ ⌘ разом з вмістом змінної version жирним шрифтом підсвіченим зеленим.
  • '[a [b](red) c](green)' – виведе a b c, де b – червона, а a та c – зелені.

Рядки стилів ​

Більшість модулів в starship дозволяють вам налаштовувати стилі їх виводу. Це робиться за допомогою запису (зазвичай style), який є рядком, що вказує на конфігурацію. Ось деякі приклади стилів поряд з тим, що вони роблять. За деталями щодо повного синтаксису зверніться до Довідника з розширеного налаштування.

  • 'fg:green bg:blue' – зелений текст на блакитному фоні
  • 'bg:blue fg:bright-green' – яскраво зелений текст на блакитному фоні
  • 'bold fg:27' – жирний текст з ANSI кольором 27
  • 'underline bg:#bf5700' – підкреслений текст на яскраво помаранчевому фоні
  • 'bold italic fg:purple' – жирний курсив пурпурового кольору
  • '' – явним чином вимикає всі стилі

Зверніть увагу, що те, як виглядатиме стиль, як буде залежати від вашого емулятора термінала. Наприклад, деякі емулятори терміналів будуть виділяти кольори замість показу жирного тексту, а також деякі кольорові теми використовують однакові значення для нормального і яскравого кольорів. Також, щоб отримати курсив, ваш термінал має містити його підтримку.

Умовне форматування ​

Рядок з умовним форматуванням, огорнутий в круглі дужки ( та ), не буде показуватись якщо змінні в середині не містять значень.

Наприклад:

  • '(@$region)' – не буде показуватись, якщо змінна region дорівнює None чи є порожнім рядком, в іншому випадку вона буде показана разом з @, за яким йде значення регіону.
  • '(якийсь текст)' ніколи не буде показуватись, через те, що немає змінних, загорнутих в дужки.
  • Коли $combined є посиланням для \[$a$b\], '($combined)' не показуватиме нічого, лише якщо $a і $b одночасно містять None. Це працює так само й для '(\[$a$b\] )'.

Негативний збіг ​

Багато модулів мають змінні detect_extensions, detect_files та detect_folders. Вони отримують перелік рядків для порівняння, чи в них є збіги, чи – немає. Символ для перевірки "негативного збігу" (негативний збіг – те що не має мати збігу з вказаним значенням) – '!' знак оклику, вказується на початку параметра, що перевіряється. Наявність будь-якого індикатора негативного збігу в теці призведе до того, що результат роботи модуля буде перевірятись на негативний збіг.

Розширення зіставляються як із символами після останньої крапки в назві файлу, так і з символами після першої крапки в назві файлу. Наприклад, foo.bar.tar.gz буде збігатись з bar.tar.gz і gz у змінній detect_extensions. Файли, назва яких починається з крапки, взагалі не вважаються такими, що мають розширення.

Щоб побачити, як це працює на практиці, ви можете шукати збіг для файлів TypeScript, але не для MPEG Transport Stream, таким чином:

toml
detect_extensions = ['ts', '!video.ts', '!audio.ts']

Командний рядок ​

Це перелік параметрів налаштувань, що використовуються для всього командного рядка.

Параметри ​

ПараметрСтандартноОпис
formatlinkНалаштовує формат командного рядка.
right_format''Дивіться Увімкнути вивід праворуч
scan_timeout30Тайм-аут для сканування файлів (у мілісекундах).
command_timeout500Тайм-аут для команд, виконаних starship (у мілісекундах).
add_newlinetrueВставити порожній рядок між командними рядками в оболонці.
palette''Встановлює кольорову палітру використовуючи palettes.
palettes{}Збірка колірних палітр, які прив’язують кольори до імен, визначених користувачем. Зверніть увагу, що кольорові палітри не можуть посилатися на їх власні визначення кольору.
follow_symlinkstrueПеревіряти символічні посилання чи вони посилаються на теки; використовується в таких модулях як git.

Порада Якщо у вас є символічні посилання до мережевих файлових систем, встановіть `follow_symlinks` у `false`.

Приклад ​

toml
# ~/.config/starship.toml

# Використовуємо власний формат
format = '''
[┌───────────────────>](bold green)
[│](bold green)$directory$rust$package
[└─>](bold green) '''

# Чекаємо 10 мілісекунд, поки starship перевірить файли в поточній теці.
scan_timeout = 10

# Не додавати порожній рядок на початку командного рядка
add_newline = false

# Встановлює власну кольорову палітру 'foo'
palette = 'foo'

# Визначає власні кольори
[palettes.foo]
# Перевизначає наявний колір
blue = '21'
# Визначає новий колір
mustard = '#af8700'

Стандартний формат командного рядка ​

Стандартне значення змінної format використовується для визначення вигляду командного рядка, якщо вона пуста або змінна format відсутня. Стандартне значення є таким, як зазначено нижче:

toml
format = '$all'

# Є еквівалентом до
format = """
$username\
$hostname\
$localip\
$shlvl\
$singularity\
$kubernetes\
$nats\
$directory\
$vcsh\
$fossil_branch\
$fossil_metrics\
$git_branch\
$git_commit\
$git_state\
$git_metrics\
$git_status\
$hg_branch\
$hg_state\
$pijul_channel\
$docker_context\
$package\
$bun\
$c\
$cmake\
$cobol\
$cpp\
$daml\
$dart\
$deno\
$dotnet\
$elixir\
$elm\
$erlang\
$fennel\
$fortran\
$gleam\
$golang\
$gradle\
$haskell\
$haxe\
$helm\
$java\
$julia\
$kotlin\
$lua\
$maven\
$mojo\
$nim\
$nodejs\
$ocaml\
$odin\
$opa\
$perl\
$php\
$pulumi\
$purescript\
$python\
$quarto\
$raku\
$rlang\
$red\
$ruby\
$rust\
$scala\
$solidity\
$swift\
$terraform\
$typst\
$vlang\
$vagrant\
$xmake\
$zig\
$buf\
$guix_shell\
$nix_shell\
$conda\
$pixi\
$meson\
$spack\
$memory_usage\
$aws\
$gcloud\
$openstack\
$azure\
$direnv\
$env_var\
$mise\
$crystal\
$custom\
$sudo\
$cmd_duration\
$line_break\
$jobs\
$battery\
$time\
$status\
$container\
$netns\
$os\
$shell\
$character"""

Якщо ви просто хочете розширити стандартний формат, можете використовувати $all; модулі, які ви явно додали до формату, не будуть подвоєні. Напр.

toml
# Перемістити назву теки на другий рядок
format = '$all$directory$character'

AWS ​

Модуль aws показує поточний регіон AWS і профіль, а також час, що залишився до кінця сесії при використанні тимчасових облікових даних. Для виводу модуль використовує змінні AWS_REGION, AWS_DEFAULT_REGION і AWS_PROFILE та файли ~/.aws/config і ~/.aws/credentials, коли треба.

Модуль показуватиме профіль якщо облікові дані знаходяться в ~/.aws/credentials або коли credential_process, sso_start_url, чи sso_session визначені в ~/.aws/config. Крім того, достатньо буде визначити будь-яку змінну AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY або AWS_SESSION_TOKEN. Якщо для параметра force_display встановлено значення true, уся доступна інформація буде показуватись, навіть якщо не буде виявлено жодних облікових даних відповідно до наведених вище умов.

Під час використання aws-vault профіль зчитується зі змінної AWS_VAULT, а дата закінчення терміну дії облікових даних зчитується зі змінної AWS_SESSION_EXPIRATION.

Під час використання awsu профіль читається зі змінної AWSU_PROFILE.

Під час використання AWSume профіль зчитується зі змінної AWSUME_PROFILE, а дата закінчення терміну дії облікових даних зчитується зі змінної AWSUME_EXPIRATION.

Під час використання saml2aws інформація про закінчення терміну дії, отримана з ~/.aws/credentials, повертається до ключа x_security_token_expires.

Під час використання aws-sso-cli профіль читається зі змінної AWS_SSO_PROFILE.

Параметри ​

ПараметрСтандартноОпис
format'on [$symbol($profile )(\($region\) )(\[$duration\] )]($style)'Формат модуля.
symbol'☁️ 'Символ, який використовується під час показу перед поточним профілем AWS.
region_aliases{}Таблиця псевдонімів регіону для показу на додачу до назви AWS.
profile_aliases{}Таблиця псевдонімів профілю для показу на додачу до назви AWS.
style'bold yellow'Стиль модуля.
expiration_symbol'X'Символ, який показується, коли закінчився термін дії тимчасових облікових даних.
disabledfalseВимикає модуль AWS.
force_displayfalseЯкщо true, інформація показується, навіть якщо credentials, credential_process або sso_start_url не вказано.

Змінні ​

ЗміннаПрикладОпис
regionap-northeast-1Поточний регіон AWS
profileastronautsПоточний профіль AWS
duration2h27m20sТермін дії тимчасових облікових даних
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклади ​

Показати все ​

toml
# ~/.config/starship.toml

[aws]
format = 'on [$symbol($profile )(\($region\) )]($style)'
style = 'bold blue'
symbol = '🅰 '
[aws.region_aliases]
ap-southeast-2 = 'au'
us-east-1 = 'va'
[aws.profile_aliases]
CompanyGroupFrobozzOnCallAccess = 'Frobozz'

Показати регіон ​

toml
# ~/.config/starship.toml

[aws]
format = 'on [$symbol$region]($style) '
style = 'bold blue'
symbol = '🅰 '
[aws.region_aliases]
ap-southeast-2 = 'au'
us-east-1 = 'va'

Показати профіль ​

toml
# ~/.config/starship.toml

[aws]
format = 'on [$symbol$profile]($style) '
style = 'bold blue'
symbol = '🅰 '
[aws.profile_aliases]
Enterprise_Naming_Scheme-voidstars = 'void**'

Azure ​

Модуль azure показує поточну підписку Azure. Інформація заснована на назві стандартної підписки або імені користувача, як визначено у файлі ~/.azure/azureProfile.json.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ЗміннаСтандартноОпис
format'on [$symbol($subscription)]($style) 'Формат для модуля Azure.
symbol'󰠅 'Символ, який використовується.
style'blue bold'Стиль, який використовується.
disabledtrueВимикає модуль azure.
subscription_aliases{}Таблиця псевдонімів підписки для показу на додачу до назви підписки Azure.

Приклади ​

Показ назви підписки ​

toml
# ~/.config/starship.toml

[azure]
disabled = false
format = 'on [$symbol($subscription)]($style) '
symbol = '󰠅 '
style = 'blue bold'

Показ імені користувача ​

toml
# ~/.config/starship.toml

[azure]
disabled = false
format = "on [$symbol($username)]($style) "
symbol = "󰠅 "
style = "blue bold"

Показ псевдонімів підписки ​

toml
# ~/.config/starship.toml

[azure.subscription_aliases]
very-long-subscription-name = 'vlsn'

Battery ​

Модуль battery показує наскільки заряджена батарея пристрою і стан заряджання. Модуль показується лише тоді, коли заряд акумулятора пристрою нижче 10%.

Параметри ​

ПараметрСтандартноОпис
full_symbol'󰁹 'Символ, повного заряду батареї.
charging_symbol'󰂄 'Символ процесу заряджання.
discharging_symbol'󰂃 'Символ, коли батарея розряджається.
unknown_symbol'󰂑 'Символ, коли стан батареї невідомий.
empty_symbol'󰂎 'Символ повністю розрядженої батареї.
format'[$symbol$percentage]($style) 'Формат модуля.
displaylinkГраничні значення і стиль модуля.
disabledfalseВимикає модуль battery.

Приклад ​

toml
# ~/.config/starship.toml

[battery]
full_symbol = '🔋 '
charging_symbol = '⚡️ '
discharging_symbol = '💀 '

Показ модуля Battery ​

Параметр конфігурації display використовується для визначення, коли має показуватись індикатор заряду батареї (threshold), який символ використовуватиметься (symbol) і як він виглядає (style). Якщо параметр display не встановлено. Стандартне значення є таким, як зазначено нижче:

toml
[[battery.display]]
threshold = 10
style = 'bold red'

Типові значення для опції charging_symbol і discharging_symbol є відповідно типовими значеннями параметрів charging_symbol та discharging_symbol батареї.

Параметри ​

Параметр display є масивом з наступної таблиці.

ПараметрСтандартноОпис
threshold10Верхня межа для параметра.
style'red bold'Стиль, який використовується, якщо параметр використовується.
charging_symbolНеобов'язковий символ, що показується якщо параметр display використовується, стандартно використовується параметр charging_symbol.
discharging_symbolНеобов'язковий символ, що показується якщо параметр display використовується, стандартно використовується параметр discharging_symbol.

Приклад ​

toml
[[battery.display]] # стиль 'bold red' та discharging_symbol, якщо заряд між 0% та 10%
threshold = 10
style = 'bold red'

[[battery.display]] # стиль 'bold yellow' та символ 💦, якщо заряд між 10% та 30%
threshold = 30
style = 'bold yellow'
discharging_symbol = '💦'

# якщо рівень заряду понад 30%, індикатор заряду не показується

Buf ​

Модуль buf показує поточну встановлену версію Buf. Зазвичай, модуль показується якщо поточна тека містить файл конфігурації buf.yaml, buf.gen.yaml або buf.work.yaml.

Параметри ​

ПараметрСтандартноОпис
format'with [$symbol($version )]($style)'Формат для модуля buf.
version_format'v${raw}'Формат версії.
symbol'🐃 'Символ, який знаходиться перед версією Buf.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['buf.yaml', 'buf.gen.yaml', 'buf.work.yaml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold blue'Стиль модуля.
disabledfalseВимкнути модуль elixir.

Змінні ​

ЗміннаПрикладОпис
versionv1.0.0Версія buf
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[buf]
symbol = '🦬 '

Bun ​

Модуль bun показує поточну встановлену версію рушія JavaScript — bun. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл bun.lock
  • Поточна тека містить файл bun.lockb
  • Поточна тека містить файл bunfig.toml

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🥟 'Формат рядка, що представляє символ Bun.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['bun.lock', 'bun.lockb', 'bunfig.toml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold red'Стиль модуля.
disabledfalseВимикає модуль bun.

Змінні ​

ЗміннаПрикладОпис
versionv0.1.4Версія bun
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

Налаштуйте формат ​

toml
# ~/.config/starship.toml

[bun]
format = 'via [🍔 $version](bold green) '

C ​

Модуль c показує інформацію про ваш C компілятор. Зазвичай модуль буде показаний, якщо поточна тека містить файли .c чи .h.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version(-$name) )]($style)'Формат рядка модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'C 'Символ, який знаходиться перед інформацією про компілятор
detect_extensions['c', 'h']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
commands[ [ 'cc', '--version' ], [ 'gcc', '--version' ], [ 'clang', '--version' ] ]Як виявити компілятор
style'bold 149'Стиль модуля.
disabledfalseВимикає модуль c.

Змінні ​

ЗміннаПрикладОпис
nameclangНазва компілятора
version13.0.0Версія компілятора
symbolВіддзеркалює значення параметра symbol
styleВіддзеркалює значення параметра style

Команди ​

Параметр commands отримує список команд для визначення версії та назви компілятора.

Кожна команда представлена списком, який складається з назви виконавчого файлу та аргументів, зазвичай ['mycc', '--version']. Starship спробує виконати кожну команду, поки не отримає результат в STDOUT.

Якщо C-компілятор не підтримується цим модулем, ви можете зробити запит на GitHub.

Приклад ​

toml
# ~/.config/starship.toml

[c]
format = 'via [$name $version]($style)'

CPP ​

Модуль cpp показує інформацію про ваш компілятор C++. Стандартно модуль буде показаний, якщо поточна тека містить файли .cpp, .hpp, або інші файли повїязані з C++.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version(-$name) )]($style)'Формат рядка модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'C++ 'Символ, який знаходиться перед інформацією про компілятор
detect_extensions['cpp', 'cc', 'cxx', 'c++', 'hpp', 'hh', 'hxx', 'h++', 'tcc']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
commands[ [ 'c++', '--version' ], [ 'g++', '--version' ], [ 'clang++', '--version' ] ]Як виявити компілятор
style'bold 149'Стиль модуля.
disabledtrueВимикає модуль cpp.

Змінні ​

ЗміннаПрикладОпис
nameclang++Назва компілятора
version13.0.0Версія компілятора
symbolВіддзеркалює значення параметра symbol
styleВіддзеркалює значення параметра style

Команди ​

Параметр commands отримує список команд для визначення версії та назви компілятора.

Кожна команда представлена списком, який складається з назви виконавчого файлу та аргументів, зазвичай ['mycpp', '--version']. Starship спробує виконати кожну команду, поки не отримає результат в STDOUT.

Якщо компілятор C++ компілятор не підтримується цим модулем, ви можете зробити запит на GitHub.

Приклад ​

toml
# ~/.config/starship.toml

[cpp]
disabled = false
format = 'via [$name $version]($style)'

Character ​

Модуль character показує символ (зазвичай стрілку) поруч з текстом, який вводиться в терміналі.

Символ підкаже вам, чи була остання команда успішною, чи ні. Це можна зробити двома способами:

  • зміною кольору (red/green)
  • зміною символу (❯/✖)

Стандартно відбувається зміна кольору. Якщо ви також хочете змінювати й символ, подивитися на цей приклад.

Попередження

vimcmd_symbol підтримується лише у cmd, fish та zsh. vimcmd_replace_one_symbol, vimcmd_replace_symbol та vimcmd_visual_symbol підтримуються лише у fish через проблеми з виявленням режиму в zsh на рівні вихідного коду.

Параметри ​

ПараметрСтандартноОпис
format'$symbol 'Формат рядка, що знаходиться перед введенням тексту.
success_symbol'[❯](bold green)'Формат рядка, що знаходиться перед введенням тексту, якщо попередня команда була успішно виконана.
error_symbol'[❯](bold red)'Формат рядка, що знаходиться перед введенням тексту, якщо попередня команда не була успішно виконана.
vimcmd_symbol'[❮](bold green)'Формат рядка, що знаходиться перед введенням тексту, якщо оболонка перебуває у звичайному режимі vim.
vimcmd_replace_one_symbol'[❮](bold purple)'Формат рядка, що знаходиться перед введенням тексту, якщо оболонка перебуває у режимі vim replace_one.
vimcmd_replace_symbol'[❮](bold purple)'Формат рядка, що знаходиться перед введенням тексту, якщо оболонка перебуває у режимі заміни vim.
vimcmd_visual_symbol'[❮](bold yellow)'Формат рядка, що знаходиться перед введенням тексту, якщо оболонка перебуває у візуальному режимі vim.
disabledfalseВимикає модуль character.

Змінні ​

ЗміннаПрикладОпис
symbolВіддзеркалює значення success_symbol, error_symbol, vimcmd_symbol або vimcmd_replace_one_symbol і подібне.

Приклади ​

З власним значком помилки ​

toml
# ~/.config/starship.toml

[character]
success_symbol = '[➜](bold green) '
error_symbol = '[✗](bold red) '

Без власного значка помилки ​

toml
# ~/.config/starship.toml

[character]
success_symbol = '[➜](bold green) '
error_symbol = '[➜](bold red) '

Значок vim ​

toml
# ~/.config/starship.toml

[character]
vimcmd_symbol = '[V](bold green) '

CMake ​

Модуль cmake показує поточну встановлену версію CMake. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл CMakeLists.txt
  • Поточна тека містить файл CMakeCache.txt

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'△ 'Символ, який йде перед версією cmak.
detect_extensions[]Які розширення повинні запускати цей модуль
detect_files['CMakeLists.txt', 'CMakeCache.txt']Назви файлів, які активують модуль
detect_folders[]Назви тек, що активують модуль
style'bold blue'Стиль модуля.
disabledfalseВимикає модуль cmake.

Змінні ​

ЗміннаПрикладОпис
versionv3.17.3Версія cmake
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

COBOL / GNUCOBOL ​

Модуль cobol показує встановлену версію COBOL. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли .cob або .COB
  • Поточна тека містить файли .cbl або .CBL

Параметри ​

ПараметрСтандартноОпис
symbol'⚙️ 'Символ, який знаходиться перед версією COBOL.
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
style'bold blue'Стиль модуля.
detect_extensions['cbl', 'cob', 'CBL', 'COB']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
disabledfalseВимикає модуль cobol.

Змінні ​

ЗміннаПрикладОпис
versionv3.1.2.0Версія cobol
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Command Duration – час виконання ​

Модуль cmd_duration показує, скільки часу виконувалась остання команда. Модуль буде показаний лише в тому випадку, якщо на виконання команди пішло понад дві секунди або більше, ніж значення змінної min_time, якщо воно задане.

Попередження

Не перехоплюйте trap DEBUG у Bash

Якщо ви запускаєте Starship у bash, не вмикайте DEBUG trap після запуску eval $(starship init $0), бо цей модуль не працюватиме.

Користувачі Bash, яким потрібна функціональність, подібна до preexec, можуть скористатися фреймворком bash_preexec від rcaloras. Просто визначте масиви preexec_function і precmd_functions перед запуском eval $(starship init $0), а потім продовжуйте як зазвичай.

Параметри ​

ПараметрСтандартноОпис
min_time2_000Найменший час виконання для показу (в мілісекундах).
show_millisecondsfalseПоказувати мілісекунди на додачу для секунд.
format'took [$duration]($style) 'Формат модуля.
style'bold yellow'Стиль модуля.
disabledfalseВимикає модуль cmd_duration.
show_notificationsfalseПоказувати сповіщення на робочому столі після закінчення команди.
min_time_to_notify45_000Найменший час виконання для сповіщення (в мілісекундах).
notification_timeoutТривалість показу сповіщення (у мілісекундах). Якщо не налаштовано, час очікування сповіщень визначатиметься демоном. Не всі демони сповіщень підтримують цю опцію.

Змінні ​

ЗміннаПрикладОпис
duration16m40sЧас, витрачений на виконання команди
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[cmd_duration]
min_time = 500
format = 'underwent [$duration](bold yellow)'

Conda ​

Модуль conda показує інформацію про поточне оточення Conda, якщо змінна $CONDA_DEFAULT_ENV встановлена.

Порада

Це не пригнічує власний модифікатор підказки conda, ви можете виконати conda config --set changeps1 False. Якщо ви використовуєте pixi, ви можете відключити модифікатор запиту pixi, використовуючи pixi config set shell.change-ps1 false.

Параметри ​

ПараметрСтандартноОпис
truncation_length1Кількість тек, на які повинен бути скорочений шлях середовища, якщо середовище було створено за допомогою conda create -p [path]. 0 — означає без скорочення. Також дивіться модуль directory .
symbol'🅒 'Символ що передує назві оточення.
style'bold green'Стиль модуля.
format'via [$symbol$environment]($style) 'Формат модуля.
ignore_basetrueІгнорувати середовище base.
detect_env_vars["!PIXI_ENVIRONMENT_NAME"]Які змінні середовища повинні запускати цей модуль. Якщо це середовище pixi, цей модуль стандартно не запускається.
disabledfalseВимикає модуль conda.

Змінні ​

ЗміннаПрикладОпис
environmentastronautsПоточне середовище conda
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[conda]
format = '[$symbol$environment](dimmed green) '

Container ​

Модуль container показує символ та назву контейнера, коли ви перебуваєте в ньому.

Параметри ​

ПараметрСтандартноОпис
symbol'⬢'Символ, що показується під час перебування в контейнері
style'bold red dimmed'Стиль модуля.
format'[$symbol \[$name\]]($style) 'Формат модуля.
disabledfalseВимикає модуль container.

Змінні ​

ЗміннаПрикладОпис
namefedora-toolbox:35Назва контейнера
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[container]
format = '[$symbol \[$name\]]($style) '

Crystal ​

Модуль crystal показує поточну встановлену версію Crystal. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл shard.yml
  • Поточна тека містить файл .cr

Параметри ​

ПараметрСтандартноОпис
symbol'🔮 'Символ, який знаходиться перед версією crystal.
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
style'bold red'Стиль модуля.
detect_extensions['cr']Які розширення повинні запускати цей модуль.
detect_files['shard.yml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
disabledfalseВимикає модуль crystal.

Змінні ​

ЗміннаПрикладОпис
versionv0.32.1Версія crystal
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[crystal]
format = 'via [✨ $version](bold blue) '

Daml ​

Модуль daml показує поточну версію SDK Daml коли ви перебуваєте в кореневій теці проєкту Daml. sdk-version у файлі daml.yaml буде використовуватись, якщо значення не буде перевизначене змінною середовища DAML_SDK_VERSION. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл daml.yaml

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'Λ 'Формат рядка, що представляє символ Daml
style'bold cyan'Стиль модуля.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['daml.yaml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
disabledfalseВимикає модуль daml.

Змінні ​

ЗміннаПрикладОпис
versionv2.2.0Версія daml
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[daml]
format = 'via [D $version](bold bright-green) '

Dart ​

Модуль dart показує поточну встановлену версію Dart. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл .dart
  • Поточна тека містить файл .dart_tool
  • Поточна тека містить файли pubspec.yaml, pubspec.yml або pubspec.lock

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🎯 'Формат рядка, що представляє символ Dart
detect_extensions['dart']Які розширення повинні запускати цей модуль.
detect_files['pubspec.yaml', 'pubspec.yml', 'pubspec.lock']Які імена файлів мають запускати цей модуль.
detect_folders['.dart_tool']В яких теках цей модуль має запускатись.
style'bold blue'Стиль модуля.
disabledfalseВимикає модуль dart.

Змінні ​

ЗміннаПрикладОпис
versionv2.8.4Версія dart
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[dart]
format = 'via [🔰 $version](bold red) '

Deno ​

Модуль deno показує поточну встановлену версію Deno. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли deno.json, deno.jsonc, deno.lock, mod.ts, mod.js, deps.ts чи deps.js

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🦕 'Формат рядка, що представляє символ Deno
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['deno.json', 'deno.jsonc', 'deno.lock', 'mod.ts', 'mod.js', 'deps.ts', 'deps.js']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'green bold'Стиль модуля.
disabledfalseВимикає модуль deno.

Змінні ​

ЗміннаПрикладОпис
versionv1.8.3Версія deno
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

Приклад ​

toml
# ~/.config/starship.toml

[deno]
format = 'via [🦕 $version](green bold) '

Directory ​

Модуль directory показує шлях до поточної теки, урізаючи його до трьох останніх батьківських тек. Шлях до теки також буде скорочений до кореня git-репозиторію, в якому ви перебуваєте.

Якщо використовується параметр fish_style_pwd_dir_length, замість того, щоб приховувати скорочений шлях, ви побачите скорочену назву кожної теки в залежності від числа, яке ви вказали для цього параметра.

Наприклад, маємо ~/Dev/Nix/nixpkgs/pkgs де nixpkgs є коренем репозиторію, а параметр — 1. Ви побачите ~/D/N/nixpkgs/pkgs, тоді як до цього було nixpkgs/pkgs.

Параметри ​

ПараметрСтандартноОпис
truncation_length3Кількість батьківських тек, до яких слід скоротити шлях до поточної теку.
truncate_to_repotrueСкорочувати чи ні шлях до кореня git-репозиторію, коли ви перебуваєте в ньому.
format'[$path]($style)[$read_only]($read_only_style) 'Формат модуля.
style'bold cyan'Стиль модуля.
disabledfalseВимикає модуль directory.
read_only'🔒'Символ, який вказує, що поточна тека доступна лише для читання.
read_only_style'red'Стиль символу для елементів read only.
truncation_symbol''Символ на початку урізаних шляхів. напр: '…/'
before_repo_root_styleСтиль частини шляху, що передує кореню git-репозиторію. Стандартне значення дорівнює style.
repo_root_styleСтиль кореня git-репозиторію. Стандартне значення дорівнює style.
repo_root_format'[$before_root_path]($before_repo_root_style)[$repo_root]($repo_root_style)[$path]($style)[$read_only]($read_only_style) 'Формат git-репозиторію, коли задані before_repo_root_style та repo_root_style.
home_symbol'~'Символ, що позначає домашню теку.
use_os_path_septrueВикористовувати розділювач шляхів, що притаманній вашій OS, замість того, щоб завжди використовувати / (напр \ у Windows)
Цей модуль має декілька додаткових опцій, які контролюють показ шляхів до тек.
Додатковий параметрСтандартноОпис
substitutionsМасив або таблиця замін, які необхідно внести в шлях.
fish_style_pwd_dir_length0Кількість символів, які використовуються при застосуванні логіки шляху fish shell pwd.
use_logical_pathtrueЯкщо true показувати логічний шлях оболонки через PWD або --logical-path. Якщо false — показувати шлях фізичної файлової системи з розвʼязанням шляхів для символічних посилань.

substitutions дозволяє визначити довільні заміни літеральних рядків, що зустрічаються в шляху, наприклад, довгі префікси мережі або теки розробки в Java. Зауважте, що це відключить стиль fish у PWD. Приймається масив наступних пар ключ/значення:

ЗначенняТипОпис
fromStringЗначення для заміни
toStringЗаміна цього значення, якщо знайдено
regexBoolean(Опціонально) Чи є from регулярним виразом

Використовуючи regex = true, ви можете використовувати регулярні вирази Rust у from. Наприклад, ви можете замінити кожну косу риску, окрім першої за допомогою:

toml
substitutions = [
  { from = "^/", to = "<root>/", regex = true },
  { from = "/", to = " | " },
  { from = "^<root>", to = "/", regex = true },
]

Це замінить /var/log на / | var | log.

Старий синтаксис все ще працює, хоча він не підтримує регулярні вирази:

toml
[directory.substitutions]
'/Volumes/network/path' = '/net'
'src/com/long/java/path' = 'mypath'

fish_style_pwd_dir_length взаємодіє зі стандартними опціями скорочення, по-перше, що може бути дивним, якщо значення не нуль, замість цього будуть показуватись компоненти шляху, які звичайно скорочені, зі вказаною кількістю символів. Наприклад, шлях /built/this/city/on/rock/and/roll, який зазвичай показуватиметься як rock/and/roll, буде показаний як /b/t/c/o/rock/and/roll з fish_style_pwd_dir_length = 1 — шлях компонентів, які зазвичай вилучаються, показуються одним символом. Для fish_style_pwd_dir_length = 2 це буде /bu/th/ci/on/rock/and/roll.

Змінні ​

ЗміннаПрикладОпис
path'D:/Projects'Поточний шлях до теки
style*'black bold dimmed'Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Git-репозиторії мають додаткові змінні.

Розгляньмо шлях /path/to/home/git_repo/src/lib

ЗміннаПрикладОпис
before_root_path≠Шлях до кореневої теки git
repo_root'git_repo'Назва кореневої теки git
path'/src/lib'Залишок шляху
style'black bold dimmed'Віддзеркалює значення параметра style
repo_root_style'underline white'Стиль кореневої теки git

Приклад ​

toml
# ~/.config/starship.toml

[directory]
truncation_length = 8
truncation_symbol = '…/'

Direnv ​

Модуль direnv показує статус rc-файла якщо він існує. Статус включає: шлях до файлу rc, чи він завантажений та, чи direnv дозволяє його використання.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
format'[$symbol$loaded/$allowed]($style) 'Формат модуля.
symbol'direnv 'Символ, що показується перед direnv context.
style'bold orange'Стиль модуля.
disabledtrueВимикає модуль direnv.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['.envrc']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
detect_env_vars['DIRENV_FILE']Які змінні середовища повинні запускати цей модуль.
allowed_msg'allowed'Повідомлення, що показується коли використання rc-файлу дозволене.
not_allowed_msg'not allowed'Повідомлення, що показується коли використання rc-файлу заборонене.
denied_msg'denied'Повідомлення, що показується коли використання rc-файлу заборонене.
loaded_msg'loaded'Повідомлення, що показується коли rc-файл завантажений.
unloaded_msg'not loaded'Повідомлення, що показується коли rc-файл не завантажений.

Змінні ​

ЗміннаПрикладОпис
loadedloadedЧи завантажений rc-файл.
alloweddeniedЧи дозволене використання rc-файлу.
rc_path/home/test/.envrcШлях до rc-файлу.
symbolВіддзеркалює значення параметра symbol.
style*red boldВіддзеркалює значення параметра style.

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[direnv]
disabled = false

Docker Context ​

Модуль docker_context показує поточний Docker context якщо його не встановлено у default чи desktop-linux, або якщо змінні середовища DOCKER_MACHINE_NAME, DOCKER_HOST або DOCKER_CONTEXT встановлені (оскільки вони призначені для перевизначення контексту).

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol$context]($style) 'Формат модуля.
symbol'🐳 'Символ, який знаходиться перед Docker context.
only_with_filestrueПоказувати, лише коли є збіг
detect_extensions[]Які розширення мають запускати цей модуль (потрібно щоб в only_with_files було true).
detect_files['compose.yml', 'compose.yaml', 'docker-compose.yml', 'docker-compose.yaml', 'Dockerfile']Які імена файлів мають запускати цей модуль (потрібно щоб в only_with_files було true).
detect_folders[]Які теки мають запускати цей модуль (потрібно щоб в only_with_files було true).
style'blue bold'Стиль модуля.
disabledfalseВимикає модуль docker_context.

Змінні ​

ЗміннаПрикладОпис
contexttest_contextПоточний docker context
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[docker_context]
format = 'via [🐋 $context](blue bold)'

Dotnet ​

Модуль dotnet показує відповідну версію .NET Core SDK для поточної теки. Якщо SDK закріплена в поточній теці, показується закріплена версія. В іншому випадку модуль покаже останню встановлену версію SDK.

Стандартно модуль буде показаний в командному рядку, коли в теці присутні один чи більше наступних файлів:

  • global.json
  • project.json
  • Directory.Build.props
  • Directory.Build.targets
  • Packages.props
  • *.csproj
  • *.fsproj
  • *.xproj

Вам також знадобиться .NET Core SDK, встановлений для того, щоб використовувати його правильно.

Всередині, цей модуль використовує власний механізм для виявлення версій. Як правило, він удвічі швидший ніж запуск dotnet --version, але він може показувати некоректну версію, якщо ваш проєкт .NET має незвичайне розташування тек. Якщо точність важливіша за швидкість, ви можете вимкнути механізм встановивши heuristic = false в налаштуваннях модуля.

Модуль також показуватиме Target Framework Monamework (https://docs.microsoft.com/en-us/dotnet/standard/frameworks#supported-target-frameworks), коли у поточній теці є файл .csproj.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )(🎯 $tfm )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'.NET 'Символ, який знаходиться перед версією dotnet.
heuristictrueВикористовувати швидший алгоритм визначення версії, щоб ваш starship залишався швидким.
detect_extensions['csproj', 'fsproj', 'xproj']Які розширення повинні запускати цей модуль.
detect_files['global.json', 'project.json', 'Directory.Build.props', 'Directory.Build.targets', 'Packages.props']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold blue'Стиль модуля.
disabledfalseВимикає модуль dotnet.

Змінні ​

ЗміннаПрикладОпис
versionv3.1.201Версія dotnet sdk
tfmnetstandard2.0Псевдонім Target Framework, на який націлено поточний проєкт
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[dotnet]
symbol = '🥅 '
style = 'green'
heuristic = false

Elixir ​

Модуль elixir показує поточну встановлену версію Elixir та Erlang/OTP. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл mix.exs.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version \(OTP $otp_version\) )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'💧 'Символ, який знаходиться перед версією Elixir/Erlang.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['mix.exs']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold purple'Стиль модуля.
disabledfalseВимикає модуль elixir.

Змінні ​

ЗміннаПрикладОпис
versionv1.10Версія elixir
otp_versionВерсія otp elixir
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[elixir]
symbol = '🔮 '

Elm ​

Модуль elm показує поточну встановлену версію Elm. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл elm.json
  • Поточна тека містить файл elm-package.json
  • Поточна тека містить файл .elm-version
  • Поточна тека містить файл elm-stuff
  • The current directory contains .elm files

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🌳 'Формат рядка, що представляє символ Elm.
detect_extensions['elm']Які розширення повинні запускати цей модуль.
detect_files['elm.json', 'elm-package.json', '.elm-version']Які імена файлів мають запускати цей модуль.
detect_folders['elm-stuff']В яких теках цей модуль має запускатись.
style'cyan bold'Стиль модуля.
disabledfalseВимикає модуль elm.

Змінні ​

ЗміннаПрикладОпис
versionv0.19.1Версія elm
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[elm]
format = 'via [ $version](cyan bold) '

Environment Variable ​

Модуль env_var показує поточне значення обраних змінних середовища. Модуль показується, якщо виконується будь-яка з наступних умов:

  • Параметр variable відповідає наявній змінній середовища
  • Параметр variable не визначено, але є параметр default

Порада

Порядок показу модулів env_var можна встановити індивідуально, включивши ${env_var.foo} у format верхнього рівня (оскільки він містить крапку, потрібно використовувати ${...}). Типово, модуль env_var покаже усі модулі env_var, в тому порядку, в якому вони були визначені.

Порада

Кілька змінних середовища можна відобразити за допомогою .. (див. приклад) Якщо параметр конфігурації variable не встановлено, модуль показуватиме значення змінної під назвою тексту після символу '.'.

Приклад: наступна конфігурація показуватиме значення змінної середовища USER

toml

# ~/.config/starship.toml

[env_var.USER] default = 'unknown user' ```

Параметри ​

ПараметрСтандартноОпис
symbol""Символ, який знаходиться перед значенням variable.
зміннаЗмінна середовища для показу.
стандартноСтандартне значення буде показане, якщо змінні для показу не визначені.
format"with [$symbol$env_value]($style) "Формат модуля.
опис"<env_var module>"Опис модуля, який показується під час запуску starship explain.
disabledfalseВимикає модуль env_var.
style"black bold dimmed"Стиль модуля.

Змінні ​

ЗміннаПрикладОпис
env_valueWindows NT (якщо variable буде $OS)Значення змінної оточення з параметра variable
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[env_var]
variable = 'SHELL'
default = 'unknown shell'

Показ кількох змінних оточення:

toml
# ~/.config/starship.toml

[env_var.SHELL]
variable = 'SHELL'
default = 'unknown shell'
[env_var.USER]
default = 'unknown user'

Erlang ​

Модуль erlang показує поточну встановлену версію Erlang/OTP. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл rebar.config.
  • Поточна тека містить файл erlang.mk.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol' 'Символ, який знаходиться перед версією erlang.
style'bold red'Стиль модуля.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['rebar.config', 'elang.mk']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
disabledfalseВимикає модуль erlang.

Змінні ​

ЗміннаПрикладОпис
versionv22.1.3Версія erlang
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[erlang]
format = 'via [e $version](bold red) '

Fennel ​

Модуль fennel показує поточну встановлену версію Fennel](https://fennel-lang.org). Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл .fnl

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🧅 'Символ, який знаходиться перед версією fennel.
style'bold green'Стиль модуля.
detect_extensions['fnl']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
disabledfalseВимикає модуль fennel.

Змінні ​

ЗміннаПрикладОпис
versionv1.2.1Версія fennel
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[fennel]
symbol = '⫰ '

Fill ​

Модуль fill заповнює простір в рядку вказаним символом. Якщо використовується кілька модулів fill, вони можуть заповнювати рядок рівномірно розподіляючи його довжину між собою. Це корисно для форматування інших модулів.

Параметри ​

ПараметрСтандартноОпис
symbol'.'Символ, який використовується для заповнення рядка.
style'bold black'Стиль модуля.
disabledfalseВимикає модуль fill

Приклад ​

toml
# ~/.config/starship.toml
format = 'AA $fill BB $fill CC'

[fill]
symbol = '-'
style = 'bold green'

Створить рядок, що виглядатиме наступним чином:

AA -------------------------------------------- BB -------------------------------------------- CC

Fortran ​

Модуль fortran показує поточну встановлену версію Fortran.

Параметри ​

ПараметрСтандартноОпис
symbol' 'Символ, який знаходиться перед версією Fortran.
format'via [$symbol($version )]($style)'Формат модуля.
version_format'${raw}'Формат версії. Доступні змінні raw, major, minor та patch
style'bold purple'Стиль модуля.
detect_extensions['f', 'F', 'for', 'FOR', 'ftn', 'FTN', 'f77', 'F77', 'f90', 'F90', 'f95', 'F95','f03', 'F03', 'f08', 'F08', 'f18', 'F18']Які розширення повинні запускати цей модуль.
detect_files['fpm.toml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
commands[ [ 'gfortran', '--version' ], [ 'flang', '--version' ], [ 'flang-new', '--version' ] ]Як виявити компілятор
disabledfalseВимикає модуль fortran.

Змінні ​

ЗміннаПрикладОпис
namegfortranНазва компілятора
version14.2.0Версія компілятора Fortran
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Команди ​

Параметр commands отримує список команд для визначення версії та назви компілятора.

Кожна команда представлена списком, який складається з назви виконавчого файлу та аргументів, зазвичай ['myfortran', '--version']. Starship спробує виконати кожну команду, поки не отримає результат в STDOUT.

Якщо компілятор Fortran не підтримується цим модулем, ви можете зробити запит на GitHub.

Fossil Branch ​

Модуль fossil_branch показує назву активної гілки у вашій поточній теці.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
format'on [$symbol$branch]($style) 'Формат модуля. Використовуйте '$branch 'для посилання на поточну гілку.
symbol' 'Символ, що використовується перед назвою гілки у вашій поточній теці.
style'bold purple'Стиль модуля.
truncation_length2^63 - 1Скорочує назву гілки Fossil до N графем
truncation_symbol'…'Символ, що використовується для позначення назви гілки, яка була скорочена. Ви можете використовувати '', щоб нічого не показувати.
disabledtrueВимикає модуль fossil_branch.

Змінні ​

ЗміннаПрикладОпис
branchtrunkПоточна гілка Fossil
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[fossil_branch]
symbol = '🦎 '
truncation_length = 4
truncation_symbol = ''

Fossil Metrics ​

Модуль fossil_metrics покаже кількість доданих та видалених рядків у поточній теці. Потрібна версія Fossil не нижче v2.14 (2021-01-20).

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
format'([+$added]($added_style) )([-$deleted]($deleted_style) )'Формат модуля.
added_style'bold green'Стиль для показу кількості доданих рядків.
deleted_style'bold red'Стиль для показу кількості видалених рядків.
only_nonzero_diffstrueПоказувати стан лише для змінених елементів.
disabledtrueВимикає модуль fossil_metrics.

Змінні ​

ЗміннаПрикладОпис
added1Поточна кількість доданих рядків
deleted2Поточна кількість видалених рядків
added_style*Віддзеркалює значення параметра added_style
deleted_style*Віддзеркалює значення параметра deleted_style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[fossil_metrics]
added_style = 'bold blue'
format = '[+$added]($added_style)/[-$deleted]($deleted_style) '

Google Cloud (gcloud) ​

Модуль gcloud показує поточну конфігурацію для gcloud CLI. Він базується на файлі ~/.config/gcloud/active_config та на ~/.config/gcloud/configurations/config_{CONFIG NAME} і на змінній середовища CLOUDSDK_CONFIG. Змінні середовища CLOUDSDK_CORE_PROJECT та CLOUDSDK_COMPUTE_REGION, якщо вони встановлені, замінюють значення project та region з активної конфігурації, повторюючи поведінку самого gcloud.

Коли модуль увімкнено, він завжди буде активним, якщо не встановлено параметр detect_env_vars, в такому випадку модуль буде активним лише коли буде встановлено одну зі змінних середовища.

Параметри ​

ПараметрСтандартноОпис
format'on [$symbol$account(@$domain)(\($region\))]($style) 'Формат модуля.
symbol'☁️ 'Символ, який використовується під час показу перед поточним профілем GCP.
region_aliases{}Таблиця псевдонімів регіону для показу на додачу до назви GCP.
project_aliases{}Таблиця псевдонімів проєкту для показу на додачу до назви GCP.
detect_env_vars[]Які змінні середовища повинні запускати цей модуль
style'bold blue'Стиль модуля.
disabledfalseВимикає модуль gcloud.

Змінні ​

ЗміннаПрикладОпис
regionus-central1Поточний регіон GCP
accountfooПоточний профіль GCP
domainexample.comПоточний домен профілю GCP
projectПоточний проєкт GCP
activeстандартноНазва активної конфігурації з ~/.config/gcloud/active_config
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклади ​

Показувати обліковий запис та проєкт ​

toml
# ~/.config/starship.toml

[gcloud]
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '

Показувати тільки назву активної конфігурації ​

toml
# ~/.config/starship.toml

[gcloud]
format = '[$symbol$active]($style) '
style = 'bold yellow'

Показувати обліковий запис та псевдо регіону ​

toml
# ~/.config/starship.toml

[gcloud]
symbol = '️🇬️ '
[gcloud.region_aliases]
us-central1 = 'uc1'
asia-northeast1 = 'an1'

Показувати обліковий запис та псевдо проєкту ​

toml
# ~/.config/starship.toml

[gcloud]
format = 'on [$symbol$account(@$domain)(\($project\))]($style) '
[gcloud.project_aliases]
very-long-project-name = 'vlpn'

Git Branch ​

Модуль git_branch показує активну гілку репозиторію у вашій поточній теці.

Параметри ​

ПараметрСтандартноОпис
always_show_remotefalseПоказує назву віддаленої відстежуваної гілки, навіть якщо вона збігається з назвою локальної гілки.
format'on [$symbol$branch(:$remote_branch)]($style) 'Формат модуля. Використовуйте '$branch 'для посилання на поточну гілку.
symbol' 'Формат рядка, що представляє символ гілки git.
style'bold purple'Стиль модуля.
truncation_length2^63 - 1Скорочує назву гілки git до N графем.
truncation_symbol'…'Символ, що використовується для позначення назви гілки, яка була скорочена. Ви можете використовувати '', щоб нічого не показувати.
only_attachedfalseПоказувати назву гілки тільки коли вона не у відʼєднаному від HEAD стані.
ignore_branches[]Перелік назв, які не треба показувати. Корисно для 'master' або 'main'.
ignore_bare_repofalseНе показувати, коли в голих репозиторіях.
disabledfalseВимикає модуль git_branch.

Змінні ​

ЗміннаПрикладОпис
branchmasterНазва поточної гілки, показується HEAD, якщо зараз немає поточної гілки (напр. git detached HEAD).
remote_nameoriginНазва віддаленої гілки.
remote_branchmasterНазва гілки, що відстежується у remote_name.
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[git_branch]
symbol = '🌱 '
truncation_length = 4
truncation_symbol = ''
ignore_branches = ['master', 'main']

Git Commit ​

Модуль git_commit показує поточний хеш коміту, а також теґ (якщо він є) репозиторію у вашій поточній теці.

Параметри ​

ПараметрСтандартноОпис
commit_hash_length7Довжина хешу коміта.
format'[\($hash$tag\)]($style) 'Формат модуля.
style'bold green'Стиль модуля.
only_detachedtrueПоказувати хеш коміту тільки коли HEAD у відʼєднаному стані
tag_disabledtrueВимикає показ теґів в модулі git_commit.
tag_max_candidates0Впродовж скількох комітів показувати теґ. Стандартно дозволяється тільки безпосередній збіг.
tag_symbol' 🏷 'Символ теґу
disabledfalseВимикає модуль git_commit.

Змінні ​

ЗміннаПрикладОпис
hashb703eb3Хэш коміту git
tagv1.0.0Назва теґу, якщо увімкнено показ інформації про теґ.
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[git_commit]
commit_hash_length = 4
tag_symbol = '🔖 '

Git State ​

Модуль git_state показується в теках, які є частиною репозиторію git, під час виконання операцій на зразок REBASING, BISECTING тощо. Якщо є інформація про прогрес (наприклад, REBASING 3/10), ця інформація також буде показана.

Параметри ​

ПараметрСтандартноОпис
rebase'REBASING'Формат рядка під час процесу rebase.
merge'MERGING'Формат рядка під час процесу merge.
revert'REVERTING'Формат рядка під час процесу revert.
cherry_pick'CHERRY-PICKING'Формат рядка під час процесу cherry-pick.
bisect'BISECTING'Формат рядка під час процесу bisect.
am'AM'Формат рядка під час процесу apply-mailbox (git am).
am_or_rebase'AM/REBASE'Формат рядка під час процесу apply-mailbox або rebase.
style'bold yellow'Стиль модуля.
format'\([$state( $progress_current/$progress_total)]($style)\) 'Формат модуля.
disabledfalseВимикає модуль git_state.

Змінні ​

ЗміннаПрикладОпис
stateREBASINGПоточний стан репозиторію
progress_current1Прогрес поточної операції
progress_total2Загальний прогрес операції
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[git_state]
format = '[\($state( $progress_current of $progress_total)\)]($style) '
cherry_pick = '[🍒 PICKING](bold red)'

Git Metrics ​

Модуль git_metrics покаже кількість доданих та видалених рядків у поточному репозиторії git.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
added_style'bold green'Стиль для показу кількості доданих рядків.
deleted_style'bold red'Стиль для показу кількості видалених рядків.
only_nonzero_diffstrueПоказувати стан лише для змінених елементів.
format'([+$added]($added_style) )([-$deleted]($deleted_style) )'Формат модуля.
disabledtrueВимикає модуль git_metrics.
ignore_submodulesfalseІгнорувати зміни в субмодулях

Змінні ​

ЗміннаПрикладОпис
added1Поточна кількість доданих рядків
deleted2Поточна кількість видалених рядків
added_style*Віддзеркалює значення параметра added_style
deleted_style*Віддзеркалює значення параметра deleted_style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[git_metrics]
added_style = 'bold blue'
format = '[+$added]($added_style)/[-$deleted]($deleted_style) '

Git Status ​

Модуль git_status показує символ, що описує стан репозиторію в поточній теці.

Порада

Модуль Git Status працює дуже повільно у теках Windows (наприклад, у теках /mnt/c/) у середовищі WSL. Ви можете вимкнути модуль або використати windows_starship для використання Windows-версії Starship для тримання git_status для цих шляхів.

Параметри ​

ПараметрСтандартноОпис
format'([\[$all_status$ahead_behind\]]($style) )'Стандартний формат git_status
conflicted'='Формат, що показується, коли у цій гілці виникають конфлікти злиття.
ahead'⇡'Формат, що показується, коли ця гілка випереджає гілку, що відстежується.
behind'⇣'Формат, що показується, коли ця гілка позаду гілки, що відстежується.
diverged'⇕'Формат, що показується, коли ця гілка відхиляється гілки, що відстежується.
up_to_date''Формат, що показується, коли ця гілка відповідає гілці, що відстежується.
untracked'?'Формат, що показується, коли в робочій теці є невідстежувані файли.
stashed'\$'Формат, що показується, коли для локального репозиторію існує stash.
modified'!'Формат, що показується при змінах у файлах у робочій теці.
staged'+'Формат, що показується, коли до stage додано новий файл.
renamed'»'Формат, що показується, коли до stage додано перейменований файл.
deleted'✘'Формат, що показується, коли до stage додано вилучений файл.
typechanged""Формат, що показується, коли до stage додано файл зі зміненим типом.
style'bold red'Стиль модуля.
ignore_submodulesfalseІгнорувати зміни в субмодулях.
worktree_added""Формат, що показується при додаванні нового файлу до робочої теки.
worktree_deleted""Формат, що показується при вилученні файлу з робочої теки.
worktree_modified""Формат, що показується при зміні файлу в робочій теці.
worktree_typechanged""Формат, що показується, коли в робочій теці файлу було змінено тип.
index_added""Формат, що показується, коли до stage додано новий файл.
index_deleted""Формат, що показується, коли файл було вилучено з stage.
index_modified""Формат, що показується, коли файл в stage було змінено.
index_typechanged""Формат, що показується, коли до stage додано файл зі зміненим типом.
disabledfalseВимикає модуль git_status.
windows_starshipВикористовуйте цей (Linux) шлях до виконуваного файлу у Windows для показу git_status у випадку шляхів Windows у WSL.
use_git_executablefalseНе використовуйте gitoxide для обчислення статусу, натомість використовуйте виконуваний файл git.

Змінні ​

Наступні змінні можуть бути використані у format:

ЗміннаОпис
all_statusСкорочення для $conflicted$stashed$deleted$renamed$modified$typechanged$staged$untracked.
ahead_behindПоказує diverged, ahead, behind чи up_to_date в залежності від поточного стану репозиторію.
conflictedПоказує conflicted, коли поточна гілка має конфлікт злиття.
untrackedПоказує untracked коли в робочій теці є файли що ще не включені до відстеження у репозиторії.
stashedПоказує stashed за наявності stash у локальному репозиторії.
modifiedПоказує modified коли в робочій теці є змінені файли.
stagedПоказує staged, коли нові фали були додані до простору staging.
renamedПоказує renamed коли перейменовані файли було додано до простору staging.
deletedПоказує deleted коли інформація про видалення файлів була додана до простору staging.
typechangedПоказує typechanged коли інформація про файл була змінена у просторі staging.
worktree_addedПоказує worktree_added, коли новий фал будо додано до робочої теки.
worktree_deletedПоказує worktree_deleted, коли фал було вилучено з робочої теки.
worktree_modifiedПоказує worktree_modified , коли фал було змінено в робочій теці.
worktree_typechangedПоказує worktree_typechanged, коли тип файлу було змінено в робочій теці.
index_addedПоказує index_added, коли новий файл було додано до простору staging.
index_deletedПоказує index_deleted, коли файл було вилучено з stage.
index_modifiedПоказує index_modified, коли файл було змінено в stage.
index_typechangedПоказує index_typechanged, коли тип файлу було змінено в stage.
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Наступні змінні можуть бути використані у diverged:

ЗміннаОпис
ahead_countКількість комітів на яку поточна гілка випереджає відстежувану
behind_countКількість комітів на яку поточна гілка відстає від відстежуваної

Наступні змінні можуть використовуватись в conflicted, ahead, behind, untracked, stashed, modified, staged, renamed, deleted, typechanged, worktree_added, worktree_deleted, worktree_modified, worktree_typechanged, index_added, index_deleted, index_modified та index_typechanged:

ЗміннаОпис
countПоказує кількість файлів

Приклад ​

toml
# ~/.config/starship.toml

[git_status]
conflicted = '🏳'
ahead = '🏎💨'
behind = '😰'
diverged = '😵'
up_to_date = '✓'
untracked = '🤷'
stashed = '📦'
modified = '📝'
staged = '[++\($count\)](green)'
renamed = '👅'
deleted = '🗑'

Показує кількість комітів ahead/behind

toml
# ~/.config/starship.toml

[git_status]
ahead = '⇡${count}'
diverged = '⇕⇡${ahead_count}⇣${behind_count}'
behind = '⇣${count}'

Використання виконавчого файлу Windows Starship у Windows у шляхах WSL

toml
# ~/.config/starship.toml

[git_status]
windows_starship = '/mnt/c/Users/username/scoop/apps/starship/current/starship.exe'

Gleam ​

Модуль gleam показує поточну встановлену версію Gleam. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл gleam.toml
  • Поточна тека містить файли з розширенням .gleam

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'⭐ 'Формат рядка, що представляє символ Gleam.
detect_extensions['gleam']Які розширення повинні запускати цей модуль.
detect_files['gleam.toml']Які імена файлів мають запускати цей модуль.
style'bold #FFAFF3'Стиль модуля.
disabledfalseВимикає модуль gleam.

Змінні ​

ЗміннаПрикладОпис
versionv1.0.0Версія gleam
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[gleam]
format = 'via [⭐ $version](bold red) '

Go ​

Модуль golang показує поточну встановлену версію Go. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл go.mod
  • Поточна тека містить файл go.sum
  • Поточна тека містить файл go.work
  • Поточна тека містить файл glide.yaml
  • Поточна тека містить файл Gopkg.yml
  • Поточна тека містить файл Gopkg.lock
  • Поточна тека містить файл .go-version
  • Поточна тека містить теку Godeps
  • Поточна тека містить файл .go

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🐹 'Формат рядка, що представляє символ Go.
detect_extensions['go']Які розширення повинні запускати цей модуль.
detect_files['go.mod', 'go.sum', 'go.work', 'glide.yaml', 'Gopkg.yml', 'Gopkg.lock', '.go-version']Які імена файлів мають запускати цей модуль.
detect_folders['Godeps']В яких теках цей модуль має запускатись.
style'bold cyan'Стиль модуля.
not_capable_style'bold red'Стиль модуля, коли директиви go з файлу go.mod не збігаються з встановленою версією Go.
disabledfalseВимикає модуль golang.

Змінні ​

ЗміннаПрикладОпис
versionv1.12.1Версія go
mod_version1.16вимоги до версії go, як зазначено у директиві go.mod. Буде показано лише коли потрібна версія не збігається з версією go.
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[golang]
format = 'via [🏎💨 $version](bold cyan) '

Використання mod_version ​

toml
# ~/.config/starship.toml

[golang]
format = 'via [$symbol($version )($mod_version )]($style)'

Guix-shell ​

Модуль guix_shell показує середовище guix-shell. Модуль буде показано, коли ви перебуваєте в середовищі guix-shell.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol]($style) 'Формат модуля.
symbol'🐃 'Формат рядка, що представляє символ guix-shell.
style'yellow bold'Стиль модуля.
disabledfalseВимикає модуль guix_shell.

Змінні ​

ЗміннаПрикладОпис
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[guix_shell]
disabled = true
format = 'via [🐂](yellow bold) '

Gradle ​

Модуль gradle показує версію Gradle Wrapper що використовується в теці проєкту.

Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить теку gradle/wrapper/gradle-wrapper.properties.
  • Поточна тека містить файли .gradle або .gradle.kts.

Модуль gradle може лише зчитувати версію Gradle Wrapper з вашого файлу налаштувань, ми не запускаємо на виконання вашу обгортку з міркувань безпеки.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🅶 'Формат рядка, що представляє символ Gradle.
detect_extensions['gradle', 'gradle.kts']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders['gradle']В яких теках цей модуль має запускатись.
style'bold bright-cyan'Стиль модуля.
disabledfalseВимикає модуль gradle.
recursivefalseДозволяє рекурсивний пошук теки gradle.

Змінні ​

ЗміннаПрикладОпис
versionv7.5.1Версія gradle
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Haskell ​

Модуль haskell знаходить поточну версію GHC та/або Stack snapshot.

Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл stack.yaml
  • Поточна тека містить файли .hs, .cabal або .hs-boot

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
symbol'λ 'Формат рядка, що представляє символ Haskell
detect_extensions['hs', 'cabal', 'hs-boot']Які розширення повинні запускати цей модуль.
detect_files['stack.yaml', 'cabal.project']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold purple'Стиль модуля.
disabledfalseВимикає модуль haskell.

Змінні ​

ЗміннаПрикладОпис
versionghc_version або snapshot в залежності від того, чи є поточний проєкт проєктом Stack
snapshotlts-18.12Поточний обраний Stack snapshot
ghc_version9.2.1Встановлена версія GHC
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Haxe ​

Модуль haxe показує поточну встановлену версію Haxe. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли project.xml, Project.xml, application.xml, haxelib.json, hxformat.json або .haxerc
  • Поточна тека містить теку .haxelib або haxe_libraries
  • Поточна тека містить файли .hx або .hxml

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
detect_extensions['hx', 'hxml']Які розширення повинні запускати цей модуль.
detect_files['project.xml', 'Project.xml', 'application.xml', 'haxelib.json', 'hxformat.json', '.haxerc']Які імена файлів мають запускати цей модуль.
detect_folders['.haxelib', 'haxe_libraries']В яких теках цей модуль має запускатись.
symbol'⌘ 'Формат рядка, що представляє символ Haxe.
style'bold fg:202'Стиль модуля.
disabledfalseВимикає модуль haxe.

Змінні ​

ЗміннаПрикладОпис
versionv4.2.5Версія haxe
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[haxe]
format = "via [⌘ $version](bold fg:202) "

Helm ​

Модуль helm показує поточну встановлену версію Helm. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл helmfile.yaml
  • Поточна тека містить файл Chart.yaml

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['helmfile.yaml', 'Chart.yaml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
symbol'⎈ 'Формат рядка, що представляє символ Helm.
style'bold white'Стиль модуля.
disabledfalseВимикає модуль helm.

Змінні ​

ЗміннаПрикладОпис
versionv3.1.1Версія helm
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[helm]
format = 'via [⎈ $version](bold white) '

Hostname ​

Модуль hostname показує назву хосту.

Параметри ​

ПараметрСтандартноОпис
ssh_onlytrueПоказувати назву хоста лише при підключенні через SSH.
ssh_symbol'🌐 'Формат рядка для показу символу підключення до SSH-сеансу.
trim_at'.'Рядок, у якому назва хоста буде обрізано після першого збігу. '.' зупиниться після першої точки. '' вимкне будь-яке обрізання.
detect_env_vars[]Які змінні середовища повинні запускати цей модуль.
format'[$ssh_symbol$hostname]($style) in 'Формат модуля.
style'bold dimmed green'Стиль модуля.
disabledfalseВимикає модуль hostname.
aliases{}Переводить системні імена хостів у щось інше. Якщо задано trim_at, то лише перша частина буде перевірена та замінена.

Змінні ​

ЗміннаПрикладОпис
hostnamecomputerНазва хосту
style*Віддзеркалює значення параметра style
ssh_symbol'🌏 'Символ, який буде показаний, під час підʼєднання до SSH сесії

*: Ця змінна може бути використана лише як частина стилю рядка

Приклади ​

Завжди показувати hostname ​

toml
# ~/.config/starship.toml

[hostname]
ssh_only = false
format = '[$ssh_symbol](bold blue) on [$hostname](bold red) '
trim_at = '.companyname.com'
disabled = false

Приховувати hostname для віддалених сеансів tmux ​

toml
# ~/.config/starship.toml

[hostname]
ssh_only = false
detect_env_vars = ['!TMUX', 'SSH_CONNECTION']
disabled = false

Замінити імʼя хосту псевдонімом ​

toml
# ~/.config/starship.toml
[hostname]
aliases = { "Max's MacBook Pro" = "home" }

Java ​

Модуль java показує поточну встановлену версію Java. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • В поточній теці містяться файли pom.xml, build.gradle.kts, build.sbt, .java-version, deps.edn, project.clj, build.boot або .sdkmanrc
  • Поточна тека містить файли з розширеннями .java, .class, .gradle, .jar, .clj або .cljc

Параметри ​

ПараметрСтандартноОпис
format'via [${symbol}(${version} )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
detect_extensions['java', 'class', 'gradle', 'jar', 'cljs', 'cljc']Які розширення повинні запускати цей модуль.
detect_files['pom.xml', 'build.gradle.kts', 'build.sbt', '.java-version', 'deps.edn', 'project.clj', 'build.boot', '.sdkmanrc']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
symbol'☕ 'Формат рядка, що представляє символ Java
style'red dimmed'Стиль модуля.
disabledfalseВимикає модуль java.

Змінні ​

ЗміннаПрикладОпис
versionv14Версія java
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[java]
symbol = '🌟 '

Jobs ​

Модуль jobs показує поточну кількість завдань, що виконуються зараз. Модуль показуватиметься лише у випадку наявності фонових завдань. Модуль покаже кількість запущених завдань, якщо є хоча б 2 завдання, або більше за значення в number_threshold, за наявності. Модуль покаже символ, якщо є принаймні одне, чи більше за значення symbol_threshold, фонове завдання. Ви можете встановити обидва значення в 0, щоб завжди показувати символ і кількість завдань, навіть якщо виконується 0 завдань.

Стандартний функціонал:

  • 0 завдань -> нічого не показується.
  • 1 завдання -> показується symbol.
  • 2 чи більше завдань -> показується symbol + число.

Попередження Цей модуль не підтримується на tcsh.

Попередження

Параметр threshold є застарілим, але якщо ви хочете використовувати його, модуль покаже кількість запущених завдань, якщо їх більш ніж 1, або більше значення конфігурації threshold, якщо воно існує. Якщо threshold встановлено у 0, то модуль також показуватиметься, коли немає запущених завдань.

Параметри ​

ПараметрСтандартноОпис
threshold*1Показувати кількість завдань, якщо вони перевищують значення.
symbol_threshold1Показувати символ symbol, якщо кількість завдань не менше symbol_threshold.
number_threshold2Показувати кількість завдань, якщо їх кількість не менша за number_threshold.
format'[$symbol$number]($style) 'Формат модуля.
symbol'✦'Змінна для визначення символу symbol.
style'bold blue'Стиль модуля.
disabledfalseВимикає модуль jobs.

*: Цей параметр застарів, використовуйте параметри number_threshold та symbol_threshold замість цього.

Змінні ​

ЗміннаПрикладОпис
number1Кількість завдань
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклади ​

toml
# ~/.config/starship.toml

[jobs]
символ = '+ '
number_threshold = 4
symbol_threshold = 0

Зміна процесу групування поведінки у fish ​

При використанні оболонки Fish, Starship стандартно підраховує групи завдань замість окремих ідентифікаторів процесів. Це запобігає надмірному підрахунку, коли конвеєр має кілька процесів, але тільки одну призупинену групу. Щоб повернутися до старого підрахунку на основі PID, додайте наступне до конфігурації оболонки:

fish
set -g __starship_fish_use_job_groups "false"

Julia ​

Модуль julia показує поточну встановлену версію Julia. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл Project.toml
  • Поточна тека містить файл Manifest.toml
  • Поточна тека містить файл .jl

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
detect_extensions['jl']Які розширення повинні запускати цей модуль.
detect_files['Project.toml', 'Manifest.toml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
symbol'ஃ 'Формат рядка, що представляє символ Julia.
style'bold purple'Стиль модуля.
disabledfalseВимикає модуль julia.

Змінні ​

ЗміннаПрикладОпис
versionv1.4.0Версія julia
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[julia]
symbol = '∴ '

Kotlin ​

Модуль kotlin показує поточну встановлену версію Kotlin. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли, .kt або .kts

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
detect_extensions['kt', 'kts']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
symbol'🅺 'Формат рядка, що представляє символ Kotlin.
style'bold blue'Стиль модуля.
kotlin_binary'kotlin'Налаштовує бінарний файл kotlin, який Starship буде використовувати для отримання версії.
disabledfalseВимикає модуль kotlin.

Змінні ​

ЗміннаПрикладОпис
versionv1.4.21Версія kotlin
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[kotlin]
symbol = '🅺 '
toml
# ~/.config/starship.toml

[kotlin]
# Uses the Kotlin Compiler binary to get the installed version
kotlin_binary = 'kotlinc'

Kubernetes ​

Показує поточну назву контексту Kubernetes та, якщо це встановлено, простір імен, користувача й назву кластера із файлу kubeconfig. Простір імен повинен бути встановлений у файлі kubeconfig файл, це можна зробити через kubectl config set-context starship-context --namespace astronaut. Так само можна встановити користувача та кластер за допомогою kubectl config set-context starship-context --user starship-user та kubectl config set-context context context context --cluster starship-cluster, відповідно. Якщо параметр $KUBECONFIG встановлено, то модуль буде використовувати його, якщо ні — ~/.kube/config.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Коли модуль увімкнено, він завжди буде активним, якщо будь-який з параметрів detect_env_vars, detect_extensions, detect_files або detect_folders встановлені, модуль буде активним тільки в теках, що відповідають умовам або якщо одна зі змінних середовища була встановлена.

Параметри ​

Попередження

Параметри context_aliases та user_aliases є застарілими. Використовуйте contexts та, відповідно, context_alias та user_alias, натомість.

ПараметрСтандартноОпис
symbol'☸ 'Символ, що показується перед Кластером.
format'[$symbol$context( \($namespace\))]($style) in 'Формат модуля.
style'cyan bold'Стиль модуля.
context_aliases*{}Таблиця контекстних псевдонімів.
user_aliases*{}Таблиця псевдонімів користувача.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
detect_env_vars[]Які змінні середовища повинні запускати цей модуль
contexts[]Кастомізовані стилі та символи для конкретних контекстів.
disabledtrueВимикає модуль kubernetes.

*: Цей параметр є застарілими, додайте contexts, відповідно, context_alias та user_alias, натомість.

Для налаштування стилю модуля для конкретних середовищ використовуйте наступну конфігурацію як частину списку contexts:

ЗміннаОпис
context_patternОбовʼязково Регулярний вираз, що повертає збіг з назвою поточного контексту Kubernetes.
user_patternРегулярний вираз, що відповідає поточному імені користувача Kubernetes.
context_aliasПсевдонім контексту для показу замість назви повного контексту.
user_aliasПсевдонім користувача для показу замість повного імені користувача.
styleСтиль для модуля, при використанні цього контексту. Якщо не вказано, використовуватиметься стиль модуля.
symbolСимвол для модуля при використанні цього контексту. Якщо не вказано, використовуватиметься символ модуля.

Зверніть увагу, що всі регулярні вирази виглядають як ^<pattern>$ і мають збігатись з усім рядком. Регулярний вираз *_pattern може мати групи, які можуть зазначатись у відповідних аліасах як $name та $N (дивіться приклад нижче та документацію rust Regex::replace).

Змінні ​

ЗміннаПрикладОпис
contextstarship-contextПоточна назва kubernetes context
namespacestarship-namespaceIf set, the current kubernetes namespace
userstarship-userЯкщо встановлено, поточний користувач kubernetes
clusterstarship-clusterЯкщо встановлено, поточний кластер kubernetes
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[kubernetes]
format = 'on [⛵ ($user on )($cluster in )$context \($namespace\)](dimmed green) '
disabled = false
contexts = [
  { context_pattern = "dev.local.cluster.k8s", style = "green", symbol = "💔 " },
]

Показує модуль лише у теках, що містять файл k8s.

toml
# ~/.config/starship.toml

[kubernetes]
disabled = false
detect_files = ['k8s']

Kubernetes Context спец налаштування ​

Параметр contexts використовується для налаштування того, як виглядає назва контексту Kubernetes (стиль та символ), якщо назва збігається з визначеною регулярним виразом.

toml
# ~/.config/starship.toml

[[kubernetes.contexts]]
# стиль "bold red" + типовий символ, коли назва поточного контексту Kubernetes збігається з "production" *та* поточний користувач
# збігається з "admin_user"
context_pattern = "production"
user_pattern = "admin_user"
style = "bold red"
context_alias = "prod"
user_alias = "admin"

[[kubernetes.contexts]]
# стиль "green" + інший символ, коли назва поточного контексту Kubernetes містить openshift
context_pattern = ".*openshift.*"
style = "green"
symbol = "💔 "
context_alias = "openshift"

[[kubernetes.contexts]]
# Використання груп
# Контекст з GKE, AWS та інших хмарних постачальників зазвичай має додаткову інформацію, наприклад регіон/зону.
# Наступний елемент збігається з форматом GKE format (`gke_projectname_zone_cluster-name`)
# та змінює кожний відповідний kube context на більш зрозумілий формат (`gke-cluster-name`):
context_pattern = "gke_.*_(?P<cluster>[\\w-]+)"
context_alias = "gke-$cluster"

Line Break ​

Модуль line_break розділяє командний рядок на два рядки.

Параметри ​

ПараметрСтандартноОпис
disabledfalseВимикає модуль line_break, перемикає вивід в один рядок.

Приклад ​

toml
# ~/.config/starship.toml

[line_break]
disabled = true

Local IP ​

Модуль localip показує IPv4 адресу основного мережевого інтерфейсу.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
ssh_onlytrueПоказувати IP адресу лише при підключенні через SSH.
format'[$localipv4]($style) 'Формат модуля.
style'bold yellow'Стиль модуля.
disabledtrueВимикає модуль localip.

Змінні ​

ЗміннаПрикладОпис
localipv4192.168.1.13Містить основну адресу IPv4
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[localip]
ssh_only = false
format = '@[$localipv4](bold red) '
disabled = false

Lua ​

Модуль lua показує поточну встановлену версію Lua. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл .lua-version
  • Поточна тека містить теку lua
  • Поточна тека містить файли з розширенням .lua

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🌙 'Формат рядка, що представляє символ Lua.
detect_extensions['lua']Which extensions should trigger this module.
detect_files['.lua-version']Які імена файлів мають запускати цей модуль.
detect_folders['lua']В яких теках цей модуль має запускатись.
style'bold blue'Стиль модуля.
lua_binary'lua'Налаштовує бінарний файл lua, який Starship буде використовувати для отримання версії.
disabledfalseВимикає модуль lua.

Змінні ​

ЗміннаПрикладОпис
versionv5.4.0Версія lua
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[lua]
format = 'via [🌕 $version](bold blue) '

Maven ​

Модульmaven вказує на наявність проєкту Maven у поточній теці. Якщо [Maven Wrapper](https://maven.apache.org/wrapper/ увімкнено, версія Maven буде отримана та показана з .mvn/wrapper/maven-wrapper.properties.

Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл pom.xml.
  • Поточна тека містить файл .mvn/wrapper/maven-wrapper.properties.

Якщо ви використовуєте альтернативний синтаксис POM (наприклад, pom.hocon), додайте його імʼя файлу до detect_files.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🅼 'Формат рядка, що представляє символ Maven.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['pom.xml']Які імена файлів мають запускати цей модуль.
detect_folders['.mvn']В яких теках цей модуль має запускатись.
style'bold bright-cyan'Стиль модуля.
disabledfalseВимикає модуль maven.
recursivefalseДозволяє рекурсивний пошук теки .mvn.

Змінні ​

ЗміннаПрикладОпис
versionv3.2.0Версія maven
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Використання памʼяті ​

Модуль memory_usage показує поточне використання оперативної памʼяті та памʼяті файлу підкачки.

Стандартно використання файлу підкачки показується якщо його розмір не є нульовим.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
threshold75Приховати використання памʼяті, якщо не перевищено цей відсоток.
format'via $symbol [${ram}( | ${swap})]($style) 'Формат модуля.
symbol'🐏'Символ, який знаходиться перед значенням використання памʼяті.
style'bold dimmed white'Стиль модуля.
disabledtrueВимикає модуль memory_usage.

Змінні ​

ЗміннаПрикладОпис
ram31GiB/65GiBВикористана/загальна памʼять.
ram_pct48%Відсоток завантаженості памʼяті системи.
swap**1GiB/4GiBРозмір файлу підкачки.
swap_pct**77%The swap memory percentage of the current system swap memory file.
symbol🐏Віддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Цю змінну можна використовувати лише як частину стилю рядка **: Інформація щодо файлів SWAP показується лише у разі наявності в поточній системі

Приклад ​

toml
# ~/.config/starship.toml

[memory_usage]
disabled = false
threshold = -1
symbol = ' '
style = 'bold dimmed green'

Meson ​

Модуль meson показує поточний стан оточення розробки Meson.

Стандартно показується назва проєкту Meson, якщо встановлено $MESON_DEVENV.

Параметри ​

ПараметрСтандартноОпис
truncation_length2^32 - 1Скорочує назву проєкту до N графем.
truncation_symbol'…'Символ, що використовується для позначення назви проєкту, який було скорочено. Ви можете використовувати '', щоб нічого не показувати.
format'via [$symbol$project]($style) 'Формат модуля.
symbol'⬢ 'Символ, який знаходиться перед назвою проєкту.
style'blue bold'Стиль модуля.
disabledfalseВимкнути модуль meson.

Змінні ​

ЗміннаПрикладОпис
projectstarshipПоточна назва проєкту з Meson
symbol🐏Віддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[meson]
disabled = false
truncation_symbol = '--'
symbol = ' '
style = 'bold dimmed green'

Mercurial Branch ​

Модуль hg_branch показує активну гілку та вершину репозиторію у вашій поточній теці.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
symbol' 'Символ, що використовується перед закладкою hg чи назвою гілки у вашій поточній теці.
style'bold purple'Стиль модуля.
format'on [$symbol$branch(:$topic)]($style) 'Формат модуля.
truncation_length2^63 - 1Скорочує назву гілки/вершини до N графем
truncation_symbol'…'Символ, що використовується для позначення назви гілки, яка була скорочена.
disabledtrueВимикає модуль hg_branch.

Змінні ​

ЗміннаПрикладОпис
branchmasterПоточна гілка mercurial
topicfeatureПоточна вершина mercurial
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[hg_branch]
format = 'on [🌱 $branch](bold purple)'
truncation_length = 4
truncation_symbol = ''

Mercurial State ​

Модуль hg_state показуватиметься в теках, які є частиною сховища mercurial, і в яких виконується операція, наприклад: REBASING, BISECTING тощо.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
merge'MERGING'Формат рядка під час процесу merge.
rebase'REBASING'Формат рядка під час процесу rebase.
update'UPDATING'Формат рядка під час процесу update.
bisect'BISECTING'Формат рядка під час процесу bisect.
shelve'SHELVING'Формат рядка під час процесу shelve.
graft'GRAFTING'Формат рядка під час процесу graft.
transplant'TRANSPLANTING'Формат рядка під час процесу transplant.
histedit'HISTEDITING'Формат рядка під час процесу histedit.
style'bold yellow'Стиль модуля.
format'\([$state]($style)\) 'Формат модуля.
disabledtrueВимикає модуль hg_state.

Змінні ​

ЗміннаПрикладОпис
stateREBASINGПоточний стан репозиторію
progress_current1Прогрес поточної операції
progress_total2Загальний прогрес операції
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Mise ​

Модуль mise показує поточний стан mise, про який повідомляє запуск mise doctor.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
symbol'mise 'Символ, який використовується перед показом стану mise.
style'bold purple'Стиль модуля.
format'on [$symbol$health]($style) 'Формат модуля.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['mise.toml', 'mise.local.toml', '.mise.toml', '.mise.local.toml']Які імена файлів мають запускати цей модуль.
detect_folders['.mise']В яких теках цей модуль має запускатись.
healthy_symbolhealthyПовідомлення, яке показується, коли mise справний.
unhealthy_symbolunhealthyПовідомлення, яке показується, коли mise несправний.
disabledtrueВимикає модуль mise.

Змінні ​

ЗміннаПрикладОпис
healthhealthyСтан справності mise
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[mise]
health = 'ready'

Mojo ​

Модуль mojo показує поточну версію встановленої мови програмування Mojo

Параметри ​

ПараметрСтандартноОпис
format'with [$symbol($version )]($style)'Формат модуля.
symbol'🔥 'Символ, який знаходиться перед версією Mojo.
style'bold 208'Стиль модуля.
disabledfalseВимикає модуль mojo.
detect_extensions['mojo', '🔥']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.

Змінні ​

ЗміннаПрикладОпис
version24.4.0Версія mojo
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[mojo]
format = 'via [mojo ($version )($hash )]($style)'

NATS ​

Модуль nats показує назву поточного контексту NATS.

Параметри ​

ПараметрСтандартноОпис
symbol'✉️ 'Символ, що використовується перед контекстом NATS (типово порожнім).
style'bold purple'Стиль модуля.
format'[$symbol$name]($style)'Формат модуля.
disabledfalseВимикає модуль nats.

Змінні ​

ЗміннаПрикладОпис
namelocalhostНазва контексту NATS
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

Приклад ​

toml
[nats]
format = '[$symbol]($style)'
style = 'bold purple'

Мережевий простір імен ​

Модуль netns показує поточний мережевий простір імен. Для отримання мережевого простору імен використовується ip netns identify, тому буде виявлено лише мережеві простори імен, змонтовані за адресою /var/run/netns.

Параметри ​

ПараметрСтандартноОпис
format'[$symbol \[$name\]]($style)'Формат модуля.
symbol'🛜 'Символ, що використовується перед простором імен мережі (типово порожньо).
style'blue bold dimmed'Стиль модуля.
disabledfalseВимикає модуль netns.

Змінні ​

ЗміннаПрикладОпис
namemy-netnsІмʼя поточного простору імен мережі
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

Приклад ​

toml
# ~/.config/starship.toml

[netns]
style = 'bold yellow'
symbol = '🌐 '

Nim ​

Модуль nim показує поточну встановлену версію Nim. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл nim.cfg
  • Поточна тека містить файли з розширенням .nim
  • Поточна тека містить файли з розширенням .nims
  • Поточна тека містить файли з розширенням .nimble

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'👑 'Символ, який знаходиться перед версією Nim.
detect_extensions['nim', 'nims', 'nimble']Які розширення повинні запускати цей модуль.
detect_files['nim.cfg']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold yellow'Стиль модуля.
disabledfalseВимикає модуль nim.

Змінні ​

ЗміннаПрикладОпис
versionv1.2.0Версія nimc
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[nim]
style = 'yellow'
symbol = '🎣 '

Nix-shell ​

Модуль nix_shell показує середовище nix-shell. Модуль буде показано, коли ви перебуваєте в середовищі nix-shell.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol$state( \($name\))]($style) 'Формат модуля.
symbol'❄️ 'Формат рядка, що представляє символ nix-shell.
style'bold blue'Стиль модуля.
impure_msg'impure'Формат рядка, який показується, коли оболонка (impure) нечиста.
pure_msg'pure'Формат рядка, який показується, коли оболонка (pure) чиста.
unknown_msg''Формат рядка, у випадку, коли стан невідомий.
disabledfalseВимикає модуль nix_shell.
heuristicfalseНамагається визначити новий nix shell-стиль евристичними методами.

Змінні ​

ЗміннаПрикладОпис
statepureСтан nix-shell
namelorriНазва nix-shell
level1Віддзеркалює значення параметра symbol
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[nix_shell]
disabled = true
impure_msg = '[impure shell](bold red)'
pure_msg = '[pure shell](bold green)'
unknown_msg = '[unknown shell](bold yellow)'
format = 'via [☃️ $state( \($name\))](bold blue) '

Node.js ​

Модуль nodejs показує поточну встановлену версію Node.js. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл package.json
  • Поточна тека містить файл .node-version
  • Поточна тека містить файл .nvmrc
  • Поточна тека містить теку node_modules
  • Поточна тека містить файли з розширеннями .js, .mjs або .cjs
  • Поточна тека містить файли з розширеннями .ts, .mts чи .cts

Крім того, модуль буде автоматично прихований, якщо в теці є файл deno.json, deno.jsonc, deno.lock, bunfig.toml, bun.lock або bun.lockb, що має пріоритет над зазначеними вище умовами.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol' 'Формат рядка, що представляє символ Node.js.
detect_extensions['js', 'mjs', 'cjs', 'ts', 'mts', 'cts']Які розширення повинні запускати цей модуль.
detect_files['package.json', '.node-version', '.nvmrc']Які імена файлів мають запускати цей модуль.
detect_folders['node_modules']В яких теках цей модуль має запускатись.
style'bold green'Стиль модуля.
disabledfalseВимикає модуль nodejs.
not_capable_style'bold red'Стиль для модуля, коли версія рушія у package.json не відповідає версії Node.js.

Змінні ​

ЗміннаПрикладОпис
versionv13.12.0Версія node
engines_version>=12.0.0вимоги до версії node, як зазначено в описі package.json. Буде показано лише коли потрібна версія не збігається з версією node.
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[nodejs]
format = 'via [🤖 $version](bold green) '

OCaml ​

Модуль ocaml показує поточну встановлену версію OCaml. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли з розширенням .opam або теку _opam
  • Поточна тека містить теку esy.lock
  • Поточна тека містить файли dune або dune-project
  • Поточна тека містить файли jbuild чи jbuild-ignore
  • Поточна тека містить файл .merlin
  • Поточна тека містить файли з розширеннями .ml, .mli, .re або .rei

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )(\($switch_indicator$switch_name\) )]($style)'Формат рядка модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🐫 'Символ, який знаходиться перед версією OCaml.
global_switch_indicator''Формат рядка для глобального перемикача OPAM.
local_switch_indicator'*'Формат рядка для локального перемикача OPAM.
detect_extensions['opam', 'ml', 'mli', 're', 'rei']Які розширення повинні запускати цей модуль.
detect_files['dune', 'dune-project', 'jbuild', 'jbuild-ignore', '.merlin']Які імена файлів мають запускати цей модуль.
detect_folders['_opam', 'esy.lock']В яких теках цей модуль має запускатись.
style'bold yellow'Стиль модуля.
disabledfalseВимикає модуль ocaml.

Змінні ​

ЗміннаПрикладОпис
versionv4.10.0Версія ocaml
switch_namemy-projectПоточний перемикач OPAM
switch_indicatorВіддзеркалює значення indicator для поточного перемикача OPAM
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[ocaml]
format = 'via [🐪 $version]($style) '

Odin ​

Модуль odin показує поточну встановлену версію Odin. Стандартно модуль буде показаний, якщо поточна тека містить файли .odin.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
show_commitfalseПоказує коміт як частину версії.
symbol'Ø 'Символ, який знаходиться перед версією Odin.
style'bold bright-blue'Стиль модуля.
disabledfalseВимикає модуль odin.
detect_extensions['odin']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.

Змінні ​

ЗміннаПрикладОпис
versiondev-2024-03Версія odin
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[odin]
format = 'via [󰹩 ($version )]($style)'
show_commit = true

Open Policy Agent ​

Модуль opa показує поточну встановлену версію OPA. Стандартно модуль буде показаний, якщо поточна тека містить файли .rego.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🪖 'Формат рядка, що представляє символ OPA.
detect_extensions['rego']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold blue'Стиль модуля.
disabledfalseВимикає модуль opa.

Змінні ​

ЗміннаПрикладОпис
versionv0.44.0Версія opa
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[opa]
format = 'via [⛑️  $version](bold red) '

OpenStack ​

Модуль openstack показує поточну хмару OpenStack і проєкт. Модуль працює лише тоді, коли встановлено змінну середовища OS_CLOUD; у цьому випадку він зчитує файл clouds.yaml з будь-якого з стандартних місць розташування, щоб отримати поточний проєкт для використання.

Параметри ​

ПараметрСтандартноОпис
format'on [$symbol$cloud(\($project\))]($style) 'Формат модуля.
symbol'☁️ 'Символ, який використовується під час показу перед поточною хмарою OpenStack.
style'bold yellow'Стиль модуля.
disabledfalseВимикає модуль openstack.

Змінні ​

ЗміннаПрикладОпис
cloudcorpПоточна хмара OpenStack
projectdevПоточний проєкт OpenStack
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[openstack]
format = 'on [$symbol$cloud(\($project\))]($style) '
style = 'bold yellow'
symbol = '☁️ '

OS ​

Модуль os показує поточну операційну систему. Інформація про ОС визначається за допомогою бібліотеки os_info.

Попередження

Crate os_info, що використовується цим модулем, може бути не точним в деяких системах.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
format'[$symbol]($style)'Формат модуля.
style'bold white'Стиль модуля.
disabledtrueВимикає модуль os.
symbolsТаблиця символів для кожної операційної системи.

symbols дозволяє визначити довільні символи для кожного типу операційної системи. Типи операційних систем не визначені вашою конфігурацією, використовують стандартну таблицю символів, дивись нижче. На цю мить усі операційні системи, що підтримуються модулем, перераховані нижче. Якщо ви хочете, щоб була додана певна операційна система, створіть запит на додавання функції.

toml
# Це таблиця стандартних символів.
[os.symbols]
AIX = "➿ "
Alpaquita = "🔔 "
AlmaLinux = "💠 "
Alpine = "🏔️ "
ALTLinux = "Ⓐ "
Amazon = "🙂 "
Android = "🤖 "
AOSC = "🐱 "
Arch = "🎗️ "
Artix = "🎗️ "
Bazzite = "🎮 "
Bluefin = "🐟 "
CachyOS = "🎗️ "
CentOS = "💠 "
Debian = "🌀 "
DragonFly = "🐉 "
Elementary = "🍏 "
Emscripten = "🔗 "
EndeavourOS = "🚀 "
Fedora = "🎩 "
FreeBSD = "😈 "
Garuda = "🦅 "
Gentoo = "🗜️ "
HardenedBSD = "🛡️ "
Hurd = "🐂 "
Illumos = "🐦 "
Ios = "📱 "
InstantOS = "⏲️ "
Kali = "🐉 "
KDENeon = "⚛️ "
Linux = "🐧 "
Mabox = "📦 "
Macos = "🍎 "
Manjaro = "🥭 "
Mariner = "🌊 "
MidnightBSD = "🌘 "
Mint = "🌿 "
NetBSD = "🚩 "
NixOS = "❄️ "
Nobara = "🎩 "
OpenBSD = "🐡 "
OpenCloudOS = "☁️ "
openEuler = "🦉 "
openSUSE = "🦎 "
OracleLinux = "🦴 "
PikaOS = "🐤 "
Pop = "🍭 "
Raspbian = "🍓 "
Redhat = "🎩 "
RedHatEnterprise = "🎩 "
RockyLinux = "💠 "
Redox = "🧪 "
Solus = "⛵ "
SUSE = "🦎 "
Ubuntu = "🎯 "
Ultramarine = "🔷 "
Unknown = "❓ "
Uos = "🐲 "
Void = " "
Windows = "🪟 "
Zorin = "🔹 "

Змінні ​

ЗміннаПрикладОпис
symbol🎗️Поточний символ операційної системи з розширеного параметра symbols
nameArch LinuxНазва поточної операційної системи
typeArchТип поточної операційної системи
codenameПоточна кодова назва операційної системи, за наявності
editionПоточна редакція операційної системи, за наявності
versionПоточна версія операційної системи, за наявності
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[os]
format = "on [($name )]($style)"
style = "bold blue"
disabled = false

[os.symbols]
Windows = " "
Arch = "Arch is the best! "

Package Version ​

Модуль package показується, коли поточна тека є сховищем для пакунка, і показує його поточну версію. Наразі модуль підтримує такі пакунки: npm, nimble, cargo, poetry, python, composer, gradle, julia, mix, helm, shards, galaxy, daml та dart packages.

  • npm — версія пакунка npm отримується з package.json з поточної теки
  • JSR — версія пакунка jsr отримана з файлів jsr.json/jsr.jsonc чи deno.json/deno.jsonc у поточній теці
  • Cargo — версія пакунка cargo отримується з Cargo.toml з поточної теки
  • Nimble — версія пакунка nimble з файлу *.nimble з поточної теки, отримана командою nimble dump
  • Poetry — версія пакунка poetry отримується з pyproject.toml з поточної теки
  • Python — версія пакунка python отримана із PEP 621 сумісних файлів pyproject.toml чи setup.cfg у поточній теці
  • Composer — версія пакунка composer отримується з composer.json з поточної теки
  • Gradle — версія пакунка gradle отримується з build.gradle з поточної теки
  • Julia — версія пакунка отримується з Project.toml з поточної теки
  • Mix — версія пакунка mix отримується з mix.exs з поточної теки
  • Helm — версія чарту helm отримується з Chart.yaml з поточної теки
  • Maven — версія пакунка maven отримується з pom.xml з поточної теки
  • Meson — версія пакунка meson отримується з meson.build з поточної теки
  • Shards — версія пакунка shards отримується з shard.yml з поточної теки
  • Galaxy — версія пакунка galaxy отримується з galaxy.yml з поточної теки
  • V — версія пакунка vlang отримується з v.mod з поточної теки
  • SBT — версія пакунка sbt отримується з build.sbt з поточної теки
  • Daml — версія пакунка daml отримується з daml.yaml з поточної теки
  • Dart — версія пакунка dart отримується з pubspec.yaml з поточної теки

⚠️ Показується версія пакунка, сирці якого знаходяться у вашій поточній теці, а не у вашому менеджері пакунків.

Параметри ​

ПараметрСтандартноОпис
format'is [$symbol$version]($style) 'Формат модуля.
symbol'📦 'Символ, який знаходиться перед версією пакунка.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
style'bold 208'Стиль модуля.
display_privatefalseВмикає показ версій для приватних пакунків.
disabledfalseВимикає модуль package.

Змінні ​

ЗміннаПрикладОпис
versionv1.0.0Версія вашого пакунка
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[package]
format = 'via [🎁 $version](208 bold) '

Perl ​

Модуль perl показує поточну встановлену версію Perl. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли Makefile.PL чи Build.PL
  • Поточна тека містить файли cpanfile або cpanfile.snapshot
  • Поточна тека містить файли, META.json або META.yml
  • Поточна тека містить файл .perl-version
  • Поточна тека містить файли .pl, .pm або .pod

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат рядка модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🐪 'Символ, який знаходиться перед версією Perl
detect_extensions['pl', 'pm', 'pod']Які розширення повинні запускати цей модуль.
detect_files['Makefile.PL', 'Build.PL', 'cpanfile', 'cpanfile.snapshot', 'META.json', 'META.yml', '.perl-version']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold 149'Стиль модуля.
disabledfalseВимикає модуль perl.

Змінні ​

ЗміннаПрикладОпис
versionv5.26.1Версія perl
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

Приклад ​

toml
# ~/.config/starship.toml

[perl]
format = 'via [🦪 $version]($style) '

PHP ​

Модуль php показує поточну встановлену версію PHP. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл composer.json
  • Поточна тека містить файл .php-version
  • Поточна тека містить файл .php

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🐘 'Символ, який знаходиться перед версією PHP.
detect_extensions['php']Які розширення повинні запускати цей модуль.
detect_files['composer.json', '.php-version']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'147 bold'Стиль модуля.
disabledfalseВимикає модуль php.

Змінні ​

ЗміннаПрикладОпис
versionv7.3.8Версія php
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[php]
format = 'via [🔹 $version](147 bold) '

Pijul Channel ​

Модуль pijul_channel показує активний канал репозиторію у вашій поточній теці.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
symbol' 'Символ, що використовується перед каналом pijul у вашій поточній теці.
style'bold purple'Стиль модуля.
format'on [$symbol$channel]($style) 'Формат модуля.
truncation_length2^63 - 1Скорочує назву каналу pijul до N графем
truncation_symbol'…'Символ, що використовується для позначення назви гілки, яка була скорочена.
disabledtrueВимикає модуль pijul.

Pixi ​

Модуль pixi показує встановлену версію pixi, а також активоване середовище, якщо $PIXI_ENVIRONMENT_NAME встановлено.

Порада Це не пригнічує власний модифікатор підказки pixi, ви можете виконати `pixi config set shell.change-ps1 false`.

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )(\($environment\) )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch.
symbol'🧚 'Символ що передує назві оточення.
style'yellow bold'Стиль модуля.
show_default_environmenttrueЧи вказувати, що у вашому проєкті активовано середовище default.
pixi_binary['pixi']Налаштовує бінарний файл pixi, який Starship буде використовувати для отримання версії.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['pixi.toml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
disabledfalseВимикає модуль pixi.

Змінні ​

ЗміннаПрикладОпис
versionv0.33.0Версія pixi
environmentpy311Поточне середовище pixi
project_namemy-projectВіддзеркалює значення параметра symbol
symbolВіддзеркалює значення параметра style
styleВіддзеркалює значення параметра style

Приклад ​

toml
# ~/.config/starship.toml

[pixi]
format = '[$symbol$environment](yellow) '

Pulumi ​

Модуль pulumi показує імʼя поточного користувача та версію обраного Pulumi Stack.

Порада

Типово версія Pulumi не показується, оскільки вона завантажується на порядок довше, ніж більшість втулків (~70 мс). Якщо ви все ще хочете увімкнути показ версії, дивіться приклад нижче.

Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • У поточній теці є або Pulumi.yaml або Pulumi.yml
  • Батьківська тека містить або Pulumi.yaml або Pulumi.yml, якщо для search_upwards не встановлено значення false

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($username@)$stack]($style) 'Формат рядка модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol' 'Формат рядка перед стеком Pulumi.
style'bold 5'Стиль модуля.
search_upwardstrueДозволяє шукати файли налаштування pulumi у батьківських теках.
disabledfalseВимикає модуль pulumi.

Змінні ​

ЗміннаПрикладОпис
versionv0.12.24Версія pulumi
stackdevПоточний стек Pulumi
usernamealiceПоточне імʼя користувача Pulumi
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

З версією Pulumi ​

toml
# ~/.config/starship.toml

[pulumi]
format = '[🛥 ($version )$stack]($style) '

Без версії Pulumi ​

toml
# ~/.config/starship.toml
[pulumi]
symbol = '🛥 '
format = '[$symbol$stack]($style) '

PureScript ​

Модуль purescript показує поточну встановлену версію PureScript. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл spago.dhall
  • Поточна тека містить файл spago.yaml
  • Поточна тека містить файл spago.lock
  • Поточна тека містить файли з розширенням .purs

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'<=> 'Символ, який знаходиться перед версією PureScript.
detect_extensions['purs']Які розширення повинні запускати цей модуль.
detect_files['spago.dhall', 'spago.yaml', 'spago.lock']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold white'Стиль модуля.
disabledfalseВимикає модуль purescript.

Змінні ​

ЗміннаПрикладОпис
version0.13.5Версія purescript
symbolВіддзеркалює значення параметра symbol
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[purescript]
format = 'via [$symbol$version](bold white)'

Python ​

Модуль python показує поточну встановлену версію Python і поточне віртуальне середовище Python, якщо воно активоване.

Якщо pyenv_version_name має значення true, показуватиметься назва версії pyenv. В іншому випадку буде показано номер версії з python --version.

Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл .python-version
  • Поточна тека містить файл Pipfile
  • Поточна тека містить файл __init__.py
  • Поточна тека містить файл pyproject.toml
  • Поточна тека містить файл requirements.txt
  • Поточна тека містить файл setup.py
  • Поточна тека містить файл tox.ini
  • Поточна тека містить файл .py.
  • Поточна тека містить файли з розширенням .ipynb.
  • Віртуальне середовище активовано

Параметри ​

ПараметрСтандартноОпис
format'via [${symbol}${pyenv_prefix}(${version} )(\($virtualenv\) )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🐍 'Формат рядка, що представляє символ Python
style'yellow bold'Стиль модуля.
pyenv_version_namefalseВикористовувати pyenv для отримання версії Python
pyenv_prefix'pyenv'Префікс перед версією pyenv, показується якщо pyenv використовується
python_binary['python', 'python3', 'python2']Налаштовує бінарні файли python, які Starship буде використовувати для отримання версії.
detect_extensions['py', 'ipynb']Які розширення повинні запускати цей модуль
detect_files['.python-version', 'Pipfile', '__init__.py', 'pyproject.toml', 'requirements.txt', 'setup.py', 'tox.ini']Назви файлів, які активують модуль
detect_folders[]Назви тек, що активують модуль
generic_venv_names[]Які імена venv слід замінити на імʼя батьківської теки.
disabledfalseВимикає модуль python.

Порада

Змінна python_binary приймає значення одне з:

  • рядок (напр. 'python3'),
  • список рядків (наприклад, ['python', 'python3'])
  • список списків рядків, що представляють команди з необовʼязковими аргументами (наприклад, [['mise', 'exec', '--', 'python'], ['python3']])

Starship буде намагатися виконати кожну налаштовану команду, доки не отримає результат. Зверніть увагу, що ви можете змінити лише виконуваний файл, який запускає Starship, щоб отримати потрібну версію Python, а не аргументи, що використовуються.

Стандартні значення та порядок для python_binary було вибрано так, щоб спочатку ідентифікувати версію Python у середовищах virtualenv/conda (які наразі все ще додають python, незалежно від того, чи вказує він на python3 чи на python2). Це може мати побічний ефект: якщо у вас все ще встановлено системний Python 2, він може бути обраний перед будь-яким Python 3 (принаймні в дистрибутивах Linux, які завжди містять символічне посилання /usr/bin/python на Python 2). Якщо ви більше не працюєте з Python 2, але не можете видалити системний Python 2, змінивши його на 'python3', вам потрібно приховати будь-яку версію Python 2, див. приклад нижче.

Змінні ​

ЗміннаПрикладОпис
version'v3.8.1'Версія python
symbol'🐍 'Віддзеркалює значення параметра symbol
style'yellow bold'Віддзеркалює значення параметра style
pyenv_prefix'pyenv 'Віддзеркалює значення параметра pyenv_prefix
virtualenv'venv'Поточна назва virtualenv або батьківська, якщо збігається з generic_venv_names

Приклад ​

toml
# ~/.config/starship.toml

[python]
symbol = '👾 '
pyenv_version_name = true
toml
# ~/.config/starship.toml

[python]
# Використання лише `python3` для отримання версії.
python_binary = 'python3'
toml
# ~/.config/starship.toml

[python]
# Не запускати файли з розширенням py
detect_extensions = []
toml
# ~/.config/starship.toml

[python]
# Потенційно небезпечно: `uv` може запускати будь-який бінарний файл у теці `.venv/bin/python` без запиту користувача
python_binary = [['uv', 'run', '--no-python-downloads', '--no-project', 'python']]
toml
# ~/.config/starship.toml

[python]
# Не запускати файли з розширенням py
detect_extensions = []

Quarto ​

Модуль quarto показує поточну встановлену версію Quarto, що використовується в проєкті.

Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл _quarto.yml
  • Поточна тека містить файл *.qmd

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol($version )]($style)'Версія quarto
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'⨁ 'Віддзеркалює значення параметра style
style'bold #75AADB'Стиль модуля.
detect_extensions['.qmd']Які розширення повинні запускати цей модуль.
detect_files['_quarto.yml']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
disabledfalseВимикає модуль quarto.

Змінні ​

ЗміннаПрикладОпис
version1.4.549Версія quarto
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

R ​

Модуль rlang показує поточну встановлену версію R. Модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли з розширенням .R.
  • Поточна тека містить файли з розширенням .Rd.
  • Поточна тека містить файли з розширенням .Rmd.
  • Поточна тека містить файли з розширенням .Rproj.
  • Поточна тека містить файл з розширенням.Rsx.
  • Поточна тека містить файл .Rprofile
  • Поточна тека містить теку .Rproj.user

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol($version )]($style)'Версія R
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'📐'Віддзеркалює значення параметра style
style'blue bold'Стиль модуля.
detect_extensions['R', 'Rd', 'Rmd', 'Rproj', 'Rsx']Які розширення повинні запускати цей модуль
detect_files['.Rprofile']Назви файлів, які активують модуль
detect_folders['.Rproj.user']Назви тек, що активують модуль
disabledfalseВимикає модуль r.

Приклад ​

ЗміннаПрикладОпис
versionv4.0.5Версія R
symbolВіддзеркалює значення параметра style
style'blue bold'Віддзеркалює значення параметра style

Приклад ​

toml
# ~/.config/starship.toml

[rlang]
format = 'with [📐 $version](blue bold) '

Raku ​

Модуль raku показує поточну встановлену версію Raku. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл META6.json
  • Поточна тека містить файли .p6, .pm6, .raku, .rakumod або .pod6

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol($version-$vm_version )]($style)'Версія raku
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🦋 'Віддзеркалює значення параметра symbol
detect_extensions['p6', 'pm6', 'pod6', 'raku', 'rakumod']Які розширення повинні запускати цей модуль.
detect_files['META6.json']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold 149'Стиль модуля.
disabledfalseВимикає модуль raku.

Приклад ​

ЗміннаПрикладОпис
versionv6.dВерсія raku
vm_versionmoarВерсія віртуальної машини, на якій побудовано raku
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

Приклад ​

toml
# ~/.config/starship.toml

[raku]
format = 'via [🦪 $version]($style) '

Red ​

Модуль red показує поточну встановлену версію Red. Модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли з розширеннями .red або .reds

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol($version )]($style)'Версія red
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🔺 'Віддзеркалює значення параметра style
detect_extensions['red']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'red bold'Стиль модуля.
disabledfalseВимикає модуль red.

Змінні ​

ЗміннаПрикладОпис
versionv2.5.1Версія red
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[red]
symbol = '🔴 '

Ruby ​

Модуль ruby показує поточну встановлену версію Ruby. Модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл Gemfile
  • Поточна тека містить файл .ruby-version
  • Поточна тека містить файл .rb
  • Встановлено змінні середовища RUBY_VERSION або RBENV_VERSION

Starship отримує поточну версію Ruby командою ruby -v.

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol($version )]($style)'Версія ruby
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'💎 'Віддзеркалює значення параметра style
detect_extensions['rb']Які розширення повинні запускати цей модуль.
detect_files['Gemfile', '.ruby-version']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
detect_variables['RUBY_VERSION', 'RBENV_VERSION']Які змінні середовища повинні запускати цей модуль.
style'bold red'Стиль модуля.
disabledfalseВимикає модуль ruby.

Змінні ​

ЗміннаПрикладОпис
versionv2.5.1Версія ruby
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style
gemsettestОпціонально, отримує назву RVM gemset.

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[ruby]
symbol = '🔺 '

Rust ​

Модуль rust показує поточну встановлену версію Rust. Модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл Cargo.toml
  • Поточна тека містить файли з розширенням .rs

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol($version )]($style)'Версія rustc
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🦀 'Версія toolchain
detect_extensions['rs']Які розширення повинні запускати цей модуль.
detect_files['Cargo.toml']Віддзеркалює значення параметра style
detect_folders[]В яких теках цей модуль має запускатись.
style'bold red'Стиль модуля.
disabledfalseВимикає модуль rust.

Змінні ​

ЗміннаПрикладОпис
versionv1.43.0-nightlyВерсія rustc
numver1.51.0Числовий компонент версії rustc
toolchainbetaВерсія toolchain
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[rust]
format = 'via [⚙️ $version](red bold)'

Scala ​

Модуль scala показує поточну встановлену версію Scala. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли build.sbt, .scalaenv або .sbtenv
  • Поточна тека містить файли .scala або .sbt
  • В поточній теці є тека .metals

Змінні ​

ЗміннаПрикладОпис
format'via [${symbol}(${version} )]($style)'Версія scala
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
detect_extensions['sbt', 'scala']Які розширення повинні запускати цей модуль.
detect_files['.scalaenv', '.sbtenv', 'build.sbt']Які імена файлів мають запускати цей модуль.
detect_folders['.metals']В яких теках цей модуль має запускатись.
symbol'🆂 'Формат рядка, що представляє символ Scala.
style'red dimmed'Стиль модуля.
disabledfalseВимикає модуль scala.

Змінні ​

ЗміннаПрикладОпис
version2.13.5Версія scala
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[scala]
symbol = '🌟 '

Shell ​

Модуль shell показує індикатор поточної оболонки.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Змінні ​

ЗміннаСтандартноОпис
bash_indicator'bsh'Віддзеркалює значення indicator для поточної оболонки.
fish_indicator'fsh'Віддзеркалює значення параметра style.
zsh_indicator'zsh'Формат рядка, що використовується для zsh.
powershell_indicator'psh'Формат рядка, що використовується для powershell.
pwsh_indicatorФормат рядка, що використовується для pwsh. Типове значення віддзеркалює значення powershell_indicator.
ion_indicator'ion'Формат рядка, що використовується для ion.
elvish_indicator'esh'Формат рядка, що використовується для elvish.
tcsh_indicator'tsh'Формат рядка, що використовується для tcsh.
xonsh_indicator'xsh'Формат рядка, що використовується для xonsh.
cmd_indicator'cmd'Формат рядка, що використовується для cmd.
nu_indicator'nu'Формат рядка, що використовується для nu.
unknown_indicator''Типове значення, що буде показане, якщо оболонка не визначена.
format'[$indicator]($style) 'Формат модуля.
style'white bold'Стиль модуля.
disabledtrueВимикає модуль shell.

Змінні ​

ЗміннаСтандартноОпис
indicatorВіддзеркалює значення indicator для поточної оболонки.
style*Віддзеркалює значення параметра style.

*: Ця змінна може бути використана лише як частина стилю рядка

Приклади ​

toml
# ~/.config/starship.toml

[shell]
fish_indicator = '󰈺 '
powershell_indicator = '_'
unknown_indicator = 'mystery shell'
style = 'cyan bold'
disabled = false

SHLVL ​

Модуль shlvl показує значення поточної змінної середовища SHLVL ('shell level'), якщо вона має числове значення та дорівнює або перевищує вказаний поріг.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Змінні ​

ЗміннаПрикладОпис
threshold2Поточне значення SHLVL
format'[$symbol$shlvl]($style) 'Віддзеркалює значення параметра symbol
symbol'↕️ 'Віддзеркалює значення параметра style
repeatfalseПовторно показує symbol в кількості зазначеній у SHLVL.
repeat_offset0Зменшує кількість разів, коли symbol повторюється використовуючи значення offset
style'bold yellow'Стиль модуля.
disabledtrueВимикає модуль shlvl.

Змінні ​

ЗміннаПрикладОпис
shlvl3Поточне значення SHLVL
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[shlvl]
disabled = false
format = '$shlvl level(s) down'
threshold = 3

Використовуючи repeat та repeat_offset разом з модулем character, ви можете отримати рядок виду ❯❯❯, де останній символ має колір відповідно до статусу виконання останньої команди, а символи, що йому передують зазначаються у shlvl.

toml
# ~/.config/starship.toml

[shlvl]
disabled = false
format = '[$symbol]($style)'
repeat = true
symbol = '❯'
repeat_offset = 1

Singularity ​

Модуль singularity показує поточний образ Singularity, якщо система працює в контейнері та встановлено змінну $SINGULARITY_NAME.

Змінні ​

ЗміннаПрикладОпис
format'[$symbol\[$env\]]($style) 'Поточний образ Singularity
symbol''Віддзеркалює значення параметра symbol
style'bold dimmed blue'Віддзеркалює значення параметра style
disabledfalseВимикає модуль singularity.

Змінні ​

ЗміннаПрикладОпис
envcentos.imgПоточний образ Singularity
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[singularity]
format = '[📦 \[$env\]]($style) '

Solidity ​

Модуль solidity показує поточну версію Solidity. Модуль буде показано, якщо буде виконуються наступні умови:

  • Поточна тека містить файл .sol

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol($version )]($style)'Версія solidity
version_format'v${major}.${minor}.${patch}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'S 'Віддзеркалює значення параметра style
`compiler['solc']Стандартний компілятор Solidity.
detect_extensions['sol']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold blue'Стиль модуля.
disabledfalseВмикає цей модуль.

Змінні ​

ЗміннаПрикладОпис
versionv0.8.1Версія solidity
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml
[solidity]
format = "via [S $version](blue bold)"

Spack ​

Модуль spack показує поточне середовище Spack, якщо встановлено змінну $SPACK_ENV.

Змінні ​

ЗміннаПрикладОпис
truncation_length1Кількість тек, до яких має бути скорочений шлях до середовища оточення. 0 — означає без скорочення. Також дивіться модуль directory .
symbol'🅢 'Віддзеркалює значення параметра symbol
style'bold blue'Віддзеркалює значення параметра style
format'via [$symbol$environment]($style) 'Формат модуля.
disabledfalseВимикає модуль spack.

Змінні ​

ЗміннаПрикладОпис
environmentastronautsПоточне середовище spack
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[spack]
format = '[$symbol$environment](dimmed blue) '

Status ​

Модуль status показує код завершення роботи попередньої команди. Якщо $success_symbol пустий (типово), модуль буде показаний тільки якщо код виходу не 0. Код status буде перетворений у 32-бітне ціле число.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Змінні ​

ЗміннаПрикладОпис
format'[$symbol$status]($style) 'Код виходу останньої команди
symbol'❌'Код виходу останньої команди в hex
success_symbol''Код виходу останньої команди
not_executable_symbol'🚫'Значення коду, якщо не сигнал
not_found_symbol'🔍'Номер сигналу, що відповідає коду завершення, за наявності
sigint_symbol'🧱'Назва сигналу, що відповідає коду виходу лише в тому випадку, якщо його записано
signal_symbol'⚡'Містить номер коду виходу, коли значення не знайдено
style'bold red'Показує коду виходу конвеєра, доступно тільки в форматі pipestatus_format
success_styleВіддзеркалює значення параметра symbol
failure_styleВіддзеркалити значення параметра success_style при успішному виконанні програмі та failure_style в іншому випадку
recognize_signal_codetrueВмикає сигнал на код виходу
map_symbolfalseВмикає символ на код виходу
pipestatusfalseВмикає звітування про pipestatus
pipestatus_separator|Символ, що використовується для розділення сегментів конвеєра (підтримує форматування)
pipestatus_format'\[$pipestatus\] => [$symbol$common_meaning$signal_name$maybe_int]($style) 'Формат модуля, коли команда є конвеєром
pipestatus_segment_formatЯкщо вказано, замінює format під час форматування сегментів конвеєра
disabledtrueВимикає модуль status.

Змінні ​

ЗміннаПрикладОпис
status127Код виходу останньої команди
hex_status0x7FКод виходу останньої команди в hex
int127Код виходу останньої команди
common_meaningERRORЗначення коду, якщо не сигнал
signal_number9Номер сигналу, що відповідає коду завершення, за наявності
signal_nameKILLНазва сигналу, що відповідає коду виходу лише в тому випадку, якщо його записано
maybe_int7Містить номер коду виходу, коли значення не знайдено
pipestatusПоказує коду виходу конвеєра, доступно тільки в форматі pipestatus_format
symbolВіддзеркалює значення параметра style
style*Віддзеркалити значення параметра success_style при успішному виконанні програмі та failure_style в іншому випадку

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[status]
style = 'bg:blue'
symbol = '🔴 '
success_symbol = '🟢 SUCCESS'
format = '[\[$symbol$common_meaning$signal_name$maybe_int\]]($style) '
map_symbol = true
disabled = false

Sudo ​

Модуль sudo показує, чи є зараз облікові дані sudo в кеші. Модуль показується лише за наявності даних в кеші.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Змінні ​

ЗміннаПрикладОпис
format'[as $symbol]($style)'Віддзеркалює значення параметра symbol
symbol'🧙 'Віддзеркалює значення параметра style
style'bold blue'Стиль модуля.
allow_windowsfalseОскільки Windows не має sudo, для цієї Ос модуль типово вимкнено.
disabledtrueВимикає модуль sudo.

Змінні ​

ЗміннаПрикладОпис
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[sudo]
style = 'bold green'
symbol = '👩‍💻 '
disabled = false
toml
# On windows
# $HOME\.starship\config.toml

[sudo]
allow_windows = true
disabled = false

Swift ​

Модуль swift показує поточну встановлену версію Swift. Модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл Package.swift
  • Поточна тека містить файли з розширенням .swift

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol($version )]($style)'Версія swift
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'🐦 'Віддзеркалює значення параметра style
detect_extensions['swift']Які розширення повинні запускати цей модуль.
detect_files['Package.swift']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'bold 202'Стиль модуля.
disabledfalseВимикає модуль swift.

Змінні ​

ЗміннаПрикладОпис
versionv5.2.4Версія swift
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

toml
# ~/.config/starship.toml

[swift]
format = 'via [🏎  $version](red bold)'

Terraform ​

Модуль terraform показує поточний вибраний робочий простір Terraform та його версію. Він підтримує як Hashicorp Terraform, так і OpenTofu для виявлення версій.

Порада

Типово версія Terraform/OpenTofu не показується, оскільки це повільно для поточних версій Terraform, коли використовується багато втулків. Якщо ви все ще хочете увімкнути показ версії, дивіться приклад нижче.

Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить теку .terraform
  • Поточна тека містить файли з розширеннями .tf, .tfplan або .tfstate

Змінні ​

ЗміннаПрикладОпис
format'via [$symbol$workspace]($style) 'Версія terraform
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'💠'Віддзеркалює значення параметра symbol
detect_extensions['tf', 'tfplan', 'tfstate']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders['.terraform']В яких теках цей модуль має запускатись.
style'bold 105'Стиль модуля.
disabledfalseВимикає модуль terraform.
commands[ [ 'terraform', 'version' ], [ 'tofu', 'version' ] ]Як визначити версію Terraform.

Змінні ​

ЗміннаПрикладОпис
versionv0.12.24Версія terraform
workspaceстандартноПоточна робоча область Terraform
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

З версією Terraform ​

toml
# ~/.config/starship.toml

[terraform]
format = 'via [$symbol$version $workspace]($style) '

Без версії Terraform ​

toml
# ~/.config/starship.toml

[terraform]
format = 'via [$symbol$workspace]($style) '

Time ​

Модуль time показує поточний місцевий час. Значення конфігурації format використовується крейтом jiff для керування способом показу часу. Ознайомтеся з документацією до бібліотеки jiff strftime, щоб дізнатися, які параметри доступні.

Порада

Типово цей модуль вимкнено. Щоб його увімкнути, встановіть значення параметра disabled в false у вашому файлі налаштувань.

Параметри ​

ПараметрСтандартноОпис
format'at [$time]($style) 'Формат рядка модуля.
use_12hrfalseВмикає 12-годинний формат
time_formatдивіться нижчеСтрока форматування jiff, що використовується для форматування часу.
style'bold yellow'Стиль модуля time
utc_time_offset'local'Встановлює зсув від UTC. Або назва часового поясу IANA, або діапазон від -24 < x < 24. Дозволяє часові пояси із сувом 30/45 хвилин.
disabledtrueВимикає модуль time.
time_range'-'Встановлює діапазон часу, протягом якого модуль показується. Час має бути зазначений у 24-годинному форматі

Якщо use_12hr є true, то стандартно time_format — '%r'. В іншому випадку стандартне значення — '%T'. Налаштований вручну time_format має перевагу над параметром use_12hr.

Змінні ​

ЗміннаПрикладОпис
time13:08:10Поточний час.
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Приклад ​

Зі зміщенням за UTC ​

toml
# ~/.config/starship.toml

[time]
disabled = false
format = '🕙[\[ $time \]]($style) '
time_format = '%T'
utc_time_offset = '-5'
time_range = '10:00:00-14:00:00'

З назвою часового поясу ​

toml
# ~/.config/starship.toml

[time]
disabled = false
time_format = '%T'
utc_time_offset = 'Europe/Berlin'

Typst ​

Модуль typst показує поточну встановлену версію Typst, що використовується в проєкті.

Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл template.typ
  • Поточна тека містить файл *.typ

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol't 'Формат рядка, що представляє символ Typst
style'bold #0093A7'Стиль модуля.
detect_extensions['.typ']Які розширення повинні запускати цей модуль.
detect_files['template.typ']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
disabledfalseВимикає модуль typst.

Змінні ​

ЗміннаПрикладОпис
versionv0.9.0Версія typst, псевдонім для typst_version
typst_versionстандартноПоточна версія Typest
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Username ​

Модуль username показує імʼя активного користувача. Модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточний користувач має права суперкористувача
  • Поточний користувач не є таким же, як той, який увійшов до системи
  • Користувач зараз підключений через SSH
  • Змінна show_always встановлена в true
  • Масив detect_env_vars містить принаймні одну змінну середовища, яку було встановлено

Порада

SSH-зʼєднання виявляється шляхом перевірки змінних оточення SSH_CONNECTION, SSH_CLIENT та SSH_TTY. Якщо ваш хост SSH не налаштував ці змінні, одним зі способів розвʼязання проблеми є встановлення для однієї з них фіктивного значення.

Завжди показувати username ​

ПараметрСтандартноОпис
style_root'bold red'Стиль, який використовується коли користувач є root/admin.
style_user'bold yellow'Стиль для звичайних користувачів.
detect_env_vars[]Які змінні середовища повинні запускати цей модуль.
format'[$user]($style) in 'Формат модуля.
show_alwaysfalseЗавжди показувати модуль username.
disabledfalseВимикає модуль username.
aliases{}Переводить системні імена користувачів у щось інше.

Змінні ​

ЗміннаПрикладОпис
style'red bold'Віддзеркалює значення параметра style_root коли користувач root, і style_user в іншому випадку.
user'matchai'Поточний користувач.

Приклад ​

Параметри ​

toml
# ~/.config/starship.toml

[username]
style_user = 'white bold'
style_root = 'black bold'
format = 'user: [$user]($style) '
disabled = false
show_always = true
aliases = { "corpuser034g" = "matchai" }

Vagrant ​

Модуль vagrant показує поточну встановлену версію Vagrant. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл Vagrantfile

Приклад ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'⍱ 'Формат рядка, що представляє символ Vagrant.
detect_extensions[]Які розширення повинні запускати цей модуль.
detect_files['Vagrantfile']Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'cyan bold'Стиль модуля.
disabledfalseВимикає модуль vagrant.

Змінні ​

ЗміннаПрикладОпис
versionVagrant 2.2.10Версія Vagrant
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Параметри ​

toml
# ~/.config/starship.toml

[vagrant]
format = 'via [⍱ $version](bold white) '

V ​

Модуль vlang показує поточну встановлену версію V. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файли з розширенням .v
  • Поточна тека містить файли v.mod, vpkg.json або vpkg-lock.json

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'V 'Формат рядка, що представляє символ V
detect_extensions['v']Які розширення повинні запускати цей модуль.
detect_files['v.mod', 'vpkg.json', '.vpkg-lock.json' ]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.
style'blue bold'Стиль модуля.
disabledfalseВимикає модуль vlang.

Змінні ​

ЗміннаПрикладОпис
versionv0.2Версія v
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

Параметри ​

toml
# ~/.config/starship.toml
[vlang]
format = 'via [V $version](blue bold) '

VCS ​

Зверніть увагу, що модуль є стандартно увімкненим, але не є у списку стандартних модулів, оскільки це була б суттєва зміна. Крім того, точний формат модуля може змінитися в майбутньому, наприклад, для обробки вирівнювання праворуч.

Модуль vcs показує поточну активну систему контролю версій (VCS). Модуль буде показаний тільки в тому випадку, якщо налаштована VCS зараз використовується.

Параметри ​

ПараметрСтандартноОпис
order["git", "hg", "pijul", "fossil"]Порядок в якому потрібно шукати VCS.
fossil_modules"$fossil_branch$fossil_metrics"Модулі для показу, коли знайдено репозиторій Fossil.
git_modules"$git_branch$git_commit$git_state$git_metrics$git_status"Модулі для показу, коли знайдено репозиторій Git.
hg_modules"$hg_branch$hg_state"Модулі для показу, коли знайдено репозиторій Mercurial.
pijul_modules"$pijul_channel"Модулі для показу, коли знайдено репозиторій Pijul.
disabledfalseВимикає модуль vcs.

Приклад ​

toml
# ~/.config/starship.toml

[vcs]
# Шукатиме Git, а потім Pijul, якщо Git не знайдено, але не шукатиме інші VCS.
order = [
  "git",
  "pijul",
]
# Тут можна включити будь-який модуль (крім самого `$vcs`, щоб уникнути нескінченних циклів).
git_modules = "$git_branch${custom.foo}"

# Дивіться документацію для власних модулів
[custom.foo]
command = 'echo foo'
detect_files = ['foo']
when = ''' test "$HOME" = "$PWD" '''
format = ' transcending [$output]($style)'

VCSH ​

Модуль vcsh показує поточний репозиторій VCSH. Модуль показується лише в тому випадку, якщо репозиторій використовується.

Приклад ​

ПараметрСтандартноОпис
symbol''Символ, який знаходиться перед назвою репозиторію.
style'bold yellow'Стиль модуля.
format'vcsh [$symbol$repo]($style) 'Формат модуля.
disabledfalseВимикає модуль vcsh.

Змінні ​

ЗміннаПрикладОпис
repodotfiles якщо в VCSH repo з іменем dotfilesНазва поточного репозиторію
symbolВіддзеркалює значення параметра style
style*black bold dimmedВіддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Параметри ​

toml
# ~/.config/starship.toml

[vcsh]
format = '[🆅 $repo](bold blue) '

XMake ​

Модуль xmake показує поточну встановлену версію XMake. Типово, модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл xmake.lua

Параметри ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'△ 'Символ, який йде перед версією cmak.
detect_extensions[]Які розширення повинні запускати цей модуль
detect_files['xmake.lua']Назви файлів, які активують модуль
detect_folders[]Назви тек, що активують модуль
style'bold green'Стиль модуля.
disabledfalseВимикає модуль xmake.

Змінні ​

ЗміннаПрикладОпис
versionv2.9.5Версія xmake
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

*: Ця змінна може бути використана лише як частина стилю рядка

Zig ​

Модуль zig показує поточну встановлену версію Zig. Модуль показується, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл .zig

Приклад ​

ПараметрСтандартноОпис
format'via [$symbol($version )]($style)'Формат модуля.
version_format'v${raw}'Формат версії. Доступні змінні raw, major, minor та patch
symbol'↯ 'Символ, який знаходиться перед версією Zig.
style'bold yellow'Стиль модуля.
disabledfalseВимикає модуль zig.
detect_extensions['zig']Які розширення повинні запускати цей модуль.
detect_files[]Які імена файлів мають запускати цей модуль.
detect_folders[]В яких теках цей модуль має запускатись.

Власні команди ​

ЗміннаПрикладОпис
versionv0.6.0Версія zig
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

Модулі показуються, якщо виконується будь-яка з наступних умов:

Приклад ​

toml
# ~/.config/starship.toml

[zig]
symbol = '⚡️ '

Власні команди ​

Модулі custom показують результат виконання певних довільних команд.

Модулі показуються, якщо виконується будь-яка з наступних умов:

  • Поточна тека містить файл, імʼя якого є в detect_files
  • Поточна тека містить теки, імʼя яких вказано в detect_folders
  • Поточна тека містить файл, розширення якого є в detect_extensions
  • Команда when повертає 0
  • Поточна операційна система (std::env::consts::OS) збігається з полем os, якщо визначено.

Порада

Кілька власних модулів можна визначити за допомогою ..

Порада

Порядок показу власних модулів можна встановити індивідуально, включивши ${custom.foo} у format верхнього рівня (оскільки він містить крапку, потрібно використовувати ${...}). Типово, модуль custom покаже усі модулі custom, в тому порядку, в якому вони були визначені.

Порада

Тікет #125 містить приклади власних модулів. Якщо у вас є цікавий приклад ще не розкритий там, не соромтеся, поділитися ним!

Попередження

Якщо ввімкнено параметр unsafe_no_escape або у версіях Starship до v1.20, вихідні дані команд виводяться у командний рядок без екранування.

Незалежно від результату, який генерує команда, він виводиться в командний рядок у незміненому вигляді. Це означає, що якщо вивід містить специфічні для оболонки інтерпретовані послідовності, вони можуть бути інтерпретовані безпосередньо під час виведення на екран. Залежно від оболонки, це може означати, що, наприклад, рядки, у зворотніх лапках, виконуються оболонкою. Такі послідовності зазвичай залежать від оболонки, наприклад, ви можете написати командний модуль, який створює послідовності для bash, наприклад, \h, але цей модуль не працюватиме в оболонці fish або zsh.

Строки форматування також можуть містити послідовності команд, характерні для конкретної оболонки, наприклад: Bash, Zsh.

Власні команди shell ​

ПараметрСтандартноОпис
command''Команда, вивід якої потрібно показувати. Команду буде передано до оболонки через stdin.
whenfalseАбо булеве значення (true чи false, без лапок) або команди shell, що використовуються як умова для показу модуля. У випадку рядка команди, модуль буде показаний, якщо shell повертає код завершення 0.
require_repofalseЯкщо true, модуль буде показано лише в шляхах, що містять репозиторій (git). Цей параметр сам по собі не є достатньою умовою для показу модуля за відсутності інших варіантів.
shellДив нижче
опис'<custom module>'Опис модуля, який показується під час запуску starship explain.
unsafe_no_escapefalseЯкщо встановлено, виведення команд не екранується від символів, які можуть бути інтерпретовані оболонкою.
detect_files[]Файли, які треба шукати у робочій теці для отримання збігу.
detect_folders[]Теки, які треба шукати у робочій теці для отримання збігу.
detect_extensions[]Розширення файлів, які треба шукати у робочій теці для отримання збігу.
symbol''Символ, який йде перед виводом команди.
style'bold green'Стиль модуля.
format'[$symbol($output )]($style)'Формат модуля.
disabledfalseВимикає показ модулі custom.
osНазва операційної системи, на якій буде показано модуль (unix, linux, macos, windows, … ) Перегляньте можливі значення.
use_stdinНеобов’язкове логічне значення, яке перевизначає, чи команди слід пересилати в оболонку через стандартний ввід чи як аргумент. Якщо не встановлено, типово використовується стандартний ввід, якщо оболонка не підтримує його (cmd, nushell). Встановлення цього параметра вимикає обробку специфічних для оболонки аргументів.
ignore_timeoutfalseІгнорує глобальне налаштування command_timeout і продовжує виконувати зовнішні команди, незалежно від того, скільки часу вони вимагають.

Змінні ​

ЗміннаОпис
outputВивід command в shell
symbolВіддзеркалює значення параметра style
style*Віддзеркалює значення параметра style

Команду command (коли це застосовується) буде передано у stdin.

Власні команди shell ​

shell приймає непустий список рядків, де:

  • Перший рядок — це шлях до оболонки для виконання команди.
  • Наступні — інші аргументи, що передаються до оболонки.

Якщо не налаштовано, модуль повертатиметься до STARSHIP_SHELL, а потім до «sh» у Linux і «cmd /C» у Windows.

Команду command (коли це застосовується) буде передано у stdin.

Якщо shell не вказано або міститься тільки один елемент і Starship виявить, що буде використано PowerShell, наступні аргументи будуть автоматично додані: -Noprofile -Command -. Якщо shell не вказано або міститься лише один елемент і Starship виявить, що буде використано Cmd, аргумент /C буде автоматично додано, а stdin буде встановлено у false``. Якщо параметр shellне вказано або він містить лише один елемент, і Starship виявляє, що буде використовуватися Nushell, автоматично додадуться такі аргументи:-cтаstdinбудуть встановлені наfalse`. Такої поведінки можна уникнути шляхом явного передавання аргументів до оболонки, наприклад,

toml
shell = ['pwsh', '-Command', '-']

Попередження

Переконайтеся, що ваша власна конфігурація оболонки відповідним чином завершує роботу

Якщо ви вказуєте власну команду, переконайтеся, що стандартний Shell, який використовується starship, буде виконувати команди з чистим (graceful) завершенням, за допомогою параметра shell.

Наприклад, PowerShell потребує параметр -Command для виконання однорядкової команди. Пропуск цього параметра може призвести до рекурсивного циклу starship, де оболонка може спробувати знову завантажити повний профіль середовища з самим starship і, отже, повторно виконати власну команду, потрапивши в нескінченний цикл.

Параметри, подібні до -NoProfile у PowerShell, також рекомендовані для інших оболонок, щоб уникнути додаткового часу завантаження власного профілю під час кожного виклику Starship.

Наразі реалізовано автоматичне виявлення оболонок і правильне додавання параметрів, але можливо, що охоплено не всі оболонки. Будь ласка, створітьтікет з подробицями з терміналу і конфігурацією автора, якщо ви потрапили в такий сценарій.

Приклад ​

toml
# ~/.config/starship.toml

[custom.foo]
command = 'echo foo' # shows output of command
detect_files = ['foo'] # can specify filters but wildcards are not supported
when = ''' test "$HOME" = "$PWD" '''
format = ' transcending [$output]($style)'

[custom.time]
command = 'time /T'
detect_extensions = ['pst'] # filters *.pst files
shell = ['pwsh.exe', '-NoProfile', '-Command', '-']

[custom.time-as-arg]
command = 'time /T'
detect_extensions = ['pst'] # filters *.pst files
shell = ['pwsh.exe', '-NoProfile', '-Command']
use_stdin = false