在Shell中使用p10k(Oh My Zsh主题),保持Git分支名称不被截断

28

我正在使用Mac(Catalina)、iTerm2、Oh My Zsh(https://ohmyz.sh/)和p10k zsh主题(https://github.com/romkatv/powerlevel10k)。

目前,我的git分支在iTerm2中显示为缩略名称(例如),而不是未被截断的分支名称,例如:
davidb/my-kewl-feature-branch

如何关闭git分支名称截断? 我想要未被截断的git分支名称。

根据https://github.com/romkatv/powerlevel10k/issues/193,我不确定如何在我的~/.p10k.zs文件中使用下面的代码来关闭git分支名称截断。 我已经尝试了许多组合,包括谷歌搜索,但都没有奏效。

POWERLEVEL9K_VCS_SHORTEN_MIN_LENGTH=32
POWERLEVEL9K_VCS_SHORTEN_LENGTH=12
POWERLEVEL9K_VCS_SHORTEN_STRATEGY=truncate_middle
3个回答

64

截至2022年7月,需要删除的行是400

(( $#branch > 32 )) && branch[13,-13]="…"  # <-- this line

2
截至2022年6月,要删除的代码行是393。 - Jarek Jakubowski
1
截至2022年7月,要删除的行数为400。 - Rohit Mahto
截至2022年8月,要删除的行是393。具体来说,git提交ID为f9fd384d8d64022e24c83bb03ba69e415c7fa90e,对应于2022年7月31日的更改。 - Parmandeep Chaddha
2
对于那些正在寻找的人,你需要查找的文件是 ~/.pk10.zsh,它可能位于 {user}/.pk10.zsh 下面。 - Nevin Madhukar K
2
对于那些寻找捷径的人,只需在终端中键入“open ~/.pk10.zsh”即可。这将打开默认编辑器。 - Muhammad Ali Rashed
显示剩余3条评论

37

我从 p10k zsh 主题 (https://github.com/romkatv/powerlevel10k) 的创建者 Roman 在 Gitter 上得到了答案: https://gitter.im/powerlevel10k/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge

~/.pk10.zsh~/.p10k.zsh 中删除或注释掉第375行,如在此 Github 仓库文件中所示: https://github.com/romkatv/powerlevel10k/blob/459af1f2382ff53214bf9e4fc598b4e36fb8f8df/config/p10k-lean.zsh#L374

在上面链接的仓库中需要注释或删除的行

(( $#where > 32 )) && where[13,-13]="…"

谢谢Roman!


1
如果在配置过程中有这个选项就太好了。 - undefined

4

对于那些找不到配置文件的人,该文件位于您的主目录中,因此执行cd ~/.p10k.zshvim ~/.p10k.zsh以直接编辑该文件。 该文件包含有关每行代码的所有信息,因此您只需阅读注释即可找到以下内容:

  396     if [[ -n $VCS_STATUS_LOCAL_BRANCH ]]; then
  397       local branch=${(V)VCS_STATUS_LOCAL_BRANCH}
  398       # If local branch name is at most 32 characters long, show it in full.
  399       # Otherwise show the first 12 … the last 12.
  400       # Tip: To always show local branch name in full without truncation, delete the next line.
  401       (( $#branch > 32 )) && branch[13,-13]="…"  # <-- this line
  402       res+="${clean}${(g::)POWERLEVEL9K_VCS_BRANCH_ICON}${branch//\%/%%}"
  403     fi

正如您所看到的,它指出应删除哪一行以避免在git分支名称中添加省略号,在当前版本中为第401行。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接