Starship:5分钟搭好你的终端提示符
【免费下载链接】starship☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!项目地址: https://gitcode.com/GitHub_Trending/st/starship
每天敲命令,提示符却只有一行灰字,看不出在哪个目录、用的什么版本。Starship 是一款用 Rust 写的跨 Shell 提示符工具,它会自动显示当前路径、Git 状态、语言运行时版本等信息,启动快、可定制。这篇教程带你从安装到完成第一份配置,全程不超过 5 分钟。
先跑起来:一条命令装好
Starship 的分发很简单:装一个二进制,再让 Shell 初始化它。
根据你的系统,三选一安装:
# macOS(Homebrew) brew install starship # Ubuntu / Debian sudo apt install starship # Windows(winget) winget install --id Starship.Starship第二步,告诉 Shell 用 Starship 画提示符。以 Bash 为例,把这行加到~/.bashrc末尾(Zsh 改~/.zshrc,PowerShell 把bash换成pwsh):
eval "$(starship init bash)"然后执行source ~/.bashrc,或重开一个终端窗口。执行后终端会立刻显示一条新的提示符:当前目录、Git 分支名(如果在仓库里)、Node 或 Python 版本号(如果项目里有对应文件),末尾还有一个绿色箭头。到这里,默认配置已经能用了。
核心能力:三个最实用的点
自动检测项目语言,版本直接显示在提示符上
它是什么:Starship 会根据当前目录里的文件(如package.json、pyproject.toml)判断你在用哪种语言,并自动跑一遍node -v之类的命令拿到版本。你能得到什么:进哪个项目,版本就显示在眼前,不用再手动查。怎么开启:默认开启,什么都不用配。进一个 Node 项目,提示符上就会出现 Node 图标和版本号。
Git 状态实时可见
它是什么:git_branch、git_status、git_state三个模块分别显示分支名、改动文件数、以及 rebase/merge 进行中等状态。你能得到什么:git status打出来的信息,平时就挂在提示符上;分支名超长会自动截断。怎么开启:只要当前目录是 Git 仓库,默认就会显示。
一套配置通吃所有 Shell
它是什么:Starship 的配置文件是 TOML 格式,各 Shell 共用同一份,由starship init <shell>负责翻译给对应 Shell。你能得到什么:Bash、Zsh、Fish、PowerShell 之间切换,提示符长得一模一样,不用维护多套 PS1。怎么开启:默认就是,每个 Shell 里各自加一行 init 命令即可。
配置入门:一份能直接抄的示例
配置文件放在~/.config/starship.toml(Windows 在用户目录下的.config\starship.toml),不存在就新建。下面这份 13 行的配置,覆盖了新手最常改的几处:
add_newline = false # 提示符前不额外加空行 command_timeout = 1000 # 每个模块查询超时(毫秒),防止卡住 [character] # 行尾箭头:成功绿、失败红 success_symbol = "➜" error_symbol = "➜" [git_branch] format = "on $symbol$branch" # 分支模块显示成 on * main [directory] truncation_length = 3 # 路径只保留最后 3 级保存后重开终端生效。几个规则记住就够:$xxx是变量占位符,(bold green)是样式,任何模块都可以整块禁用:
[battery] disabled = true想改更多字段,去 官方配置文档 按模块查,不必现在穷举。
常见坑:三个新手高频问题
现象:图标位置显示成方框或乱码。原因:默认符号用的是 Nerd Font 图标,你的终端字体不支持。 解决:给终端装一款 Nerd Font(如 FiraCode Nerd Font)并选为默认字体;或者直接用仓库里的 no-nerd-font 预设,把符号全部换成普通文本。
现象:提示符前面多出一行空行。原因:Shell 自带换行,Starship 的add_newline又加了一条。 解决:在配置里设add_newline = false(上面示例里已包含)。
现象:装好了,提示符却没变化。原因:init 命令没加进 Shell 配置,或加完后没重新加载。 解决:确认~/.bashrc末尾有eval "$(starship init bash)",然后执行source ~/.bashrc;还不行就检查starship命令本身能否执行(starship --version)。
进阶与生态
配置跑通之后,下一步通常是换皮肤。仓库内置了一批社区预设主题,每个都有现成的.toml,照着填就行:Tokyo Night 走深色低饱和路线,长时间写代码不刺眼;Gruvbox Rainbow 则是复古彩虹配色,辨识度极高。
预设清单和每份配置的完整内容都在 预设文档 里。再往深了走,[custom.xxx]模块允许你挂任意自定义命令的输出进提示符,比如显示 AWS profile 或 k8s 集群;完整文档 按模块整理了所有字段,建议收藏备用。
收尾一句:如果你受够了灰色一行字,想要一条安装完就不用再折腾的提示符,Starship 值得今天就装上试试。
【免费下载链接】starship☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!项目地址: https://gitcode.com/GitHub_Trending/st/starship
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考