mirror of
https://github.com/starship/starship.git
synced 2026-06-21 02:02:14 +07:00
Compare commits
535 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f41ccebe3c | |||
| b78f271fee | |||
| 682fa5f312 | |||
| 671f23140e | |||
| 2ae09e226a | |||
| 91efd25889 | |||
| 49cf2b016f | |||
| dc60c13b0d | |||
| fea4e5155a | |||
| f595899021 | |||
| 2b03c4e721 | |||
| 3dd8c14144 | |||
| 033f20b461 | |||
| da264890e3 | |||
| 57bb99bd0d | |||
| 9a17d3a4e2 | |||
| f28f7791a9 | |||
| 4197977efe | |||
| a496165316 | |||
| 166d7bb30a | |||
| 528332ee61 | |||
| cfd5e7619e | |||
| 26ce2ccf4c | |||
| 712210ecfe | |||
| 3df4a67591 | |||
| dc5c898dd1 | |||
| eb54ec12c8 | |||
| 831cffbb22 | |||
| dacc8e9408 | |||
| db39a6539d | |||
| 96c1f90eeb | |||
| 05ee20141e | |||
| 0d8ca602ad | |||
| 7499e283b3 | |||
| 54e861221c | |||
| 14a5f870af | |||
| e521f39078 | |||
| 17cf5317eb | |||
| 3ebbeae1a7 | |||
| 5162c4159b | |||
| b76e16c38c | |||
| 7d9cbeb5b7 | |||
| 41f2030db1 | |||
| e1d8dea865 | |||
| fe0296bc8f | |||
| ffe59d6787 | |||
| b85b7b9c52 | |||
| d455255e7b | |||
| d0e246802c | |||
| a54b62bfb1 | |||
| e5a1f9c33d | |||
| ed582dd038 | |||
| cd0b573326 | |||
| 10daba00c0 | |||
| c9bacab812 | |||
| 30c7f513d3 | |||
| bea2843088 | |||
| 6a2096608e | |||
| 387c2f6e28 | |||
| 8758daa776 | |||
| 27079d7669 | |||
| 65fb647bc3 | |||
| 3ec9b5c54c | |||
| 53270fb3f6 | |||
| c22100a678 | |||
| aac03c7e3e | |||
| b426db92a1 | |||
| b344ca6180 | |||
| 0cfd6af20f | |||
| a84ad4f4aa | |||
| 02622a1b4a | |||
| ef2c594a4c | |||
| 37fb6af201 | |||
| 9d6247a1c9 | |||
| 53a0e6c3f2 | |||
| fcfff68089 | |||
| c97455d9de | |||
| c8a48cdd97 | |||
| 37ac6b1d48 | |||
| e24aae7751 | |||
| 5fd735f05d | |||
| 457f16069b | |||
| ba990c1111 | |||
| c8391a93e9 | |||
| ff0104afbc | |||
| d96e49c24f | |||
| ba5fecb625 | |||
| 18cc9f3ef9 | |||
| f2bd7f28b3 | |||
| 0450b84237 | |||
| 59cc115f75 | |||
| 0b6b417534 | |||
| aa645db610 | |||
| b26545e6ab | |||
| 727fbe1914 | |||
| 58b45cc927 | |||
| 4ea3c5d03e | |||
| 3c4a4868ae | |||
| 0e825d4f1d | |||
| 01e5ebe57c | |||
| 05b8f2e002 | |||
| 6b6bbd7673 | |||
| cab65a4696 | |||
| b84ffd6dfb | |||
| 85f664b4b6 | |||
| f19d847cec | |||
| 9345072a38 | |||
| 52d4a1494d | |||
| 3df5dd254e | |||
| 7104d79920 | |||
| 402e9cac57 | |||
| 8f9012b277 | |||
| 533479e99a | |||
| 56b8901f6f | |||
| 7a274752d0 | |||
| 9c0416a3a7 | |||
| b8ee82167c | |||
| 9a48087137 | |||
| 12d85c1c1d | |||
| 13103ec520 | |||
| a1fe09e956 | |||
| a071a73cd8 | |||
| 09b9d1f91e | |||
| 355f09e623 | |||
| 32e3105e5d | |||
| e5c1c7c4a9 | |||
| fce0ed741b | |||
| 70bee78942 | |||
| 9062d3f237 | |||
| c00fa5dfd1 | |||
| ed3cc53993 | |||
| 6d0a1263fc | |||
| a675122f28 | |||
| ebba0035a2 | |||
| aa9af212ed | |||
| f0c75042d3 | |||
| 0b1c74c823 | |||
| b9694629a3 | |||
| e1d55436a2 | |||
| 8b34bf94ad | |||
| 8994e3b6f7 | |||
| e0175ae5eb | |||
| 8952f47d90 | |||
| c372aca880 | |||
| e2277e5958 | |||
| 99fe1bc372 | |||
| a981bea094 | |||
| 724493e792 | |||
| 0d71065a6e | |||
| 88d384f582 | |||
| 3885e81357 | |||
| 4ede45c4fa | |||
| e7c75950c8 | |||
| bd461fe8a0 | |||
| 622ea6068a | |||
| fe5932f4c5 | |||
| e48dd8e372 | |||
| d49d431146 | |||
| be23facbee | |||
| d79fe5cca6 | |||
| d8713c48ee | |||
| 1b0797bb6d | |||
| 56ee01046c | |||
| 4b35a0e7ef | |||
| 7639b526be | |||
| 4473dbb937 | |||
| 98029fd7b1 | |||
| ee0ed24771 | |||
| d67f127743 | |||
| 3c139aa060 | |||
| 267de27d6f | |||
| dc185ecb3a | |||
| 55ac362a8f | |||
| 6d2df426d1 | |||
| aba0a12b61 | |||
| b712168d10 | |||
| f2b14d485b | |||
| 0d9f4953fc | |||
| f72a79dc21 | |||
| 4f879b5aa4 | |||
| 37fdd1d2ca | |||
| c8b3e6e1ad | |||
| b5cffce04c | |||
| 058c73d189 | |||
| 3db1bcb69c | |||
| b96c0e8bc3 | |||
| 4a4c4ceb72 | |||
| be27a48783 | |||
| c9becf311a | |||
| cf795a5b3d | |||
| 674b916c45 | |||
| 6e8e3f15f4 | |||
| 81352a9647 | |||
| d3d2445dda | |||
| 0301f9b0e0 | |||
| 083ab008fc | |||
| 2e8f26e448 | |||
| 70b0f73554 | |||
| 6109716afe | |||
| 61eee25ad5 | |||
| ef64ec87e7 | |||
| 478ae1a827 | |||
| 8108cc95cf | |||
| 304ad27555 | |||
| edd070de2d | |||
| cc493347dc | |||
| 17a7547ca3 | |||
| f5d555ac83 | |||
| 4f9cd04ae0 | |||
| 8803ef44c9 | |||
| 9cc93709a9 | |||
| 00f3c3cf1a | |||
| 74e080453f | |||
| 50a31e5d5a | |||
| 9931ab25b2 | |||
| be8e07e79e | |||
| 65966048cb | |||
| 0110bf59c8 | |||
| 7c824e41ec | |||
| 91861886a7 | |||
| 0dd5a4f402 | |||
| 8a69666084 | |||
| e910f47597 | |||
| 3ac96dfffc | |||
| 4c5176c5de | |||
| 815ddb2245 | |||
| c576625343 | |||
| 93169d31ca | |||
| d7ecd6156c | |||
| 9f53ac0cf5 | |||
| 5de07128ab | |||
| 33f7077fbe | |||
| 0daa8d3f92 | |||
| cd64933333 | |||
| d29471418f | |||
| 6d9c8ea8a9 | |||
| 88a3d37e64 | |||
| cc65e0c742 | |||
| 08824d7c6e | |||
| 6e6664dea6 | |||
| 74e13d1e59 | |||
| 0af0814b19 | |||
| a261b48caa | |||
| 6e72335c0e | |||
| 048acd1aa7 | |||
| 37b6225a12 | |||
| c5d65a38f7 | |||
| 4c9bd6de98 | |||
| a564fd8e98 | |||
| 94c6d6e012 | |||
| b0fd21f8b9 | |||
| 89d1ef0395 | |||
| bca890aa04 | |||
| d11bc8d586 | |||
| 056ab55dbb | |||
| 6d7ab0503e | |||
| 3b0aef3dc2 | |||
| e4d218f047 | |||
| 405ec43306 | |||
| 66d2c0e0a6 | |||
| e536a8ec1c | |||
| 550538c10b | |||
| bb4ae4e18c | |||
| 3943fc4c6e | |||
| 61a76a2665 | |||
| 909ff7a99a | |||
| f8be6ef568 | |||
| 46ab8621a7 | |||
| 93d62dc2fe | |||
| 0206c0b843 | |||
| 69ddff3e1b | |||
| e447cfae4e | |||
| ad9f55d709 | |||
| 62c51a8e69 | |||
| 6fb6b6cabc | |||
| 4b7d9d41e7 | |||
| 52ab91039c | |||
| b4d401c304 | |||
| 3ff1ec0e63 | |||
| fd637a41bb | |||
| bfd7adea7c | |||
| 378f3e42be | |||
| d6daf8a4e1 | |||
| 5736b481e2 | |||
| 7795bab3bd | |||
| f143aed72a | |||
| 2f816f1e6e | |||
| a71606d2bb | |||
| 47de63ed66 | |||
| 1ec0941bf0 | |||
| 3b78de84ae | |||
| 53f1ac9d92 | |||
| c0206cd0f5 | |||
| 10b67d50dc | |||
| dbbc4ca293 | |||
| 5d48bbf11d | |||
| a22fdfb7d4 | |||
| 6a42b09258 | |||
| 60b49f0dab | |||
| 408a7c05e1 | |||
| 6817c0f255 | |||
| e6eef15a72 | |||
| 1bf73f7baf | |||
| 3c366dc87a | |||
| 083870239e | |||
| 8f263209c3 | |||
| 3e58ce8ee5 | |||
| c8dcc8ffb1 | |||
| 56c8d063e2 | |||
| 699a005c0d | |||
| b7dea479eb | |||
| 6a604b4671 | |||
| 8258063791 | |||
| fe4abb605f | |||
| 3749d67025 | |||
| ef5227eeaf | |||
| 90d8c4a256 | |||
| 3b5bbe3566 | |||
| 583031e597 | |||
| 49eb281441 | |||
| e5933327d7 | |||
| 87b7ac342f | |||
| 5db4ea7878 | |||
| 4caee4a7ca | |||
| 31d890cb7c | |||
| b9c68930a5 | |||
| a64823d45e | |||
| 06fa704aed | |||
| 2cc2b49bfc | |||
| bd7948f3e1 | |||
| 0b525753ce | |||
| 7b8f747050 | |||
| a94c4b7e6a | |||
| bd176e3482 | |||
| a8de3fe4e9 | |||
| 551a7ed8da | |||
| a3cf8dab4e | |||
| 32b58831a6 | |||
| 231c9465ea | |||
| 7e056a0a67 | |||
| 2c1f0effcc | |||
| 598daae259 | |||
| f7d583821a | |||
| 6526d4bb5e | |||
| ba32d34f2f | |||
| 652ad88d7d | |||
| cb2dcf5c50 | |||
| ba5f71baec | |||
| eb66076bb6 | |||
| db751fe29a | |||
| 0c1e1dd2d0 | |||
| 89567bd527 | |||
| 58d9e448a4 | |||
| 91e4478782 | |||
| 0e6cdd5308 | |||
| 3d5efd039c | |||
| 678ce4758b | |||
| e9d6647153 | |||
| 15825bee6d | |||
| 286b0f2be3 | |||
| 95313f83bf | |||
| d85ee0a18c | |||
| f04362e84b | |||
| 4ace586699 | |||
| 339b5cf50a | |||
| 113745bb6b | |||
| 1afa67096d | |||
| a34fb05691 | |||
| 05daa3e278 | |||
| a60df1d1fe | |||
| 590a6b8db8 | |||
| 0f5d8d4a4a | |||
| 38db5f0094 | |||
| ef7d8bd442 | |||
| 95bf53f6b9 | |||
| 2c11c086b8 | |||
| 109a6811ce | |||
| 11dbaed316 | |||
| ef2958c61c | |||
| 521b15da3d | |||
| 1904f04cf7 | |||
| 6cd03ba23e | |||
| 6c69011196 | |||
| ee2a53be4c | |||
| 1aa99c8fa4 | |||
| dbb32bf62e | |||
| 6a9fe7d654 | |||
| dc89350e6d | |||
| 386863c70b | |||
| d8ff74bd43 | |||
| d3e9ede789 | |||
| 54d99d2565 | |||
| fe184e6482 | |||
| e0e6e390ae | |||
| 2befc8283a | |||
| c3fb532eff | |||
| 57e1926e2d | |||
| a96b429e02 | |||
| b698fb0559 | |||
| 4b3470e9b1 | |||
| f9e3e7411e | |||
| 9074f2b4ca | |||
| 07778a8452 | |||
| 6886ad082c | |||
| 26a62372d1 | |||
| 5dd40ea62f | |||
| f42b53edd8 | |||
| 3760f29560 | |||
| 6d717b20ae | |||
| 547336a5f7 | |||
| 1df755159d | |||
| b1036b17c9 | |||
| d04851a287 | |||
| c7425e3236 | |||
| c4630e3389 | |||
| 8b5d12c8a1 | |||
| 24bc8206d2 | |||
| 5563e81bcd | |||
| f28cbc9e5f | |||
| a2b60950f2 | |||
| 5b27951c81 | |||
| 08c24627c3 | |||
| e528f545f6 | |||
| 32c29cfda7 | |||
| bc48b5fcb0 | |||
| 9db08d2d4d | |||
| d4e5dfadf2 | |||
| 4bc9891f04 | |||
| 75e7985c36 | |||
| 26264b038b | |||
| 613b86202d | |||
| 2581f8f938 | |||
| b120d7e58f | |||
| 27d05d46dd | |||
| 8eba75d0ea | |||
| 89a0b0815a | |||
| 98ca1a194f | |||
| 0ad1cf831a | |||
| d36b843580 | |||
| f5780d9f00 | |||
| 1a37dfca5a | |||
| ec1741d702 | |||
| 73574f765d | |||
| edbd2e209d | |||
| 53b399b909 | |||
| edf441b664 | |||
| 26f7822ae6 | |||
| 195f28dbc0 | |||
| ff0acb193e | |||
| 94cdbc3f77 | |||
| 1c2f4d4659 | |||
| ae5a9056a2 | |||
| 7e39fd8544 | |||
| dedf7af4df | |||
| eb08e713e2 | |||
| a21cbd6770 | |||
| 5e25823f2b | |||
| 0e667df52b | |||
| 76f125b4f5 | |||
| 1bf4a9cc88 | |||
| 39d62321fe | |||
| edd46cce3a | |||
| d69b1c3561 | |||
| 34a911df56 | |||
| 47395d4a69 | |||
| a9261a8ed3 | |||
| 44a6353fc7 | |||
| 3543e0bc45 | |||
| e149f381eb | |||
| 8cb7c34a40 | |||
| a19e027b26 | |||
| 608ae37bcf | |||
| 3d2cf2a2fc | |||
| 6122516887 | |||
| 5bf25b77a4 | |||
| d0f66c7842 | |||
| ad9654a6c2 | |||
| 07c8143adf | |||
| 8589ba3b51 | |||
| 66c1597252 | |||
| 9f922105b1 | |||
| ea26e25fcd | |||
| cf617cd226 | |||
| 2c515c9488 | |||
| 0d5fec7707 | |||
| 101291c5f4 | |||
| 7bb431c58e | |||
| d737713328 | |||
| 74bdf047a2 | |||
| 87c61c5cde | |||
| 9ab8b84ea6 | |||
| 29620fde80 | |||
| 0ed5e8903e | |||
| e406f552f8 | |||
| ccc32e73fc | |||
| 5f0b31b4c8 | |||
| 7f4eb6fdae | |||
| e0d16e3a96 | |||
| 09c2b07975 | |||
| e79b410d9e | |||
| a5c971c8b1 | |||
| b4f85a3de1 | |||
| 873a5b11df | |||
| 5e8851a953 | |||
| c1a8483ac9 | |||
| a12a04cafb | |||
| c4100d9c14 | |||
| 45c316b66f | |||
| 4eaec686b3 | |||
| 44e9e56480 | |||
| ac2359ca8a | |||
| d15c183505 | |||
| 4cd15756ae | |||
| 08cf17911b | |||
| 0877e81672 | |||
| 1a6e9137e4 | |||
| 87f9a2367b | |||
| fb0ba07de3 | |||
| 4236712e5f | |||
| f9c83def71 | |||
| 4728d20341 | |||
| a477186e52 | |||
| a98a05f1ac | |||
| e565e8a32d | |||
| d404182164 | |||
| dc79c1385c | |||
| 2048bb224e | |||
| 1996feb1d5 | |||
| f9edc78804 | |||
| f34ff6ace8 | |||
| a2c98b8cf6 | |||
| 874980a079 | |||
| e81cdd43db | |||
| 073426664c | |||
| ed87dc5750 |
+3
-3
@@ -25,9 +25,9 @@
|
||||
"target/"
|
||||
],
|
||||
"plugins": [
|
||||
"https://github.com/dprint/dprint-plugin-typescript/releases/download/0.95.0/plugin.wasm",
|
||||
"https://github.com/dprint/dprint-plugin-json/releases/download/0.20.0/plugin.wasm",
|
||||
"https://github.com/dprint/dprint-plugin-markdown/releases/download/0.18.0/plugin.wasm",
|
||||
"https://github.com/dprint/dprint-plugin-typescript/releases/download/0.96.1/plugin.wasm",
|
||||
"https://github.com/dprint/dprint-plugin-json/releases/download/0.21.3/plugin.wasm",
|
||||
"https://github.com/dprint/dprint-plugin-markdown/releases/download/0.22.1/plugin.wasm",
|
||||
"https://github.com/dprint/dprint-plugin-toml/releases/download/0.7.0/plugin.wasm"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -16,12 +16,27 @@ Closes #
|
||||
<!--- Please describe in detail how you tested your changes. -->
|
||||
<!--- Include details of your testing environment, tests ran to see how -->
|
||||
<!--- your change affects other areas of the code, etc. -->
|
||||
<!--- Most changes do not need to be tested on multiple operating systems. -->
|
||||
- [ ] I have tested using **MacOS**
|
||||
- [ ] I have tested using **Linux**
|
||||
- [ ] I have tested using **Windows**
|
||||
|
||||
#### AI-Assistance
|
||||
<!-- Per our AI Policy (AI_POLICY.md), all AI usage must be declared. -->
|
||||
Have you used AI-assistance to author this PR?
|
||||
|
||||
- [ ] Yes
|
||||
- [ ] No
|
||||
|
||||
If **yes**, describe the scope of assistance:
|
||||
<!--- Describe how you used AI-Assistance -->
|
||||
<!--- Disclosure is required if you have used AI-assistance -->
|
||||
<!--- For example: answering project questions, writing tests, implementation, or documentation -->
|
||||
N/A
|
||||
|
||||
#### Checklist:
|
||||
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
|
||||
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
|
||||
- [ ] I have updated the documentation accordingly.
|
||||
- [ ] I have updated the tests accordingly.
|
||||
- [ ] I understand and have read the code I contribute and can answer questions about it.
|
||||
|
||||
+3811
-2942
File diff suppressed because it is too large
Load Diff
+126
-52
@@ -1,76 +1,150 @@
|
||||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": [
|
||||
// stripped-down config:base
|
||||
":prHourlyLimit2",
|
||||
":prConcurrentLimit10",
|
||||
"group:monorepos",
|
||||
"group:recommended",
|
||||
"workarounds:all",
|
||||
$schema: 'https://docs.renovatebot.com/renovate-schema.json',
|
||||
extends: [
|
||||
'config:best-practices',
|
||||
'security:openssf-scorecard',
|
||||
// automerge minor updates
|
||||
":automergeMinor",
|
||||
":automergeBranch"
|
||||
':automergeMinor',
|
||||
':automergeBranch',
|
||||
],
|
||||
"labels": ["📦 dependencies"],
|
||||
"semanticCommits": "enabled",
|
||||
"semanticCommitType": "build",
|
||||
"rangeStrategy": "bump",
|
||||
"rebaseWhen": "conflicted",
|
||||
"lockFileMaintenance": {
|
||||
"enabled": true,
|
||||
"extends": ["schedule:weekly"],
|
||||
"groupName": "lockfile maintenance",
|
||||
"automerge": true
|
||||
ignorePresets: [
|
||||
':dependencyDashboard',
|
||||
':semanticPrefixFixDepsChoreOthers',
|
||||
],
|
||||
labels: [
|
||||
'📦 dependencies',
|
||||
],
|
||||
minimumReleaseAge: '4 days',
|
||||
semanticCommits: 'enabled',
|
||||
semanticCommitType: 'build',
|
||||
rangeStrategy: 'bump',
|
||||
rebaseWhen: 'conflicted',
|
||||
lockFileMaintenance: {
|
||||
enabled: true,
|
||||
extends: [
|
||||
'schedule:weekly',
|
||||
],
|
||||
groupName: 'lockfile maintenance',
|
||||
automerge: true,
|
||||
},
|
||||
"packageRules": [
|
||||
packageRules: [
|
||||
// group updates to related packages
|
||||
{
|
||||
"groupName": "clap crates",
|
||||
"matchDatasources": ["crate"],
|
||||
"matchPackagePrefixes": ["clap"]
|
||||
groupName: 'clap crates',
|
||||
matchDatasources: [
|
||||
'crate',
|
||||
],
|
||||
matchPackageNames: [
|
||||
'clap{/,}**',
|
||||
],
|
||||
},
|
||||
{
|
||||
"groupName": "gitoxide crates",
|
||||
"matchDatasources": ["crate"],
|
||||
"matchPackagePrefixes": ["gix"]
|
||||
groupName: 'gitoxide crates',
|
||||
matchDatasources: [
|
||||
'crate',
|
||||
],
|
||||
matchPackageNames: [
|
||||
'gix{/,}**',
|
||||
],
|
||||
},
|
||||
{
|
||||
"groupName": "pest crates",
|
||||
"matchDatasources": ["crate"],
|
||||
"matchPackagePrefixes": ["pest"]
|
||||
groupName: 'pest crates',
|
||||
matchDatasources: [
|
||||
'crate',
|
||||
],
|
||||
matchPackageNames: [
|
||||
'pest{/,}**',
|
||||
],
|
||||
},
|
||||
{
|
||||
"groupName": "toml crates",
|
||||
"matchDatasources": ["crate"],
|
||||
"matchPackagePrefixes": ["toml"]
|
||||
groupName: 'toml crates',
|
||||
matchDatasources: [
|
||||
'crate',
|
||||
],
|
||||
matchPackageNames: [
|
||||
'toml{/,}**',
|
||||
],
|
||||
},
|
||||
{
|
||||
"groupName": "unicode crates",
|
||||
"matchDatasources": ["crate"],
|
||||
"matchPackagePrefixes": ["unicode"]
|
||||
groupName: 'unicode crates',
|
||||
matchDatasources: [
|
||||
'crate',
|
||||
],
|
||||
matchPackageNames: [
|
||||
'unicode{/,}**',
|
||||
],
|
||||
},
|
||||
// Prevent too many PRs by grouping certain updates together and only updating them weekly
|
||||
{
|
||||
groupName: 'dprint plugins',
|
||||
extends: [
|
||||
'schedule:weekly',
|
||||
],
|
||||
matchPackageNames: [
|
||||
'dprint{/,}**',
|
||||
],
|
||||
},
|
||||
{
|
||||
"groupName": "dprint plugins",
|
||||
"matchPackagePrefixes": ["dprint"],
|
||||
"extends": ["schedule:weekly"]
|
||||
groupName: 'npm',
|
||||
matchDatasources: [
|
||||
'npm',
|
||||
],
|
||||
extends: [
|
||||
'schedule:weekly',
|
||||
],
|
||||
},
|
||||
// Avoid frequent updates due to pinned digest values in GitHub Actions
|
||||
{
|
||||
"groupName": "npm",
|
||||
"matchDatasources": ["npm"],
|
||||
"extends": ["schedule:weekly"]
|
||||
}
|
||||
matchDepTypes: [
|
||||
'action',
|
||||
],
|
||||
extends: [
|
||||
'schedule:weekly',
|
||||
],
|
||||
},
|
||||
],
|
||||
// custom regex update managers
|
||||
"regexManagers": [
|
||||
customManagers: [
|
||||
{
|
||||
"fileMatch": ["(^|\\/)\\.?dprint.json"],
|
||||
"matchStrings": ["\"https://github.com/(?<depName>.+)/releases/download/(?<currentValue>.+)/plugin.wasm\""],
|
||||
"datasourceTemplate": "github-releases"
|
||||
customType: 'regex',
|
||||
managerFilePatterns: [
|
||||
'/(^|\\/)\\.?dprint.json/',
|
||||
],
|
||||
matchStrings: [
|
||||
'"https://github.com/(?<depName>.+)/releases/download/(?<currentValue>.+)/plugin.wasm"',
|
||||
],
|
||||
datasourceTemplate: 'github-releases',
|
||||
},
|
||||
{
|
||||
"fileMatch": ["^(workflow-templates|\\.github\\/workflows)\\/[^/]+\\.ya?ml$"],
|
||||
"matchStrings": ["cargo install.*--version (?<currentValue>\\S+).*\\s(?<depName>\\S+)"],
|
||||
"datasourceTemplate": "crate"
|
||||
}
|
||||
]
|
||||
customType: 'regex',
|
||||
managerFilePatterns: [
|
||||
'/^(workflow-templates|\\.github\\/workflows)\\/[^/]+\\.ya?ml$/',
|
||||
],
|
||||
matchStrings: [
|
||||
'cargo install.*--version (?<currentValue>\\S+).*\\s(?<depName>\\S+)',
|
||||
],
|
||||
datasourceTemplate: 'crate',
|
||||
},
|
||||
{
|
||||
customType: 'regex',
|
||||
managerFilePatterns: [
|
||||
'/^(workflow-templates|\\.github\\/workflows)\\/[^/]+\\.ya?ml$/',
|
||||
],
|
||||
matchStrings: [
|
||||
'^\\s+tool: (?<depName>[\\w-]+)@(?<currentValue>[^\\s]+)',
|
||||
],
|
||||
datasourceTemplate: 'crate',
|
||||
},
|
||||
{
|
||||
customType: 'regex',
|
||||
managerFilePatterns: [
|
||||
'/^(workflow-templates|\\.github\\/workflows)\\/[^/]+\\.ya?ml$/',
|
||||
],
|
||||
matchStrings: [
|
||||
'ziglang==(?<currentValue>\\S+)',
|
||||
],
|
||||
datasourceTemplate: 'pypi',
|
||||
depNameTemplate: 'ziglang',
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ jobs:
|
||||
# Prevent this workflow from running (and failing) on forks
|
||||
if: github.repository == 'starship/starship'
|
||||
steps:
|
||||
- uses: starship/crowdin-pretranslate-action@v0.1.1
|
||||
- uses: starship/crowdin-pretranslate-action@05f21625b1486f1b77d53002fed82c4609247712 # v0.1.1
|
||||
with:
|
||||
project_id: 372655
|
||||
api_key: ${{ secrets.CROWDIN_API_TOKEN }}
|
||||
|
||||
@@ -12,9 +12,9 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
- name: Docs | Format
|
||||
uses: dprint/check@v2.2
|
||||
uses: dprint/check@9cb3a2b17a8e606d37aae341e49df3654933fc23 # v2.3
|
||||
|
||||
# Validate preset files
|
||||
taplo:
|
||||
@@ -22,9 +22,11 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
- name: Install | Taplo
|
||||
run: cargo install --debug --locked --version 0.9.3 taplo-cli
|
||||
uses: taiki-e/install-action@25435dc8dd3baed7417e0c96d3fe89013a5b2e09 # v2.81.3
|
||||
with:
|
||||
tool: taplo-cli@0.10.0
|
||||
- name: Presets | Validate with schema
|
||||
run: taplo lint --schema "file://${GITHUB_WORKSPACE}/.github/config-schema.json" docs/public/presets/toml/*.toml
|
||||
|
||||
@@ -35,11 +37,11 @@ jobs:
|
||||
if: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.ref != 'i18n_master' }}
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Prevent File Change
|
||||
uses: actions/github-script@v7
|
||||
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
|
||||
with:
|
||||
script: |
|
||||
const { execSync } = require('child_process');
|
||||
@@ -62,12 +64,12 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Node
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
|
||||
with:
|
||||
node-version: 20
|
||||
node-version: 24.16.0
|
||||
cache: 'npm'
|
||||
cache-dependency-path: docs/package-lock.json
|
||||
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
name: Install Script
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- "install/**"
|
||||
pull_request:
|
||||
paths:
|
||||
- "install/**"
|
||||
|
||||
jobs:
|
||||
shellcheck:
|
||||
name: Shellcheck [Linter]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Lint | Run shellcheck
|
||||
run: shellcheck --severity=warning install/**/*.sh
|
||||
|
||||
shfmt:
|
||||
name: Shfmt [Formatter]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Install shfmt
|
||||
run: |
|
||||
curl -sS https://webi.sh/shfmt | sh
|
||||
echo "$HOME/.local/bin" >> "$GITHUB_PATH"
|
||||
|
||||
- name: Format | Check shfmt
|
||||
run: shfmt -d install/**/*.sh
|
||||
|
||||
test_install_script:
|
||||
name: Test Install Script
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Test | Piped execution with curl
|
||||
run: |
|
||||
# Test the installation method described at https://starship.rs/
|
||||
mkdir -p "$HOME/.test-install"
|
||||
curl -sS "file://$(pwd)/install/install.sh" | sh -s -- --yes --bin-dir "$HOME/.test-install"
|
||||
"$HOME/.test-install/starship" --version
|
||||
@@ -7,12 +7,12 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Node
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
|
||||
with:
|
||||
node-version: 20
|
||||
node-version: 24.16.0
|
||||
cache: 'npm'
|
||||
cache-dependency-path: docs/package-lock.json
|
||||
|
||||
@@ -25,9 +25,7 @@ jobs:
|
||||
working-directory: docs
|
||||
|
||||
- name: Publish
|
||||
uses: netlify/actions/cli@master
|
||||
with:
|
||||
args: deploy --prod --dir=docs/.vitepress/dist
|
||||
run: npx netlify-cli deploy --no-build --prod --dir=docs/.vitepress/dist
|
||||
env:
|
||||
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
|
||||
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
|
||||
|
||||
@@ -2,7 +2,7 @@ name: Release
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- main
|
||||
env:
|
||||
CARGO_INCREMENTAL: 0
|
||||
CARGO_NET_RETRY: 10
|
||||
@@ -20,7 +20,7 @@ jobs:
|
||||
release_created: ${{ steps.release.outputs.release_created }}
|
||||
tag_name: ${{ steps.release.outputs.tag_name }}
|
||||
steps:
|
||||
- uses: google-github-actions/release-please-action@v4
|
||||
- uses: googleapis/release-please-action@45996ed1f6d02564a971a2fa1b5860e934307cf7 # v5.0.0
|
||||
id: release
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
@@ -55,6 +55,11 @@ jobs:
|
||||
os: ubuntu-latest
|
||||
name: starship-arm-unknown-linux-musleabihf.tar.gz
|
||||
|
||||
- target: riscv64gc-unknown-linux-musl
|
||||
os: ubuntu-latest
|
||||
name: starship-riscv64gc-unknown-linux-musl.tar.gz
|
||||
use_zigbuild: true
|
||||
|
||||
- target: x86_64-apple-darwin
|
||||
os: macos-latest
|
||||
name: starship-x86_64-apple-darwin.tar.gz
|
||||
@@ -88,13 +93,10 @@ jobs:
|
||||
RUSTFLAGS: ${{ matrix.rustflags || '' }}
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@master
|
||||
with:
|
||||
toolchain: stable
|
||||
target: ${{ matrix.target }}
|
||||
run: rustup toolchain install stable --profile minimal --target ${{ matrix.target }} --no-self-update
|
||||
|
||||
- name: Setup | Install cargo-wix [Windows]
|
||||
continue-on-error: true
|
||||
@@ -105,17 +107,33 @@ jobs:
|
||||
RUSTFLAGS: ""
|
||||
|
||||
- name: Setup | Install cross [Linux]
|
||||
if: matrix.os == 'ubuntu-latest'
|
||||
uses: taiki-e/install-action@cross
|
||||
if: matrix.os == 'ubuntu-latest' && !matrix.use_zigbuild
|
||||
uses: taiki-e/install-action@25435dc8dd3baed7417e0c96d3fe89013a5b2e09 # v2.81.3
|
||||
with:
|
||||
tool: cross@0.2.5
|
||||
|
||||
- name: Setup | Install Zig [riscv64]
|
||||
if: matrix.use_zigbuild
|
||||
run: pip install ziglang==0.16.0
|
||||
|
||||
- name: Setup | Install cargo-zigbuild [riscv64]
|
||||
if: matrix.use_zigbuild
|
||||
uses: taiki-e/install-action@25435dc8dd3baed7417e0c96d3fe89013a5b2e09 # v2.81.3
|
||||
with:
|
||||
tool: cargo-zigbuild
|
||||
|
||||
- name: Build | Build [Cargo]
|
||||
if: matrix.os != 'ubuntu-latest'
|
||||
run: cargo build --release --locked --target ${{ matrix.target }}
|
||||
|
||||
- name: Build | Build [Cross]
|
||||
if: matrix.os == 'ubuntu-latest'
|
||||
if: matrix.os == 'ubuntu-latest' && !matrix.use_zigbuild
|
||||
run: cross build --release --locked --target ${{ matrix.target }}
|
||||
|
||||
- name: Build | Build [Zigbuild]
|
||||
if: matrix.use_zigbuild
|
||||
run: cargo zigbuild --release --locked --target ${{ matrix.target }}
|
||||
|
||||
- name: Build | Installer [Windows]
|
||||
continue-on-error: true
|
||||
if: matrix.os == 'windows-latest'
|
||||
@@ -128,7 +146,7 @@ jobs:
|
||||
continue-on-error: true
|
||||
if: matrix.os == 'windows-latest'
|
||||
id: unsigned-artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
||||
with:
|
||||
name: unsigned-${{ matrix.name }}
|
||||
path: |
|
||||
@@ -138,7 +156,7 @@ jobs:
|
||||
- name: Sign | Sign [Windows]
|
||||
continue-on-error: true
|
||||
if: matrix.os == 'windows-latest'
|
||||
uses: signpath/github-action-submit-signing-request@v1
|
||||
uses: signpath/github-action-submit-signing-request@b9d91eadd323de506c0c81cf0c7fe7438f3360fd # v2.2
|
||||
with:
|
||||
api-token: '${{ secrets.SIGNPATH_API_TOKEN }}'
|
||||
organization-id: '${{ vars.SIGNPATH_ORGANIZATION_ID }}'
|
||||
@@ -163,7 +181,7 @@ jobs:
|
||||
cd -
|
||||
|
||||
- name: Release | Upload artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
||||
with:
|
||||
name: ${{ matrix.name }}
|
||||
path: ${{ matrix.name }}
|
||||
@@ -171,7 +189,7 @@ jobs:
|
||||
- name: Release | Upload installer artifacts [Windows]
|
||||
continue-on-error: true
|
||||
if: matrix.os == 'windows-latest'
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
||||
with:
|
||||
name: starship-${{ matrix.target }}.msi
|
||||
path: target/${{ matrix.target }}/release/starship-${{ matrix.target }}.msi
|
||||
@@ -201,10 +219,10 @@ jobs:
|
||||
STARSHIP_VERSION: ${{ needs.release_please.outputs.tag_name }}
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
with:
|
||||
# Required to include the recently merged Crowdin PR
|
||||
ref: master
|
||||
ref: main
|
||||
|
||||
- name: Notarize | Set up secrets
|
||||
env:
|
||||
@@ -238,9 +256,9 @@ jobs:
|
||||
xcrun notarytool store-credentials "$KEYCHAIN_ENTRY" --team-id "$APPLEID_TEAMID" --apple-id "$APPLEID_USERNAME" --password "$APPLEID_PASSWORD" --keychain "$KEYCHAIN_PATH"
|
||||
|
||||
- name: Setup | Node
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
|
||||
with:
|
||||
node-version: 20
|
||||
node-version: 24.16.0
|
||||
|
||||
- name: Notarize | Build docs
|
||||
run: |
|
||||
@@ -249,7 +267,7 @@ jobs:
|
||||
npm run build
|
||||
|
||||
- name: Notarize | Download artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
|
||||
with:
|
||||
name: ${{ matrix.name }}
|
||||
path: artifacts
|
||||
@@ -261,7 +279,7 @@ jobs:
|
||||
run: bash install/macos_packages/build_and_notarize.sh starship docs ${{ matrix.arch }} ${{ matrix.pkgname }}
|
||||
|
||||
- name: Notarize | Upload Notarized Flat Installer
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
||||
with:
|
||||
name: ${{ matrix.pkgname }}
|
||||
path: ${{ matrix.pkgname }}
|
||||
@@ -270,7 +288,7 @@ jobs:
|
||||
run: tar czvf ${{ matrix.name }} starship
|
||||
|
||||
- name: Notarize | Upload Notarized Binary
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
||||
with:
|
||||
name: ${{ matrix.name }}
|
||||
path: ${{ matrix.name }}
|
||||
@@ -289,7 +307,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
|
||||
|
||||
- name: Setup | Checksums
|
||||
run: for file in starship-*/starship-*; do openssl dgst -sha256 -r "$file" | awk '{print $1}' > "${file}.sha256"; done
|
||||
@@ -300,10 +318,9 @@ jobs:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Build | Add Artifacts to Release
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
files: starship-*/starship-*
|
||||
tag_name: ${{ needs.release_please.outputs.tag_name }}
|
||||
run: gh release upload ${{ needs.release_please.outputs.tag_name }} starship-*/starship-* --repo starship/starship
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
# Publish starship to Crates.io
|
||||
cargo_publish:
|
||||
@@ -311,15 +328,21 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [release_please, upload_artifacts]
|
||||
if: ${{ needs.release_please.outputs.release_created == 'true' }}
|
||||
permissions:
|
||||
id-token: write
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
run: rustup toolchain install stable --profile minimal --no-self-update
|
||||
|
||||
- name: Build | Authenticate
|
||||
uses: rust-lang/crates-io-auth-action@bbd81622f20ce9e2dd9622e3218b975523e45bbe # v1.0.4
|
||||
id: auth
|
||||
|
||||
- name: Build | Publish
|
||||
run: cargo publish --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
|
||||
run: cargo publish --token ${{ steps.auth.outputs.token }}
|
||||
|
||||
update_brew_formula:
|
||||
name: Update Brew Formula
|
||||
@@ -327,7 +350,7 @@ jobs:
|
||||
needs: [release_please, upload_artifacts]
|
||||
if: ${{ needs.release_please.outputs.release_created == 'true' }}
|
||||
steps:
|
||||
- uses: mislav/bump-homebrew-formula-action@v3.2
|
||||
- uses: mislav/bump-homebrew-formula-action@ccf2332299a883f6af50a1d2d41e5df7904dd769 # v4.1
|
||||
with:
|
||||
formula-name: starship
|
||||
tag-name: ${{ needs.release_please.outputs.tag_name }}
|
||||
@@ -367,9 +390,9 @@ jobs:
|
||||
if: ${{ needs.release_please.outputs.release_created == 'true' }}
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
- name: Setup | Artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
|
||||
- run: pwsh ./install/windows/choco/update.ps1
|
||||
env:
|
||||
STARSHIP_VERSION: ${{ needs.release_please.outputs.tag_name }}
|
||||
@@ -383,7 +406,7 @@ jobs:
|
||||
continue-on-error: true
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
- name: Merge | Merge Crowdin PR
|
||||
run: gh pr merge i18n_master --squash --repo=starship/starship
|
||||
env:
|
||||
@@ -395,7 +418,7 @@ jobs:
|
||||
needs: merge_crowdin_pr
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
- name: Trigger workflow dispatch
|
||||
run: gh workflow run publish-docs.yml
|
||||
env:
|
||||
|
||||
@@ -22,8 +22,8 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
- name: Test | Security Audit
|
||||
uses: EmbarkStudios/cargo-deny-action@v2.0.11
|
||||
uses: EmbarkStudios/cargo-deny-action@bb137d7af7e4fb67e5f82a49c4fce4fad40782fe # v2.0.20
|
||||
with:
|
||||
command: check ${{ matrix.checks }}
|
||||
|
||||
@@ -6,5 +6,5 @@ jobs:
|
||||
name: Spell Check with Typos
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: crate-ci/typos@v1.31.1
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
- uses: crate-ci/typos@37bb98842b0d8c4ffebdb75301a13db0267cef89 # v1.47.2
|
||||
|
||||
@@ -24,12 +24,10 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
with:
|
||||
components: rustfmt
|
||||
run: rustup toolchain install stable --profile minimal --component rustfmt --no-self-update
|
||||
|
||||
- name: Build | Format
|
||||
run: cargo fmt --all -- --check
|
||||
@@ -43,18 +41,16 @@ jobs:
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
with:
|
||||
components: clippy
|
||||
run: rustup toolchain install stable --profile minimal --component clippy --no-self-update
|
||||
|
||||
- name: Setup | Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
|
||||
|
||||
- name: Build | Lint
|
||||
uses: giraffate/clippy-action@94e9bd8deab2618756ec5380f12eb35bcb0a88ca
|
||||
run: cargo clippy --workspace --locked -- -D warnings
|
||||
|
||||
# Ensure that the project could be successfully compiled
|
||||
cargo_check:
|
||||
@@ -62,13 +58,13 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
run: rustup toolchain install stable --profile minimal --no-self-update
|
||||
|
||||
- name: Setup | Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
|
||||
|
||||
- name: Build | Check
|
||||
run: cargo check --workspace --locked
|
||||
@@ -80,13 +76,13 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
run: rustup toolchain install stable --profile minimal --no-self-update
|
||||
|
||||
- name: Setup | Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
|
||||
|
||||
- name: Build | Check
|
||||
run: cargo check --workspace --locked --no-default-features
|
||||
@@ -98,13 +94,13 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
run: rustup toolchain install stable --profile minimal --no-self-update
|
||||
|
||||
- name: Setup | Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
|
||||
|
||||
- name: Build | Check
|
||||
run: cargo check --workspace --locked --all-features
|
||||
@@ -115,28 +111,26 @@ jobs:
|
||||
needs: cargo_check
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
checks: write
|
||||
contents: read
|
||||
pull-requests: write
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
run: rustup toolchain install stable --profile minimal --no-self-update
|
||||
|
||||
- name: Setup | Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
|
||||
|
||||
- name: Run | Generate Schema
|
||||
run: cargo run --locked --features config-schema -- config-schema > .github/config-schema.json
|
||||
|
||||
- name: Check | Detect Changes
|
||||
uses: reviewdog/action-suggester@v1.21.0
|
||||
with:
|
||||
tool_name: starship config-schema
|
||||
filter_mode: nofilter
|
||||
fail_on_error: 'true'
|
||||
run: |
|
||||
if ! git diff --exit-code .github/config-schema.json; then
|
||||
echo "::error file=.github/config-schema.json::config-schema.json is out of date. Run 'cargo run --features config-schema -- config-schema > .github/config-schema.json' and commit the result."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Run tests on Linux, macOS, and Windows
|
||||
# On both Rust stable and Rust nightly
|
||||
@@ -156,20 +150,21 @@ jobs:
|
||||
RUSTFLAGS: ${{ matrix.rustflags || '' }}
|
||||
steps:
|
||||
- name: Setup | Checkout
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
||||
|
||||
# Install all the required dependencies for testing
|
||||
- name: Setup | Rust
|
||||
uses: dtolnay/rust-toolchain@master
|
||||
with:
|
||||
toolchain: ${{ matrix.rust }}
|
||||
components: llvm-tools-preview
|
||||
run: |
|
||||
rustup toolchain install ${{ matrix.rust }} --profile minimal --component llvm-tools-preview --no-self-update
|
||||
rustup default ${{ matrix.rust }}
|
||||
|
||||
- name: Setup | Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
|
||||
|
||||
- name: Install cargo-llvm-cov
|
||||
uses: taiki-e/install-action@cargo-llvm-cov
|
||||
uses: taiki-e/install-action@25435dc8dd3baed7417e0c96d3fe89013a5b2e09 # v2.81.3
|
||||
with:
|
||||
tool: cargo-llvm-cov@0.8.5
|
||||
|
||||
# For windows installer test
|
||||
# On stable rust & main repo pushes only
|
||||
@@ -181,11 +176,17 @@ jobs:
|
||||
# cargo-wix does not require static crt
|
||||
RUSTFLAGS: ""
|
||||
|
||||
# Install Mercurial (pre-installed on Linux and windows)
|
||||
# Install Mercurial (pre-installed on Linux)
|
||||
- name: Setup | Mercurial (macos)
|
||||
if: matrix.os == 'macOS-latest'
|
||||
run: brew install mercurial
|
||||
|
||||
- name: Setup | Mercurial (windows)
|
||||
if: matrix.os == 'windows-latest'
|
||||
run: |
|
||||
winget install --id Mercurial.Mercurial --silent --exact --disable-interactivity --accept-source-agreements
|
||||
Add-Content -Path $env:GITHUB_PATH -Value "C:\Program Files\Mercurial" -Encoding utf8
|
||||
|
||||
# Run the ignored tests that expect the above setup
|
||||
- name: Build | Test
|
||||
run: "cargo llvm-cov
|
||||
@@ -222,7 +223,7 @@ jobs:
|
||||
STARSHIP_VERSION: v1.2.3
|
||||
|
||||
- name: Sign | Upload Executable [Windows]
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
||||
continue-on-error: true
|
||||
id: unsigned-artifacts
|
||||
if: matrix.os == 'windows-latest' && matrix.rust == 'stable' && github.event_name == 'push' && github.repository == 'starship/starship'
|
||||
@@ -233,7 +234,7 @@ jobs:
|
||||
target/debug/starship-x86_64-pc-windows-msvc.msi
|
||||
|
||||
- name: Sign | Sign [Windows]
|
||||
uses: signpath/github-action-submit-signing-request@v1
|
||||
uses: signpath/github-action-submit-signing-request@b9d91eadd323de506c0c81cf0c7fe7438f3360fd # v2.2
|
||||
continue-on-error: true
|
||||
if: matrix.os == 'windows-latest' && matrix.rust == 'stable' && github.event_name == 'push' && github.repository == 'starship/starship'
|
||||
with:
|
||||
@@ -246,7 +247,7 @@ jobs:
|
||||
output-artifact-directory: target/debug
|
||||
|
||||
- name: Upload coverage to Codecov
|
||||
uses: codecov/codecov-action@v5
|
||||
uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v6.0.2
|
||||
if: github.repository == 'starship/starship'
|
||||
with:
|
||||
token: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
# AI Usage Policy
|
||||
|
||||
This policy supplements our [Contributing Guide](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md).
|
||||
|
||||
This project is maintained by volunteers.
|
||||
This policy exists to keep review burden reasonable.
|
||||
The policy is inspired by the [Ghostty](https://github.com/ghostty-org/ghostty/blob/main/AI_POLICY.md) and [LLVM](https://llvm.org/docs/AIToolPolicy.html) AI policies.
|
||||
|
||||
Contributions that violate this policy may be closed without further notice.
|
||||
|
||||
## Mandatory Disclosure
|
||||
|
||||
Every Pull Request that utilizes AI-assisted tooling (including but not limited to Claude Code, Cursor, GitHub Copilot, ChatGPT, or local LLMs) must disclose its usage.
|
||||
|
||||
### PR Description
|
||||
|
||||
You must complete the **AI-Assistance** section in our Pull Request Template.
|
||||
|
||||
## Human-in-the-Loop
|
||||
|
||||
Contributors must fully understand all submitted contributions.
|
||||
|
||||
### Contributions
|
||||
|
||||
- You must be able to explain what your changes do and defend your implementation choices.
|
||||
- You are expected to have read and understood every line of code you submit.
|
||||
- If your response to a maintainer's question is an unedited copy-paste from an LLM, or if you cannot explain the mechanics of your PR, the PR will be closed.
|
||||
|
||||
### Issue Triage and Discussions
|
||||
|
||||
You are not allowed to reply to user issues or discussions with unverified or raw AI-generated information.
|
||||
|
||||
## "Good First Issue" Protections
|
||||
|
||||
You may not submit contributions to close a `🌱 good first issue` if they were authored with substantial AI assistance.
|
||||
These issues are intentionally triaged as learning opportunities for new developers navigating the codebase for the first time.
|
||||
|
||||
## Low-Effort Contributions & Prohibition of Autonomous Agents
|
||||
|
||||
- Contributions that are overly verbose, contain unsupported or hallucinated claims, or otherwise show the hallmarks of low-effort LLM usage may be closed without further notice.
|
||||
- Contributions via OpenClaw, or any other unsupervised autonomous agent operating in an automated loop, are strictly prohibited.
|
||||
+127
@@ -1,5 +1,132 @@
|
||||
# Changelog
|
||||
|
||||
## [1.26.0](https://github.com/starship/starship/compare/v1.25.1...v1.26.0) (2026-06-15)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **git_state:** show git am progress ([#7500](https://github.com/starship/starship/issues/7500)) ([26ce2cc](https://github.com/starship/starship/commit/26ce2ccf4c850e8ce050ab79a86e70ad97de76c3))
|
||||
* **nix-shell:** Add level variable to show nix shell depth ([#7394](https://github.com/starship/starship/issues/7394)) ([b85b7b9](https://github.com/starship/starship/commit/b85b7b9c52852220313dc1b44f34694c00dcd914))
|
||||
* **pixi:** expose PIXI_PROJECT_NAME as format placeholder ([#7346](https://github.com/starship/starship/issues/7346)) ([cfd5e76](https://github.com/starship/starship/commit/cfd5e7619ebfa4f5832acaafe94333e7d141d515))
|
||||
* **time:** improve timezone handling by switching to jiff ([#7222](https://github.com/starship/starship/issues/7222)) ([3dd8c14](https://github.com/starship/starship/commit/3dd8c1414476b139a7e5a73e27fb6e1402ed4c79))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **gcloud:** honor CLOUDSDK_COMPUTE_REGION env variable ([#7451](https://github.com/starship/starship/issues/7451)) ([d0e2468](https://github.com/starship/starship/commit/d0e246802c85d5aa956f536f9ab7ead282dbab7a))
|
||||
* improve reliability of config-file writing ([#5426](https://github.com/starship/starship/issues/5426)) ([57bb99b](https://github.com/starship/starship/commit/57bb99bd0d498fd7bc554ac04c738d3bc279b504))
|
||||
* **maven:** avoid detecting user .mvn config as project ([#7426](https://github.com/starship/starship/issues/7426)) ([d455255](https://github.com/starship/starship/commit/d455255e7bc5ae5e96ac5a3e2610458a9f213b49))
|
||||
* **nodejs:** avoid deno project files ([#7478](https://github.com/starship/starship/issues/7478)) ([96c1f90](https://github.com/starship/starship/commit/96c1f90eeb9acd255ec28c2a00918dba2a474997))
|
||||
* use cargo-zigbuild for riscv64gc-unknown-linux-musl release builds ([#7449](https://github.com/starship/starship/issues/7449)) ([166d7bb](https://github.com/starship/starship/commit/166d7bb30a92f983e740cb5071448887ccad4d7c))
|
||||
|
||||
## [1.25.1](https://github.com/starship/starship/compare/v1.25.0...v1.25.1) (2026-04-30)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **git:** improve bare repository detection ([#7421](https://github.com/starship/starship/issues/7421)) ([27079d7](https://github.com/starship/starship/commit/27079d7669b3072a944d3610f5dd5fec65321841))
|
||||
* **presets:** Update no-nerd-font to be up-to-date ([#7440](https://github.com/starship/starship/issues/7440)) ([65fb647](https://github.com/starship/starship/commit/65fb647bc38da09fe5d140f055c9f67d740bfa67))
|
||||
* **python:** align `python_binary` schema with argument support ([#7415](https://github.com/starship/starship/issues/7415)) ([3ec9b5c](https://github.com/starship/starship/commit/3ec9b5c54caa828164c710500a25ccd43ef26a64))
|
||||
|
||||
## [1.25.0](https://github.com/starship/starship/compare/v1.24.2...v1.25.0) (2026-04-18)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add Maven module ([#7189](https://github.com/starship/starship/issues/7189)) ([70b0f73](https://github.com/starship/starship/commit/70b0f7355497715a0e9d480326dc7b721b5314fb))
|
||||
* add statusline subcommand for Claude Code integration ([#7234](https://github.com/starship/starship/issues/7234)) ([b8ee821](https://github.com/starship/starship/commit/b8ee82167c5b49c7e9fd70e5542fad0e56810b39))
|
||||
* **battery:** Update default `unknown_symbol` ([#7278](https://github.com/starship/starship/issues/7278)) ([88d384f](https://github.com/starship/starship/commit/88d384f582de7c49b201bc30739c9ad6620fa174))
|
||||
* **directory:** add support for regexes in substitutions ([#7145](https://github.com/starship/starship/issues/7145)) ([2e8f26e](https://github.com/starship/starship/commit/2e8f26e44846cd52d06563aef98e22b89965dd25))
|
||||
* **env_var:** include $symbol in default format ([#7262](https://github.com/starship/starship/issues/7262)) ([3885e81](https://github.com/starship/starship/commit/3885e81357b04c244c19c0c8b05ccbbd4f797d62))
|
||||
* **git_status:** add variables to track worktree and index changes ([#5655](https://github.com/starship/starship/issues/5655)) ([0110bf5](https://github.com/starship/starship/commit/0110bf59c86f6f0f33f95dc614c231acc19547b8))
|
||||
* **python:** add option to replace generic venv-names with parent dir ([#7112](https://github.com/starship/starship/issues/7112)) ([083ab00](https://github.com/starship/starship/commit/083ab008fc77b982a223af8f4f18020c7a64fec6))
|
||||
* **vcs:** Introduce the VCS module ([#6388](https://github.com/starship/starship/issues/6388)) ([0dd5a4f](https://github.com/starship/starship/commit/0dd5a4f402c8d94524aaaa5632b2d0cba7fe1630))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **aws:** isolate tests from host AWS config files ([#7196](https://github.com/starship/starship/issues/7196)) ([e910f47](https://github.com/starship/starship/commit/e910f47597f3acec36c1c21bf4204af1a3265b92))
|
||||
* **aws:** support `$duration` for `sso_session` ([#7100](https://github.com/starship/starship/issues/7100)) ([8108cc9](https://github.com/starship/starship/commit/8108cc95cf1b1182f239a3a4cc399d3fcd912187))
|
||||
* **direnv:** accept null loadedRC state ([#7317](https://github.com/starship/starship/issues/7317)) ([56b8901](https://github.com/starship/starship/commit/56b8901f6feaa841de1f38054db7b3ae495a457b))
|
||||
* **docs:** Re-add `style` option to `env_var` module ([#7298](https://github.com/starship/starship/issues/7298)) ([e2277e5](https://github.com/starship/starship/commit/e2277e5958c62a5bb1cc1f4ad76ccd051e22d1c5))
|
||||
* enable std feature for whoami crate ([#7211](https://github.com/starship/starship/issues/7211)) ([9931ab2](https://github.com/starship/starship/commit/9931ab25b28b91b502dae93fc3826fd9a18a01b0))
|
||||
* **format:** allow empty textgroups to set prev_fg/prev_bg ([#7201](https://github.com/starship/starship/issues/7201)) ([9186188](https://github.com/starship/starship/commit/91861886a779805cd8265a85c629e579d513aa75))
|
||||
* **helm:** remove deprecated --client flag from helm version command ([#7193](https://github.com/starship/starship/issues/7193)) ([8a69666](https://github.com/starship/starship/commit/8a69666084d248b8fd76b6c54f38aea12abce6e3))
|
||||
* **hg_state:** avoid false-positive MERGING state ([#7329](https://github.com/starship/starship/issues/7329)) ([7a27475](https://github.com/starship/starship/commit/7a274752d0803960ae25259c8641f6e676f9c7b2))
|
||||
* **install:** improve UX for version option ([#7197](https://github.com/starship/starship/issues/7197)) ([c576625](https://github.com/starship/starship/commit/c576625343a8353ed2e99157d86065c2e713048e))
|
||||
|
||||
## [1.24.2](https://github.com/starship/starship/compare/v1.24.1...v1.24.2) (2025-12-30)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **cmd_duration:** avoid freezing on notify on macOS 26 ([#7187](https://github.com/starship/starship/issues/7187)) ([0daa8d3](https://github.com/starship/starship/commit/0daa8d3f921f5b7f08445a29e2842928b6e637c4))
|
||||
* **fish:** restore job counting compability with older versions ([#7173](https://github.com/starship/starship/issues/7173)) ([a261b48](https://github.com/starship/starship/commit/a261b48caa4129cd6baa5fa98f364eff66593bc4))
|
||||
* **fish:** use native transient prompt if available ([#7015](https://github.com/starship/starship/issues/7015)) ([cc65e0c](https://github.com/starship/starship/commit/cc65e0c7429068f1123fe5d9844ebebdfa1b9547))
|
||||
* **git:** Basic Reftable compatibility and future-proofing ([#7154](https://github.com/starship/starship/issues/7154)) ([6d9c8ea](https://github.com/starship/starship/commit/6d9c8ea8a9736d2e12bda46c9cdb1f8fc1de630c))
|
||||
* **mise:** align documentation and implementation ([#7131](https://github.com/starship/starship/issues/7131)) ([08824d7](https://github.com/starship/starship/commit/08824d7c6e1f69150cc1c28f3ff46bbb5447a7d0))
|
||||
* Revert "feat(install.sh): handle installation directory prompt case-insensitively ([#7138](https://github.com/starship/starship/issues/7138)) ([d11bc8d](https://github.com/starship/starship/commit/d11bc8d5867d7d7c16850803b4eed7643bf33b20))
|
||||
* **zsh:** fix job counting ([#7124](https://github.com/starship/starship/issues/7124)) ([46ab862](https://github.com/starship/starship/commit/46ab8621a7490bdcea635feb6233ce038264ff4e))
|
||||
|
||||
## [1.24.1](https://github.com/starship/starship/compare/v1.24.0...v1.24.1) (2025-11-16)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **fish:** fix job counting ([#7082](https://github.com/starship/starship/issues/7082)) ([7795bab](https://github.com/starship/starship/commit/7795bab3bd55c6515bce73e1e01c977203113ced))
|
||||
* improve timeout warning message in the directory scanner ([#7120](https://github.com/starship/starship/issues/7120)) ([d6daf8a](https://github.com/starship/starship/commit/d6daf8a4e1cdfbd361efe26ddefa0b60efaa5b1d))
|
||||
|
||||
## [1.24.0](https://github.com/starship/starship/compare/v1.23.0...v1.24.0) (2025-10-25)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add mercurial state ([#6745](https://github.com/starship/starship/issues/6745)) ([5f0b31b](https://github.com/starship/starship/commit/5f0b31b4c8da64a3dbe27f5966dfbc4ab2b9f7bf))
|
||||
* **aws:** support duration for aws sso ([#6614](https://github.com/starship/starship/issues/6614)) ([44e9e56](https://github.com/starship/starship/commit/44e9e56480a748ccda1a64a9f623dc2b19ecfe98))
|
||||
* **cli:** accept 'powershell' for completions subcommand ([#7028](https://github.com/starship/starship/issues/7028)) ([4caee4a](https://github.com/starship/starship/commit/4caee4a7ca5dbb78c346a84cc39ca3a90a9238a5))
|
||||
* **container:** Add detection of Incus containers ([#6917](https://github.com/starship/starship/issues/6917)) ([6886ad0](https://github.com/starship/starship/commit/6886ad082cd55a5a07160cc847c9c38915dca848))
|
||||
* **fish:** support input-mode detection for helix-keybinds ([#6841](https://github.com/starship/starship/issues/6841)) ([26a6237](https://github.com/starship/starship/commit/26a62372d11a42f7fec0b65c388e585a79d05b04))
|
||||
* Fortran module ([#6685](https://github.com/starship/starship/issues/6685)) ([90d8c4a](https://github.com/starship/starship/commit/90d8c4a256b67bfef9cf33e4d560eb34c390d101))
|
||||
* **git_branch:** add ignore_bare_repo flag ([#6936](https://github.com/starship/starship/issues/6936)) ([87b7ac3](https://github.com/starship/starship/commit/87b7ac342f93b88780863251421283c4874d356c))
|
||||
* **install.sh:** handle installation directory prompt responses case-insensitively ([#6866](https://github.com/starship/starship/issues/6866)) ([bc48b5f](https://github.com/starship/starship/commit/bc48b5fcb07b3ea806127bc6ab13616028e92642))
|
||||
* new module `xmake` ([#6811](https://github.com/starship/starship/issues/6811)) ([ff0acb1](https://github.com/starship/starship/commit/ff0acb193eaa04ab63a8e56e1bd18019444b886f))
|
||||
* **nu:** Add job support for nushell ([#6684](https://github.com/starship/starship/issues/6684)) ([ac2359c](https://github.com/starship/starship/commit/ac2359ca8a020825b5c68b5e3b8da35d4917f46e))
|
||||
* **package:** Add support for Ansible Galaxy ([#6905](https://github.com/starship/starship/issues/6905)) ([07778a8](https://github.com/starship/starship/commit/07778a8452bb565db55e32c32d7c8434a7bda9dd))
|
||||
* **package:** pyproject hatchling dynamic version ([#6656](https://github.com/starship/starship/issues/6656)) ([ef5227e](https://github.com/starship/starship/commit/ef5227eeafa4dd5c99aff1fdab07574bc423d648))
|
||||
* **terraform:** support opentofu for terraform version detection ([#6910](https://github.com/starship/starship/issues/6910)) ([ef7d8bd](https://github.com/starship/starship/commit/ef7d8bd442f659b64cc23fd4b096e696531289ba))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* consider text-only meta variables in conditionals set if non-empty ([#6338](https://github.com/starship/starship/issues/6338)) ([286b0f2](https://github.com/starship/starship/commit/286b0f2be30db81bc948579c137f0cc646fcde65))
|
||||
* **docker_context:** add `compose.yml` and `compose.yaml` to files ([#6625](https://github.com/starship/starship/issues/6625)) ([a98a05f](https://github.com/starship/starship/commit/a98a05f1ac4dfc215337a266c784cd62256f0c33))
|
||||
* **explain:** Filter out non-printing ANSI escape codes ([#6861](https://github.com/starship/starship/issues/6861)) ([2c11c08](https://github.com/starship/starship/commit/2c11c086b8da5ea43ae795fa0e71a621e983ebcc))
|
||||
* **fossil_metrics:** match single-file ([#6785](https://github.com/starship/starship/issues/6785)) ([5dd40ea](https://github.com/starship/starship/commit/5dd40ea62fb697239c2a84072414bd30059067d9))
|
||||
* **git_metrics:** adhere to `git_status` `use_git_executable` option ([#6927](https://github.com/starship/starship/issues/6927)) ([05daa3e](https://github.com/starship/starship/commit/05daa3e27832dde93f784c2659b31f94bb827f80))
|
||||
* **git_status:** Do not show up-to-date when untracked ([#6755](https://github.com/starship/starship/issues/6755)) ([f42b53e](https://github.com/starship/starship/commit/f42b53edd8bc26ec95dd027d9cf776ec70597cc3))
|
||||
* **hg_branch:** Strip extraneous newlines from hg topic. ([#6766](https://github.com/starship/starship/issues/6766)) ([ccc32e7](https://github.com/starship/starship/commit/ccc32e73fc0a0f99d90cff3a0efb73efecce1d84))
|
||||
* improve adhere to directory scanning timeout ([#6694](https://github.com/starship/starship/issues/6694)) ([109a681](https://github.com/starship/starship/commit/109a6811cee1faae677a24a7d92fa8ed39397485))
|
||||
* **jobs:** Count job groups instead of processes for fish ([#6899](https://github.com/starship/starship/issues/6899)) ([95bf53f](https://github.com/starship/starship/commit/95bf53f6b9f7dbc50708e0f459b6dc7a7b7ebd20))
|
||||
* **modules:** username detect_env_vars logic ([#6934](https://github.com/starship/starship/issues/6934)) ([a60df1d](https://github.com/starship/starship/commit/a60df1d1fe2e670132a86e314971dce2ac4c1607)), closes [#6870](https://github.com/starship/starship/issues/6870)
|
||||
* **nushell:** Startup `cmd_duration` should be 0ms not 823ms ([#6854](https://github.com/starship/starship/issues/6854)) ([0ad1cf8](https://github.com/starship/starship/commit/0ad1cf831a9e7938ed5e3d3262d3647e828ee4de))
|
||||
* **pixi:** Don't trigger pixi module by `.pixi` directory ([#6709](https://github.com/starship/starship/issues/6709)) ([a477186](https://github.com/starship/starship/commit/a477186e52e156eeac780e9b79210a19715f4919))
|
||||
* **preset/nerd-font:** remove double spaces in `gcloud` default value and use Google Cloud-specific icon ([#6822](https://github.com/starship/starship/issues/6822)) ([3b5bbe3](https://github.com/starship/starship/commit/3b5bbe3566583f4549234f89874a3662d67c5012))
|
||||
* **preset/pure:** only enable python module if venv is active ([#6689](https://github.com/starship/starship/issues/6689)) ([5e8851a](https://github.com/starship/starship/commit/5e8851a95364e9713d1c5ddc409248f0705a9410))
|
||||
* **presets/plaint-text:** Add missing entries ([#6929](https://github.com/starship/starship/issues/6929)) ([e593332](https://github.com/starship/starship/commit/e5933327d705cc33951e9bf6ad08a0128720725b))
|
||||
* remove double spaces in default values ([#6649](https://github.com/starship/starship/issues/6649)) ([e406f55](https://github.com/starship/starship/commit/e406f552f84b37631152f34617712085d65c5e7b))
|
||||
* rust-ini 0.21.2 has been yanked from crates.io. ([#6916](https://github.com/starship/starship/issues/6916)) ([b698fb0](https://github.com/starship/starship/commit/b698fb05593c81c1e2f35af0f1e61c00dd85c6ce))
|
||||
* **terraform:** amend module to `exec_cmds_return_first`-changes ([#6956](https://github.com/starship/starship/issues/6956)) ([0f5d8d4](https://github.com/starship/starship/commit/0f5d8d4a4a932b5ed99aece6a6484887d7f4e06a))
|
||||
* **test/git_commit:** avoid spawning an editor lead to timeout if tag signing is enabled ([#6887](https://github.com/starship/starship/issues/6887)) ([32c29cf](https://github.com/starship/starship/commit/32c29cfda784bdcc6a97c0e637f99100af1a0c2d))
|
||||
* **time:** don't print misleading log message ([#7008](https://github.com/starship/starship/issues/7008)) ([5db4ea7](https://github.com/starship/starship/commit/5db4ea7878fb6ad40982021b64a907459cf22577))
|
||||
* **zsh:** check if vars are set before reading them ([#6742](https://github.com/starship/starship/issues/6742)) ([608ae37](https://github.com/starship/starship/commit/608ae37bcfd498b72020689b19debb79d236c411))
|
||||
* **zsh:** do not fail under ERR_EXIT conditions if `STARSHIP_DURATION` computes to 0 ([#6922](https://github.com/starship/starship/issues/6922)) ([38db5f0](https://github.com/starship/starship/commit/38db5f0094d1109b8e7b4332b6c20c2a8b125cf1))
|
||||
|
||||
|
||||
### Performance Improvements
|
||||
|
||||
* **git_status:** avoid gix index load when `core.fsmonitor` is used ([#6817](https://github.com/starship/starship/issues/6817)) ([1c2f4d4](https://github.com/starship/starship/commit/1c2f4d46594d38abd423752efa3b21903e5a1e3b))
|
||||
* Parallelize child modules for env_var|custom ([#6748](https://github.com/starship/starship/issues/6748)) ([7f4eb6f](https://github.com/starship/starship/commit/7f4eb6fdae5218413963f07f86df4e2b340bd05e))
|
||||
|
||||
## [1.23.0](https://github.com/starship/starship/compare/v1.22.1...v1.23.0) (2025-04-27)
|
||||
|
||||
|
||||
|
||||
+2
-2
@@ -273,10 +273,10 @@ Once setup is complete, you can refer to VitePress documentation on the actual i
|
||||
This is our preferred process for opening a PR on GitHub:
|
||||
|
||||
1. Fork this repository
|
||||
2. Create a branch off of `master` for your work: `git checkout -b my-feature-branch`
|
||||
2. Create a branch off of `main` for your work: `git checkout -b my-feature-branch`
|
||||
3. Make some changes, committing them along the way
|
||||
4. When your changes are ready for review, push your branch: `git push origin my-feature-branch`
|
||||
5. Create a pull request from your branch to `starship/master`
|
||||
5. Create a pull request from your branch to `starship/main`
|
||||
6. No need to assign the pull request to anyone, we'll review it when we can
|
||||
7. When the changes have been reviewed and approved, someone will squash and merge for you
|
||||
|
||||
|
||||
Generated
+1409
-1373
File diff suppressed because it is too large
Load Diff
+49
-50
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "starship"
|
||||
version = "1.23.0"
|
||||
version = "1.26.0"
|
||||
authors = ["Starship Contributors"]
|
||||
build = "build.rs"
|
||||
categories = ["command-line-utilities"]
|
||||
@@ -23,7 +23,7 @@ license = "ISC"
|
||||
readme = "README.md"
|
||||
repository = "https://github.com/starship/starship"
|
||||
# Note: MSRV is only intended as a hint, and only the latest version is officially supported in starship.
|
||||
rust-version = "1.85"
|
||||
rust-version = "1.90"
|
||||
description = """
|
||||
The minimal, blazing-fast, and infinitely customizable prompt for any shell! ☄🌌️
|
||||
"""
|
||||
@@ -35,62 +35,63 @@ config-schema = ["schemars"]
|
||||
notify = ["notify-rust"]
|
||||
|
||||
[dependencies]
|
||||
chrono = { version = "0.4.40", default-features = false, features = ["clock", "std", "wasmbind"] }
|
||||
clap = { version = "4.5.37", features = ["derive", "cargo", "unicode"] }
|
||||
clap_complete = "4.5.47"
|
||||
clap_complete_nushell = "4.5.5"
|
||||
clap = { version = "4.6.1", features = ["derive", "cargo", "unicode"] }
|
||||
clap_complete = "4.6.5"
|
||||
clap_complete_nushell = "4.6.0"
|
||||
dirs = "6.0.0"
|
||||
dunce = "1.0.5"
|
||||
# default feature restriction addresses https://github.com/starship/starship/issues/4251
|
||||
gix = { version = "0.72.1", default-features = false, features = ["max-performance-safe", "revision", "zlib-rs", "status"] }
|
||||
indexmap = { version = "2.9.0", features = ["serde"] }
|
||||
jsonc-parser = { version = "0.26.2", features = ["serde"] }
|
||||
log = { version = "0.4.27", features = ["std"] }
|
||||
gix = { version = "0.84.0", default-features = false, features = ["max-performance-safe", "revision", "zlib-rs", "status", "sha1"] }
|
||||
indexmap = { version = "2.14.0", features = ["serde"] }
|
||||
jiff = { version = "0.2.28", features = ["serde"] }
|
||||
jsonc-parser = { version = "0.32.4", features = ["serde"] }
|
||||
log = { version = "0.4.30", features = ["std"] }
|
||||
# notify-rust is optional (on by default) because the crate doesn't currently build for darwin with nix
|
||||
# see: https://github.com/NixOS/nixpkgs/issues/160876
|
||||
notify-rust = { version = "4.11.7", optional = true }
|
||||
nu-ansi-term = "0.50.1"
|
||||
open = "5.3.2"
|
||||
notify-rust = { version = "4.17.0", optional = true }
|
||||
nu-ansi-term = "0.50.3"
|
||||
open = "5.3.5"
|
||||
# update os module config and tests when upgrading os_info
|
||||
os_info = "3.10.0"
|
||||
os_info = { version = "3.15.0", features = ["schemars"] }
|
||||
# for efficient shared state between `git_status` and `git_metrics`, allowing parallel printing. This is for poison-free locks.
|
||||
parking_lot = "0.12.3"
|
||||
parking_lot = "0.12.5"
|
||||
path-slash = "0.2.1"
|
||||
pest = "2.8.0"
|
||||
pest_derive = "2.8.0"
|
||||
process_control = "5.0.0"
|
||||
quick-xml = "0.37.5"
|
||||
rand = "0.9.1"
|
||||
rayon = "1.10.0"
|
||||
regex = { version = "1.11.1", default-features = false, features = ["perf", "std", "unicode-perl"] }
|
||||
rust-ini = "0.21.1"
|
||||
semver = "1.0.26"
|
||||
serde = { version = "1.0.219", features = ["derive"] }
|
||||
serde_json = "1.0.140"
|
||||
sha1 = "0.10.6"
|
||||
shadow-rs = { version = "1.1.1", default-features = false, features = ["build"] }
|
||||
pest = "2.8.6"
|
||||
pest_derive = "2.8.6"
|
||||
process_control = "5.2.0"
|
||||
quick-xml = "0.40.1"
|
||||
rand = "0.10.1"
|
||||
rayon = "1.12.0"
|
||||
regex = { version = "1.12.4", default-features = false, features = ["perf", "std", "unicode-perl"] }
|
||||
rust-ini = "0.21.3"
|
||||
semver = "1.0.28"
|
||||
serde = { version = "1.0.228", features = ["derive"] }
|
||||
serde_json = "1.0.150"
|
||||
sha1 = "0.11.0"
|
||||
shadow-rs = { version = "2.0.0", default-features = false, features = ["build"] }
|
||||
# battery is optional (on by default) because the crate doesn't currently build for Termux
|
||||
# see: https://github.com/svartalf/rust-battery/issues/33
|
||||
starship-battery = { version = "0.10.1", optional = true }
|
||||
starship-battery = { version = "0.11.0", optional = true }
|
||||
strsim = "0.11.1"
|
||||
systemstat = "=0.2.4"
|
||||
terminal_size = "0.4.2"
|
||||
toml = { version = "0.8.21", features = ["preserve_order"] }
|
||||
toml_edit = "0.22.25"
|
||||
unicode-segmentation = "1.12.0"
|
||||
unicode-width = "0.2.0"
|
||||
systemstat = "=0.2.7"
|
||||
tempfile = "3.27.0"
|
||||
terminal_size = "0.4.4"
|
||||
toml = { version = "1.1.2", features = ["preserve_order"] }
|
||||
toml_edit = "0.25.12"
|
||||
unicode-segmentation = "1.13.3"
|
||||
unicode-width = "0.2.2"
|
||||
urlencoding = "2.1.3"
|
||||
versions = "7.0.0"
|
||||
which = "7.0.3"
|
||||
whoami = { version = "1.6.0", default-features = false }
|
||||
yaml-rust2 = "0.10.1"
|
||||
which = "8.0.3"
|
||||
whoami = { version = "2.1.2", default-features = false, features = ["std", "wasi-wasite"] }
|
||||
yaml-rust2 = "0.11.0"
|
||||
|
||||
guess_host_triple = "0.1.4"
|
||||
home = "0.5.11"
|
||||
shell-words = "1.1.0"
|
||||
guess_host_triple = "0.1.5"
|
||||
home = "0.5.12"
|
||||
shell-words = "1.1.1"
|
||||
|
||||
[dependencies.schemars]
|
||||
version = "0.8.22"
|
||||
version = "1.2.1"
|
||||
optional = true
|
||||
features = ["preserve_order", "indexmap2"]
|
||||
|
||||
@@ -98,7 +99,7 @@ features = ["preserve_order", "indexmap2"]
|
||||
deelevate = "0.2.0"
|
||||
|
||||
[target.'cfg(windows)'.dependencies.windows]
|
||||
version = "0.61.0"
|
||||
version = "0.62.2"
|
||||
features = [
|
||||
"Win32_Foundation",
|
||||
"Win32_UI_Shell",
|
||||
@@ -108,18 +109,17 @@ features = [
|
||||
]
|
||||
|
||||
[target.'cfg(not(windows))'.dependencies]
|
||||
nix = { version = "0.29.0", default-features = false, features = ["feature", "fs", "user"] }
|
||||
nix = { version = "0.31.3", default-features = false, features = ["feature", "fs", "user"] }
|
||||
|
||||
[build-dependencies]
|
||||
shadow-rs = { version = "1.1.1", default-features = false, features = ["build"] }
|
||||
shadow-rs = { version = "2.0.0", default-features = false, features = ["build"] }
|
||||
dunce = "1.0.5"
|
||||
|
||||
[target.'cfg(windows)'.build-dependencies]
|
||||
winres = "0.1.12"
|
||||
|
||||
[dev-dependencies]
|
||||
mockall = "0.13.1"
|
||||
tempfile = "3.19.1"
|
||||
mockall = "=0.14.0"
|
||||
|
||||
[profile.release]
|
||||
codegen-units = 1
|
||||
@@ -131,6 +131,5 @@ codegen-units = 16
|
||||
lto = "thin"
|
||||
strip = false
|
||||
|
||||
[[bin]]
|
||||
name = "starship"
|
||||
path = "src/main.rs"
|
||||
[lints.clippy]
|
||||
use_self = "warn"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<p align="center">
|
||||
<img
|
||||
width="400"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/logo.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/logo.png"
|
||||
alt="Starship – Cross-shell prompt"
|
||||
/>
|
||||
</p>
|
||||
@@ -9,7 +9,7 @@
|
||||
<p align="center">
|
||||
<a href="https://github.com/starship/starship/actions"
|
||||
><img
|
||||
src="https://img.shields.io/github/actions/workflow/status/starship/starship/workflow.yml?branch=master&label=workflow&style=flat-square"
|
||||
src="https://img.shields.io/github/actions/workflow/status/starship/starship/workflow.yml?branch=main&label=workflow&style=flat-square"
|
||||
alt="GitHub Actions workflow status"
|
||||
/></a>
|
||||
<a href="https://crates.io/crates/starship"
|
||||
@@ -48,114 +48,125 @@
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/starship/starship/blob/master/README.md"
|
||||
<a href="https://github.com/starship/starship/blob/main/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-us.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-us.png"
|
||||
alt="English"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/de-DE/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/de-DE/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-de.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-de.png"
|
||||
alt="Deutsch"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/es-ES/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/es-ES/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-es.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-es.png"
|
||||
alt="Español"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/fr-FR/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/fr-FR/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-fr.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-fr.png"
|
||||
alt="Français"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/id-ID/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/id-ID/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-id.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-id.png"
|
||||
alt="Bahasa Indonesia"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/it-IT/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/it-IT/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-it.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-it.png"
|
||||
alt="Italiano"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/ja-JP/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/ja-JP/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-jp.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-jp.png"
|
||||
alt="日本語"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/pt-BR/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/pt-BR/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-br.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-br.png"
|
||||
alt="Português do Brasil"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/ru-RU/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/ru-RU/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ru.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-ru.png"
|
||||
alt="Русский"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/uk-UA/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/uk-UA/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ua.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-ua.png"
|
||||
alt="Українська"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/vi-VN/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/vi-VN/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-vn.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-vn.png"
|
||||
alt="Tiếng Việt"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/zh-CN/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/zh-CN/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-cn.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-cn.png"
|
||||
alt="简体中文"
|
||||
/></a>
|
||||
|
||||
<a
|
||||
href="https://github.com/starship/starship/blob/master/docs/zh-TW/guide/README.md"
|
||||
href="https://github.com/starship/starship/blob/main/docs/zh-TW/guide/README.md"
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-tw.png"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/flag-tw.png"
|
||||
alt="繁體中文"
|
||||
/></a>
|
||||
</p>
|
||||
|
||||
<h1></h1>
|
||||
|
||||
> [!WARNING]
|
||||
> **The default branch has been renamed from `master` to `main`.**
|
||||
> If you have a local clone, update it by running:
|
||||
>
|
||||
> ```sh
|
||||
> git branch -m master main
|
||||
> git fetch origin
|
||||
> git branch -u origin/main main
|
||||
> git remote set-head origin -a
|
||||
> ```
|
||||
|
||||
<img
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/demo.gif"
|
||||
src="https://raw.githubusercontent.com/starship/starship/main/media/demo.gif"
|
||||
alt="Starship with iTerm2 and the Snazzy theme"
|
||||
width="50%"
|
||||
align="right"
|
||||
@@ -230,6 +241,7 @@ Alternatively, install Starship using any of the following package managers:
|
||||
| Arch Linux | [Arch Linux Extra] | `pacman -S starship` |
|
||||
| CentOS 7+ | [Copr] | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Debian 13+ | [Debian Main] | `apt install starship` |
|
||||
| Fedora 40+ | [Copr] | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Gentoo | [Gentoo Packages] | `emerge app-shells/starship` |
|
||||
| Manjaro | | `pacman -S starship` |
|
||||
| NixOS | [nixpkgs] | `nix-env -iA nixpkgs.starship` |
|
||||
@@ -306,13 +318,13 @@ load(io.popen('starship init cmd'):read("*a"))()
|
||||
<details>
|
||||
<summary>Elvish</summary>
|
||||
|
||||
Add the following to the end of `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
eval (starship init elvish)
|
||||
```
|
||||
|
||||
Note: Only Elvish v0.18+ is supported
|
||||
Note: Only Elvish v0.18+ is supported. For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
</details>
|
||||
|
||||
@@ -409,11 +421,11 @@ If you're looking to further customize Starship:
|
||||
|
||||
## 🤝 Contributing
|
||||
|
||||
We are always looking for contributors of **all skill levels**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
|
||||
We are always looking for contributors of **all skill levels**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/issues?q=state%3Aopen%20label%3A%22%F0%9F%8C%B1%20good%20first%20issue%22).
|
||||
|
||||
If you are fluent in a non-English language, we greatly appreciate any help keeping our docs translated and up-to-date in other languages. If you would like to help, translations can be contributed on the [Starship Crowdin](https://translate.starship.rs/).
|
||||
|
||||
If you are interested in helping contribute to starship, please take a look at our [Contributing Guide](https://github.com/starship/starship/blob/master/CONTRIBUTING.md). Also, feel free to drop into our [Discord server](https://discord.gg/8Jzqu3T) and say hi. 👋
|
||||
If you are interested in helping contribute to starship, please take a look at our [Contributing Guide](https://github.com/starship/starship/blob/main/CONTRIBUTING.md). Also, feel free to drop into our [Discord server](https://discord.gg/8Jzqu3T) and say hi. 👋
|
||||
|
||||
## 💭 Inspired By
|
||||
|
||||
@@ -442,13 +454,13 @@ This program will not transfer any information to other networked systems unless
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
<img width="100" src="https://raw.githubusercontent.com/starship/starship/master/media/icon.png" alt="Starship rocket icon">
|
||||
<img width="100" src="https://raw.githubusercontent.com/starship/starship/main/media/icon.png" alt="Starship rocket icon">
|
||||
</p>
|
||||
|
||||
## 📝 License
|
||||
|
||||
Copyright © 2019-present, [Starship Contributors](https://github.com/starship/starship/graphs/contributors).<br>
|
||||
This project is [ISC](https://github.com/starship/starship/blob/master/LICENSE) licensed.
|
||||
This project is [ISC](https://github.com/starship/starship/blob/main/LICENSE) licensed.
|
||||
|
||||
[alpine linux packages]: https://pkgs.alpinelinux.org/packages?name=starship
|
||||
[arch linux extra]: https://archlinux.org/packages/extra/x86_64/starship
|
||||
@@ -462,7 +474,7 @@ This project is [ISC](https://github.com/starship/starship/blob/master/LICENSE)
|
||||
[linuxbrew]: https://formulae.brew.sh/formula/starship
|
||||
[homebrew]: https://formulae.brew.sh/formula/starship
|
||||
[macports]: https://ports.macports.org/port/starship
|
||||
[nixpkgs]: https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/starship/default.nix
|
||||
[nixpkgs]: https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/st/starship/package.nix
|
||||
[OSS]: https://software.opensuse.org/package/starship
|
||||
[pkgsrc]: https://pkgsrc.se/shells/starship
|
||||
[scoop]: https://github.com/ScoopInstaller/Main/blob/master/bucket/starship.json
|
||||
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
# Security Reporting
|
||||
|
||||
If you wish to report a security vulnerability privately, we appreciate your diligence. Please follow the guidelines below to submit your report.
|
||||
|
||||
## Reporting
|
||||
|
||||
To report a security vulnerability, please provide the following information:
|
||||
|
||||
1. **PUBLIC**
|
||||
- Indicate whether this vulnerability has already been publicly discussed or disclosed.
|
||||
- If so, provide relevant links.
|
||||
|
||||
2. **DESCRIPTION**
|
||||
- Provide a detailed description of the security vulnerability.
|
||||
- Include as much information as possible to help us understand and address the issue.
|
||||
|
||||
Report this, along with any additional relevant details in [GitHub Advisory](https://github.com/starship/starship/security/advisories/new).
|
||||
|
||||
## Confidentiality
|
||||
|
||||
We kindly ask you to keep the report confidential until a public announcement is made.
|
||||
|
||||
## Notes
|
||||
|
||||
- Vulnerabilities will be handled on a best-effort basis.
|
||||
- You will be notified, via your GitHub Advisory report, about eventual patches.
|
||||
- We will respond within a few weeks to confirm whether your report has been accepted or rejected.
|
||||
|
||||
Thank you for helping to improve the security of Starship!
|
||||
@@ -37,12 +37,12 @@ fn gen_presets_hook(mut file: &File) -> SdResult<()> {
|
||||
.and_then(|v| v.strip_suffix(".toml"))
|
||||
.expect("Failed to process filename");
|
||||
presets.push_str(format!("print::Preset(\"{name}\"),\n").as_str());
|
||||
match_arms.push_str(format!(r#""{name}" => include_bytes!(r"{full_path}"),"#).as_str());
|
||||
match_arms.push_str(format!(r#""{name}" => include_str!(r"{full_path}"),"#).as_str());
|
||||
}
|
||||
|
||||
writeln!(
|
||||
file,
|
||||
r#"
|
||||
r"
|
||||
use crate::print;
|
||||
|
||||
pub fn get_preset_list<'a>() -> &'a [print::Preset] {{
|
||||
@@ -51,13 +51,13 @@ pub fn get_preset_list<'a>() -> &'a [print::Preset] {{
|
||||
]
|
||||
}}
|
||||
|
||||
pub fn get_preset_content(name: &str) -> &[u8] {{
|
||||
pub fn get_preset_content(name: &str) -> &str {{
|
||||
match name {{
|
||||
{match_arms}
|
||||
_ => unreachable!(),
|
||||
}}
|
||||
}}
|
||||
"#
|
||||
"
|
||||
)?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
+8
-15
@@ -105,7 +105,7 @@ onMounted(() => {
|
||||
eval "$(starship init zsh)"
|
||||
```
|
||||
|
||||
#### Powershell
|
||||
#### PowerShell
|
||||
|
||||
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
|
||||
|
||||
@@ -124,20 +124,17 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
#### Elvish
|
||||
> [!WARNING]
|
||||
> Only elvish v0.18 or higher is supported.
|
||||
|
||||
::: warning
|
||||
|
||||
Only elvish v0.18 or higher is supported.
|
||||
|
||||
:::
|
||||
|
||||
Add the following to the end of `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
# ~/.elvish/rc.elv
|
||||
|
||||
eval (starship init elvish)
|
||||
```
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
#### Tcsh
|
||||
|
||||
@@ -150,13 +147,9 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
#### Nushell
|
||||
|
||||
::: warning
|
||||
|
||||
This will change in the future.
|
||||
Only Nushell v0.96+ is supported.
|
||||
|
||||
:::
|
||||
> [!WARNING]
|
||||
> This will change in the future.
|
||||
> Only Nushell v0.96+ is supported.
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
|
||||
|
||||
@@ -4,11 +4,8 @@ While Starship is a versatile shell, sometimes you need to do more than edit
|
||||
`starship.toml` to get it to do certain things. This page details some of the more
|
||||
advanced configuration techniques used in starship.
|
||||
|
||||
::: warning
|
||||
|
||||
The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
:::
|
||||
> [!WARNING]
|
||||
> The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
## TransientPrompt in PowerShell
|
||||
|
||||
@@ -318,6 +315,12 @@ Produces a prompt like the following:
|
||||
▶ starship on rprompt [!] is 📦 v0.57.0 via 🦀 v1.54.0 took 17s
|
||||
```
|
||||
|
||||
When using `zsh` (v5.0.5+), the shell adds a default trailing space to the right prompt. This can cause alignment issues specifically when using the Starship `$fill` module. To remove this gap, add the following to your `.zshrc`:
|
||||
|
||||
```zsh
|
||||
ZLE_RPROMPT_INDENT=0
|
||||
```
|
||||
|
||||
## Continuation Prompt
|
||||
|
||||
Some shells support a continuation prompt along with the normal prompt. This prompt is rendered instead of the normal prompt when the user has entered an incomplete statement (such as a single left parenthesis or quote).
|
||||
@@ -341,6 +344,316 @@ Note: Continuation prompts are only available in the following shells:
|
||||
continuation_prompt = '▶▶ '
|
||||
```
|
||||
|
||||
## Statusline for Claude Code
|
||||
|
||||
Starship supports displaying a custom statusline when running inside Claude Code, Anthropic's CLI tool for interactive coding with Claude. This statusline provides real-time information about your Claude session, including the model being used, context window usage, and session costs.
|
||||
|
||||
For more information about the Claude Code statusline feature, see the [Claude Code statusline documentation](https://code.claude.com/docs/en/statusline).
|
||||
|
||||
### Setup
|
||||
|
||||
To use Starship as your Claude Code statusline:
|
||||
|
||||
1. Run `/statusline` in Claude Code and ask it to configure Starship, or manually add the following to your `.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"statusLine": {
|
||||
"type": "command",
|
||||
"command": "starship statusline claude-code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Customize the statusline appearance in your `~/.config/starship.toml` (see [Configuration](#configuration) below)
|
||||
|
||||
### Overview
|
||||
|
||||
When invoked with `starship statusline claude-code`, Starship receives Claude Code session data via stdin and renders a statusline using a dedicated profile named `claude-code`.
|
||||
|
||||
The profile includes three specialized modules:
|
||||
|
||||
- `claude_model`: Displays the current Claude model being used
|
||||
- `claude_context`: Shows context window usage with a visual gauge
|
||||
- `claude_cost`: Displays session cost and statistics
|
||||
|
||||
The default profile format is:
|
||||
|
||||
```toml
|
||||
[profiles]
|
||||
claude-code = "$claude_model$git_branch$claude_context$claude_cost"
|
||||
```
|
||||
|
||||
### Configuration
|
||||
|
||||
You can customize the Claude Code statusline by modifying the `claude-code` profile and individual module configurations in your `~/.config/starship.toml`:
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Customize the claude-code profile
|
||||
[profiles]
|
||||
claude-code = "$claude_model$claude_context$claude_cost"
|
||||
|
||||
# Configure individual modules
|
||||
[claude_model]
|
||||
format = "[$symbol$model]($style) "
|
||||
symbol = "🤖 "
|
||||
style = "bold blue"
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge $percentage]($style) "
|
||||
gauge_width = 10
|
||||
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost]($style) "
|
||||
symbol = "💰 "
|
||||
```
|
||||
|
||||
### Claude Model
|
||||
|
||||
The `claude_model` module displays the current Claude model being used in the session.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| --------------- | ---------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `format` | `'[$symbol$model]($style) '` | The format for the module. |
|
||||
| `symbol` | `'🤖 '` | The symbol shown before the model name. |
|
||||
| `style` | `'bold blue'` | The style for the module. |
|
||||
| `model_aliases` | `{}` | Map of model IDs or display names to shorter aliases. Checks ID first, then display name. |
|
||||
| `disabled` | `false` | Disables the `claude_model` module. |
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Example | Description |
|
||||
| -------- | ------------------- | ------------------------------------- |
|
||||
| model | `Claude 3.5 Sonnet` | The display name of the current model |
|
||||
| model_id | `claude-3-5-sonnet` | The model ID |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the value of option `style` |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Basic customization
|
||||
[claude_model]
|
||||
format = "on [$symbol$model]($style) "
|
||||
symbol = "🧠 "
|
||||
style = "bold cyan"
|
||||
|
||||
# Using model aliases for vendor-specific model names
|
||||
# You can alias by model ID or display name
|
||||
[claude_model.model_aliases]
|
||||
# Alias by vendor model ID (e.g. AWS Bedrock)
|
||||
"global.anthropic.claude-sonnet-4-5-20250929-v1:0" = "Sonnet 4.5"
|
||||
# Alias by display name
|
||||
"Claude Sonnet 4.5 (Vendor Proxy)" = "Sonnet"
|
||||
```
|
||||
|
||||
### Claude Context
|
||||
|
||||
The `claude_context` module displays context window usage as a percentage and visual gauge. The style automatically changes based on configurable thresholds.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| ---------------------- | --------------------------------- | -------------------------------------------------- |
|
||||
| `format` | `'[$gauge $percentage]($style) '` | The format for the module. |
|
||||
| `symbol` | `''` | The symbol shown before the gauge. |
|
||||
| `gauge_width` | `5` | The width of the gauge in characters. |
|
||||
| `gauge_full_symbol` | `'█'` | The symbol used for filled segments of the gauge. |
|
||||
| `gauge_partial_symbol` | `'▒'` | The symbol used for partial segments of the gauge. |
|
||||
| `gauge_empty_symbol` | `'░'` | The symbol used for empty segments of the gauge. |
|
||||
| `display` | [see below](#display) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_context` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define thresholds and styles for different usage levels. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Default | Description |
|
||||
| ----------- | ------------ | ------------------------------------------------------------------------ |
|
||||
| `threshold` | `0.0` | The minimum context windows usage percentage to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this the configuration is matched. |
|
||||
|
||||
```toml
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
hidden = true
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 30
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 60
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 80
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Example | Description |
|
||||
| -------------------------- | ------- | ----------------------------------------------------- |
|
||||
| gauge | `██▒░░` | Visual representation of context usage |
|
||||
| percentage | `65%` | Context usage as a percentage |
|
||||
| input_tokens | `45.2k` | Total input tokens in conversation |
|
||||
| output_tokens | `12.3k` | Total output tokens in conversation |
|
||||
| curr_input_tokens | `5.1k` | Input tokens from most recent API call |
|
||||
| curr_output_tokens | `1.2k` | Output tokens from most recent API call |
|
||||
| curr_cache_creation_tokens | `1.5k` | Cache creation tokens from most recent API call |
|
||||
| curr_cache_read_tokens | `23.4k` | Cache read tokens from most recent API call |
|
||||
| total_tokens | `200k` | Total context window size |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
**Minimal gauge-only display**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge]($style) "
|
||||
gauge_width = 10
|
||||
```
|
||||
|
||||
**Detailed token information**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$percentage ($input_tokens in / $output_tokens out)]($style) "
|
||||
```
|
||||
|
||||
**Custom gauge symbols**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
gauge_full_symbol = "▰"
|
||||
gauge_partial_symbol = ""
|
||||
gauge_empty_symbol = "▱"
|
||||
gauge_width = 10
|
||||
format = "[$gauge]($style) "
|
||||
```
|
||||
|
||||
**Custom thresholds**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 50
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 75
|
||||
style = "bold orange"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 90
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
### Claude Cost
|
||||
|
||||
The `claude_cost` module displays the total cost of the current Claude Code session in USD. Like `claude_context`, it supports threshold-based styling.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| ---------- | -------------------------------- | ----------------------------------- |
|
||||
| `format` | `'[$symbol(\\$$cost)]($style) '` | The format for the module. |
|
||||
| `symbol` | `'💰 '` | The symbol shown before the cost. |
|
||||
| `display` | [see below](#display-1) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_cost` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define cost thresholds and styles. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Default | Description |
|
||||
| ----------- | ------------ | ------------------------------------------------------------- |
|
||||
| `threshold` | `0.0` | The minimum cost in USD to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this configuration is matched. |
|
||||
|
||||
**Default configuration:**
|
||||
|
||||
```toml
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 1.0
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 5.0
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Example | Description |
|
||||
| ------------- | -------- | ----------------------------------------------------- |
|
||||
| cost | `1.23` | Total session cost in USD (formatted to 2 decimals) |
|
||||
| duration | `1m 30s` | Total session duration |
|
||||
| api_duration | `45s` | Total API call duration |
|
||||
| lines_added | `1.2k` | Total lines of code added |
|
||||
| lines_removed | `500` | Total lines of code removed |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Cost with code change statistics
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost (+$lines_added -$lines_removed)]($style) "
|
||||
|
||||
# Hide module until cost exceeds $0.10
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.10
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 2.0
|
||||
style = "bold red"
|
||||
|
||||
# Show duration information
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost ($duration)]($style) "
|
||||
```
|
||||
|
||||
## Style Strings
|
||||
|
||||
Style strings are a list of words, separated by whitespace. The words are not case sensitive (i.e. `bold` and `BoLd` are considered the same string). Each word can be one of the following:
|
||||
|
||||
+5
-12
@@ -114,7 +114,7 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
|
||||
#### Powershell
|
||||
#### PowerShell
|
||||
|
||||
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
|
||||
|
||||
@@ -136,19 +136,16 @@ onMounted(() => {
|
||||
|
||||
#### Elvish
|
||||
|
||||
::: warning
|
||||
> [!WARNING] Only elvish v0.18 or higher is supported.
|
||||
|
||||
Only elvish v0.18 or higher is supported.
|
||||
|
||||
:::
|
||||
|
||||
أضف ما يلي إلى نهاية الملف `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
# ~/.elvish/rc.elv
|
||||
|
||||
eval (starship init elvish)
|
||||
```
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
|
||||
#### Tcsh
|
||||
@@ -164,11 +161,7 @@ onMounted(() => {
|
||||
|
||||
#### Nushell
|
||||
|
||||
::: warning
|
||||
|
||||
This will change in the future. Only Nushell v0.96+ is supported.
|
||||
|
||||
:::
|
||||
> [!WARNING] This will change in the future. Only Nushell v0.96+ is supported.
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
|
||||
|
||||
@@ -2,11 +2,7 @@
|
||||
|
||||
While Starship is a versatile shell, sometimes you need to do more than edit `starship.toml` to get it to do certain things. This page details some of the more advanced configuration techniques used in starship.
|
||||
|
||||
::: تحذير
|
||||
|
||||
The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
:::
|
||||
> [!WARNING] The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
## TransientPrompt in PowerShell
|
||||
|
||||
@@ -270,6 +266,316 @@ Note: Continuation prompts are only available in the following shells:
|
||||
continuation_prompt = '▶▶ '
|
||||
```
|
||||
|
||||
## Statusline for Claude Code
|
||||
|
||||
Starship supports displaying a custom statusline when running inside Claude Code, Anthropic's CLI tool for interactive coding with Claude. This statusline provides real-time information about your Claude session, including the model being used, context window usage, and session costs.
|
||||
|
||||
For more information about the Claude Code statusline feature, see the [Claude Code statusline documentation](https://code.claude.com/docs/en/statusline).
|
||||
|
||||
### Setup
|
||||
|
||||
To use Starship as your Claude Code statusline:
|
||||
|
||||
1. Run `/statusline` in Claude Code and ask it to configure Starship, or manually add the following to your `.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"statusLine": {
|
||||
"type": "command",
|
||||
"command": "starship statusline claude-code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Customize the statusline appearance in your `~/.config/starship.toml` (see [Configuration](#configuration) below)
|
||||
|
||||
### Overview
|
||||
|
||||
When invoked with `starship statusline claude-code`, Starship receives Claude Code session data via stdin and renders a statusline using a dedicated profile named `claude-code`.
|
||||
|
||||
The profile includes three specialized modules:
|
||||
|
||||
- `claude_model`: Displays the current Claude model being used
|
||||
- `claude_context`: Shows context window usage with a visual gauge
|
||||
- `claude_cost`: Displays session cost and statistics
|
||||
|
||||
The default profile format is:
|
||||
|
||||
```toml
|
||||
[profiles]
|
||||
claude-code = "$claude_model$git_branch$claude_context$claude_cost"
|
||||
```
|
||||
|
||||
### Configuration
|
||||
|
||||
You can customize the Claude Code statusline by modifying the `claude-code` profile and individual module configurations in your `~/.config/starship.toml`:
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Customize the claude-code profile
|
||||
[profiles]
|
||||
claude-code = "$claude_model$claude_context$claude_cost"
|
||||
|
||||
# Configure individual modules
|
||||
[claude_model]
|
||||
format = "[$symbol$model]($style) "
|
||||
symbol = "🤖 "
|
||||
style = "bold blue"
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge $percentage]($style) "
|
||||
gauge_width = 10
|
||||
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost]($style) "
|
||||
symbol = "💰 "
|
||||
```
|
||||
|
||||
### Claude Model
|
||||
|
||||
The `claude_model` module displays the current Claude model being used in the session.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | الافتراضي | الوصف |
|
||||
| --------------- | ---------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `format` | `'[$symbol$model]($style) '` | The format for the module. |
|
||||
| `symbol` | `'🤖 '` | The symbol shown before the model name. |
|
||||
| `style` | `'bold blue'` | The style for the module. |
|
||||
| `model_aliases` | `{}` | Map of model IDs or display names to shorter aliases. Checks ID first, then display name. |
|
||||
| `disabled` | `false` | Disables the `claude_model` module. |
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | مثال | الوصف |
|
||||
| --------- | ------------------- | ------------------------------------- |
|
||||
| model | `Claude 3.5 Sonnet` | The display name of the current model |
|
||||
| model_id | `claude-3-5-sonnet` | The model ID |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the value of option `style` |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Basic customization
|
||||
[claude_model]
|
||||
format = "on [$symbol$model]($style) "
|
||||
symbol = "🧠 "
|
||||
style = "bold cyan"
|
||||
|
||||
# Using model aliases for vendor-specific model names
|
||||
# You can alias by model ID or display name
|
||||
[claude_model.model_aliases]
|
||||
# Alias by vendor model ID (e.g. AWS Bedrock)
|
||||
"global.anthropic.claude-sonnet-4-5-20250929-v1:0" = "Sonnet 4.5"
|
||||
# Alias by display name
|
||||
"Claude Sonnet 4.5 (Vendor Proxy)" = "Sonnet"
|
||||
```
|
||||
|
||||
### Claude Context
|
||||
|
||||
The `claude_context` module displays context window usage as a percentage and visual gauge. The style automatically changes based on configurable thresholds.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | الافتراضي | الوصف |
|
||||
| ---------------------- | --------------------------------- | -------------------------------------------------- |
|
||||
| `format` | `'[$gauge $percentage]($style) '` | The format for the module. |
|
||||
| `symbol` | `''` | The symbol shown before the gauge. |
|
||||
| `gauge_width` | `5` | The width of the gauge in characters. |
|
||||
| `gauge_full_symbol` | `'█'` | The symbol used for filled segments of the gauge. |
|
||||
| `gauge_partial_symbol` | `'▒'` | The symbol used for partial segments of the gauge. |
|
||||
| `gauge_empty_symbol` | `'░'` | The symbol used for empty segments of the gauge. |
|
||||
| `display` | [see below](#display) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_context` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define thresholds and styles for different usage levels. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | الافتراضي | الوصف |
|
||||
| ----------- | ------------ | ------------------------------------------------------------------------ |
|
||||
| `threshold` | `0.0` | The minimum context windows usage percentage to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this the configuration is matched. |
|
||||
|
||||
```toml
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
hidden = true
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 30
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 60
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 80
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | مثال | الوصف |
|
||||
| ---------------------------- | ------- | ----------------------------------------------------- |
|
||||
| gauge | `██▒░░` | Visual representation of context usage |
|
||||
| percentage | `65%` | Context usage as a percentage |
|
||||
| input_tokens | `45.2k` | Total input tokens in conversation |
|
||||
| output_tokens | `12.3k` | Total output tokens in conversation |
|
||||
| curr_input_tokens | `5.1k` | Input tokens from most recent API call |
|
||||
| curr_output_tokens | `1.2k` | Output tokens from most recent API call |
|
||||
| curr_cache_creation_tokens | `1.5k` | Cache creation tokens from most recent API call |
|
||||
| curr_cache_read_tokens | `23.4k` | Cache read tokens from most recent API call |
|
||||
| total_tokens | `200k` | Total context window size |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
**Minimal gauge-only display**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge]($style) "
|
||||
gauge_width = 10
|
||||
```
|
||||
|
||||
**Detailed token information**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$percentage ($input_tokens in / $output_tokens out)]($style) "
|
||||
```
|
||||
|
||||
**Custom gauge symbols**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
gauge_full_symbol = "▰"
|
||||
gauge_partial_symbol = ""
|
||||
gauge_empty_symbol = "▱"
|
||||
gauge_width = 10
|
||||
format = "[$gauge]($style) "
|
||||
```
|
||||
|
||||
**Custom thresholds**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 50
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 75
|
||||
style = "bold orange"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 90
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
### Claude Cost
|
||||
|
||||
The `claude_cost` module displays the total cost of the current Claude Code session in USD. Like `claude_context`, it supports threshold-based styling.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | الافتراضي | الوصف |
|
||||
| ---------- | ---------------------------------- | ----------------------------------- |
|
||||
| `format` | `'[$symbol(\\$$cost)]($style) '` | The format for the module. |
|
||||
| `symbol` | `'💰 '` | The symbol shown before the cost. |
|
||||
| `display` | [see below](#display-1) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_cost` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define cost thresholds and styles. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | الافتراضي | الوصف |
|
||||
| ----------- | ------------ | ------------------------------------------------------------- |
|
||||
| `threshold` | `0.0` | The minimum cost in USD to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this configuration is matched. |
|
||||
|
||||
**Default configuration:**
|
||||
|
||||
```toml
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 1.0
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 5.0
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | مثال | الوصف |
|
||||
| ------------- | -------- | ----------------------------------------------------- |
|
||||
| cost | `1.23` | Total session cost in USD (formatted to 2 decimals) |
|
||||
| duration | `1m 30s` | Total session duration |
|
||||
| api_duration | `45s` | Total API call duration |
|
||||
| lines_added | `1.2k` | Total lines of code added |
|
||||
| lines_removed | `500` | Total lines of code removed |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Cost with code change statistics
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost (+$lines_added -$lines_removed)]($style) "
|
||||
|
||||
# Hide module until cost exceeds $0.10
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.10
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 2.0
|
||||
style = "bold red"
|
||||
|
||||
# Show duration information
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost ($duration)]($style) "
|
||||
```
|
||||
|
||||
## Style Strings
|
||||
|
||||
Style strings are a list of words, separated by whitespace. The words are not case sensitive (i.e. `bold` and `BoLd` are considered the same string). Each word can be one of the following:
|
||||
|
||||
+593
-295
File diff suppressed because it is too large
Load Diff
@@ -229,10 +229,13 @@ curl -sS https://starship.rs/install.sh | sh
|
||||
| Alpine Linux 3.13+ | [Alpine Linux Packages](https://pkgs.alpinelinux.org/packages?name=starship) | `apk add starship` |
|
||||
| Arch Linux | [Arch Linux Extra](https://archlinux.org/packages/extra/x86_64/starship) | `pacman -S starship` |
|
||||
| CentOS +7 | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Debian 13+ | [Debian Main](https://sources.debian.org/src/starship/1.22.1-1/) | `apt install starship` |
|
||||
| Fedora +40 | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Gentoo | [Gentoo Packages](https://packages.gentoo.org/packages/app-shells/starship) | `emerge app-shells/starship` |
|
||||
| Manjaro | | `pacman -S starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/starship/default.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/st/starship/package.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| openSUSE | [OSS](https://software.opensuse.org/package/starship) | `zypper in starship` |
|
||||
| Ubuntu 25.04+ | [Ubuntu Universe](https://packages.ubuntu.com/source/plucky/starship) | `apt install starship` |
|
||||
| Void Linux | [Void Linux Packages](https://github.com/void-linux/void-packages/tree/master/srcpkgs/starship) | `xbps-install -S starship` |
|
||||
|
||||
</details>
|
||||
@@ -303,13 +306,13 @@ load(io.popen('starship init cmd'):read("*a"))()
|
||||
<details>
|
||||
<summary>Elvish</summary>
|
||||
|
||||
أضف ما يلي إلى نهاية الملف `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
eval (starship init elvish)
|
||||
```
|
||||
|
||||
ملاحظة: فقط +Elvish v0.18 مدعوم
|
||||
ملاحظة: فقط +Elvish v0.18 مدعوم. For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
</details>
|
||||
|
||||
@@ -405,7 +408,7 @@ If you're looking to further customize Starship:
|
||||
|
||||
## 🤝 المساهمة
|
||||
|
||||
نبحث دائماً عن مساهمين من **جميع المستويات**! إذا كنت تتطلع إلى تسهيل طريقك إلى المشروع، جرب [إنشاء اول مشكلة](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
|
||||
نبحث دائماً عن مساهمين من **جميع المستويات**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/issues?q=state%3Aopen%20label%3A%22%F0%9F%8C%B1%20good%20first%20issue%22).
|
||||
|
||||
إذا كنت تتحدث بطلاقة بلغة غير إنجليزية، فإننا نقدر أي مساعدة للحفاظ على ترجمة المستندات وتحديثها بلغات أخرى. إذا كنت ترغب في المساعدة، يمكن المساهمة بالترجمة على [Starship Crowdin](https://translate.starship.rs/).
|
||||
|
||||
|
||||
@@ -23,16 +23,10 @@ choco install starship
|
||||
|
||||
## [termux](https://termux.com)
|
||||
|
||||
### المتطلبات الأساسية
|
||||
|
||||
```sh
|
||||
pkg install getconf
|
||||
```
|
||||
|
||||
### التثبيت
|
||||
|
||||
```sh
|
||||
curl -sS https://starship.rs/install.sh | sh -s -- --bin-dir /data/data/com.termux/files/usr/bin
|
||||
pkg install starship
|
||||
```
|
||||
|
||||
## [Funtoo Linux](https://www.funtoo.org/Welcome)
|
||||
|
||||
@@ -14,11 +14,7 @@ This preset changes the symbols for each module to use Nerd Font symbols.
|
||||
|
||||
This preset changes the symbols for several modules so that no Nerd Font symbols are used anywhere in the prompt.
|
||||
|
||||
::: tip
|
||||
|
||||
This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
:::
|
||||
> [!TIP] This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
[Click to view No Nerd Font preset](./no-nerd-font)
|
||||
|
||||
@@ -75,3 +71,9 @@ This preset is heavily inspired by [Pastel Powerline](./pastel-powerline.md), an
|
||||
This is a pseudo minimalist preset inspired by the [geometry](https://github.com/geometry-zsh/geometry) and [spaceship](https://github.com/spaceship-prompt/spaceship-prompt) prompts.
|
||||
|
||||
[](./jetpack)
|
||||
|
||||
## [Catppuccin Powerline](./catppuccin-powerline.md)
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||
[](./catppuccin-powerline)
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
[Return to Presets](./#catppuccin-powerline)
|
||||
|
||||
# Catppuccin Powerline Preset
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||

|
||||
|
||||
### المتطلبات الأساسية
|
||||
|
||||
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal
|
||||
|
||||
### Configuration
|
||||
|
||||
```sh
|
||||
starship preset catppuccin-powerline -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
By default this preset uses the Mocha flavour of Catppucin, but you can specify any of the flavours by modifying the value of `palette`:
|
||||
|
||||
- `catppuccin_mocha`
|
||||
- `catppuccin_frappe`
|
||||
- `catppuccin_macchiato`
|
||||
- `catppuccin_latte`
|
||||
|
||||
[Click to download TOML](/presets/toml/catppuccin-powerline.toml)
|
||||
|
||||
<<< @/public/presets/toml/catppuccin-powerline.toml
|
||||
@@ -1,4 +1,4 @@
|
||||
[Return to Presets](./#pure)
|
||||
[Return to Presets](./#pure-prompt)
|
||||
|
||||
# Pure Preset
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[Return to Presets](./#pastel-powerline)
|
||||
[Return to Presets](./#tokyo-night)
|
||||
|
||||
# Tokyo Night Preset
|
||||
|
||||
|
||||
+5
-12
@@ -114,7 +114,7 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
|
||||
#### Powershell
|
||||
#### PowerShell
|
||||
|
||||
Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
|
||||
|
||||
@@ -136,19 +136,16 @@ onMounted(() => {
|
||||
|
||||
#### Elvish
|
||||
|
||||
::: warning
|
||||
> [!WARNING] Only elvish v0.18 or higher is supported.
|
||||
|
||||
Only elvish v0.18 or higher is supported.
|
||||
|
||||
:::
|
||||
|
||||
`~/.elvish/rc.elv` এর শেষে নিম্নলিখিত লাইন টি যোগ করুন:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
# ~/.elvish/rc.elv
|
||||
|
||||
eval (starship init elvish)
|
||||
```
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
|
||||
#### Tcsh
|
||||
@@ -164,11 +161,7 @@ onMounted(() => {
|
||||
|
||||
#### Nushell
|
||||
|
||||
::: warning
|
||||
|
||||
This will change in the future. Only Nushell v0.96+ is supported.
|
||||
|
||||
:::
|
||||
> [!WARNING] This will change in the future. Only Nushell v0.96+ is supported.
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
|
||||
|
||||
@@ -2,11 +2,7 @@
|
||||
|
||||
While Starship is a versatile shell, sometimes you need to do more than edit `starship.toml` to get it to do certain things. This page details some of the more advanced configuration techniques used in starship.
|
||||
|
||||
::: warning
|
||||
|
||||
The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
:::
|
||||
> [!WARNING] The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
## TransientPrompt in PowerShell
|
||||
|
||||
@@ -270,6 +266,316 @@ Note: Continuation prompts are only available in the following shells:
|
||||
continuation_prompt = '▶▶ '
|
||||
```
|
||||
|
||||
## Statusline for Claude Code
|
||||
|
||||
Starship supports displaying a custom statusline when running inside Claude Code, Anthropic's CLI tool for interactive coding with Claude. This statusline provides real-time information about your Claude session, including the model being used, context window usage, and session costs.
|
||||
|
||||
For more information about the Claude Code statusline feature, see the [Claude Code statusline documentation](https://code.claude.com/docs/en/statusline).
|
||||
|
||||
### Setup
|
||||
|
||||
To use Starship as your Claude Code statusline:
|
||||
|
||||
1. Run `/statusline` in Claude Code and ask it to configure Starship, or manually add the following to your `.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"statusLine": {
|
||||
"type": "command",
|
||||
"command": "starship statusline claude-code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Customize the statusline appearance in your `~/.config/starship.toml` (see [Configuration](#configuration) below)
|
||||
|
||||
### Overview
|
||||
|
||||
When invoked with `starship statusline claude-code`, Starship receives Claude Code session data via stdin and renders a statusline using a dedicated profile named `claude-code`.
|
||||
|
||||
The profile includes three specialized modules:
|
||||
|
||||
- `claude_model`: Displays the current Claude model being used
|
||||
- `claude_context`: Shows context window usage with a visual gauge
|
||||
- `claude_cost`: Displays session cost and statistics
|
||||
|
||||
The default profile format is:
|
||||
|
||||
```toml
|
||||
[profiles]
|
||||
claude-code = "$claude_model$git_branch$claude_context$claude_cost"
|
||||
```
|
||||
|
||||
### Configuration
|
||||
|
||||
You can customize the Claude Code statusline by modifying the `claude-code` profile and individual module configurations in your `~/.config/starship.toml`:
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Customize the claude-code profile
|
||||
[profiles]
|
||||
claude-code = "$claude_model$claude_context$claude_cost"
|
||||
|
||||
# Configure individual modules
|
||||
[claude_model]
|
||||
format = "[$symbol$model]($style) "
|
||||
symbol = "🤖 "
|
||||
style = "bold blue"
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge $percentage]($style) "
|
||||
gauge_width = 10
|
||||
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost]($style) "
|
||||
symbol = "💰 "
|
||||
```
|
||||
|
||||
### Claude Model
|
||||
|
||||
The `claude_model` module displays the current Claude model being used in the session.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| --------------- | ---------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `format` | `'[$symbol$model]($style) '` | The format for the module. |
|
||||
| `symbol` | `'🤖 '` | The symbol shown before the model name. |
|
||||
| `style` | `'bold blue'` | The style for the module. |
|
||||
| `model_aliases` | `{}` | Map of model IDs or display names to shorter aliases. Checks ID first, then display name. |
|
||||
| `disabled` | `false` | Disables the `claude_model` module. |
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Example | Description |
|
||||
| --------- | ------------------- | ------------------------------------- |
|
||||
| model | `Claude 3.5 Sonnet` | The display name of the current model |
|
||||
| model_id | `claude-3-5-sonnet` | The model ID |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the value of option `style` |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Basic customization
|
||||
[claude_model]
|
||||
format = "on [$symbol$model]($style) "
|
||||
symbol = "🧠 "
|
||||
style = "bold cyan"
|
||||
|
||||
# Using model aliases for vendor-specific model names
|
||||
# You can alias by model ID or display name
|
||||
[claude_model.model_aliases]
|
||||
# Alias by vendor model ID (e.g. AWS Bedrock)
|
||||
"global.anthropic.claude-sonnet-4-5-20250929-v1:0" = "Sonnet 4.5"
|
||||
# Alias by display name
|
||||
"Claude Sonnet 4.5 (Vendor Proxy)" = "Sonnet"
|
||||
```
|
||||
|
||||
### Claude Context
|
||||
|
||||
The `claude_context` module displays context window usage as a percentage and visual gauge. The style automatically changes based on configurable thresholds.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| ---------------------- | --------------------------------- | -------------------------------------------------- |
|
||||
| `format` | `'[$gauge $percentage]($style) '` | The format for the module. |
|
||||
| `symbol` | `''` | The symbol shown before the gauge. |
|
||||
| `gauge_width` | `5` | The width of the gauge in characters. |
|
||||
| `gauge_full_symbol` | `'█'` | The symbol used for filled segments of the gauge. |
|
||||
| `gauge_partial_symbol` | `'▒'` | The symbol used for partial segments of the gauge. |
|
||||
| `gauge_empty_symbol` | `'░'` | The symbol used for empty segments of the gauge. |
|
||||
| `display` | [see below](#display) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_context` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define thresholds and styles for different usage levels. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Default | Description |
|
||||
| ----------- | ------------ | ------------------------------------------------------------------------ |
|
||||
| `threshold` | `0.0` | The minimum context windows usage percentage to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this the configuration is matched. |
|
||||
|
||||
```toml
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
hidden = true
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 30
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 60
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 80
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Example | Description |
|
||||
| ---------------------------- | ------- | ----------------------------------------------------- |
|
||||
| gauge | `██▒░░` | Visual representation of context usage |
|
||||
| percentage | `65%` | Context usage as a percentage |
|
||||
| input_tokens | `45.2k` | Total input tokens in conversation |
|
||||
| output_tokens | `12.3k` | Total output tokens in conversation |
|
||||
| curr_input_tokens | `5.1k` | Input tokens from most recent API call |
|
||||
| curr_output_tokens | `1.2k` | Output tokens from most recent API call |
|
||||
| curr_cache_creation_tokens | `1.5k` | Cache creation tokens from most recent API call |
|
||||
| curr_cache_read_tokens | `23.4k` | Cache read tokens from most recent API call |
|
||||
| total_tokens | `200k` | Total context window size |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
**Minimal gauge-only display**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge]($style) "
|
||||
gauge_width = 10
|
||||
```
|
||||
|
||||
**Detailed token information**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$percentage ($input_tokens in / $output_tokens out)]($style) "
|
||||
```
|
||||
|
||||
**Custom gauge symbols**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
gauge_full_symbol = "▰"
|
||||
gauge_partial_symbol = ""
|
||||
gauge_empty_symbol = "▱"
|
||||
gauge_width = 10
|
||||
format = "[$gauge]($style) "
|
||||
```
|
||||
|
||||
**Custom thresholds**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 50
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 75
|
||||
style = "bold orange"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 90
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
### Claude Cost
|
||||
|
||||
The `claude_cost` module displays the total cost of the current Claude Code session in USD. Like `claude_context`, it supports threshold-based styling.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| ---------- | ---------------------------------- | ----------------------------------- |
|
||||
| `format` | `'[$symbol(\\$$cost)]($style) '` | The format for the module. |
|
||||
| `symbol` | `'💰 '` | The symbol shown before the cost. |
|
||||
| `display` | [see below](#display-1) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_cost` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define cost thresholds and styles. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Default | Description |
|
||||
| ----------- | ------------ | ------------------------------------------------------------- |
|
||||
| `threshold` | `0.0` | The minimum cost in USD to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this configuration is matched. |
|
||||
|
||||
**Default configuration:**
|
||||
|
||||
```toml
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 1.0
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 5.0
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Example | Description |
|
||||
| ------------- | -------- | ----------------------------------------------------- |
|
||||
| cost | `1.23` | Total session cost in USD (formatted to 2 decimals) |
|
||||
| duration | `1m 30s` | Total session duration |
|
||||
| api_duration | `45s` | Total API call duration |
|
||||
| lines_added | `1.2k` | Total lines of code added |
|
||||
| lines_removed | `500` | Total lines of code removed |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Cost with code change statistics
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost (+$lines_added -$lines_removed)]($style) "
|
||||
|
||||
# Hide module until cost exceeds $0.10
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.10
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 2.0
|
||||
style = "bold red"
|
||||
|
||||
# Show duration information
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost ($duration)]($style) "
|
||||
```
|
||||
|
||||
## Style Strings
|
||||
|
||||
Style strings are a list of words, separated by whitespace. The words are not case sensitive (i.e. `bold` and `BoLd` are considered the same string). Each word can be one of the following:
|
||||
|
||||
+593
-295
File diff suppressed because it is too large
Load Diff
@@ -229,10 +229,13 @@ curl -sS https://starship.rs/install.sh | sh
|
||||
| Alpine Linux 3.13+ | [Alpine Linux Packages](https://pkgs.alpinelinux.org/packages?name=starship) | `apk add starship` |
|
||||
| Arch Linux | [Arch Linux Extra](https://archlinux.org/packages/extra/x86_64/starship) | `pacman -S starship` |
|
||||
| CentOS 7+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Debian 13+ | [Debian Main](https://sources.debian.org/src/starship/1.22.1-1/) | `apt install starship` |
|
||||
| Fedora 40+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Gentoo | [Gentoo Packages](https://packages.gentoo.org/packages/app-shells/starship) | `emerge app-shells/starship` |
|
||||
| Manjaro | | `pacman -S starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/starship/default.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/st/starship/package.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| openSUSE | [OSS](https://software.opensuse.org/package/starship) | `zypper in starship` |
|
||||
| Ubuntu 25.04+ | [Ubuntu Universe](https://packages.ubuntu.com/source/plucky/starship) | `apt install starship` |
|
||||
| Void Linux | [Void Linux Packages](https://github.com/void-linux/void-packages/tree/master/srcpkgs/starship) | `xbps-install -S starship` |
|
||||
|
||||
</details>
|
||||
@@ -303,13 +306,13 @@ load(io.popen('starship init cmd'):read("*a"))()
|
||||
<details>
|
||||
<summary>Elvish</summary>
|
||||
|
||||
`~/.elvish/rc.elv` এর শেষে নিম্নলিখিত লাইন টি যোগ করুন:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
eval (starship init elvish)
|
||||
```
|
||||
|
||||
বিঃদ্রঃ শুধুমাত্র Elvish v0.18+ কাজ করবে ।
|
||||
Note: Only Elvish v0.18+ is supported. For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
</details>
|
||||
|
||||
@@ -345,7 +348,7 @@ mkdir ($nu.data-dir | path join "vendor/autoload")
|
||||
starship init nu | save -f ($nu.data-dir | path join "vendor/autoload/starship.nu")
|
||||
```
|
||||
|
||||
Note: Only Nushell v0.96+ is supported
|
||||
বিঃদ্রঃ শুধুমাত্র Nushell v0.96+ কাজ করবে ।
|
||||
|
||||
</details>
|
||||
|
||||
@@ -405,7 +408,7 @@ eval "$(starship init zsh)"
|
||||
|
||||
## 🤝 নিজে অবদান রাখুন
|
||||
|
||||
আমরা সবসময় **সকল দক্ষতা স্তরের** অবদানকারীদের খুঁজছি! আপনি যদি সহজ ভাবে এই প্রোজেক্টে অবদান রাখতে চান তাইলে ["good first issue"](https://github.com/starship/starship/labels/🌱%20good%20first%20issue) গুলির সমাধান করার চেষ্টা করতে পারেন ।
|
||||
আমরা সবসময় **সকল দক্ষতা স্তরের** অবদানকারীদের খুঁজছি! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/issues?q=state%3Aopen%20label%3A%22%F0%9F%8C%B1%20good%20first%20issue%22).
|
||||
|
||||
আপনি যদি ইংরেজি ছাড়া অন্য কোন ভাষায় সাবলীল হন, তাহলে আপনি আমাদের ডকুমেন্টেশন অনুবাদে এবং আপ-টু-ডেট রাখতে সহায়তা করতে পারেন, আমরা খুবই কৃতজ্ঞ হব । যদি এক্ষেত্রে সাহায্য করতে চান, তাহলে [Starship Crowdin](https://translate.starship.rs/) পেইজ এ গিয়ে আপনার অনুবাদ গুলি যোগ করতে পারবেন ।
|
||||
|
||||
|
||||
@@ -23,16 +23,10 @@ choco install starship
|
||||
|
||||
## [termux](https://termux.com)
|
||||
|
||||
### পূর্বশর্ত
|
||||
|
||||
```sh
|
||||
pkg install getconf
|
||||
```
|
||||
|
||||
### ইন্সটল
|
||||
|
||||
```sh
|
||||
curl -sS https://starship.rs/install.sh | sh -s -- --bin-dir /data/data/com.termux/files/usr/bin
|
||||
pkg install starship
|
||||
```
|
||||
|
||||
## [Funtoo Linux](https://www.funtoo.org/Welcome)
|
||||
|
||||
@@ -14,11 +14,7 @@ This preset changes the symbols for each module to use Nerd Font symbols.
|
||||
|
||||
This preset changes the symbols for several modules so that no Nerd Font symbols are used anywhere in the prompt.
|
||||
|
||||
::: tip
|
||||
|
||||
This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
:::
|
||||
> [!TIP] This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
[Click to view No Nerd Font preset](./no-nerd-font)
|
||||
|
||||
@@ -75,3 +71,9 @@ This preset is heavily inspired by [Pastel Powerline](./pastel-powerline.md), an
|
||||
This is a pseudo minimalist preset inspired by the [geometry](https://github.com/geometry-zsh/geometry) and [spaceship](https://github.com/spaceship-prompt/spaceship-prompt) prompts.
|
||||
|
||||
[](./jetpack)
|
||||
|
||||
## [Catppuccin Powerline](./catppuccin-powerline.md)
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||
[](./catppuccin-powerline)
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
[Return to Presets](./#catppuccin-powerline)
|
||||
|
||||
# Catppuccin Powerline Preset
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||

|
||||
|
||||
### পূর্বশর্ত
|
||||
|
||||
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal
|
||||
|
||||
### Configuration
|
||||
|
||||
```sh
|
||||
starship preset catppuccin-powerline -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
By default this preset uses the Mocha flavour of Catppucin, but you can specify any of the flavours by modifying the value of `palette`:
|
||||
|
||||
- `catppuccin_mocha`
|
||||
- `catppuccin_frappe`
|
||||
- `catppuccin_macchiato`
|
||||
- `catppuccin_latte`
|
||||
|
||||
[Click to download TOML](/presets/toml/catppuccin-powerline.toml)
|
||||
|
||||
<<< @/public/presets/toml/catppuccin-powerline.toml
|
||||
@@ -1,4 +1,4 @@
|
||||
[Return to Presets](./#pure)
|
||||
[Return to Presets](./#pure-prompt)
|
||||
|
||||
# Pure Preset
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[Return to Presets](./#pastel-powerline)
|
||||
[Return to Presets](./#tokyo-night)
|
||||
|
||||
# Tokyo Night Preset
|
||||
|
||||
|
||||
+5
-12
@@ -114,7 +114,7 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
|
||||
#### Powershell
|
||||
#### PowerShell
|
||||
|
||||
ئەمەی خوارەوە زیادبکە لە کۆتایی `Microsoft.PowerShell_profile.ps1`. ئەتوانی شوێنی ئەم فایلە ببینیتەوە بە سەیرکردنی گۆڕاوی `$PROFILE` لە PowerShell. ئاسایی ڕێڕەوەکە بریتیە لە `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` یان `/.config/powershell/Microsoft.PowerShell_profile.ps1` لەسەر -Nix.
|
||||
|
||||
@@ -136,19 +136,16 @@ onMounted(() => {
|
||||
|
||||
#### Elvish
|
||||
|
||||
::: warning
|
||||
> [!WARNING] Only elvish v0.18 or higher is supported.
|
||||
|
||||
Only elvish v0.18 or higher is supported.
|
||||
|
||||
:::
|
||||
|
||||
ئەمەی خوارەوە زیادبکە لە کۆتایی `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
# ~/.elvish/rc.elv
|
||||
|
||||
eval (starship init elvish)
|
||||
```
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
|
||||
#### Tcsh
|
||||
@@ -164,11 +161,7 @@ onMounted(() => {
|
||||
|
||||
#### Nushell
|
||||
|
||||
::: warning
|
||||
|
||||
This will change in the future. Only Nushell v0.96+ is supported.
|
||||
|
||||
:::
|
||||
> [!WARNING] This will change in the future. Only Nushell v0.96+ is supported.
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
|
||||
|
||||
@@ -2,11 +2,7 @@
|
||||
|
||||
لەگەڵ ئەوەی Starship شێڵێکە بەکارهێنانی زۆرە، هەندێک جار دەسکاری کردنی `starship.toml` بەس نییە بۆ ئەوەی وای لێبکەی هەندێک شتی دیاریکراو ئەنجام بدات. ئەم پەڕەیە ووردەکاری زیاتر ئەدات لەسەر هەندێک لە شێوازە ڕێکخستنە پێشکەوتووترەکان کە لە Starshipـدا بەکارهاتووە.
|
||||
|
||||
::: ئاگادارکردنەوە
|
||||
|
||||
ڕێکخستنەکانی ئەم بەشە شایەنی گۆڕانن لە وەشانەکانی داهاتووی Starshipدا.
|
||||
|
||||
:::
|
||||
> [!WARNING] The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
## TransientPrompt in PowerShell
|
||||
|
||||
@@ -270,6 +266,316 @@ Note: Continuation prompts are only available in the following shells:
|
||||
continuation_prompt = '▶▶ '
|
||||
```
|
||||
|
||||
## Statusline for Claude Code
|
||||
|
||||
Starship supports displaying a custom statusline when running inside Claude Code, Anthropic's CLI tool for interactive coding with Claude. This statusline provides real-time information about your Claude session, including the model being used, context window usage, and session costs.
|
||||
|
||||
For more information about the Claude Code statusline feature, see the [Claude Code statusline documentation](https://code.claude.com/docs/en/statusline).
|
||||
|
||||
### Setup
|
||||
|
||||
To use Starship as your Claude Code statusline:
|
||||
|
||||
1. Run `/statusline` in Claude Code and ask it to configure Starship, or manually add the following to your `.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"statusLine": {
|
||||
"type": "command",
|
||||
"command": "starship statusline claude-code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Customize the statusline appearance in your `~/.config/starship.toml` (see [Configuration](#configuration) below)
|
||||
|
||||
### Overview
|
||||
|
||||
When invoked with `starship statusline claude-code`, Starship receives Claude Code session data via stdin and renders a statusline using a dedicated profile named `claude-code`.
|
||||
|
||||
The profile includes three specialized modules:
|
||||
|
||||
- `claude_model`: Displays the current Claude model being used
|
||||
- `claude_context`: Shows context window usage with a visual gauge
|
||||
- `claude_cost`: Displays session cost and statistics
|
||||
|
||||
The default profile format is:
|
||||
|
||||
```toml
|
||||
[profiles]
|
||||
claude-code = "$claude_model$git_branch$claude_context$claude_cost"
|
||||
```
|
||||
|
||||
### ڕێکخستن
|
||||
|
||||
You can customize the Claude Code statusline by modifying the `claude-code` profile and individual module configurations in your `~/.config/starship.toml`:
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Customize the claude-code profile
|
||||
[profiles]
|
||||
claude-code = "$claude_model$claude_context$claude_cost"
|
||||
|
||||
# Configure individual modules
|
||||
[claude_model]
|
||||
format = "[$symbol$model]($style) "
|
||||
symbol = "🤖 "
|
||||
style = "bold blue"
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge $percentage]($style) "
|
||||
gauge_width = 10
|
||||
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost]($style) "
|
||||
symbol = "💰 "
|
||||
```
|
||||
|
||||
### Claude Model
|
||||
|
||||
The `claude_model` module displays the current Claude model being used in the session.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| --------------- | ---------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `format` | `'[$symbol$model]($style) '` | The format for the module. |
|
||||
| `symbol` | `'🤖 '` | The symbol shown before the model name. |
|
||||
| `style` | `'bold blue'` | The style for the module. |
|
||||
| `model_aliases` | `{}` | Map of model IDs or display names to shorter aliases. Checks ID first, then display name. |
|
||||
| `disabled` | `false` | Disables the `claude_model` module. |
|
||||
|
||||
#### Variables
|
||||
|
||||
| گۆڕاو | نموونە | Description |
|
||||
| --------- | ------------------- | ------------------------------------- |
|
||||
| model | `Claude 3.5 Sonnet` | The display name of the current model |
|
||||
| model_id | `claude-3-5-sonnet` | The model ID |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the value of option `style` |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Basic customization
|
||||
[claude_model]
|
||||
format = "on [$symbol$model]($style) "
|
||||
symbol = "🧠 "
|
||||
style = "bold cyan"
|
||||
|
||||
# Using model aliases for vendor-specific model names
|
||||
# You can alias by model ID or display name
|
||||
[claude_model.model_aliases]
|
||||
# Alias by vendor model ID (e.g. AWS Bedrock)
|
||||
"global.anthropic.claude-sonnet-4-5-20250929-v1:0" = "Sonnet 4.5"
|
||||
# Alias by display name
|
||||
"Claude Sonnet 4.5 (Vendor Proxy)" = "Sonnet"
|
||||
```
|
||||
|
||||
### Claude Context
|
||||
|
||||
The `claude_context` module displays context window usage as a percentage and visual gauge. The style automatically changes based on configurable thresholds.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| ---------------------- | --------------------------------- | -------------------------------------------------- |
|
||||
| `format` | `'[$gauge $percentage]($style) '` | The format for the module. |
|
||||
| `symbol` | `''` | The symbol shown before the gauge. |
|
||||
| `gauge_width` | `5` | The width of the gauge in characters. |
|
||||
| `gauge_full_symbol` | `'█'` | The symbol used for filled segments of the gauge. |
|
||||
| `gauge_partial_symbol` | `'▒'` | The symbol used for partial segments of the gauge. |
|
||||
| `gauge_empty_symbol` | `'░'` | The symbol used for empty segments of the gauge. |
|
||||
| `display` | [see below](#display) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_context` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define thresholds and styles for different usage levels. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Default | Description |
|
||||
| ----------- | ------------ | ------------------------------------------------------------------------ |
|
||||
| `threshold` | `0.0` | The minimum context windows usage percentage to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this the configuration is matched. |
|
||||
|
||||
```toml
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
hidden = true
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 30
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 60
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 80
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| گۆڕاو | نموونە | Description |
|
||||
| ---------------------------- | ------- | ----------------------------------------------------- |
|
||||
| gauge | `██▒░░` | Visual representation of context usage |
|
||||
| percentage | `65%` | Context usage as a percentage |
|
||||
| input_tokens | `45.2k` | Total input tokens in conversation |
|
||||
| output_tokens | `12.3k` | Total output tokens in conversation |
|
||||
| curr_input_tokens | `5.1k` | Input tokens from most recent API call |
|
||||
| curr_output_tokens | `1.2k` | Output tokens from most recent API call |
|
||||
| curr_cache_creation_tokens | `1.5k` | Cache creation tokens from most recent API call |
|
||||
| curr_cache_read_tokens | `23.4k` | Cache read tokens from most recent API call |
|
||||
| total_tokens | `200k` | Total context window size |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
**Minimal gauge-only display**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge]($style) "
|
||||
gauge_width = 10
|
||||
```
|
||||
|
||||
**Detailed token information**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$percentage ($input_tokens in / $output_tokens out)]($style) "
|
||||
```
|
||||
|
||||
**Custom gauge symbols**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
gauge_full_symbol = "▰"
|
||||
gauge_partial_symbol = ""
|
||||
gauge_empty_symbol = "▱"
|
||||
gauge_width = 10
|
||||
format = "[$gauge]($style) "
|
||||
```
|
||||
|
||||
**Custom thresholds**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 50
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 75
|
||||
style = "bold orange"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 90
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
### Claude Cost
|
||||
|
||||
The `claude_cost` module displays the total cost of the current Claude Code session in USD. Like `claude_context`, it supports threshold-based styling.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Default | Description |
|
||||
| ---------- | ---------------------------------- | ----------------------------------- |
|
||||
| `format` | `'[$symbol(\\$$cost)]($style) '` | The format for the module. |
|
||||
| `symbol` | `'💰 '` | The symbol shown before the cost. |
|
||||
| `display` | [see below](#display-1) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_cost` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define cost thresholds and styles. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Default | Description |
|
||||
| ----------- | ------------ | ------------------------------------------------------------- |
|
||||
| `threshold` | `0.0` | The minimum cost in USD to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this configuration is matched. |
|
||||
|
||||
**Default configuration:**
|
||||
|
||||
```toml
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 1.0
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 5.0
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| گۆڕاو | نموونە | Description |
|
||||
| ------------- | -------- | ----------------------------------------------------- |
|
||||
| cost | `1.23` | Total session cost in USD (formatted to 2 decimals) |
|
||||
| duration | `1m 30s` | Total session duration |
|
||||
| api_duration | `45s` | Total API call duration |
|
||||
| lines_added | `1.2k` | Total lines of code added |
|
||||
| lines_removed | `500` | Total lines of code removed |
|
||||
| symbol | | Mirrors the value of option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Examples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Cost with code change statistics
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost (+$lines_added -$lines_removed)]($style) "
|
||||
|
||||
# Hide module until cost exceeds $0.10
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.10
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 2.0
|
||||
style = "bold red"
|
||||
|
||||
# Show duration information
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost ($duration)]($style) "
|
||||
```
|
||||
|
||||
## Style Strings
|
||||
|
||||
Style strings are a list of words, separated by whitespace. The words are not case sensitive (i.e. `bold` and `BoLd` are considered the same string). Each word can be one of the following:
|
||||
|
||||
+593
-295
File diff suppressed because it is too large
Load Diff
@@ -225,10 +225,13 @@ Alternatively, install Starship using any of the following package managers:
|
||||
| Alpine Linux 3.13+ | [Alpine Linux Packages](https://pkgs.alpinelinux.org/packages?name=starship) | `apk add starship` |
|
||||
| Arch Linux | [Arch Linux Extra](https://archlinux.org/packages/extra/x86_64/starship) | `pacman -S starship` |
|
||||
| CentOS 7+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Debian 13+ | [Debian Main](https://sources.debian.org/src/starship/1.22.1-1/) | `apt install starship` |
|
||||
| Fedora 40+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Gentoo | [Gentoo Packages](https://packages.gentoo.org/packages/app-shells/starship) | `emerge app-shells/starship` |
|
||||
| Manjaro | | `pacman -S starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/starship/default.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/st/starship/package.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| openSUSE | [OSS](https://software.opensuse.org/package/starship) | `zypper in starship` |
|
||||
| Ubuntu 25.04+ | [Ubuntu Universe](https://packages.ubuntu.com/source/plucky/starship) | `apt install starship` |
|
||||
| Void Linux | [Void Linux Packages](https://github.com/void-linux/void-packages/tree/master/srcpkgs/starship) | `xbps-install -S starship` |
|
||||
|
||||
</details>
|
||||
@@ -299,13 +302,13 @@ load(io.popen('starship init cmd'):read("*a"))()
|
||||
<details>
|
||||
<summary>Elvish</summary>
|
||||
|
||||
ئەمەی خوارەوە زیادبکە لە کۆتایی `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
eval (starship init elvish)
|
||||
```
|
||||
|
||||
Note: Only Elvish v0.18+ is supported
|
||||
Note: Only Elvish v0.18+ is supported. For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
</details>
|
||||
|
||||
@@ -401,7 +404,7 @@ If you're looking to further customize Starship:
|
||||
|
||||
## 🤝 بەژداریکردن
|
||||
|
||||
ئێمە هەموو کات ئەگەڕێین بۆ بەژداریکەرێک لە هەر **ئاست و توانایەکدا بێت**! ئەگەر بەدوای ئەوەوەی کە بێیتە ئەم پڕۆژەیەوە [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue) تاقیبکەرەوە.
|
||||
ئێمە هەموو کات ئەگەڕێین بۆ بەژداریکەرێک لە هەر **ئاست و توانایەکدا بێت**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/issues?q=state%3Aopen%20label%3A%22%F0%9F%8C%B1%20good%20first%20issue%22).
|
||||
|
||||
ئەگەر پاراویت لە زمانێک جگە لە ئینگلیزی، ئێمە زۆر خۆشحاڵدەبین بە هەر یارمەتییەک کە بەڵگەنامەکانمان بە وەرگێڕدراوی بهێڵێتەوە و نوێکراوی بهێڵێتەوە بە زمانەکانی دیکە. ئەگەر نیازت هەیە یارمەتی بدەیت، ئەتوانی بەژداری لە وەرگێڕاندا بکەیت لەسەر [Starship Crowdin](https://translate.starship.rs/).
|
||||
|
||||
|
||||
@@ -23,16 +23,10 @@ choco install starship
|
||||
|
||||
## [termux](https://termux.com)
|
||||
|
||||
### پێشمەرجەکان
|
||||
|
||||
```sh
|
||||
pkg install getconf
|
||||
```
|
||||
|
||||
### دامەزراندن
|
||||
|
||||
```sh
|
||||
curl -sS https://starship.rs/install.sh | sh -s -- --bin-dir /data/data/com.termux/files/usr/bin
|
||||
pkg install starship
|
||||
```
|
||||
|
||||
## [Funtoo Linux](https://www.funtoo.org/Welcome)
|
||||
|
||||
@@ -14,11 +14,7 @@ This preset changes the symbols for each module to use Nerd Font symbols.
|
||||
|
||||
This preset changes the symbols for several modules so that no Nerd Font symbols are used anywhere in the prompt.
|
||||
|
||||
::: tip
|
||||
|
||||
This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
:::
|
||||
> [!TIP] This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
[Click to view No Nerd Font preset](./no-nerd-font)
|
||||
|
||||
@@ -75,3 +71,9 @@ This preset is heavily inspired by [Pastel Powerline](./pastel-powerline.md), an
|
||||
This is a pseudo minimalist preset inspired by the [geometry](https://github.com/geometry-zsh/geometry) and [spaceship](https://github.com/spaceship-prompt/spaceship-prompt) prompts.
|
||||
|
||||
[](./jetpack)
|
||||
|
||||
## [Catppuccin Powerline](./catppuccin-powerline.md)
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||
[](./catppuccin-powerline)
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
[Return to Presets](./#catppuccin-powerline)
|
||||
|
||||
# Catppuccin Powerline Preset
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||

|
||||
|
||||
### پێشمەرجەکان
|
||||
|
||||
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal
|
||||
|
||||
### ڕێکخستن
|
||||
|
||||
```sh
|
||||
starship preset catppuccin-powerline -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
By default this preset uses the Mocha flavour of Catppucin, but you can specify any of the flavours by modifying the value of `palette`:
|
||||
|
||||
- `catppuccin_mocha`
|
||||
- `catppuccin_frappe`
|
||||
- `catppuccin_macchiato`
|
||||
- `catppuccin_latte`
|
||||
|
||||
[Click to download TOML](/presets/toml/catppuccin-powerline.toml)
|
||||
|
||||
<<< @/public/presets/toml/catppuccin-powerline.toml
|
||||
@@ -1,4 +1,4 @@
|
||||
[Return to Presets](./#pure)
|
||||
[Return to Presets](./#pure-prompt)
|
||||
|
||||
# Pure Preset
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[Return to Presets](./#pastel-powerline)
|
||||
[Return to Presets](./#tokyo-night)
|
||||
|
||||
# Tokyo Night Preset
|
||||
|
||||
|
||||
+615
-371
File diff suppressed because it is too large
Load Diff
+6
-13
@@ -1,5 +1,5 @@
|
||||
---
|
||||
layout: home
|
||||
layout: Home
|
||||
hero:
|
||||
image: /logo.svg
|
||||
text:
|
||||
@@ -114,7 +114,7 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
|
||||
#### Powershell
|
||||
#### PowerShell
|
||||
|
||||
Füge das Folgende ans Ende von `Microsoft.PowerShell_profile.ps1` an. Du kannst den Speicherort dieser Datei überprüfen, indem du die `$PROFILE` Variable in PowerShell abfragst. Normalerweise ist der Pfad `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` oder `~/.config/powershell/Microsoft.PowerShell_profile.ps1` auf -Nix.
|
||||
|
||||
@@ -136,19 +136,16 @@ onMounted(() => {
|
||||
|
||||
#### Elvish
|
||||
|
||||
::: warning
|
||||
> [!WARNUNG] Nur elvish v0.18 oder höher wird unterstützt.
|
||||
|
||||
Es wird nur elvish v0.18 oder höher unterstützt.
|
||||
|
||||
:::
|
||||
|
||||
Trage folgendes am Ende von `~/.config/fish/rc.elv` ein:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
# ~/.elvish/rc.elv
|
||||
|
||||
eval (starship init elvish)
|
||||
```
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
|
||||
#### Tcsh
|
||||
@@ -164,11 +161,7 @@ onMounted(() => {
|
||||
|
||||
#### Nushell
|
||||
|
||||
::: warning
|
||||
|
||||
Das wird sich in Zukunft ändern. Only Nushell v0.96+ is supported.
|
||||
|
||||
:::
|
||||
> [!WARNUNG] Dies wird sich in Zukunft ändern. Nur Nushell v0.96+ wird unterstützt.
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
|
||||
|
||||
@@ -2,11 +2,7 @@
|
||||
|
||||
Auch wenn Starship eine vielseitige Shell ist, reichen manche Konfigurationen in der `starship.toml` nicht aus, um manche Sachen zu erreichen. Diese Seite beschreibt einige fortgeschrittene Konfigurationen für Starship.
|
||||
|
||||
::: warning
|
||||
|
||||
Die hier beschriebenen Konfigurationen werden sich mit kommenden Updates von Starship verändern.
|
||||
|
||||
:::
|
||||
> [!WARNING] Die Konfigurationen in diesem Abschnitt können in zukünftigen Releases von Starship Änderungen unterliegen.
|
||||
|
||||
## TransientPrompt in PowerShell
|
||||
|
||||
@@ -32,7 +28,7 @@ Clink allows you to replace the previous-printed prompt with custom strings. Das
|
||||
- `same_dir`: replace the previous prompt only if the working directory is same
|
||||
- `off`: do not replace the prompt (i.e. turn off transience)
|
||||
|
||||
You need to do this only once. Make the following changes to your `starship.lua` to customize what gets displayed on the left and on the right:
|
||||
Sie müssen dies nur einmal tun. Make the following changes to your `starship.lua` to customize what gets displayed on the left and on the right:
|
||||
|
||||
- By default, the left side of input gets replaced with `>`. To customize this, define a new function called `starship_transient_prompt_func`. This function receives the current prompt as a string that you can utilize. For example, to display Starship's `character` module here, you would do
|
||||
|
||||
@@ -45,7 +41,7 @@ end
|
||||
load(io.popen('starship init cmd'):read("*a"))()
|
||||
```
|
||||
|
||||
- By default, the right side of input is empty. To customize this, define a new function called `starship_transient_rprompt_func`. This function receives the current prompt as a string that you can utilize. For example, to display the time at which the last command was started here, you would do
|
||||
- Standardmäßig ist die rechte Seite de Eingabe leer. To customize this, define a new function called `starship_transient_rprompt_func`. This function receives the current prompt as a string that you can utilize. For example, to display the time at which the last command was started here, you would do
|
||||
|
||||
```lua
|
||||
function starship_transient_rprompt_func(prompt)
|
||||
@@ -70,7 +66,7 @@ starship init fish | source
|
||||
enable_transience
|
||||
```
|
||||
|
||||
- By default, the right side of input is empty. To customize this, define a new function called `starship_transient_rprompt_func`. For example, to display the time at which the last command was started here, you would do
|
||||
- Standardmäßig ist die rechte Seite de Eingabe leer. To customize this, define a new function called `starship_transient_rprompt_func`. For example, to display the time at which the last command was started here, you would do
|
||||
|
||||
```fish
|
||||
function starship_transient_rprompt_func
|
||||
@@ -80,7 +76,7 @@ starship init fish | source
|
||||
enable_transience
|
||||
```
|
||||
|
||||
## TransientPrompt and TransientRightPrompt in Bash
|
||||
## „TransientPrompt“ und „TransientRightPrompt“ in Bash
|
||||
|
||||
The [Ble.sh](https://github.com/akinomyoga/ble.sh) framework at v0.4 or higher allows you to replace the previous-printed prompt with custom strings. This is useful in cases where all the prompt information is not always needed. To enable this, put this in `~/.bashrc` `bleopt prompt_ps1_transient=<value>`:
|
||||
|
||||
@@ -128,7 +124,7 @@ load(io.popen('starship init cmd'):read("*a"))()
|
||||
|
||||
Die Bash Shell hat, im Gegensatz zu vielen anderen Shells, kein konventionelles preexec/precmd Framework. Daher gestaltet es sich schwierig, vollständig anpassbare Hooks für `bash` anzubieten. Starship bietet daher die begrenzte Möglichkeit, eigene Funktionen in das prompt rendering Verfahren einzufügen:
|
||||
|
||||
- Um eine benutzerdefinierte Funktion kurz vor Anzeige der Eingabeaufforderung auszuführen, definiere eine neue Funktion und weise den Namen `starship_precmd_user_func` zu. Um beispielsweise eine Rakete anzuzeigen, bevor die Eingabeaufforderung erscheint, würde man folgendes tun
|
||||
- Um eine benutzerdefinierte Funktion kurz vor Anzeige der Eingabeaufforderung auszuführen, definiere eine neue Funktion und weise den Namen `starship_precmd_user_func` zu. Zum Beispiel, um vor der Eingabeaufforderung eine Rakete zu zeichnen, würden Sie Folgendes tun
|
||||
|
||||
```bash
|
||||
function blastoff(){
|
||||
@@ -189,7 +185,7 @@ precmd_functions+=(set_win_title)
|
||||
|
||||
If you like the result, add these lines to your shell configuration file (`~/.bashrc` or `~/.zshrc`) to make it permanent.
|
||||
|
||||
Zum Beispiel, wenn sie ihr aktuelles Verzeichnis als Terminal Title anzeigen wollen, fügen Sie folgenden Code-Schnipsel zu ihrer `~/.bashrc` oder `~/.zshrc` hinzu:
|
||||
Zum Beispiel, wenn Sie ihr aktuelles Verzeichnis im Titel Ihrer Terminal-Registerkarte anzeigen möchten, fügen Sie folgenden Code-Schnipsel zu Ihrer `~/.bashrc` oder `~/.zshrc` hinzu:
|
||||
|
||||
```bash
|
||||
function set_win_title(){
|
||||
@@ -270,6 +266,316 @@ Hinweis: Fortsetzungs-Prompts sind nur für folgende Shells verfügbar:
|
||||
continuation_prompt = '▶▶ '
|
||||
```
|
||||
|
||||
## Statusline for Claude Code
|
||||
|
||||
Starship supports displaying a custom statusline when running inside Claude Code, Anthropic's CLI tool for interactive coding with Claude. This statusline provides real-time information about your Claude session, including the model being used, context window usage, and session costs.
|
||||
|
||||
For more information about the Claude Code statusline feature, see the [Claude Code statusline documentation](https://code.claude.com/docs/en/statusline).
|
||||
|
||||
### Setup
|
||||
|
||||
To use Starship as your Claude Code statusline:
|
||||
|
||||
1. Run `/statusline` in Claude Code and ask it to configure Starship, or manually add the following to your `.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"statusLine": {
|
||||
"type": "command",
|
||||
"command": "starship statusline claude-code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Customize the statusline appearance in your `~/.config/starship.toml` (see [Configuration](#configuration) below)
|
||||
|
||||
### Overview
|
||||
|
||||
When invoked with `starship statusline claude-code`, Starship receives Claude Code session data via stdin and renders a statusline using a dedicated profile named `claude-code`.
|
||||
|
||||
The profile includes three specialized modules:
|
||||
|
||||
- `claude_model`: Displays the current Claude model being used
|
||||
- `claude_context`: Shows context window usage with a visual gauge
|
||||
- `claude_cost`: Displays session cost and statistics
|
||||
|
||||
The default profile format is:
|
||||
|
||||
```toml
|
||||
[profiles]
|
||||
claude-code = "$claude_model$git_branch$claude_context$claude_cost"
|
||||
```
|
||||
|
||||
### Konfiguration
|
||||
|
||||
You can customize the Claude Code statusline by modifying the `claude-code` profile and individual module configurations in your `~/.config/starship.toml`:
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Customize the claude-code profile
|
||||
[profiles]
|
||||
claude-code = "$claude_model$claude_context$claude_cost"
|
||||
|
||||
# Configure individual modules
|
||||
[claude_model]
|
||||
format = "[$symbol$model]($style) "
|
||||
symbol = "🤖 "
|
||||
style = "bold blue"
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge $percentage]($style) "
|
||||
gauge_width = 10
|
||||
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost]($style) "
|
||||
symbol = "💰 "
|
||||
```
|
||||
|
||||
### Claude Model
|
||||
|
||||
The `claude_model` module displays the current Claude model being used in the session.
|
||||
|
||||
#### Optionen
|
||||
|
||||
| Option | Standartwert | Beschreibung |
|
||||
| --------------- | ---------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `format` | `'[$symbol$model]($style) '` | Das Format für das Modul. |
|
||||
| `Symbol` | `'🤖 '` | The symbol shown before the model name. |
|
||||
| `style` | `'bold blue'` | Stil für dieses Modul. |
|
||||
| `model_aliases` | `{}` | Map of model IDs or display names to shorter aliases. Checks ID first, then display name. |
|
||||
| `disabled` | `false` | Disables the `claude_model` module. |
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Beispiel | Beschreibung |
|
||||
| --------- | ------------------- | ------------------------------------- |
|
||||
| model | `Claude 3.5 Sonnet` | The display name of the current model |
|
||||
| model_id | `claude-3-5-sonnet` | The model ID |
|
||||
| Symbol | | Spiegelt den Wert der Option `symbol` |
|
||||
| style\* | | Spiegelt den Wert der Option `style` |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Beispiele
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Basic customization
|
||||
[claude_model]
|
||||
format = "on [$symbol$model]($style) "
|
||||
symbol = "🧠 "
|
||||
style = "bold cyan"
|
||||
|
||||
# Using model aliases for vendor-specific model names
|
||||
# You can alias by model ID or display name
|
||||
[claude_model.model_aliases]
|
||||
# Alias by vendor model ID (e.g. AWS Bedrock)
|
||||
"global.anthropic.claude-sonnet-4-5-20250929-v1:0" = "Sonnet 4.5"
|
||||
# Alias by display name
|
||||
"Claude Sonnet 4.5 (Vendor Proxy)" = "Sonnet"
|
||||
```
|
||||
|
||||
### Claude Context
|
||||
|
||||
The `claude_context` module displays context window usage as a percentage and visual gauge. The style automatically changes based on configurable thresholds.
|
||||
|
||||
#### Optionen
|
||||
|
||||
| Option | Standartwert | Beschreibung |
|
||||
| ---------------------- | --------------------------------- | -------------------------------------------------- |
|
||||
| `format` | `'[$gauge $percentage]($style) '` | Das Format für das Modul. |
|
||||
| `Symbol` | `''` | The symbol shown before the gauge. |
|
||||
| `gauge_width` | `5` | The width of the gauge in characters. |
|
||||
| `gauge_full_symbol` | `'█'` | The symbol used for filled segments of the gauge. |
|
||||
| `gauge_partial_symbol` | `'▒'` | The symbol used for partial segments of the gauge. |
|
||||
| `gauge_empty_symbol` | `'░'` | The symbol used for empty segments of the gauge. |
|
||||
| `display` | [siehe unten](#display) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_context` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define thresholds and styles for different usage levels. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Standartwert | Beschreibung |
|
||||
| ----------- | ------------ | ------------------------------------------------------------------------ |
|
||||
| `threshold` | `0.0` | The minimum context windows usage percentage to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this the configuration is matched. |
|
||||
|
||||
```toml
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
hidden = true
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 30
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 60
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 80
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Beispiel | Beschreibung |
|
||||
| ---------------------------- | -------- | ----------------------------------------------------- |
|
||||
| gauge | `██▒░░` | Visual representation of context usage |
|
||||
| percentage | `65%` | Context usage as a percentage |
|
||||
| input_tokens | `45.2k` | Total input tokens in conversation |
|
||||
| output_tokens | `12.3k` | Total output tokens in conversation |
|
||||
| curr_input_tokens | `5.1k` | Input tokens from most recent API call |
|
||||
| curr_output_tokens | `1.2k` | Output tokens from most recent API call |
|
||||
| curr_cache_creation_tokens | `1.5k` | Cache creation tokens from most recent API call |
|
||||
| curr_cache_read_tokens | `23.4k` | Cache read tokens from most recent API call |
|
||||
| total_tokens | `200k` | Total context window size |
|
||||
| Symbol | | Spiegelt den Wert der Option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Beispiele
|
||||
|
||||
**Minimal gauge-only display**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge]($style) "
|
||||
gauge_width = 10
|
||||
```
|
||||
|
||||
**Detailed token information**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$percentage ($input_tokens in / $output_tokens out)]($style) "
|
||||
```
|
||||
|
||||
**Custom gauge symbols**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
gauge_full_symbol = "▰"
|
||||
gauge_partial_symbol = ""
|
||||
gauge_empty_symbol = "▱"
|
||||
gauge_width = 10
|
||||
format = "[$gauge]($style) "
|
||||
```
|
||||
|
||||
**Custom thresholds**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 50
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 75
|
||||
style = "bold orange"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 90
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
### Claude Cost
|
||||
|
||||
The `claude_cost` module displays the total cost of the current Claude Code session in USD. Like `claude_context`, it supports threshold-based styling.
|
||||
|
||||
#### Optionen
|
||||
|
||||
| Option | Standartwert | Beschreibung |
|
||||
| ---------- | ---------------------------------- | ----------------------------------- |
|
||||
| `format` | `'[$symbol(\\$$cost)]($style) '` | Das Format für das Modul. |
|
||||
| `Symbol` | `'💰 '` | The symbol shown before the cost. |
|
||||
| `display` | [siehe unten](#display-1) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_cost` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define cost thresholds and styles. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Standartwert | Beschreibung |
|
||||
| ----------- | ------------ | ------------------------------------------------------------- |
|
||||
| `threshold` | `0.0` | The minimum cost in USD to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this configuration is matched. |
|
||||
|
||||
**Default configuration:**
|
||||
|
||||
```toml
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 1.0
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 5.0
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Beispiel | Beschreibung |
|
||||
| ------------- | -------- | ----------------------------------------------------- |
|
||||
| cost | `1.23` | Total session cost in USD (formatted to 2 decimals) |
|
||||
| duration | `1m 30s` | Total session duration |
|
||||
| api_duration | `45s` | Total API call duration |
|
||||
| lines_added | `1.2k` | Total lines of code added |
|
||||
| lines_removed | `500` | Total lines of code removed |
|
||||
| Symbol | | Spiegelt den Wert der Option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: This variable can only be used as a part of a style string
|
||||
|
||||
#### Beispiele
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Cost with code change statistics
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost (+$lines_added -$lines_removed)]($style) "
|
||||
|
||||
# Hide module until cost exceeds $0.10
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.10
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 2.0
|
||||
style = "bold red"
|
||||
|
||||
# Show duration information
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost ($duration)]($style) "
|
||||
```
|
||||
|
||||
## Style-Strings
|
||||
|
||||
Stil-Zeichenketten sind eine Liste von Wörtern, getrennt durch Leerzeichen. Die Wörter haben keine Groß- und Kleinschreibung (z.B. `bold` und `BoLd` werden als dieselbe Zeichenkette betrachtet). Jedes Wort kann eines der folgenden sein:
|
||||
|
||||
+719
-421
File diff suppressed because it is too large
Load Diff
+11
-11
@@ -1,4 +1,4 @@
|
||||
# Frequently Asked Questions
|
||||
# Häufig gestellte Fragen
|
||||
|
||||
## Wie ist die Konfiguration im Demo GIF?
|
||||
|
||||
@@ -10,15 +10,15 @@
|
||||
- **Konfiguration**: [Matchai's Dotfiles](https://github.com/matchai/dotfiles/blob/b6c6a701d0af8d145a8370288c00bb9f0648b5c2/.config/fish/config.fish)
|
||||
- **Prompt**: [Starship](https://starship.rs/)
|
||||
|
||||
## How do I get command completion as shown in the demo GIF?
|
||||
## Wie bekomme ich die Autovervollständigung, wie sie im Demo-GIF gezeigt wird?
|
||||
|
||||
Completion support, or autocomplete, is provided by your shell of choice. In the case of the demo, the demo was done with [Fish Shell](https://fishshell.com/), which provides completions by default. If you use Z Shell (zsh), I'd suggest taking a look at [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions).
|
||||
Autovervollständigung wird von der Shell deiner Wahl bereitgestellt. In der Demo wurde die [Fish Shell](https://fishshell.com/) benutzt, welche Standardmäßig eine Autovervollständigung beinhaltet. Wenn du die Z Shell (zsh) nutzt, empfehle ich dir, einen Blick auf [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions) zu werfen.
|
||||
|
||||
## Do top level `format` and `<module>.disabled` do the same thing?
|
||||
## Bewirken Top Level `format` und `<module>.disabled` dasselbe?
|
||||
|
||||
Ja, beide können benutzt werden, um Module in der Prompt zu deaktivieren. Wenn nur Module deaktiviert werden wollen, sollte `<module>.disabled` benutzt werden, aus den folgenden Gründen:
|
||||
|
||||
- Disabling modules is more explicit than omitting them from the top level `format`
|
||||
- Die Deaktivierung von Modulen ist expliziter, als nur das Weglassen vom Top Level `format`
|
||||
- Mit der Aktualisierung von Starship werden neu erstellte Module an die Eingabezeile angefügt
|
||||
|
||||
## Die Dokumentation sagt, dass die Starship interkompatibel ist. Warum wird meine bevorzugte Shell nicht unterstützt?
|
||||
@@ -48,9 +48,9 @@ starship prompt --help
|
||||
|
||||
Die Eingabeaufforderung verwendet so viel Kontext wie möglich, aber keine Flagge ist "notwendig".
|
||||
|
||||
## How do I run Starship on Linux distributions with older versions of glibc?
|
||||
## Wie führe ich Starship auf Linux-Distributionen mit älteren Versionen von glibc aus?
|
||||
|
||||
If you get an error like "_version 'GLIBC_2.18' not found (required by starship)_" when using the prebuilt binary (for example, on CentOS 6 or 7), you can use a binary compiled with `musl` instead of `glibc`:
|
||||
Wenn Sie einen Fehler wie "_Version 'GLIBC_2 erhalten.' nicht gefunden (wird von starship benötigt)_" wenn das vorkompilierte Programm verwendet wird (zum Beispiel auf CentOS 6 oder 7), Sie können eine Binärdatei verwenden, die mit `musl` anstelle von `glibc` kompiliert wurde:
|
||||
|
||||
```sh
|
||||
curl -sS https://starship.rs/install.sh | sh -s -- --platform unknown-linux-musl
|
||||
@@ -60,13 +60,13 @@ curl -sS https://starship.rs/install.sh | sh -s -- --platform unknown-linux-musl
|
||||
|
||||
Starship executes different commands to get information to display in the prompt, for example the version of a program or the current git status. To make sure starship doesn't hang while trying to execute these commands we set a time limit, if a command takes longer than this limit starship will stop the execution of the command and output the above warning, this is expected behaviour. This time limit is configurable using the [`command_timeout`key](../config/#prompt) so if you want you can increase the time limit. You can also follow the debugging steps below to see which command is being slow and see if you can optimise it. Finally you can set the `STARSHIP_LOG` env var to `error` to hide these warnings.
|
||||
|
||||
## I see symbols I don't understand or expect, what do they mean?
|
||||
## Ich sehe Symbole, die ich nicht verstehe oder erwarte, was bedeuten sie?
|
||||
|
||||
If you see symbols that you don't recognise you can use `starship explain` to explain the currently showing modules.
|
||||
Wenn du Symbole siehst, die du nicht kennst, kannst du `starship explain` verwenden um die aktuell angezeigten Module erklären zu lassen.
|
||||
|
||||
## Starship is doing something unexpected, how can I debug it?
|
||||
|
||||
You can enable the debug logs by using the `STARSHIP_LOG` env var. These logs can be very verbose so it is often useful to use the `module` command if you are trying to debug a particular module, for example, if you are trying to debug the `rust` module you could run the following command to get the trace logs and output from the module.
|
||||
Sie können die Debug-Logs aktivieren, indem Sie die `STARSHIP_LOG` Umgebungsvariable verwenden. These logs can be very verbose so it is often useful to use the `module` command if you are trying to debug a particular module, for example, if you are trying to debug the `rust` module you could run the following command to get the trace logs and output from the module.
|
||||
|
||||
```sh
|
||||
env STARSHIP_LOG=trace starship module rust
|
||||
@@ -86,7 +86,7 @@ Finally if you find a bug you can use the `bug-report` command to create a GitHu
|
||||
starship bug-report
|
||||
```
|
||||
|
||||
## Why don't I see a glyph symbol in my prompt?
|
||||
## Warum sehe ich in meiner Eingabeaufforderung kein Glyphe-Symbol?
|
||||
|
||||
The most common cause of this is system misconfiguration. Some Linux distros in particular do not come with font support out-of-the-box. Sie müssen sicherstellen, dass:
|
||||
|
||||
|
||||
+16
-13
@@ -189,9 +189,9 @@ Wähle dein Betriebssystem aus der Liste für detaillierte Installationsanweisun
|
||||
<details>
|
||||
<summary>Android</summary>
|
||||
|
||||
Install Starship using any of the following package managers:
|
||||
Starship unter Verwendung einer der folgenden Paketmanager installieren:
|
||||
|
||||
| Repository | Instructions |
|
||||
| Repository | Anweisungen |
|
||||
| --------------------------------------------------------------------------------- | ---------------------- |
|
||||
| [Termux](https://github.com/termux/termux-packages/tree/master/packages/starship) | `pkg install starship` |
|
||||
|
||||
@@ -200,9 +200,9 @@ Install Starship using any of the following package managers:
|
||||
<details>
|
||||
<summary>BSD</summary>
|
||||
|
||||
Install Starship using any of the following package managers:
|
||||
Starship unter Verwendung einer der folgenden Paketmanager installieren:
|
||||
|
||||
| Distribution | Repository | Instructions |
|
||||
| Distribution | Repository | Anweisungen |
|
||||
| ------------ | -------------------------------------------------------- | --------------------------------- |
|
||||
| **_Any_** | **[crates.io](https://crates.io/crates/starship)** | `cargo install starship --locked` |
|
||||
| FreeBSD | [FreshPorts](https://www.freshports.org/shells/starship) | `pkg install starship` |
|
||||
@@ -221,7 +221,7 @@ curl -sS https://starship.rs/install.sh | sh
|
||||
|
||||
Alternatively, install Starship using any of the following package managers:
|
||||
|
||||
| Distribution | Repository | Instructions |
|
||||
| Distribution | Repository | Anweisungen |
|
||||
| ------------------ | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
|
||||
| **_Any_** | **[crates.io](https://crates.io/crates/starship)** | `cargo install starship --locked` |
|
||||
| _Any_ | [conda-forge](https://anaconda.org/conda-forge/starship) | `conda install -c conda-forge starship` |
|
||||
@@ -229,10 +229,13 @@ Alternatively, install Starship using any of the following package managers:
|
||||
| Alpine Linux 3.13+ | [Alpine Linux Packages](https://pkgs.alpinelinux.org/packages?name=starship) | `apk add starship` |
|
||||
| Arch Linux | [Arch Linux Extra](https://archlinux.org/packages/extra/x86_64/starship) | `pacman -S starship` |
|
||||
| CentOS 7+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Debian 13+ | [Debian Main](https://sources.debian.org/src/starship/1.22.1-1/) | `apt install starship` |
|
||||
| Fedora 40+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Gentoo | [Gentoo Packages](https://packages.gentoo.org/packages/app-shells/starship) | `emerge app-shells/starship` |
|
||||
| Manjaro | | `pacman -S starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/starship/default.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/st/starship/package.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| openSUSE | [OSS](https://software.opensuse.org/package/starship) | `zypper in starship` |
|
||||
| Ubuntu 25.04+ | [Ubuntu Universe](https://packages.ubuntu.com/source/plucky/starship) | `apt install starship` |
|
||||
| Void Linux | [Void Linux Packages](https://github.com/void-linux/void-packages/tree/master/srcpkgs/starship) | `xbps-install -S starship` |
|
||||
|
||||
</details>
|
||||
@@ -248,7 +251,7 @@ curl -sS https://starship.rs/install.sh | sh
|
||||
|
||||
Alternatively, install Starship using any of the following package managers:
|
||||
|
||||
| Repository | Instructions |
|
||||
| Repository | Anweisungen |
|
||||
| -------------------------------------------------------- | --------------------------------------- |
|
||||
| **[crates.io](https://crates.io/crates/starship)** | `cargo install starship --locked` |
|
||||
| [conda-forge](https://anaconda.org/conda-forge/starship) | `conda install -c conda-forge starship` |
|
||||
@@ -262,9 +265,9 @@ Alternatively, install Starship using any of the following package managers:
|
||||
|
||||
Install the latest version for your system with the MSI-installers from the [releases section](https://github.com/starship/starship/releases/latest).
|
||||
|
||||
Install Starship using any of the following package managers:
|
||||
Starship unter Verwendung einer der folgenden Paketmanager installieren:
|
||||
|
||||
| Repository | Instructions |
|
||||
| Repository | Anweisungen |
|
||||
| -------------------------------------------------------------------------------------------- | --------------------------------------- |
|
||||
| **[crates.io](https://crates.io/crates/starship)** | `cargo install starship --locked` |
|
||||
| [Chocolatey](https://community.chocolatey.org/packages/starship) | `choco install starship` |
|
||||
@@ -303,13 +306,13 @@ load(io.popen('starship init cmd'):read("*a"))()
|
||||
<details>
|
||||
<summary>Elvish</summary>
|
||||
|
||||
Trage folgendes am Ende von `~/.config/fish/rc.elv` ein:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
eval (starship init elvish)
|
||||
```
|
||||
|
||||
Note: Only Elvish v0.18+ is supported
|
||||
Note: Only Elvish v0.18+ is supported. For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
</details>
|
||||
|
||||
@@ -345,7 +348,7 @@ mkdir ($nu.data-dir | path join "vendor/autoload")
|
||||
starship init nu | save -f ($nu.data-dir | path join "vendor/autoload/starship.nu")
|
||||
```
|
||||
|
||||
Note: Only Nushell v0.96+ is supported
|
||||
Beachte: Nushell wird erst ab v0.96+ unterstützt
|
||||
|
||||
</details>
|
||||
|
||||
@@ -405,7 +408,7 @@ Falls du Starship weiter anpassen möchtest:
|
||||
|
||||
## 🤝 Mitwirken
|
||||
|
||||
Wir sind immer auf der Suche nach Helfern **jeder Erfahrungsstufe**! Probleme mit dem Label [„Good first issues“](https://github.com/starship/starship/labels/🌱%20good%20first%20issue) sind der beste Weg, um dich mit dem Projekt vertraut zu machen.
|
||||
Wir sind immer auf der Suche nach Helfern **jeder Erfahrungsstufe**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/issues?q=state%3Aopen%20label%3A%22%F0%9F%8C%B1%20good%20first%20issue%22).
|
||||
|
||||
Wenn du eine andere Sprache flüssig sprichts, würden wir uns sehr freuen wenn du helfen würdest die Dokumentation in anderen Sprachen auf dem aktuellsten Stand zu halten. Hier kannst du bei der Übersetzung helfen [Starship Crowdin](https://translate.starship.rs/).
|
||||
|
||||
|
||||
@@ -2,18 +2,18 @@
|
||||
|
||||
Um Starship zu installieren, musst du zwei Dinge tun:
|
||||
|
||||
1. Lade die **starship** Datei auf den Computer herunter
|
||||
1. Weise deine Shell an die Starship Datei als Eingabeaufforderung zu nutzen, indem du eines der Initialisierungs-Skripte benutzt
|
||||
1. Laden Sie die **starship** Binärdatei auf Ihren Computer herunter
|
||||
1. Weisen Sie Ihre Shell an, die Starship-Binärdatei als Eingabeaufforderung zu verwenden, indem Sie die Init-Skripte entsprechend anpassen
|
||||
|
||||
For most users, the instructions on [the main page](../guide/#🚀-installation) will work great. Für einige speziellere Plattformen wird jedoch eine speziellere Anleitung benötigt.
|
||||
Für die meisten Benutzer funktionieren die Anweisungen auf [der Hauptseite](../guide/#🚀-installation) hervorragend. Für einige speziellere Plattformen sind jedoch andere Anweisungen erforderlich.
|
||||
|
||||
Es gibt sehr viele Plattformen, sodass diese nicht alle in die Hauptanleitung passen, aus diesem Grund sind hier ein paar Installationsanweisungen für ein paar Plattformen von der Community. Ist deine Platform nicht dabei? Dann füge bitte deine hinzu, sobald du herausgefunden hast wie man starship mit dieser benutzt!
|
||||
Es gibt so viele Plattformen, dass sie nicht alle in die Hauptdatei README.md passten; daher finden Sie hier einige Installationsanweisungen für andere Plattformen aus der Community. Ist Ihre nicht dabei? Bitte fügen Sie es hier hinzu, wenn Sie es herausgefunden haben!
|
||||
|
||||
## [Chocolatey](https://chocolatey.org)
|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
Gehe zur [Chocolatey's Installations-Seite](https://chocolatey.org/install) und folge den Anweisungen um Chocolatey zu installieren.
|
||||
Gehen Sie zu [Chocolatey Installations-Seite](https://chocolatey.org/install) und folgen Sie den Anweisungen, um Chocolatey zu installieren.
|
||||
|
||||
### Installation
|
||||
|
||||
@@ -23,23 +23,17 @@ choco install starship
|
||||
|
||||
## [termux](https://termux.com)
|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
```sh
|
||||
pkg install getconf
|
||||
```
|
||||
|
||||
### Installation
|
||||
|
||||
```sh
|
||||
curl -sS https://starship.rs/install.sh | sh -s -- --bin-dir /data/data/com.termux/files/usr/bin
|
||||
pkg install starship
|
||||
```
|
||||
|
||||
## [Funtoo Linux](https://www.funtoo.org/Welcome)
|
||||
|
||||
### Installation
|
||||
|
||||
Unter Funtoo Linux kann starship von [core-kit](https://github.com/funtoo/core-kit/tree/1.4-release/app-shells/starship) über Portage installiert werden:
|
||||
Unter Funtoo Linux kann starship aus [core-kit](https://github.com/funtoo/core-kit/tree/1.4-release/app-shells/starship) über Portage installiert werden:
|
||||
|
||||
```sh
|
||||
emerge app-shells/starship
|
||||
@@ -47,7 +41,7 @@ emerge app-shells/starship
|
||||
|
||||
## [Nix](https://wiki.nixos.org/wiki/Nix)
|
||||
|
||||
### Das Binary holen
|
||||
### Abrufen der Binärdatei
|
||||
|
||||
#### Imperativ
|
||||
|
||||
@@ -78,7 +72,7 @@ Aktiviere das Modul `programs.starship` in deiner `home.nix`-Datei und füge dei
|
||||
}
|
||||
```
|
||||
|
||||
führe danach folgendes aus
|
||||
Danach ausführen
|
||||
|
||||
```sh
|
||||
home-manager switch
|
||||
@@ -86,7 +80,7 @@ home-manager switch
|
||||
|
||||
#### Deklarativ, systemweit, mit NixOS
|
||||
|
||||
Füge `pkgs.starship` zu der Sektion `environment.systemPackages` in deiner `configuration.nix` hinzu, und führe folgenden Befehl aus
|
||||
Fügen Sie `pkgs.starship` zu `environment.systemPackages` in Ihrer `configuration.nix` hinzu, danach führen Sie aus
|
||||
|
||||
```sh
|
||||
sudo nixos-rebuild switch
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Migration auf v0.45.0
|
||||
|
||||
Starship v0.45.0 is a release containing breaking changes, in preparation for the big v1.0.0. We have made some major changes around how configuration is done on the prompt, to allow for a greater degree of customization.
|
||||
Starship v0.45.0 ist ein Release mit bahnbrechenden Änderungen in Vorbereitung auf das große v1.0.0. Wir haben einige wichtige Änderungen vorgenommen, wie die Konfiguration auf der Eingabeaufforderung durchgeführt wird, um einen höheren Grad an Individualisierung zu ermöglichen.
|
||||
|
||||
This guide is intended to walk you through the breaking changes.
|
||||
|
||||
@@ -10,7 +10,7 @@ Previously to v0.45.0, `prompt_order` would accept an array of module names in t
|
||||
|
||||
Starship v0.45.0 instead accepts a `format` value, allowing for customization of the prompt outside of the modules themselves.
|
||||
|
||||
**Example pre-v0.45.0 configuration**
|
||||
**Beispiel für Pre-v0.45.0 Konfiguration**
|
||||
|
||||
```toml
|
||||
prompt_order = [
|
||||
@@ -31,7 +31,7 @@ prompt_order = [
|
||||
]
|
||||
```
|
||||
|
||||
**Example v0.45.0 configuration**
|
||||
**Beispiel für v0.45.0 Konfiguration**
|
||||
|
||||
```toml
|
||||
format = """\
|
||||
@@ -58,14 +58,14 @@ Previously to v0.45.0, some modules would accept `prefix` and/or `suffix` in ord
|
||||
|
||||
Starship v0.45.0 instead accepts a `format` value, allowing for further customization of how modules are rendered. Instead of defining a prefix and suffix for the context-based variables, the variables can now be substituted from within a format string, which represents the module's output.
|
||||
|
||||
**Example pre-v0.45.0 configuration**
|
||||
**Beispiel für Pre-v0.45.0 Konfiguration**
|
||||
|
||||
```toml
|
||||
[cmd_duration]
|
||||
prefix = "took "
|
||||
```
|
||||
|
||||
**Example v0.45.0 configuration**
|
||||
**Beispiel für v0.45.0 Konfiguration**
|
||||
|
||||
```toml
|
||||
[cmd_duration]
|
||||
@@ -74,13 +74,13 @@ prefix = "took "
|
||||
format = "took [$duration]($style) "
|
||||
```
|
||||
|
||||
### Affected Modules
|
||||
### Betroffene Module
|
||||
|
||||
#### Zeichen
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| ----------------------- | ---------------- |
|
||||
| `symbol` | `success_symbol` |
|
||||
| `Symbol` | `success_symbol` |
|
||||
| `use_symbol_for_status` | `error_symbol` |
|
||||
| `style_success` | `success_symbol` |
|
||||
| `style_failure` | `error_symbol` |
|
||||
@@ -113,9 +113,9 @@ _Note:_ The `character` element automatically adds a space after, so unlike the
|
||||
|
||||
#### Befehlsdauer
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ---------------- | ----------- |
|
||||
| `prefix` | `format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | --------- |
|
||||
| `prefix` | `format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
@@ -127,9 +127,9 @@ _Note:_ The `character` element automatically adds a space after, so unlike the
|
||||
|
||||
#### Verzeichnis
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ---------------- | ----------- |
|
||||
| `prefix` | `format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | --------- |
|
||||
| `prefix` | `format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
@@ -141,10 +141,10 @@ _Note:_ The `character` element automatically adds a space after, so unlike the
|
||||
|
||||
#### Umgebungsvariablen
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ---------------- | ----------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | --------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
@@ -155,12 +155,12 @@ _Note:_ The `character` element automatically adds a space after, so unlike the
|
||||
++ format = "with [$env_value]($style) "
|
||||
```
|
||||
|
||||
#### Git Commit
|
||||
#### Git-Commit
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ---------------- | ----------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | --------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
@@ -173,11 +173,11 @@ _Note:_ The `character` element automatically adds a space after, so unlike the
|
||||
|
||||
#### Git-Status
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ----------------- | ----------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
| `show_sync_count` | `format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | --------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
| `show_sync_count` | `format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
@@ -204,10 +204,10 @@ behind = "⇣${count}"
|
||||
|
||||
#### Hostname
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ---------------- | ----------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | --------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
@@ -218,13 +218,13 @@ behind = "⇣${count}"
|
||||
++ format = "[$hostname]($style) in "
|
||||
```
|
||||
|
||||
#### Singularity
|
||||
#### Singularität
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ---------------- | ----------- |
|
||||
| `label` | `format` |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | --------- |
|
||||
| `Label` | `format` |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
@@ -237,9 +237,9 @@ behind = "⇣${count}"
|
||||
|
||||
#### Uhrzeit
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ---------------- | ------------- |
|
||||
| `format` | `time_format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | ------------- |
|
||||
| `format` | `time_format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
@@ -250,12 +250,12 @@ behind = "⇣${count}"
|
||||
++ format = "at 🕙[$time]($style) "
|
||||
```
|
||||
|
||||
#### Custom Commands
|
||||
#### Benutzerdefinierte Befehle
|
||||
|
||||
| Removed Property | Replacement |
|
||||
| ---------------- | ----------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
| Entfernte Eigenschaft | Ersetzung |
|
||||
| --------------------- | --------- |
|
||||
| `prefix` | `format` |
|
||||
| `suffix` | `format` |
|
||||
|
||||
**Änderungen an der Standardkonfiguration**
|
||||
|
||||
|
||||
@@ -1,77 +1,79 @@
|
||||
# Presets
|
||||
# Presets (Voreinstellungen)
|
||||
|
||||
Here is a collection of community-submitted configuration presets for Starship. If you have a preset to share, please [submit a PR](https://github.com/starship/starship/edit/master/docs/presets/README.md) updating this file! 😊
|
||||
Hier eine Sammlung von Konfigurations-Presets für Starship, die von der Community eingereicht wurden. Wenn Sie ein Preset zum Teilen haben, bitte [reichen Sie einen PR ein](https://github.com/starship/starship/edit/master/docs/presets/README.md), um diese Datei zu aktualisieren! 😊
|
||||
|
||||
To get details on how to use a preset, simply click on the image.
|
||||
Um weitere Details zur Verwendung eines Presets zu erhalten, klicken Sie einfach auf das Bild.
|
||||
|
||||
## [Nerd Font Symbole](./nerd-font.md)
|
||||
## [Nerd Font-Symbole](./nerd-font.md)
|
||||
|
||||
This preset changes the symbols for each module to use Nerd Font symbols.
|
||||
Dieses Preset ändert die Symbole für jedes Modul, um Nerd Font-Symbole zu verwenden.
|
||||
|
||||
[](./nerd-font)
|
||||
[](./nerd-font)
|
||||
|
||||
## [No Nerd Fonts](./no-nerd-font.md)
|
||||
## [Keine Nerd Fonts](./no-nerd-font.md)
|
||||
|
||||
This preset changes the symbols for several modules so that no Nerd Font symbols are used anywhere in the prompt.
|
||||
Dieses Preset ändert die Symbole für mehrere Module, sodass überall im Prompt No Nerd Font-Symbole verwendet werden.
|
||||
|
||||
::: tip
|
||||
> [!TIPP] Dieses Preset wird in einem zukünftigen Release von Starship zu einem per Default vorgegebenem Preset [werden](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
:::
|
||||
|
||||
[Click to view No Nerd Font preset](./no-nerd-font)
|
||||
[Klicken Sie hier, um das Preset „No Nerd Font“ anzusehen](./no-nerd-font)
|
||||
|
||||
## [Bracketed Segments](./bracketed-segments.md)
|
||||
|
||||
This preset changes the format of all the built-in modules to show their segment in brackets instead of using the default Starship wording ("via", "on", etc.).
|
||||
Dieses Preset ändert das Format aller integrierten Module, um deren Segment in Klammern zu zeigen, anstatt der Verwendung der Standardformulierung ("via", "on", etc.) von Starship.
|
||||
|
||||
[](./bracketed-segments)
|
||||
[](./bracketed-segments)
|
||||
|
||||
## [Plain Text Symbols](./plain-text.md)
|
||||
## [Plain Text-Symbols](./plain-text.md)
|
||||
|
||||
This preset changes the symbols for each module into plain text. Great if you don't have access to Unicode.
|
||||
Dieses Preset ändert die Symbole für jedes Modul in Plain Text. Großartig, wenn Sie keinen Zugriff auf Unicode haben.
|
||||
|
||||
[](./plain-text)
|
||||
[](./plain-text)
|
||||
|
||||
## [No Runtime Versions](./no-runtimes.md)
|
||||
|
||||
This preset hides the version of language runtimes. If you work in containers or virtualized environments, this one is for you!
|
||||
Dieses Preset blendet die Version der Sprachlaufzeiten aus. Wenn Sie in Containern oder virtualisierten Umgebungen arbeiten, dann ist dies für Sie!
|
||||
|
||||
[](./no-runtimes)
|
||||
[](./no-runtimes)
|
||||
|
||||
## [No Empty Icons](./no-empty-icons.md)
|
||||
## [Keine leeren Icons](./no-empty-icons.md)
|
||||
|
||||
This preset does not show icons if the toolset is not found.
|
||||
Dieses Preset zeigt keine Icons, wenn das Toolset nicht gefunden wird.
|
||||
|
||||
[](./no-empty-icons.md)
|
||||
[](./no-empty-icons.md)
|
||||
|
||||
## [Pure Prompt](./pure-preset.md)
|
||||
|
||||
Diese Voreinstellung emuliert das Aussehen und das Verhalten von [Pure](https://github.com/sindresorhus/pure).
|
||||
Dieses Preset emuliert das Aussehen und Verhalten von [Pure](https://github.com/sindresorhus/pure).
|
||||
|
||||
[](./pure-preset)
|
||||
[](./pure-preset)
|
||||
|
||||
## [Pastel Powerline](./pastel-powerline.md)
|
||||
## [Pastell Powerline](./pastel-powerline.md)
|
||||
|
||||
This preset is inspired by [M365Princess](https://github.com/JanDeDobbeleer/oh-my-posh/blob/main/themes/M365Princess.omp.json). It also shows how path substitution works in starship.
|
||||
Dieses Preset ist inspiriert von [M365Princess](https://github.com/JanDeDobbeleer/oh-my-posh/blob/main/themes/M365Princess.omp.json). Es zeigt außerdem, wie Pfadsubstitution in Starship funktioniert.
|
||||
|
||||
[](./pastel-powerline)
|
||||
[](./pastel-powerline)
|
||||
|
||||
## [Tokyo Night](./tokyo-night.md)
|
||||
|
||||
This preset is inspired by [tokyo-night-vscode-theme](https://github.com/enkia/tokyo-night-vscode-theme).
|
||||
Dieses Preset ist inspiriert von [tokyo-night-vscode-theme](https://github.com/enkia/tokyo-night-vscode-theme).
|
||||
|
||||
[](./tokyo-night)
|
||||
[](./tokyo-night)
|
||||
|
||||
## [Gruvbox Rainbow](./gruvbox-rainbow.md)
|
||||
|
||||
Diese Voreinstellung ist stark inspiriert von [Pastel Powerline](./pastel-powerline.md), and [Tokyo Night](./tokyo-night.md).
|
||||
Dieses Preset ist stark inspiriert von [Pastel Powerline](./pastel-powerline.md) und [Tokyo Night](./tokyo-night.md).
|
||||
|
||||
[](./gruvbox-rainbow)
|
||||
[](./gruvbox-rainbow)
|
||||
|
||||
## [Jetpack](./jetpack.md)
|
||||
|
||||
This is a pseudo minimalist preset inspired by the [geometry](https://github.com/geometry-zsh/geometry) and [spaceship](https://github.com/spaceship-prompt/spaceship-prompt) prompts.
|
||||
Dies ist ein pseudo-minimalistisches Preset, inspiriert von den Prompts [geometry](https://github.com/geometry-zsh/geometry) und [spaceship](https://github.com/spaceship-prompt/spaceship-prompt).
|
||||
|
||||
[](./jetpack)
|
||||
[](./jetpack)
|
||||
|
||||
## [Catppuccin Powerline](./catppuccin-powerline.md)
|
||||
|
||||
Dieses Preset ist eine minimal modifizierte Version von [Gruvbox Rainbow](./gruvbox-rainbow.md) unter Verwendung der Theme-Palette [Catppuccin](https://github.com/catppuccin/catppuccin).
|
||||
|
||||
[](./catppuccin-powerline)
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
[Zurück zu den Voreinstellungen](./#bracketed-segments)
|
||||
|
||||
# Bracketed Segments Preset
|
||||
# Preset - Bracketed Segments
|
||||
|
||||
This preset changes the format of all the built-in modules to show their segment in brackets instead of using the default Starship wording ("via", "on", etc.).
|
||||
Dieses Preset ändert das Format aller integrierten Module, um deren Segment in Klammern zu zeigen, anstatt der Verwendung der Standardformulierung ("via", "on", etc.) von Starship.
|
||||
|
||||

|
||||

|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -12,6 +12,6 @@ This preset changes the format of all the built-in modules to show their segment
|
||||
starship preset bracketed-segments -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/bracketed-segments.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/bracketed-segments.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/bracketed-segments.toml
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
[Zurück zu Presets](./#catppuccin-powerline)
|
||||
|
||||
# Preset - Catppuccin Powerline
|
||||
|
||||
Dieses Preset ist eine minimal modifizierte Version von [Gruvbox Rainbow](./gruvbox-rainbow.md) unter Verwendung der Theme-Palette [Catppuccin](https://github.com/catppuccin/catppuccin).
|
||||
|
||||

|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- Ein [Nerd Font](https://www.nerdfonts.com/) installiert und aktiviert in Ihrem Terminal
|
||||
|
||||
### Konfiguration
|
||||
|
||||
```sh
|
||||
starship preset catppuccin-powerline -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
Standardmäßig verwendet dieses Preset die Note „Mocha“ von Catppucin, aber Sie können jede beliebige Note festlegen, indem Sie den Wert von `palette` modifizieren:
|
||||
|
||||
- `catppuccin_mocha`
|
||||
- `catppuccin_frappe`
|
||||
- `catppuccin_macchiato`
|
||||
- `catppuccin_latte`
|
||||
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/catppuccin-powerline.toml)
|
||||
|
||||
<<< @/public/presets/toml/catppuccin-powerline.toml
|
||||
@@ -1,14 +1,14 @@
|
||||
[Zurück zu den Voreinstellungen](./#gruvbox-rainbow)
|
||||
[Zurück zu Presets](./#gruvbox-rainbow)
|
||||
|
||||
# Gruvbox Regenbogen
|
||||
# Preset - Gruvbox Rainbow
|
||||
|
||||
Diese Voreinstellung ist stark inspiriert von [Pastel Powerline](./pastel-powerline.md), and [Tokyo Night](./tokyo-night.md).
|
||||
Dieses Preset ist stark inspiriert von [Pastel Powerline](./pastel-powerline.md) und [Tokyo Night](./tokyo-night.md).
|
||||
|
||||

|
||||

|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- Eine [Nerd Font](https://www.nerdfonts.com/) installiert und aktiviert in deinem Terminal
|
||||
- Ein [Nerd Font](https://www.nerdfonts.com/) installiert und aktiviert in Ihrem Terminal
|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -16,6 +16,6 @@ Diese Voreinstellung ist stark inspiriert von [Pastel Powerline](./pastel-powerl
|
||||
starship preset gruvbox-rainbow -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/gruvbox-rainbow.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/gruvbox-rainbow.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/gruvbox-rainbow.toml
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
[Zurück zu den Voreinstellungen](./#jetpack)
|
||||
[Zurück zu Presets](./#jetpack)
|
||||
|
||||
# Jetpack Preset
|
||||
# Preset - Jetpack
|
||||
|
||||
This is a pseudo minimalist preset inspired by the [geometry](https://github.com/geometry-zsh/geometry) and [spaceship](https://github.com/spaceship-prompt/spaceship-prompt) prompts.
|
||||
Dies ist ein pseudo-minimalistisches Preset, inspiriert von den Prompts [geometry](https://github.com/geometry-zsh/geometry) und [spaceship](https://github.com/spaceship-prompt/spaceship-prompt).
|
||||
|
||||
> Jetpack uses the terminal's color theme.
|
||||
> Jetpack verwendet das Farbschema des Terminals.
|
||||
|
||||

|
||||

|
||||
|
||||
### Prerequisite
|
||||
### Voraussetzung
|
||||
|
||||
- Requires a shell with [`right-prompt`](https://starship.rs/advanced-config/#enable-right-prompt) support.
|
||||
- [Jetbrains Mono](https://www.jetbrains.com/lp/mono/) is recommended.
|
||||
- Erfordert eine Shell mit Unterstützung für [`right-prompt`](https://starship.rs/advanced-config/#enable-right-prompt).
|
||||
- [Jetbrains Mono](https://www.jetbrains.com/lp/mono/) wird empfohlen.
|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -19,6 +19,6 @@ This is a pseudo minimalist preset inspired by the [geometry](https://github.com
|
||||
starship preset jetpack -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/jetpack.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/jetpack.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/jetpack.toml
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
[Zurück zu den Voreinstellungen](./#nerd-font-symbols)
|
||||
[Zurück zu Presets](./#nerd-font-symbols)
|
||||
|
||||
# Nerd Font Symbols Preset
|
||||
# Preset - Nerd Font Symbols
|
||||
|
||||
This preset changes the symbols for each module to use Nerd Font symbols.
|
||||
Dieses Preset ändert die Symbole für jedes Modul, um Nerd-Font-Symbole zu verwenden.
|
||||
|
||||

|
||||

|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (the example uses Fira Code Nerd Font)
|
||||
- Ein [Nerd Font](https://www.nerdfonts.com/) installiert und aktiviert in Ihrem Terminal (das Beispiel verwendet Fira Code Nerd Font)
|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -16,6 +16,6 @@ This preset changes the symbols for each module to use Nerd Font symbols.
|
||||
starship preset nerd-font-symbols -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/nerd-font-symbols.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/nerd-font-symbols.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/nerd-font-symbols.toml
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
[Zurück zu den Voreinstellungen](./#no-empty-icons)
|
||||
[Zurück zu Presets](./#no-empty-icons)
|
||||
|
||||
# No Empty Icons Preset
|
||||
# Preset - No Empty Icons
|
||||
|
||||
If toolset files are identified the toolset icon is displayed. If the toolset is not found to determine its version number, it is not displayed. This preset changes the behavior to display the icon only if the toolset information can be determined.
|
||||
Wenn Toolset-Dateien identifiziert werden, wird das Toolset-Icon angezeigt. Wenn das Toolset nicht gefunden wird, um dessen Versionsnummer zu bestimmen, wird dies nicht angezeigt. Dieses Preset ändert das Verhalten zum Anzeigen des Icons nur, wenn die Informationen des Toolsets bestimmt werden können.
|
||||
|
||||

|
||||

|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -12,6 +12,6 @@ If toolset files are identified the toolset icon is displayed. If the toolset is
|
||||
starship preset no-empty-icons -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/no-empty-icons.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/no-empty-icons.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/no-empty-icons.toml
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
[Zurück zu den Voreinstellungen](./#no-nerd-fonts)
|
||||
[Zurück zu Presets](./#no-nerd-fonts)
|
||||
|
||||
# No Nerd Fonts Preset
|
||||
# Preset - No Nerd Fonts
|
||||
|
||||
This preset restricts the use of symbols to those from emoji and powerline sets.
|
||||
Dieses Preset beschränkt die Verwendung von Symbolen auf solche aus den Emoji- und Powerline-Sets.
|
||||
|
||||
This means that even without a Nerd Font installed, you should be able to view all module symbols.
|
||||
Dies bedeutet, dass Sie auch ohne einen installierten Nerd-Font in der Lage sein sollten, alle Modulsymbole anzusehen.
|
||||
|
||||
This preset will become the default preset in a future release of starship.
|
||||
Dieses Preset wird in einem zukünftigen Release von Starship zu einem per Default vorgegebenen Preset.
|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -14,6 +14,6 @@ This preset will become the default preset in a future release of starship.
|
||||
starship preset no-nerd-font -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/no-nerd-font.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/no-nerd-font.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/no-nerd-font.toml
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
[Zurück zu den Voreinstellungen](./#no-runtime-versions)
|
||||
[Zurück zu Presets](./#no-runtime-versions)
|
||||
|
||||
# No Runtime Versions Preset
|
||||
# Preset - No Runtime Versions
|
||||
|
||||
This preset hides the version of language runtimes. If you work in containers or virtualized environments, this one is for you!
|
||||
Dieses Preset blendet die Version der Sprachlaufzeiten aus. Wenn Sie in Containern oder virtualisierten Umgebungen arbeiten, dann ist dies für Sie!
|
||||
|
||||

|
||||

|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -12,6 +12,6 @@ This preset hides the version of language runtimes. If you work in containers or
|
||||
starship preset no-runtime-versions -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/no-runtime-versions.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/no-runtime-versions.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/no-runtime-versions.toml
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
[Zurück zu den Voreinstellungen](./#pastel-powerline)
|
||||
[Zurück zu Presets](./#pastel-powerline)
|
||||
|
||||
# Pastel Powerline Preset
|
||||
# Preset - Pastel Powerline
|
||||
|
||||
This preset is inspired by [M365Princess](https://github.com/JanDeDobbeleer/oh-my-posh/blob/main/themes/M365Princess.omp.json). It also shows how path substitution works in starship.
|
||||
Dieses Preset ist inspiriert von [M365Princess](https://github.com/JanDeDobbeleer/oh-my-posh/blob/main/themes/M365Princess.omp.json). Es zeigt außerdem, wie Pfadsubstitution in Starship funktioniert.
|
||||
|
||||

|
||||

|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (the example uses Caskaydia Cove Nerd Font)
|
||||
- Ein [Nerd Font](https://www.nerdfonts.com/) installiert und aktiviert in Ihrem Terminal (das Beispiel verwendet die Caskaydia Cove Nerd Font)
|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -16,6 +16,6 @@ This preset is inspired by [M365Princess](https://github.com/JanDeDobbeleer/oh-m
|
||||
starship preset pastel-powerline -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/pastel-powerline.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/pastel-powerline.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/pastel-powerline.toml
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
[Zurück zu den Voreinstellungen](./#plain-text-symbols)
|
||||
[Zurück zu Presets](./#plain-text-symbols)
|
||||
|
||||
## Plain Text Symbols Preset
|
||||
## Preset - Plain Text Symbols
|
||||
|
||||
This preset changes the symbols for each module into plain text. Great if you don't have access to Unicode.
|
||||
Dieses Preset ändert die Symbole für jedes Modul in Plain Text. Großartig, wenn Sie keinen Zugriff auf Unicode haben.
|
||||
|
||||

|
||||

|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -12,6 +12,6 @@ This preset changes the symbols for each module into plain text. Great if you do
|
||||
starship preset plain-text-symbols -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/plain-text-symbols.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/plain-text-symbols.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/plain-text-symbols.toml
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
[Zurück zu den Voreinstellungen](./#pure)
|
||||
[Zurück zu Presets](./#pure-prompt)
|
||||
|
||||
# Pure Voreinstellung
|
||||
# Preset - Pure
|
||||
|
||||
Diese Voreinstellung emuliert das Aussehen und das Verhalten von [Pure](https://github.com/sindresorhus/pure).
|
||||
Dieses Preset emuliert das Aussehen und Verhalten von [Pure](https://github.com/sindresorhus/pure).
|
||||
|
||||

|
||||

|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -12,6 +12,6 @@ Diese Voreinstellung emuliert das Aussehen und das Verhalten von [Pure](https://
|
||||
starship preset pure-preset -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/pure-preset.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/pure-preset.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/pure-preset.toml
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
[Zurück zu den Voreinstellungen](./#pastel-powerline)
|
||||
[Zurück zu Presets](./#tokyo-night)
|
||||
|
||||
# Tokyo Night Preset
|
||||
# Preset - Tokyo Night
|
||||
|
||||
This preset is inspired by [tokyo-night-vscode-theme](https://github.com/enkia/tokyo-night-vscode-theme).
|
||||
Dieses Preset ist inspiriert von [tokyo-night-vscode-theme](https://github.com/enkia/tokyo-night-vscode-theme).
|
||||
|
||||

|
||||

|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- Eine [Nerd Font](https://www.nerdfonts.com/) installiert und aktiviert in deinem Terminal
|
||||
- Ein [Nerd Font](https://www.nerdfonts.com/) installiert und aktiviert in Ihrem Terminal
|
||||
|
||||
### Konfiguration
|
||||
|
||||
@@ -16,6 +16,6 @@ This preset is inspired by [tokyo-night-vscode-theme](https://github.com/enkia/t
|
||||
starship preset tokyo-night -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/tokyo-night.toml){download}
|
||||
[Klicken, um TOML herunterzuladen](/presets/toml/tokyo-night.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/tokyo-night.toml
|
||||
|
||||
+6
-13
@@ -114,7 +114,7 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
|
||||
#### Powershell
|
||||
#### PowerShell
|
||||
|
||||
Añade lo siguiente al final de `Microsoft.PowerShell_profile.ps1`. Puedes comprobar la ubicación de este archivo consultando la variable `$PROFILE` en PowerShell. Normalmente la ruta es `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` o `~/.config/powershell/Microsoft.PowerShell_profile.ps1` en -Nix.
|
||||
|
||||
@@ -136,19 +136,16 @@ onMounted(() => {
|
||||
|
||||
#### Elvish
|
||||
|
||||
::: warning
|
||||
> [!WARNING] Only elvish v0.18 or higher is supported.
|
||||
|
||||
Sólo se admite elvish v0.18 o superior.
|
||||
|
||||
:::
|
||||
|
||||
Añade el siguiente código al final de `~/.elvish/rc.elv`:
|
||||
:
|
||||
|
||||
```sh
|
||||
# ~/.elvish/rc.elv
|
||||
|
||||
eval (starship init elvish)
|
||||
```
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
|
||||
#### Tcsh
|
||||
@@ -164,13 +161,9 @@ onMounted(() => {
|
||||
|
||||
#### Nushell
|
||||
|
||||
::: warning
|
||||
> [!WARNING] This will change in the future. Sólo se admite Nushell v0.96+.
|
||||
|
||||
Esto cambiará en el futuro. Only Nushell v0.96+ is supported.
|
||||
|
||||
:::
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
Agregue lo siguiente al final de su configuración de Nushell (encuéntrelo ejecutando `$nu.config-path` en Nushell):
|
||||
|
||||
```sh
|
||||
mkdir ($nu.data-dir | path join "vendor/autoload")
|
||||
|
||||
@@ -2,11 +2,7 @@
|
||||
|
||||
A pesar de que Starship es una prompt versátil, a veces necesitas hacer más que editar `starhip.toml` para que haga ciertas cosas. Esta página detalla algunas de las técnicas de configuración más avanzadas en Starship.
|
||||
|
||||
::: warning
|
||||
|
||||
Las configuraciones de esta sección están sujetos a cambios en futuras versiones de Starship.
|
||||
|
||||
:::
|
||||
> [!ADVERTENCIA] Las configuraciones de esta sección están sujetas a cambios en futuras versiones de Starship.
|
||||
|
||||
## Prompt Transitoria en PowerShell
|
||||
|
||||
@@ -80,21 +76,21 @@ starship init fish | source
|
||||
enable_transience
|
||||
```
|
||||
|
||||
## TransientPrompt and TransientRightPrompt in Bash
|
||||
## TransientPrompt y TransientRightPrompt en Bash
|
||||
|
||||
The [Ble.sh](https://github.com/akinomyoga/ble.sh) framework at v0.4 or higher allows you to replace the previous-printed prompt with custom strings. Esto es útil en los casos en que la información del prompt no es siempre necesaria. To enable this, put this in `~/.bashrc` `bleopt prompt_ps1_transient=<value>`:
|
||||
El marco estructura [Ble.sh](https://github.com/akinomyoga/ble.sh) en v0.4 o superior le permite reemplazar el mensaje impreso previamente con cadenas personalizadas. Esto es útil en los casos en que la información del prompt no es siempre necesaria. Para habilitar esto, coloque esto en `~/.bashrc` `bleopt prompt_ps1_transient=<value>`:
|
||||
|
||||
The \<value\> here is a colon-separated list of `always`, `same-dir` and `trim`. When `prompt_ps1_final` is empty and the option `prompt_ps1_transient` has a non-empty \<value\>, the prompt specified by `PS1` is erased on leaving the current command line. If \<value\> contains a field `trim`, only the last line of multiline `PS1` is preserved and the other lines are erased. Otherwise, the command line will be redrawn as if `PS1=` is specified. When a field `same-dir` is contained in \<value\> and the current working directory is different from the final directory of the previous command line, this option `prompt_ps1_transient` is ignored.
|
||||
El \<value\> aquí es una lista separada por dos puntos de `siempre`, `mismo-dir` y `recortar`. Cuando `prompt_ps1_final` está vacío y la opción `prompt_ps1_transient` tiene un \<value\> no vacío, el mensaje especificado por `PS1` se borra al salir de la línea de comando actual. Si \<value\> contiene un campo `trim`, solo se conserva la última línea de la multilínea `PS1` y las demás líneas se borran. De lo contrario, la línea de comando se volverá a dibujar como si se hubiera especificado `PS1=`. Cuando un campo `same-dir` está contenido en \<value\> y el directorio de trabajo actual es diferente del directorio final de la línea de comando anterior, esta opción `prompt_ps1_transient` se ignora.
|
||||
|
||||
Make the following changes to your `~/.blerc` (or in `~/.config/blesh/init.sh`) to customize what gets displayed on the left and on the right:
|
||||
Realice los siguientes cambios en su `~/.blerc` (o en `~/.config/blesh/init.sh`) para personalizar lo que se muestra a la izquierda y a la derecha:
|
||||
|
||||
- To customize what the left side of input gets replaced with, configure the `prompt_ps1_final` Ble.sh option. For example, to display Starship's `character` module here, you would do
|
||||
- Para personalizar con qué se reemplaza el lado izquierdo de la entrada, configure la opción `prompt_ps1_final` de Ble.sh. Por ejemplo, para mostrar el módulo de `personaje` de Starship aquí, harías
|
||||
|
||||
```bash
|
||||
bleopt prompt_ps1_final='$(starship module character)'
|
||||
```
|
||||
|
||||
- To customize what the right side of input gets replaced with, configure the `prompt_rps1_final` Ble.sh option. Por ejemplo, para mostrar la hora en la que se inició el último comando aquí, lo harías
|
||||
- Para personalizar con qué se reemplaza el lado derecho de la entrada, configure la opción `prompt_rps1_final` de Ble.sh. Por ejemplo, para mostrar la hora en la que se inició el último comando aquí, lo harías
|
||||
|
||||
```bash
|
||||
bleopt prompt_rps1_final='$(starship module time)'
|
||||
@@ -225,9 +221,9 @@ Algunos intérpretes de comandos soportan un prompt derecho que se renderiza en
|
||||
|
||||
Nota: El prompt derecho es una sola línea siguiendo la ubicación de entrada. Para alinear los módulos arriba de la línea de entrada en un prompt multi-línea, vea el [módulo de `relleno`](../config/#fill).
|
||||
|
||||
`right_format` is currently supported for the following shells: elvish, fish, zsh, xonsh, cmd, nushell, bash.
|
||||
`right_format` actualmente es compatible con los siguientes shells: elvish, fish, zsh, xonsh, cmd, nushell, bash.
|
||||
|
||||
Note: The [Ble.sh](https://github.com/akinomyoga/ble.sh) framework v0.4 or higher should be installed in order to use right prompt in bash.
|
||||
Nota: Se debe instalar el framework [Ble.sh](https://github.com/akinomyoga/ble.sh) v0.4 o superior para poder utilizar el indicador correcto en bash.
|
||||
|
||||
### Ejemplo
|
||||
|
||||
@@ -266,10 +262,320 @@ Nota: Los prompts de continuación solo están disponibles en los siguientes int
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# A continuation prompt that displays two filled-in arrows
|
||||
# Un mensaje de continuación que muestra dos flechas rellenas
|
||||
continuation_prompt = '▶▶ '
|
||||
```
|
||||
|
||||
## Statusline for Claude Code
|
||||
|
||||
Starship supports displaying a custom statusline when running inside Claude Code, Anthropic's CLI tool for interactive coding with Claude. This statusline provides real-time information about your Claude session, including the model being used, context window usage, and session costs.
|
||||
|
||||
For more information about the Claude Code statusline feature, see the [Claude Code statusline documentation](https://code.claude.com/docs/en/statusline).
|
||||
|
||||
### Setup
|
||||
|
||||
To use Starship as your Claude Code statusline:
|
||||
|
||||
1. Run `/statusline` in Claude Code and ask it to configure Starship, or manually add the following to your `.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"statusLine": {
|
||||
"type": "command",
|
||||
"command": "starship statusline claude-code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Customize the statusline appearance in your `~/.config/starship.toml` (see [Configuration](#configuration) below)
|
||||
|
||||
### Overview
|
||||
|
||||
When invoked with `starship statusline claude-code`, Starship receives Claude Code session data via stdin and renders a statusline using a dedicated profile named `claude-code`.
|
||||
|
||||
The profile includes three specialized modules:
|
||||
|
||||
- `claude_model`: Displays the current Claude model being used
|
||||
- `claude_context`: Shows context window usage with a visual gauge
|
||||
- `claude_cost`: Displays session cost and statistics
|
||||
|
||||
The default profile format is:
|
||||
|
||||
```toml
|
||||
[profiles]
|
||||
claude-code = "$claude_model$git_branch$claude_context$claude_cost"
|
||||
```
|
||||
|
||||
### Configuración
|
||||
|
||||
You can customize the Claude Code statusline by modifying the `claude-code` profile and individual module configurations in your `~/.config/starship.toml`:
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Customize the claude-code profile
|
||||
[profiles]
|
||||
claude-code = "$claude_model$claude_context$claude_cost"
|
||||
|
||||
# Configure individual modules
|
||||
[claude_model]
|
||||
format = "[$symbol$model]($style) "
|
||||
symbol = "🤖 "
|
||||
style = "bold blue"
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge $percentage]($style) "
|
||||
gauge_width = 10
|
||||
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost]($style) "
|
||||
symbol = "💰 "
|
||||
```
|
||||
|
||||
### Claude Model
|
||||
|
||||
The `claude_model` module displays the current Claude model being used in the session.
|
||||
|
||||
#### Opciones
|
||||
|
||||
| Opción | Predeterminado | Descripción |
|
||||
| --------------- | ---------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `format` | `'[$symbol$model]($style) '` | El formato del módulo. |
|
||||
| `symbol` | `'🤖 '` | The symbol shown before the model name. |
|
||||
| `style` | `'bold blue'` | El estilo del módulo. |
|
||||
| `model_aliases` | `{}` | Map of model IDs or display names to shorter aliases. Checks ID first, then display name. |
|
||||
| `disabled` | `false` | Disables the `claude_model` module. |
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Ejemplo | Descripción |
|
||||
| --------- | ------------------- | -------------------------------------- |
|
||||
| model | `Claude 3.5 Sonnet` | The display name of the current model |
|
||||
| model_id | `claude-3-5-sonnet` | The model ID |
|
||||
| symbol | | Refleja el valor de la opción `symbol` |
|
||||
| style\* | | Refleja el valor de la opción `style` |
|
||||
|
||||
\*: Esta variable sólo puede ser usada como parte de una cadena de estilo
|
||||
|
||||
#### Ejemplos
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Basic customization
|
||||
[claude_model]
|
||||
format = "on [$symbol$model]($style) "
|
||||
symbol = "🧠 "
|
||||
style = "bold cyan"
|
||||
|
||||
# Using model aliases for vendor-specific model names
|
||||
# You can alias by model ID or display name
|
||||
[claude_model.model_aliases]
|
||||
# Alias by vendor model ID (e.g. AWS Bedrock)
|
||||
"global.anthropic.claude-sonnet-4-5-20250929-v1:0" = "Sonnet 4.5"
|
||||
# Alias by display name
|
||||
"Claude Sonnet 4.5 (Vendor Proxy)" = "Sonnet"
|
||||
```
|
||||
|
||||
### Claude Context
|
||||
|
||||
The `claude_context` module displays context window usage as a percentage and visual gauge. The style automatically changes based on configurable thresholds.
|
||||
|
||||
#### Opciones
|
||||
|
||||
| Opción | Predeterminado | Descripción |
|
||||
| ---------------------- | --------------------------------- | -------------------------------------------------- |
|
||||
| `format` | `'[$gauge $percentage]($style) '` | El formato del módulo. |
|
||||
| `symbol` | `''` | The symbol shown before the gauge. |
|
||||
| `gauge_width` | `5` | The width of the gauge in characters. |
|
||||
| `gauge_full_symbol` | `'█'` | The symbol used for filled segments of the gauge. |
|
||||
| `gauge_partial_symbol` | `'▒'` | The symbol used for partial segments of the gauge. |
|
||||
| `gauge_empty_symbol` | `'░'` | The symbol used for empty segments of the gauge. |
|
||||
| `display` | [see below](#display) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_context` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define thresholds and styles for different usage levels. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Opción | Predeterminado | Descripción |
|
||||
| ----------- | -------------- | ------------------------------------------------------------------------ |
|
||||
| `threshold` | `0.0` | The minimum context windows usage percentage to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this the configuration is matched. |
|
||||
|
||||
```toml
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
hidden = true
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 30
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 60
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 80
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Ejemplo | Descripción |
|
||||
| ---------------------------- | ------- | ----------------------------------------------------- |
|
||||
| gauge | `██▒░░` | Visual representation of context usage |
|
||||
| percentage | `65%` | Context usage as a percentage |
|
||||
| input_tokens | `45.2k` | Total input tokens in conversation |
|
||||
| output_tokens | `12.3k` | Total output tokens in conversation |
|
||||
| curr_input_tokens | `5.1k` | Input tokens from most recent API call |
|
||||
| curr_output_tokens | `1.2k` | Output tokens from most recent API call |
|
||||
| curr_cache_creation_tokens | `1.5k` | Cache creation tokens from most recent API call |
|
||||
| curr_cache_read_tokens | `23.4k` | Cache read tokens from most recent API call |
|
||||
| total_tokens | `200k` | Total context window size |
|
||||
| symbol | | Refleja el valor de la opción `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: Esta variable sólo puede ser usada como parte de una cadena de estilo
|
||||
|
||||
#### Ejemplos
|
||||
|
||||
**Minimal gauge-only display**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge]($style) "
|
||||
gauge_width = 10
|
||||
```
|
||||
|
||||
**Detailed token information**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$percentage ($input_tokens in / $output_tokens out)]($style) "
|
||||
```
|
||||
|
||||
**Custom gauge symbols**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
gauge_full_symbol = "▰"
|
||||
gauge_partial_symbol = ""
|
||||
gauge_empty_symbol = "▱"
|
||||
gauge_width = 10
|
||||
format = "[$gauge]($style) "
|
||||
```
|
||||
|
||||
**Custom thresholds**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 50
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 75
|
||||
style = "bold orange"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 90
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
### Claude Cost
|
||||
|
||||
The `claude_cost` module displays the total cost of the current Claude Code session in USD. Like `claude_context`, it supports threshold-based styling.
|
||||
|
||||
#### Opciones
|
||||
|
||||
| Opción | Predeterminado | Descripción |
|
||||
| ---------- | ---------------------------------- | ----------------------------------- |
|
||||
| `format` | `'[$symbol(\\$$cost)]($style) '` | El formato del módulo. |
|
||||
| `symbol` | `'💰 '` | The symbol shown before the cost. |
|
||||
| `display` | [see below](#display-1) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_cost` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define cost thresholds and styles. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Opción | Predeterminado | Descripción |
|
||||
| ----------- | -------------- | ------------------------------------------------------------- |
|
||||
| `threshold` | `0.0` | The minimum cost in USD to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this configuration is matched. |
|
||||
|
||||
**Default configuration:**
|
||||
|
||||
```toml
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 1.0
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 5.0
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Ejemplo | Descripción |
|
||||
| ------------- | -------- | ----------------------------------------------------- |
|
||||
| cost | `1.23` | Total session cost in USD (formatted to 2 decimals) |
|
||||
| duration | `1m 30s` | Total session duration |
|
||||
| api_duration | `45s` | Total API call duration |
|
||||
| lines_added | `1.2k` | Total lines of code added |
|
||||
| lines_removed | `500` | Total lines of code removed |
|
||||
| symbol | | Refleja el valor de la opción `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: Esta variable sólo puede ser usada como parte de una cadena de estilo
|
||||
|
||||
#### Ejemplos
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Cost with code change statistics
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost (+$lines_added -$lines_removed)]($style) "
|
||||
|
||||
# Hide module until cost exceeds $0.10
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.10
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 2.0
|
||||
style = "bold red"
|
||||
|
||||
# Show duration information
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost ($duration)]($style) "
|
||||
```
|
||||
|
||||
## Cadenas de Estilo
|
||||
|
||||
Las cadenas de estilo son una lista de palabras, separadas por espacios en blanco. Las palabras no son sensibles a mayúsculas (es decir, `bold` y `BoLd` se consideran la misma cadena). Cada palabra puede ser una de las siguientes:
|
||||
@@ -287,7 +593,7 @@ Las cadenas de estilo son una lista de palabras, separadas por espacios en blanc
|
||||
- `<color>`
|
||||
- `ninguno`
|
||||
|
||||
donde `<color>` es un especificador de color (discutido a continuación). `fg:<color>` y `<color>` hacen actualmente lo mismo, aunque esto puede cambiar en el futuro. `<color>` can also be set to `prev_fg` or `prev_bg` which evaluates to the previous item's foreground or background color respectively if available or `none` otherwise. `inverted` cambia el fondo y los colores de primer plano. El orden de las palabras en la cadena no importa.
|
||||
donde `<color>` es un especificador de color (discutido a continuación). `fg:<color>` y `<color>` hacen actualmente lo mismo, aunque esto puede cambiar en el futuro. `<color>` también se puede configurar como `prev_fg` o `prev_bg`, que evalúa el color de primer plano o de fondo del elemento anterior respectivamente si está disponible o `none` en caso contrario. `inverted` cambia el fondo y los colores de primer plano. El orden de las palabras en la cadena no importa.
|
||||
|
||||
El token `none` anula todos los demás tokens en una cadena si no es parte de un especificador `bg:`, de modo que por ejemplo `fg:red none fg:blue` creará una cadena sin ningún estilo. `bg:none` establece el fondo al color por defecto, así que `fg:red bg:none` es equivalente a `red` o `fg:red` y `bg:green fg:red bg:none` también es equivalente a `fg:red` o `red`. Puede convertirse en un error usar `none` junto con otros estilos en el futuro.
|
||||
|
||||
|
||||
+2126
-303
File diff suppressed because it is too large
Load Diff
+31
-27
@@ -35,7 +35,7 @@
|
||||
<a href="https://stand-with-ukraine.pp.ua"
|
||||
><img
|
||||
src="https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraineFlat.svg"
|
||||
alt="Stand With Ukraine"
|
||||
alt="Quedarse con Ukraniano"
|
||||
/></a>
|
||||
</p>
|
||||
|
||||
@@ -124,7 +124,7 @@
|
||||
><img
|
||||
height="20"
|
||||
src="https://raw.githubusercontent.com/starship/starship/master/media/flag-ua.png"
|
||||
alt="Українська"
|
||||
alt=""
|
||||
/></a>
|
||||
|
||||
<a
|
||||
@@ -221,19 +221,22 @@ curl -sS https://starship.rs/install.sh | sh
|
||||
|
||||
Alternativamente, instale Starship usando cualquiera de los siguientes gestores de paquetes:
|
||||
|
||||
| Distribución | Repositorio | Instrucciones |
|
||||
| ------------------ | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
|
||||
| **_Cualquiera_** | **[crates.io](https://crates.io/crates/starship)** | `cargo install starship --locked` |
|
||||
| _Cualquiera_ | [conda-forge](https://anaconda.org/conda-forge/starship) | `conda install -c conda-forge starship` |
|
||||
| _Cualquiera_ | [Linuxbrew](https://formulae.brew.sh/formula/starship) | `brew install starship` |
|
||||
| Alpine Linux 3.13+ | [Alpine Linux Packages](https://pkgs.alpinelinux.org/packages?name=starship) | `apk add starship` |
|
||||
| Arch Linux | [Arch Linux Extra](https://archlinux.org/packages/extra/x86_64/starship) | `pacman -S starship` |
|
||||
| CentOS 7+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Gentoo | [Paquetes Gentoo](https://packages.gentoo.org/packages/app-shells/starship) | `emerge app-shells/starship` |
|
||||
| Manjaro | | `pacman -S starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/starship/default.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| openSUSE | [OSS](https://software.opensuse.org/package/starship) | `zypper in starship` |
|
||||
| Void Linux | [Void Linux Packages](https://github.com/void-linux/void-packages/tree/master/srcpkgs/starship) | `xbps-install -S starship` |
|
||||
| Distribución | Repositorio | Instrucciones |
|
||||
| ------------------------ | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
|
||||
| **_Cualquiera_** | **[crates.io](https://crates.io/crates/starship)** | `cargo install starship --locked` |
|
||||
| _Cualquiera_ | [conda-forge](https://anaconda.org/conda-forge/starship) | `conda install -c conda-forge starship` |
|
||||
| _Cualquiera_ | [Linuxbrew](https://formulae.brew.sh/formula/starship) | `brew install starship` |
|
||||
| Alpine Linux 3.13+ | [Alpine Linux Packages](https://pkgs.alpinelinux.org/packages?name=starship) | `apk add starship` |
|
||||
| Arch Linux | [Extra de Archi Linux](https://archlinux.org/packages/extra/x86_64/starship) | `pacman -S starship` |
|
||||
| CentOS 7+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Debian 13+ | [Debian Main](https://sources.debian.org/src/starship/1.22.1-1/) | `apt install starship` |
|
||||
| Fedora 40+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Gentoo | [Paquetes Gentoo](https://packages.gentoo.org/packages/app-shells/starship) | `emerge app-shells/starship` |
|
||||
| Manjaro | | `pacman -S starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/st/starship/package.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| openSUSE | [OSS](https://software.opensuse.org/package/starship) | `zypper in starship` |
|
||||
| Ubuntu 25.04 o más nuevo | [Ubuntu Universe](https://packages.ubuntu.com/source/plucky/starship) | `apt install starship` |
|
||||
| Void Linux | [Void Linux Packages](https://github.com/void-linux/void-packages/tree/master/srcpkgs/starship) | `xbps-install -S starship` |
|
||||
|
||||
</details>
|
||||
|
||||
@@ -274,7 +277,7 @@ Instalar Starship usando cualquiera de los siguientes gestores de paquetes:
|
||||
|
||||
</details>
|
||||
|
||||
### Paso 2. Set up your shell to use Starship
|
||||
### Paso 2. Configure su consola para usar Starship
|
||||
|
||||
Configure su shell para inicializar starship. Selecciona el tuyo de la lista de abajo:
|
||||
|
||||
@@ -303,13 +306,13 @@ load(io.popen('starship init cmd'):read("*a"))()
|
||||
<details>
|
||||
<summary>Elvish</summary>
|
||||
|
||||
Añade el siguiente código al final de `~/.elvish/rc.elv`:
|
||||
:
|
||||
|
||||
```sh
|
||||
eval (starship init elvish)
|
||||
```
|
||||
|
||||
Nota: Sólo se admite Elvish v0.18+
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
</details>
|
||||
|
||||
@@ -338,14 +341,15 @@ eval $(starship init ion)
|
||||
<details>
|
||||
<summary>Nushell</summary>
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
Agregue lo siguiente al final de su configuración de Nushell (encuéntrelo ejecutando `$nu.config-path` en Nushell):
|
||||
|
||||
```sh
|
||||
mkdir ($nu.data-dir | path join "vendor/autoload")
|
||||
starship init nu | save -f ($nu.data-dir | path join "vendor/autoload/starship.nu")
|
||||
|
||||
```
|
||||
|
||||
Note: Only Nushell v0.96+ is supported
|
||||
Nota: Sólo se admite Nushell v0.96+
|
||||
|
||||
</details>
|
||||
|
||||
@@ -405,7 +409,7 @@ Si estás buscando personalizar Starship:
|
||||
|
||||
## 🤝 Contribuir
|
||||
|
||||
¡Siempre estamos buscando colaboradores de **todos los niveles y habilidades**! Si estas buscando una manera fácil de ayudar este proyecto, puedes intentar resolver un problema con la etiqueta "[good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue)".
|
||||
¡Siempre estamos buscando colaboradores de **todos los niveles y habilidades**! If you're looking to ease your way into the project, try out a [good first issue](https://github.com/starship/starship/issues?q=state%3Aopen%20label%3A%22%F0%9F%8C%B1%20good%20first%20issue%22).
|
||||
|
||||
Si habla con fluidez en un idioma que no es inglés, agradecemos mucho cualquier ayuda para mantener nuestros documentos traducidos y actualizados en otros idiomas. Si quieres ayudar, puedes contribuir con las traducciones en el [Crowdin de Starship](https://translate.starship.rs/).
|
||||
|
||||
@@ -425,16 +429,16 @@ Por favor, revisa estas obras anteriores que ayudaron a inspirar la creación de
|
||||
|
||||
Apoya este proyecto [convirtiéndote en patrocinador](https://github.com/sponsors/starship). Tu nombre o logo aparecerá aquí con un enlace a tu sitio web.
|
||||
|
||||
## 🔒 Code Signing Policy
|
||||
## Política de Firmado de Código
|
||||
|
||||
Free code signing provided by [SignPath.io](https://signpath.io), certificate by [SignPath Foundation](https://signpath.org).
|
||||
Firma de código gratuita proporcionada por [SignPath.io](https://signpath.io), certificado por [SignPath Foundation](https://signpath.org).
|
||||
|
||||
Code Signing Roles:
|
||||
Roles de Firmado de Código:
|
||||
|
||||
- Reviewers: [Astronauts](https://github.com/orgs/starship/teams/astronauts)
|
||||
- Approvers and Authors: [Mission Control](https://github.com/orgs/starship/teams/mission-control)
|
||||
- Revisores: [Astronauts](https://github.com/orgs/starship/teams/astronauts)
|
||||
- Aprobadores y Autores: [Mission Control](https://github.com/orgs/starship/teams/mission-control)
|
||||
|
||||
This program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it.
|
||||
Este programa no transferirá ninguna información a otros sistemas en red a menos que lo solicite específicamente el usuario o la persona que lo instale u opere.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
||||
@@ -23,16 +23,10 @@ choco install starship
|
||||
|
||||
## [termux](https://termux.com)
|
||||
|
||||
### Prerequisitos
|
||||
|
||||
```sh
|
||||
pkg install getconf
|
||||
```
|
||||
|
||||
### Instalación
|
||||
|
||||
```sh
|
||||
curl -sS https://starship.rs/install.sh | sh -s -- --bin-dir /data/data/com.termux/files/usr/bin
|
||||
pkg install starship
|
||||
```
|
||||
|
||||
## [Funtoo Linux](https://www.funtoo.org/Welcome)
|
||||
|
||||
@@ -14,11 +14,7 @@ Este preajuste cambia los símbolos de cada módulo para usar símbolos Nerd Fon
|
||||
|
||||
This preset changes the symbols for several modules so that no Nerd Font symbols are used anywhere in the prompt.
|
||||
|
||||
::: tip
|
||||
|
||||
This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
:::
|
||||
> [!TIP] This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
[Click to view No Nerd Font preset](./no-nerd-font)
|
||||
|
||||
@@ -75,3 +71,9 @@ Este preajuste está muy inspirado en [Pastel Powerline](./pastel-powerline.md)
|
||||
Este es un preajuste pseudominimalista inspirado en las indicaciones [geometría](https://github.com/geometry-zsh/geometry) y [nave espacial](https://github.com/spaceship-prompt/spaceship-prompt).
|
||||
|
||||
[](./jetpack)
|
||||
|
||||
## [Catppuccin Powerline](./catppuccin-powerline.md)
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||
[](./catppuccin-powerline)
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
[Return to Presets](./#catppuccin-powerline)
|
||||
|
||||
# Catppuccin Powerline Preset
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||

|
||||
|
||||
### Prerequisitos
|
||||
|
||||
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal
|
||||
|
||||
### Configuración
|
||||
|
||||
```sh
|
||||
starship preset catppuccin-powerline -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
By default this preset uses the Mocha flavour of Catppucin, but you can specify any of the flavours by modifying the value of `palette`:
|
||||
|
||||
- `catppuccin_mocha`
|
||||
- `catppuccin_frappe`
|
||||
- `catppuccin_macchiato`
|
||||
- `catppuccin_latte`
|
||||
|
||||
[Click to download TOML](/presets/toml/catppuccin-powerline.toml)
|
||||
|
||||
<<< @/public/presets/toml/catppuccin-powerline.toml
|
||||
@@ -1,4 +1,4 @@
|
||||
[Volver a Preajustes](./#pure)
|
||||
[Volver a Preajustes](./#pure-prompt)
|
||||
|
||||
# Preajuste Pure
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[Volver a Preajustes](./#pastel-powerline)
|
||||
[Volver a Preajustes](./#tokyo-night)
|
||||
|
||||
# Tokyo Night Preset
|
||||
|
||||
|
||||
+9
-16
@@ -18,7 +18,7 @@ features:
|
||||
details: Profitez de toute la rapidité et la sécurité de Rust pour rendre votre invite de commandes la plus rapide et fiable possible.
|
||||
-
|
||||
title: Personnalisable
|
||||
details: Tous les petits détails sont personnalisable à votre goût, pour rendre votre invite de commandes aussi légère ou complète que le vous souhaitez.
|
||||
details: Tous les petits détails sont personnalisables à votre goût, pour rendre votre invite de commandes aussi légère ou complète que vous le souhaitez.
|
||||
footer: Licence ISC | Copyright © 2019-présent Contributeurs Starship
|
||||
#Used for the description meta tag, for SEO
|
||||
metaTitle: "Starship : Invite Multi-Shell"
|
||||
@@ -46,7 +46,7 @@ onMounted(() => {
|
||||
|
||||
### Pré-requis
|
||||
|
||||
- Une [Nerd Font](https://www.nerdfonts.com/) est installée et activée dans votre terminal.
|
||||
- Une police d'écriture [Nerd Font](https://www.nerdfonts.com/) est installée et activée dans votre terminal.
|
||||
|
||||
### Installation
|
||||
|
||||
@@ -72,7 +72,7 @@ onMounted(() => {
|
||||
brew install starship
|
||||
```
|
||||
|
||||
With [Winget](https://github.com/microsoft/winget-cli):
|
||||
Avec [Winget](https://github.com/microsoft/winget-cli):
|
||||
|
||||
```powershell
|
||||
winget install starship
|
||||
@@ -114,7 +114,7 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
|
||||
#### Powershell
|
||||
#### PowerShell
|
||||
|
||||
Ajouter ce qui suit à la fin de `Microsoft.PowerShell_profile.ps1`. Vous pouvez vérifier l'emplacement de ce fichier en regardant la variable `$PROFILE` dans PowerShell. Habituellement, son chemin est `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` ou `~/.config/powershell/Microsoft.PowerShell_profile.ps1` sur -Nix.
|
||||
|
||||
@@ -136,19 +136,16 @@ onMounted(() => {
|
||||
|
||||
#### Elvish
|
||||
|
||||
::: warning
|
||||
> [!WARNING] Only elvish v0.18 or higher is supported.
|
||||
|
||||
Seul elvish v0.18 ou supérieur est pris en charge.
|
||||
|
||||
:::
|
||||
|
||||
Ajoutez ce qui suit à la fin de `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
# ~/.elvish/rc.elv
|
||||
|
||||
eval (starship init elvish)
|
||||
```
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
|
||||
#### Tcsh
|
||||
@@ -164,13 +161,9 @@ onMounted(() => {
|
||||
|
||||
#### Nushell
|
||||
|
||||
::: warning
|
||||
> [!WARNING] This will change in the future. Seul Nushell v0.96+ est supporté.
|
||||
|
||||
Ceci va changer dans le futur. Only Nushell v0.96+ is supported.
|
||||
|
||||
:::
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
Ajoutez la ligne suivante à la fin de votre configuration Nushell (trouvable en exécutant `$nu.config-path` dans Nushell) :
|
||||
|
||||
```sh
|
||||
mkdir ($nu.data-dir | path join "vendor/autoload")
|
||||
|
||||
@@ -2,11 +2,7 @@
|
||||
|
||||
Même si Starship est un shell polyvalent, éditer `starship.toml` ne suffit parfois pas pour faire certaines choses. Cette page détaille quelques techniques de configuration avancées utilisées dans starship.
|
||||
|
||||
::: warning
|
||||
|
||||
Les configurations dans cette section sont sujettes à modification dans les futures versions de Starship.
|
||||
|
||||
:::
|
||||
> [!WARNING] The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
## TransientPrompt in PowerShell
|
||||
|
||||
@@ -270,6 +266,316 @@ Note: les invites de confirmation sont uniquement disponibles pour les shells su
|
||||
continuation_prompt = '▶▶ '
|
||||
```
|
||||
|
||||
## Statusline for Claude Code
|
||||
|
||||
Starship supports displaying a custom statusline when running inside Claude Code, Anthropic's CLI tool for interactive coding with Claude. This statusline provides real-time information about your Claude session, including the model being used, context window usage, and session costs.
|
||||
|
||||
For more information about the Claude Code statusline feature, see the [Claude Code statusline documentation](https://code.claude.com/docs/en/statusline).
|
||||
|
||||
### Setup
|
||||
|
||||
To use Starship as your Claude Code statusline:
|
||||
|
||||
1. Run `/statusline` in Claude Code and ask it to configure Starship, or manually add the following to your `.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"statusLine": {
|
||||
"type": "command",
|
||||
"command": "starship statusline claude-code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Customize the statusline appearance in your `~/.config/starship.toml` (see [Configuration](#configuration) below)
|
||||
|
||||
### Overview
|
||||
|
||||
When invoked with `starship statusline claude-code`, Starship receives Claude Code session data via stdin and renders a statusline using a dedicated profile named `claude-code`.
|
||||
|
||||
The profile includes three specialized modules:
|
||||
|
||||
- `claude_model`: Displays the current Claude model being used
|
||||
- `claude_context`: Shows context window usage with a visual gauge
|
||||
- `claude_cost`: Displays session cost and statistics
|
||||
|
||||
The default profile format is:
|
||||
|
||||
```toml
|
||||
[profiles]
|
||||
claude-code = "$claude_model$git_branch$claude_context$claude_cost"
|
||||
```
|
||||
|
||||
### Configuration
|
||||
|
||||
You can customize the Claude Code statusline by modifying the `claude-code` profile and individual module configurations in your `~/.config/starship.toml`:
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Customize the claude-code profile
|
||||
[profiles]
|
||||
claude-code = "$claude_model$claude_context$claude_cost"
|
||||
|
||||
# Configure individual modules
|
||||
[claude_model]
|
||||
format = "[$symbol$model]($style) "
|
||||
symbol = "🤖 "
|
||||
style = "bold blue"
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge $percentage]($style) "
|
||||
gauge_width = 10
|
||||
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost]($style) "
|
||||
symbol = "💰 "
|
||||
```
|
||||
|
||||
### Claude Model
|
||||
|
||||
The `claude_model` module displays the current Claude model being used in the session.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Défaut | Description |
|
||||
| --------------- | ---------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `format` | `'[$symbol$model]($style) '` | Format du module. |
|
||||
| `symbole` | `'🤖 '` | The symbol shown before the model name. |
|
||||
| `style` | `'bold blue'` | Le style pour le module. |
|
||||
| `model_aliases` | `{}` | Map of model IDs or display names to shorter aliases. Checks ID first, then display name. |
|
||||
| `disabled` | `false` | Disables the `claude_model` module. |
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Exemple | Description |
|
||||
| --------- | ------------------- | -------------------------------------- |
|
||||
| model | `Claude 3.5 Sonnet` | The display name of the current model |
|
||||
| model_id | `claude-3-5-sonnet` | The model ID |
|
||||
| symbole | | Reflète la valeur de l'option `symbol` |
|
||||
| style\* | | Reflète la valeur de l'option `style` |
|
||||
|
||||
\* : Cette variable ne peut être utilisée que comme partie d'un style
|
||||
|
||||
#### Exemples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Basic customization
|
||||
[claude_model]
|
||||
format = "on [$symbol$model]($style) "
|
||||
symbol = "🧠 "
|
||||
style = "bold cyan"
|
||||
|
||||
# Using model aliases for vendor-specific model names
|
||||
# You can alias by model ID or display name
|
||||
[claude_model.model_aliases]
|
||||
# Alias by vendor model ID (e.g. AWS Bedrock)
|
||||
"global.anthropic.claude-sonnet-4-5-20250929-v1:0" = "Sonnet 4.5"
|
||||
# Alias by display name
|
||||
"Claude Sonnet 4.5 (Vendor Proxy)" = "Sonnet"
|
||||
```
|
||||
|
||||
### Claude Context
|
||||
|
||||
The `claude_context` module displays context window usage as a percentage and visual gauge. The style automatically changes based on configurable thresholds.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Défaut | Description |
|
||||
| ---------------------- | --------------------------------- | -------------------------------------------------- |
|
||||
| `format` | `'[$gauge $percentage]($style) '` | Format du module. |
|
||||
| `symbole` | `''` | The symbol shown before the gauge. |
|
||||
| `gauge_width` | `5` | The width of the gauge in characters. |
|
||||
| `gauge_full_symbol` | `'█'` | The symbol used for filled segments of the gauge. |
|
||||
| `gauge_partial_symbol` | `'▒'` | The symbol used for partial segments of the gauge. |
|
||||
| `gauge_empty_symbol` | `'░'` | The symbol used for empty segments of the gauge. |
|
||||
| `display` | [voir plus bas](#display) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_context` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define thresholds and styles for different usage levels. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Défaut | Description |
|
||||
| ----------- | ------------ | ------------------------------------------------------------------------ |
|
||||
| `threshold` | `0.0` | The minimum context windows usage percentage to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this the configuration is matched. |
|
||||
|
||||
```toml
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
hidden = true
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 30
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 60
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 80
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Exemple | Description |
|
||||
| ---------------------------- | ------- | ----------------------------------------------------- |
|
||||
| gauge | `██▒░░` | Visual representation of context usage |
|
||||
| percentage | `65%` | Context usage as a percentage |
|
||||
| input_tokens | `45.2k` | Total input tokens in conversation |
|
||||
| output_tokens | `12.3k` | Total output tokens in conversation |
|
||||
| curr_input_tokens | `5.1k` | Input tokens from most recent API call |
|
||||
| curr_output_tokens | `1.2k` | Output tokens from most recent API call |
|
||||
| curr_cache_creation_tokens | `1.5k` | Cache creation tokens from most recent API call |
|
||||
| curr_cache_read_tokens | `23.4k` | Cache read tokens from most recent API call |
|
||||
| total_tokens | `200k` | Total context window size |
|
||||
| symbole | | Reflète la valeur de l'option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\* : Cette variable ne peut être utilisée que comme partie d'un style
|
||||
|
||||
#### Exemples
|
||||
|
||||
**Minimal gauge-only display**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge]($style) "
|
||||
gauge_width = 10
|
||||
```
|
||||
|
||||
**Detailed token information**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$percentage ($input_tokens in / $output_tokens out)]($style) "
|
||||
```
|
||||
|
||||
**Custom gauge symbols**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
gauge_full_symbol = "▰"
|
||||
gauge_partial_symbol = ""
|
||||
gauge_empty_symbol = "▱"
|
||||
gauge_width = 10
|
||||
format = "[$gauge]($style) "
|
||||
```
|
||||
|
||||
**Custom thresholds**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 50
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 75
|
||||
style = "bold orange"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 90
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
### Claude Cost
|
||||
|
||||
The `claude_cost` module displays the total cost of the current Claude Code session in USD. Like `claude_context`, it supports threshold-based styling.
|
||||
|
||||
#### Options
|
||||
|
||||
| Option | Défaut | Description |
|
||||
| ---------- | ---------------------------------- | ----------------------------------- |
|
||||
| `format` | `'[$symbol(\\$$cost)]($style) '` | Format du module. |
|
||||
| `symbole` | `'💰 '` | The symbol shown before the cost. |
|
||||
| `display` | [voir plus bas](#display-1) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_cost` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define cost thresholds and styles. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Option | Défaut | Description |
|
||||
| ----------- | ------------ | ------------------------------------------------------------- |
|
||||
| `threshold` | `0.0` | The minimum cost in USD to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this configuration is matched. |
|
||||
|
||||
**Default configuration:**
|
||||
|
||||
```toml
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 1.0
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 5.0
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
| Variable | Exemple | Description |
|
||||
| ------------- | -------- | ----------------------------------------------------- |
|
||||
| cost | `1.23` | Total session cost in USD (formatted to 2 decimals) |
|
||||
| duration | `1m 30s` | Total session duration |
|
||||
| api_duration | `45s` | Total API call duration |
|
||||
| lines_added | `1.2k` | Total lines of code added |
|
||||
| lines_removed | `500` | Total lines of code removed |
|
||||
| symbole | | Reflète la valeur de l'option `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\* : Cette variable ne peut être utilisée que comme partie d'un style
|
||||
|
||||
#### Exemples
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Cost with code change statistics
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost (+$lines_added -$lines_removed)]($style) "
|
||||
|
||||
# Hide module until cost exceeds $0.10
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.10
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 2.0
|
||||
style = "bold red"
|
||||
|
||||
# Show duration information
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost ($duration)]($style) "
|
||||
```
|
||||
|
||||
## Chaînes de style
|
||||
|
||||
Les chaines de style sont une liste de mots séparés par des espaces. Les mots ne sont pas sensibles à la casse (`bold` et `boLd` sont considérés comme la même chaine). Les mots peuvent être :
|
||||
|
||||
+590
-292
File diff suppressed because it is too large
Load Diff
@@ -16,7 +16,7 @@ L'aide à la complétion ou autocomplétion est fournie par le shell que vous av
|
||||
|
||||
## Est-ce que l'option globale `format` et `<module>.disabled` font la même chose ?
|
||||
|
||||
Oui, ils peuvent tous deux être utilisés pour désactiver les modules dans l'invite de commande. Si tout ce que vous prévoyez de faire est de désactiver les modules, `<module>.disabled` est le meilleur moyen de le faire pour ces raisons :
|
||||
Oui, elles peuvent toutes deux être utilisées pour désactiver les modules dans l'invite de commande. Si tout ce que vous prévoyez de faire est de désactiver les modules, `<module>.disabled` est le meilleur moyen de le faire pour ces raisons :
|
||||
|
||||
- Désactiver les modules est plus explicite que de les omettre du `format global`
|
||||
- Les modules nouvellement créés seront ajoutés à l'invite de commande au fur et à mesure que Starship sera mis à jour
|
||||
@@ -38,7 +38,7 @@ NUM_JOBS=$(jobs -p | wc -l)
|
||||
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
|
||||
```
|
||||
|
||||
L' [implémentation Bash](https://github.com/starship/starship/blob/master/src/init/starship.bash) intégrée à Starship est légèrement plus complexe pour permettre des fonctionnalités avancées comme le [module de durée de commande](https://starship.rs/config/#command-duration) et pour s'assurer que Starship est compatible avec les configurations Bash pré-installées.
|
||||
L'[implémentation Bash](https://github.com/starship/starship/blob/master/src/init/starship.bash) intégrée à Starship est légèrement plus complexe pour permettre des fonctionnalités avancées comme le [module de durée de commande](https://starship.rs/config/#command-duration) et pour s'assurer que Starship est compatible avec les configurations Bash pré-installées.
|
||||
|
||||
Pour une liste de tous les flags acceptés par `starship prompt`, utilisez la commande suivante :
|
||||
|
||||
@@ -72,7 +72,7 @@ Vous pouvez activer les journaux de débogage en utilisant la variable d’envir
|
||||
env STARSHIP_LOG=trace starship module rust
|
||||
```
|
||||
|
||||
If starship is being slow you can try using the `timings` command to see if there is a particular module or command that is to blame.
|
||||
Si Starship est lent, vous pouvez utiliser la commande `timings` pour vérifier si un module ou une commande en particulier est à l'origine du ralentissement.
|
||||
|
||||
```sh
|
||||
env STARSHIP_LOG=trace starship timings
|
||||
@@ -121,10 +121,10 @@ Si Starship a été installé en utilisant le script d'installation, la commande
|
||||
sh -c 'rm "$(command -v 'starship')"'
|
||||
```
|
||||
|
||||
## How do I install Starship without `sudo`?
|
||||
## Comment installer Starship sans `sudo` ?
|
||||
|
||||
The shell install script (`https://starship.rs/install.sh`) only attempts to use `sudo` if the target installation directory is not writable by the current user. The default installation directory is the value of the `$BIN_DIR` environment variable or `/usr/local/bin` if `$BIN_DIR` is not set. If you instead set the installation directory to one that is writable by your user, you should be able to install starship without `sudo`. For example, `curl -sS https://starship.rs/install.sh | sh -s -- -b ~/.local/bin` uses the `-b` command line option of the install script to set the installation directory to `~/.local/bin`.
|
||||
Le script d'installation (`https://starship.rs/install.sh`) essaye d'utiliser `sudo` seulement si le répertoire d'installation ciblé n'est pas disponible en écriture pour l'utilisateur actuel. Le répertoire d'installation par défaut correspond à la variable d'environnement `$BIN_DIR`, ou `/usr/local/bin` si `$BIN_DIR` n'est pas définie. Si vous avez défini à la place un répertoire d'installation accessible en écriture par votre utilisateur, vous devriez pouvoir installer Starship sans `sudo`. Par exemple, la commande `curl -sS https://starship.rs/install.sh | sh -s -- -b ~/.local/bin` utilise l'option `-b` du script d'installation pour définir le répertoire d'installation vers `~/.local/bin`.
|
||||
|
||||
For a non-interactive installation of Starship, don't forget to add the `-y` option to skip the confirmation. Check the source of the installation script for a list of all supported installation options.
|
||||
Pour une installation non interactive de Starship, n'oubliez pas d'ajouter l'option `-y` pour passer l'étape de confirmation. Vérifiez le code source du script d'installation pour obtenir une liste de toutes les options d'installation supportées.
|
||||
|
||||
When using a package manager, see the documentation for your package manager about installing with or without `sudo`.
|
||||
Lorsque vous utilisez un gestionnaire de paquet, référez-vous à la documentation dudit gestionnaire pour l'installation avec ou sans `sudo`.
|
||||
|
||||
+13
-10
@@ -180,7 +180,7 @@
|
||||
|
||||
### Pré-requis
|
||||
|
||||
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (for example, try the [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)).
|
||||
- Une police d'écriture [Nerd Font](https://www.nerdfonts.com/) est installée et activée sur votre terminal (par exemple, essayez [FiraCode Nerd Font](https://www.nerdfonts.com/font-downloads)).
|
||||
|
||||
### Étape 1. Installer Starship
|
||||
|
||||
@@ -229,10 +229,13 @@ Vous pouvez aussi installer Starship en utilisant l’un de ces gestionnaires de
|
||||
| Alpine Linux 3.13+ | [Paquets Alpine Linux](https://pkgs.alpinelinux.org/packages?name=starship) | `apk add starship` |
|
||||
| Arch Linux | [Arch Linux Extra](https://archlinux.org/packages/extra/x86_64/starship) | `pacman -S starship` |
|
||||
| CentOS 7+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Debian 13+ | [Debian principal](https://sources.debian.org/src/starship/1.22.1-1/) | `apt install starship` |
|
||||
| Fedora 40+ | [Copr](https://copr.fedorainfracloud.org/coprs/atim/starship) | `dnf copr enable atim/starship` <br /> `dnf install starship` |
|
||||
| Gentoo | [Paquets Gentoo](https://packages.gentoo.org/packages/app-shells/starship) | `emerge app-shells/starship` |
|
||||
| Manjaro | | `pacman -S starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/starship/default.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| NixOS | [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/st/starship/package.nix) | `nix-env -iA nixpkgs.starship` |
|
||||
| openSUSE | [OSS](https://software.opensuse.org/package/starship) | `zypper in starship` |
|
||||
| Ubuntu 25.04+ | [Ubuntu Universe](https://packages.ubuntu.com/source/plucky/starship) | `apt install starship` |
|
||||
| Void Linux | [Paquets Void Linux](https://github.com/void-linux/void-packages/tree/master/srcpkgs/starship) | `xbps-install -S starship` |
|
||||
|
||||
</details>
|
||||
@@ -260,7 +263,7 @@ Vous pouvez aussi installer Starship en utilisant l’un de ces gestionnaires de
|
||||
<details>
|
||||
<summary>Windows</summary>
|
||||
|
||||
Install the latest version for your system with the MSI-installers from the [releases section](https://github.com/starship/starship/releases/latest).
|
||||
Installez la dernière version pour votre système à partir de l'installeur MSI de la [section publication](https://github.com/starship/starship/releases/latest).
|
||||
|
||||
Installez Starship en utilisant l’un de ces gestionnaires de paquets:
|
||||
|
||||
@@ -274,7 +277,7 @@ Installez Starship en utilisant l’un de ces gestionnaires de paquets:
|
||||
|
||||
</details>
|
||||
|
||||
### Étape 2. Set up your shell to use Starship
|
||||
### Étape 2. Configurez votre Shell pour utiliser Starship
|
||||
|
||||
Configurez votre shell pour initialiser starship. Sélectionnez le vôtre dans la liste ci-dessous:
|
||||
|
||||
@@ -303,13 +306,13 @@ load(io.popen('starship init cmd'):read("*a"))()
|
||||
<details>
|
||||
<summary>Elvish</summary>
|
||||
|
||||
Ajoutez ce qui suit à la fin de `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
eval (starship init elvish)
|
||||
```
|
||||
|
||||
Note: Seul Elvish v0.18+ est supporté
|
||||
Note: Seul Elvish v0.18+ est supporté. For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
</details>
|
||||
|
||||
@@ -338,14 +341,14 @@ eval $(starship init ion)
|
||||
<details>
|
||||
<summary>Nushell</summary>
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
Ajoutez la ligne suivante à la fin de votre configuration Nushell (trouvable en exécutant `$nu.config-path` dans Nushell) :
|
||||
|
||||
```sh
|
||||
mkdir ($nu.data-dir | path join "vendor/autoload")
|
||||
starship init nu | save -f ($nu.data-dir | path join "vendor/autoload/starship.nu")
|
||||
```
|
||||
|
||||
Note: Only Nushell v0.96+ is supported
|
||||
Note: Seul Nushell v0.96+ est supporté
|
||||
|
||||
</details>
|
||||
|
||||
@@ -405,7 +408,7 @@ Si vous cherchez à personnaliser davantage Starship :
|
||||
|
||||
## 🤝 Contribuer
|
||||
|
||||
Nous sommes toujours à la recherche de contributeurs de **tous niveaux de compétence**! Si vous cherchez à faciliter votre entrée dans le projet, essayez un [good first issue](https://github.com/starship/starship/labels/🌱%20good%20first%20issue).
|
||||
Nous sommes toujours à la recherche de contributeurs de **tous niveaux de compétence**! Si vous cherchez à faciliter votre entrée dans le projet, essayez un [good first issue](https://github.com/starship/starship/issues?q=state%3Aopen%20label%3A%22%F0%9F%8C%B1%20good%20first%20issue%22).
|
||||
|
||||
Si vous parlez couramment une langue autre que l'anglais, nous apprécions grandement toute aide pour traduire et mettre à jour notre documentation dans d'autres langues. Si vous souhaitez nous aider, les traductions se font sur le [Crowdin Starship](https://translate.starship.rs/).
|
||||
|
||||
@@ -425,7 +428,7 @@ Voyez ces travaux précédents qui ont contribué à inspirer la création de St
|
||||
|
||||
Soutenez ce projet en [devenant un collaborateur](https://github.com/sponsors/starship). Votre nom ou logo apparaîtra ici avec un lien vers votre site Web.
|
||||
|
||||
## 🔒 Code Signing Policy
|
||||
## 🔒 Politique de signature de code
|
||||
|
||||
Free code signing provided by [SignPath.io](https://signpath.io), certificate by [SignPath Foundation](https://signpath.org).
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Pour installer starship, vous devez faire deux choses:
|
||||
1. Installez le binaire **starship** sur votre ordinateur
|
||||
1. Dire à votre shell d'utiliser le binaire de starship comme invite en modifiant ses scripts d'initialisation
|
||||
|
||||
For most users, the instructions on [the main page](../guide/#🚀-installation) will work great. Cependant, pour certaines plateformes plus spécialisées, des instructions différentes sont nécessaires.
|
||||
Pour la plupart des utilisateurs, les instructions sur [la page principale](../guide/#🚀-installation) fonctionneront bien. Cependant, pour certaines plateformes plus spécialisées, des instructions différentes sont nécessaires.
|
||||
|
||||
Il y a tellement de plates-formes, qu'il aurait été déraisonnable de les faire apparaître dans le README principal, voici donc quelques instructions d'installation supplémentaires pour celles-ci, écrites par la communauté. La vôtre n'est pas là ? S'il vous plaît, ajoutez-la ici pour les suivants !
|
||||
|
||||
@@ -23,16 +23,10 @@ choco install starship
|
||||
|
||||
## [termux](https://termux.com)
|
||||
|
||||
### Pré-requis
|
||||
|
||||
```sh
|
||||
pkg install getconf
|
||||
```
|
||||
|
||||
### Installation
|
||||
|
||||
```sh
|
||||
curl -sS https://starship.rs/install.sh | sh -s -- --bin-dir /data/data/com.termux/files/usr/bin
|
||||
pkg install starship
|
||||
```
|
||||
|
||||
## [Funtoo Linux](https://www.funtoo.org/Welcome)
|
||||
|
||||
@@ -14,11 +14,7 @@ Ce préréglage change les symboles de chaque module pour utiliser les symboles
|
||||
|
||||
This preset changes the symbols for several modules so that no Nerd Font symbols are used anywhere in the prompt.
|
||||
|
||||
::: tip
|
||||
|
||||
This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
:::
|
||||
> [!TIP] This preset will become the default preset [in a future release of starship](https://github.com/starship/starship/pull/3544).
|
||||
|
||||
[Click to view No Nerd Font preset](./no-nerd-font)
|
||||
|
||||
@@ -75,3 +71,9 @@ This preset is heavily inspired by [Pastel Powerline](./pastel-powerline.md), an
|
||||
This is a pseudo minimalist preset inspired by the [geometry](https://github.com/geometry-zsh/geometry) and [spaceship](https://github.com/spaceship-prompt/spaceship-prompt) prompts.
|
||||
|
||||
[](./jetpack)
|
||||
|
||||
## [Catppuccin Powerline](./catppuccin-powerline.md)
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||
[](./catppuccin-powerline)
|
||||
|
||||
@@ -12,6 +12,6 @@ Ce préréglage modifie le format de tous les modules intégrés pour afficher l
|
||||
starship preset bracketed-segments -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/bracketed-segments.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/bracketed-segments.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/bracketed-segments.toml
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
[Return to Presets](./#catppuccin-powerline)
|
||||
|
||||
# Catppuccin Powerline Preset
|
||||
|
||||
This preset is a minimally modified version of [Gruvbox Rainbow](./gruvbox-rainbow.md) using the [Catppuccin](https://github.com/catppuccin/catppuccin) theme palette.
|
||||
|
||||

|
||||
|
||||
### Pré-requis
|
||||
|
||||
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal
|
||||
|
||||
### Configuration
|
||||
|
||||
```sh
|
||||
starship preset catppuccin-powerline -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
By default this preset uses the Mocha flavour of Catppucin, but you can specify any of the flavours by modifying the value of `palette`:
|
||||
|
||||
- `catppuccin_mocha`
|
||||
- `catppuccin_frappe`
|
||||
- `catppuccin_macchiato`
|
||||
- `catppuccin_latte`
|
||||
|
||||
[Click to download TOML](/presets/toml/catppuccin-powerline.toml)
|
||||
|
||||
<<< @/public/presets/toml/catppuccin-powerline.toml
|
||||
@@ -16,6 +16,6 @@ This preset is heavily inspired by [Pastel Powerline](./pastel-powerline.md), an
|
||||
starship preset gruvbox-rainbow -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/gruvbox-rainbow.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/gruvbox-rainbow.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/gruvbox-rainbow.toml
|
||||
|
||||
@@ -19,6 +19,6 @@ This is a pseudo minimalist preset inspired by the [geometry](https://github.com
|
||||
starship preset jetpack -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/jetpack.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/jetpack.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/jetpack.toml
|
||||
|
||||
@@ -16,6 +16,6 @@ Ce préréglage change les symboles de chaque module pour utiliser les symboles
|
||||
starship preset nerd-font-symbols -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/nerd-font-symbols.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/nerd-font-symbols.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/nerd-font-symbols.toml
|
||||
|
||||
@@ -12,6 +12,6 @@ If toolset files are identified the toolset icon is displayed. If the toolset is
|
||||
starship preset no-empty-icons -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/no-empty-icons.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/no-empty-icons.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/no-empty-icons.toml
|
||||
|
||||
@@ -14,6 +14,6 @@ This preset will become the default preset in a future release of starship.
|
||||
starship preset no-nerd-font -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/no-nerd-font.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/no-nerd-font.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/no-nerd-font.toml
|
||||
|
||||
@@ -12,6 +12,6 @@ Ce préréglage masque la version des environnements. Si vous travaillez dans de
|
||||
starship preset no-runtime-versions -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/no-runtime-versions.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/no-runtime-versions.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/no-runtime-versions.toml
|
||||
|
||||
@@ -16,6 +16,6 @@ Ce préréglage s'inspire de [M365Princess](https://github.com/JanDeDobbeleer/oh
|
||||
starship preset pastel-powerline -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/pastel-powerline.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/pastel-powerline.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/pastel-powerline.toml
|
||||
|
||||
@@ -12,6 +12,6 @@ Ce préréglage change les symboles de chaque module en texte brut. Idéal si vo
|
||||
starship preset plain-text-symbols -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/plain-text-symbols.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/plain-text-symbols.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/plain-text-symbols.toml
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[Retourner aux préréglages](./#pure)
|
||||
[Retourner aux préréglages](./#pure-prompt)
|
||||
|
||||
# Préréglage Pure
|
||||
|
||||
@@ -12,6 +12,6 @@ Ce préréglage émule l'apparence et le comportement de [Pure](https://github.c
|
||||
starship preset pure-preset -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/pure-preset.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/pure-preset.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/pure-preset.toml
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[Retourner aux préréglages](./#pastel-powerline)
|
||||
[Retourner aux préréglages](./#tokyo-night)
|
||||
|
||||
# Tokyo Night Preset
|
||||
|
||||
@@ -16,6 +16,6 @@ This preset is inspired by [tokyo-night-vscode-theme](https://github.com/enkia/t
|
||||
starship preset tokyo-night -o ~/.config/starship.toml
|
||||
```
|
||||
|
||||
[Click to download TOML](/presets/toml/tokyo-night.toml){download}
|
||||
[Cliquez pour télécharger TOML](/presets/toml/tokyo-night.toml){download}
|
||||
|
||||
<<< @/public/presets/toml/tokyo-night.toml
|
||||
|
||||
+5
-12
@@ -114,7 +114,7 @@ onMounted(() => {
|
||||
```
|
||||
|
||||
|
||||
#### Powershell
|
||||
#### PowerShell
|
||||
|
||||
Tambahkan skrip berikut pada baris akhir `Microsoft.PowerShell_profile.ps1`. Kamu dapat mengecek lokasi file tersebut dengan mencari tahu keberadaan variabel `$PROFILE` di dalam PowerShell. Biasanya, lokasi file tersebut berada di `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` atau `~/.config/powershell/Microsoft.PowerShell_profile.ps1` pada -Nix.
|
||||
|
||||
@@ -136,19 +136,16 @@ onMounted(() => {
|
||||
|
||||
#### Elvish
|
||||
|
||||
::: warning
|
||||
> [!WARNING] Only elvish v0.18 or higher is supported.
|
||||
|
||||
Hanya elvish v0.18 atau versi yang lebih baru yang mendapat dukungan pengembangan.
|
||||
|
||||
:::
|
||||
|
||||
Tambahkan skrip berikut pada baris akhir `~/.elvish/rc.elv`:
|
||||
Add the following to the end of `~/.config/elvish/rc.elv` (`%AppData%\elvish\rc.elv` on Windows):
|
||||
|
||||
```sh
|
||||
# ~/.elvish/rc.elv
|
||||
|
||||
eval (starship init elvish)
|
||||
```
|
||||
For elvish versions prior to v0.21.0 the config file might instead be `~/.elvish/rc.elv`
|
||||
|
||||
|
||||
#### Tcsh
|
||||
@@ -164,11 +161,7 @@ onMounted(() => {
|
||||
|
||||
#### Nushell
|
||||
|
||||
::: warning
|
||||
|
||||
Hal ini dapat berubah di kemudian hari. Only Nushell v0.96+ is supported.
|
||||
|
||||
:::
|
||||
> [!WARNING] This will change in the future. Hanya Nushell v0.96+ yang menerima dukungan.
|
||||
|
||||
Add the following to the end of your Nushell configuration (find it by running `$nu.config-path` in Nushell):
|
||||
|
||||
|
||||
@@ -2,11 +2,7 @@
|
||||
|
||||
Walaupun Starship adalah shell yang serbaguna, terkadang kita butuh upaya lebih dari sekadar mengedit `starship.toml` untuk membuatnya menjalankan beberapa hal tertentu. Halaman ini merincikan beberapa teknik konfigurasi lanjutan yang digunakan starship.
|
||||
|
||||
::: warning
|
||||
|
||||
Konfigurasi pada bagian ini dapat berubah saat Starship terbaru rilis di kemudian hari nanti.
|
||||
|
||||
:::
|
||||
> [!WARNING] The configurations in this section are subject to change in future releases of Starship.
|
||||
|
||||
## TransientPrompt in PowerShell
|
||||
|
||||
@@ -270,6 +266,316 @@ Catatan: Continuation prompts hanya tersedia pada beberapa shells berikut:
|
||||
continuation_prompt = '▶▶ '
|
||||
```
|
||||
|
||||
## Statusline for Claude Code
|
||||
|
||||
Starship supports displaying a custom statusline when running inside Claude Code, Anthropic's CLI tool for interactive coding with Claude. This statusline provides real-time information about your Claude session, including the model being used, context window usage, and session costs.
|
||||
|
||||
For more information about the Claude Code statusline feature, see the [Claude Code statusline documentation](https://code.claude.com/docs/en/statusline).
|
||||
|
||||
### Setup
|
||||
|
||||
To use Starship as your Claude Code statusline:
|
||||
|
||||
1. Run `/statusline` in Claude Code and ask it to configure Starship, or manually add the following to your `.claude/settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"statusLine": {
|
||||
"type": "command",
|
||||
"command": "starship statusline claude-code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
2. Customize the statusline appearance in your `~/.config/starship.toml` (see [Configuration](#configuration) below)
|
||||
|
||||
### Overview
|
||||
|
||||
When invoked with `starship statusline claude-code`, Starship receives Claude Code session data via stdin and renders a statusline using a dedicated profile named `claude-code`.
|
||||
|
||||
The profile includes three specialized modules:
|
||||
|
||||
- `claude_model`: Displays the current Claude model being used
|
||||
- `claude_context`: Shows context window usage with a visual gauge
|
||||
- `claude_cost`: Displays session cost and statistics
|
||||
|
||||
The default profile format is:
|
||||
|
||||
```toml
|
||||
[profiles]
|
||||
claude-code = "$claude_model$git_branch$claude_context$claude_cost"
|
||||
```
|
||||
|
||||
### Konfigurasi
|
||||
|
||||
You can customize the Claude Code statusline by modifying the `claude-code` profile and individual module configurations in your `~/.config/starship.toml`:
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Customize the claude-code profile
|
||||
[profiles]
|
||||
claude-code = "$claude_model$claude_context$claude_cost"
|
||||
|
||||
# Configure individual modules
|
||||
[claude_model]
|
||||
format = "[$symbol$model]($style) "
|
||||
symbol = "🤖 "
|
||||
style = "bold blue"
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge $percentage]($style) "
|
||||
gauge_width = 10
|
||||
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost]($style) "
|
||||
symbol = "💰 "
|
||||
```
|
||||
|
||||
### Claude Model
|
||||
|
||||
The `claude_model` module displays the current Claude model being used in the session.
|
||||
|
||||
#### Opsi
|
||||
|
||||
| Opsi | Bawaan | Deskripsi |
|
||||
| --------------- | ---------------------------- | ----------------------------------------------------------------------------------------- |
|
||||
| `fromat` | `'[$symbol$model]($style) '` | Format dari modul. |
|
||||
| `symbol` | `'🤖 '` | The symbol shown before the model name. |
|
||||
| `style` | `'bold blue'` | Gaya penataan untuk modul. |
|
||||
| `model_aliases` | `{}` | Map of model IDs or display names to shorter aliases. Checks ID first, then display name. |
|
||||
| `disabled` | `false` | Disables the `claude_model` module. |
|
||||
|
||||
#### Variabel
|
||||
|
||||
| Variabel | Contoh | Deskripsi |
|
||||
| --------- | ------------------- | ------------------------------------- |
|
||||
| model | `Claude 3.5 Sonnet` | The display name of the current model |
|
||||
| model_id | `claude-3-5-sonnet` | The model ID |
|
||||
| symbol | | Menyalin nilai dari opsi `symbol` |
|
||||
| style\* | | Menyalin nilai dari opsi `style` |
|
||||
|
||||
\*: Variabel tersebut hanya dapat digunakan sebagai bagian dari penataan string
|
||||
|
||||
#### Contoh
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Basic customization
|
||||
[claude_model]
|
||||
format = "on [$symbol$model]($style) "
|
||||
symbol = "🧠 "
|
||||
style = "bold cyan"
|
||||
|
||||
# Using model aliases for vendor-specific model names
|
||||
# You can alias by model ID or display name
|
||||
[claude_model.model_aliases]
|
||||
# Alias by vendor model ID (e.g. AWS Bedrock)
|
||||
"global.anthropic.claude-sonnet-4-5-20250929-v1:0" = "Sonnet 4.5"
|
||||
# Alias by display name
|
||||
"Claude Sonnet 4.5 (Vendor Proxy)" = "Sonnet"
|
||||
```
|
||||
|
||||
### Claude Context
|
||||
|
||||
The `claude_context` module displays context window usage as a percentage and visual gauge. The style automatically changes based on configurable thresholds.
|
||||
|
||||
#### Opsi
|
||||
|
||||
| Opsi | Bawaan | Deskripsi |
|
||||
| ---------------------- | --------------------------------- | -------------------------------------------------- |
|
||||
| `fromat` | `'[$gauge $percentage]($style) '` | Format dari modul. |
|
||||
| `symbol` | `''` | The symbol shown before the gauge. |
|
||||
| `gauge_width` | `5` | The width of the gauge in characters. |
|
||||
| `gauge_full_symbol` | `'█'` | The symbol used for filled segments of the gauge. |
|
||||
| `gauge_partial_symbol` | `'▒'` | The symbol used for partial segments of the gauge. |
|
||||
| `gauge_empty_symbol` | `'░'` | The symbol used for empty segments of the gauge. |
|
||||
| `display` | [see below](#display) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_context` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define thresholds and styles for different usage levels. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Opsi | Bawaan | Deskripsi |
|
||||
| ----------- | ------------ | ------------------------------------------------------------------------ |
|
||||
| `threshold` | `0.0` | The minimum context windows usage percentage to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this the configuration is matched. |
|
||||
|
||||
```toml
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
hidden = true
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 30
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 60
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 80
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variabel
|
||||
|
||||
| Variabel | Contoh | Deskripsi |
|
||||
| ---------------------------- | ------- | ----------------------------------------------------- |
|
||||
| gauge | `██▒░░` | Visual representation of context usage |
|
||||
| percentage | `65%` | Context usage as a percentage |
|
||||
| input_tokens | `45.2k` | Total input tokens in conversation |
|
||||
| output_tokens | `12.3k` | Total output tokens in conversation |
|
||||
| curr_input_tokens | `5.1k` | Input tokens from most recent API call |
|
||||
| curr_output_tokens | `1.2k` | Output tokens from most recent API call |
|
||||
| curr_cache_creation_tokens | `1.5k` | Cache creation tokens from most recent API call |
|
||||
| curr_cache_read_tokens | `23.4k` | Cache read tokens from most recent API call |
|
||||
| total_tokens | `200k` | Total context window size |
|
||||
| symbol | | Menyalin nilai dari opsi `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: Variabel tersebut hanya dapat digunakan sebagai bagian dari penataan string
|
||||
|
||||
#### Contoh
|
||||
|
||||
**Minimal gauge-only display**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$gauge]($style) "
|
||||
gauge_width = 10
|
||||
```
|
||||
|
||||
**Detailed token information**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
format = "[$percentage ($input_tokens in / $output_tokens out)]($style) "
|
||||
```
|
||||
|
||||
**Custom gauge symbols**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[claude_context]
|
||||
gauge_full_symbol = "▰"
|
||||
gauge_partial_symbol = ""
|
||||
gauge_empty_symbol = "▱"
|
||||
gauge_width = 10
|
||||
format = "[$gauge]($style) "
|
||||
```
|
||||
|
||||
**Custom thresholds**
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 0
|
||||
style = "bold green"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 50
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 75
|
||||
style = "bold orange"
|
||||
|
||||
[[claude_context.display]]
|
||||
threshold = 90
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
### Claude Cost
|
||||
|
||||
The `claude_cost` module displays the total cost of the current Claude Code session in USD. Like `claude_context`, it supports threshold-based styling.
|
||||
|
||||
#### Opsi
|
||||
|
||||
| Opsi | Bawaan | Deskripsi |
|
||||
| ---------- | ---------------------------------- | ----------------------------------- |
|
||||
| `fromat` | `'[$symbol(\\$$cost)]($style) '` | Format dari modul. |
|
||||
| `symbol` | `'💰 '` | The symbol shown before the cost. |
|
||||
| `display` | [see below](#display-1) | Threshold and style configurations. |
|
||||
| `disabled` | `false` | Disables the `claude_cost` module. |
|
||||
|
||||
##### Display
|
||||
|
||||
The `display` option is an array of objects that define cost thresholds and styles. The module uses the style from the highest matching threshold or hides the module if `hidden` is `true`.
|
||||
|
||||
| Opsi | Bawaan | Deskripsi |
|
||||
| ----------- | ------------ | ------------------------------------------------------------- |
|
||||
| `threshold` | `0.0` | The minimum cost in USD to match this configuration |
|
||||
| `style` | `bold green` | The value of `style` if this display configuration is matched |
|
||||
| `hidden` | `false` | Hide this module if this configuration is matched. |
|
||||
|
||||
**Default configuration:**
|
||||
|
||||
```toml
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 1.0
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 5.0
|
||||
style = "bold red"
|
||||
```
|
||||
|
||||
#### Variabel
|
||||
|
||||
| Variabel | Contoh | Deskripsi |
|
||||
| ------------- | -------- | ----------------------------------------------------- |
|
||||
| cost | `1.23` | Total session cost in USD (formatted to 2 decimals) |
|
||||
| duration | `1m 30s` | Total session duration |
|
||||
| api_duration | `45s` | Total API call duration |
|
||||
| lines_added | `1.2k` | Total lines of code added |
|
||||
| lines_removed | `500` | Total lines of code removed |
|
||||
| symbol | | Menyalin nilai dari opsi `symbol` |
|
||||
| style\* | | Mirrors the style from the matching display threshold |
|
||||
|
||||
\*: Variabel tersebut hanya dapat digunakan sebagai bagian dari penataan string
|
||||
|
||||
#### Contoh
|
||||
|
||||
```toml
|
||||
# ~/.config/starship.toml
|
||||
|
||||
# Cost with code change statistics
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost (+$lines_added -$lines_removed)]($style) "
|
||||
|
||||
# Hide module until cost exceeds $0.10
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.0
|
||||
hidden = true
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 0.10
|
||||
style = "bold yellow"
|
||||
|
||||
[[claude_cost.display]]
|
||||
threshold = 2.0
|
||||
style = "bold red"
|
||||
|
||||
# Show duration information
|
||||
[claude_cost]
|
||||
format = "[$symbol$cost ($duration)]($style) "
|
||||
```
|
||||
|
||||
## Penataan String
|
||||
|
||||
Penataan string adalah kumpulan kata-kata, yang dipisahkan oleh ruang kosong. Kumpulannya tidak bersifat case sensitive (mis. `tebal` dan `TeBaL` dianggap sebagai string yang sama). Tiap-tiap kata berikut adalah opsinya:
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user