另一个bash/zsh自定义提示脚本
项目描述
jwodder-ps1 是另一个用于在 Bash 和 zsh 中自定义 Git-感知命令提示符的程序。与所有其他程序不同,我写了这个,所以它更好。
功能
让您知道您是否在 $MAIL 中有邮件
显示 chroot、virtualenv 和 Conda 环境提示前缀
如果当前目录路径过长,自动截断它
显示当前 Git 仓库的状态(见下文)
支持 Bash 和 zsh
可选地仅输出 Git 状态,如果您想将其与自己的提示字符串结合使用
安装 & 设置
jwodder-ps1 需要 Python 3.9 或更高版本。您还需要一个 Bash 或 zsh shell 来设置程序,并且需要安装 git v1.7.10+ 来获取 Git 仓库的状态信息。
使用 pip 或类似工具安装 jwodder-ps1 命令,建议使用 pipx 安装来自 PyPI 的同名包。
如果您使用 Bash,请将其配置为使用 jwodder-ps1 作为提示符,在您的 ~/.bashrc 文件的末尾添加以下行
PROMPT_COMMAND="$PROMPT_COMMAND"'; PS1="$(jwodder-ps1 "${PS1_GIT:-}")"'
如果您使用 zsh,请在您的 ~/.zshrc 文件的末尾添加以下内容
precmd_jwodder_ps1() { PS1="$(jwodder-ps1 --zsh "${PS1_GIT:-}")" }
precmd_functions+=( precmd_jwodder_ps1 )
如果您只想使用脚本的 Git 状态部分并将其与您的提示符字符串结合,请将 PS1 赋值替换为您想要的提示符,在您想要 Git 状态字符串的地方插入 $(jwodder-ps1 --git-only "${PS1_GIT:-}")。
根据 jwodder-ps1 的安装方式和您的 PATH 值,您可能需要使用 jwodder-ps1 可执行文件的完整路径。
配置 jwodder-ps1 后,打开一个新的 shell 并享受它!
如果 Git 集成导致您遇到麻烦(无论是由于某些东西损坏还是因为它运行得太慢),可以通过在命令行上运行 PS1_GIT=off 来暂时禁用它。
用法
jwodder-ps1 [<options>] [<git flag>]
jwodder-ps1 命令输出一行包含当前目录的样式提示字符串。默认情况下,样式化格式适用于 Bash 的 PS1 变量,但可以使用 --ansi 和 --zsh 选项来更改格式。
jwodder-ps1 只接受一个可选参数。如果此参数为“off”,则禁用 Git 集成。如果为其他值或未指定,则启用 Git 集成。
选项
- --ansi
直接显示输出格式
- --bash
格式化输出以在 Bash 的 PS1 中使用(默认)
- -G, --git-only
仅输出 Git 状态字符串(包括前导分隔符);如果没有在 Git 仓库中或命令行上给出“off”,则输出空行
- --git-timeout SECONDS
如果运行 git status 花费的时间超过指定的秒数(默认:3),则禁用 Git 集成
- --no-hostname
不在提示符字符串中包含本地主机名
- -T THEME, --theme THEME
选择用于着色提示元素的主题。可用的主题有 dark(默认,用于与浅色背景上的深色文本一起使用)和 light(用于与浅色背景上的深色文本一起使用)。
- --zsh
格式化输出以在 zsh 的 PS1 中使用
- -V, --version
显示版本信息并退出
- -h, --help
显示用法信息并退出
Git 状态符号
当在 Git 仓库内时,在提示符的末尾添加了一些符号,以显示当前 HEAD 和其状态。除了 @ 分隔符和 HEAD 本身外,当不相关时,将省略单个符号。从左到右,符号依次为
@ — 分隔符
+ (加粗浅黄色) — 表示存在已隐藏的更改
HEAD 名称(浅绿色):当前分支的名称(如果有),或当前签出的标签的名称(如果有),或当前提交哈希的短形式。当仓库处于分离的 HEAD 状态时,此名称为浅蓝色。
如果字符串过长,则会被截断。
+n(绿色)— HEAD 相对于上游领先多少个提交
-n(红色)— HEAD 相对于上游落后多少个提交
* — 表示工作树中是否有已暂存或未暂存的更改
绿色:存在已暂存更改
红色:存在未暂存更改
加粗浅黄色:既存在已暂存又存在未暂存更改
+(加粗红色)— 表示工作树中存在未跟踪文件
[STATE](洋红色)— 如果有任何活动,显示 Git 当前正在进行的活动
[BSECT] — 二分查找
[CHYPK] — cherry-pick
[MERGE] — 合并
[REBAS] — 变基
[REVRT] — 反转
!(加粗红色)— 表示存在合并冲突的路径
项目详情
下载文件
下载适合您平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分发
构建分发
jwodder_ps1-0.7.2.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3f95ccb40f08eb1a291668b0bd14b37a88ae0ebb4a481007f49ee1bbec142659 |
|
MD5 | 6f35e6fcd8e8fdfb3e5e7f2c726ad8c8 |
|
BLAKE2b-256 | 00cfa6261801878bec2edf9a649924149f1912fcc8f048adcd3693e9b91bc4da |
jwodder_ps1-0.7.2-py3-none-any.whl 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 16131912afb63e2c3154f4cd0ace46e6ce3a2b3154ad92df02029c577be39c0c |
|
MD5 | 3a6a567a237077805ae76c04fce86efb |
|
BLAKE2b-256 | d07b49eb5d97087f31c0e02b11d824996bd75c878b045e9ab79957c329fea9f9 |