远程服务器上 oh my zsh (powerlevel10k) 如何隐藏主机名?

3 天前
MasterCai  MasterCai

如题,服务器 hostname 非常长,想在 oh my zsh 的显示中隐藏掉但是还想显示出用户名称。试了命令

prompt_context() {
prompt_segment black default "%(!.%{%F{yellow}%}.)%n"
}

会一直报错: prompt_context:1: command not found: prompt_segment 查了一下也没有什么有效的解决方法,大家有没有遇到过类似的问题以及如何解决的?

1230 次点击
所在节点   程序员  程序员
13 条回复
f1ush
f1ush
3 天前
换个主题?
MasterCai
MasterCai
3 天前
@f1ush 用习惯了就不换主题了,目前把 username 和 hostname 全屏蔽了可以凑合用
augus
augus
3 天前
编辑现在用的主题?删掉不需要的。
JasonEWNL
JasonEWNL
3 天前
1. 找到本地的配置文件(比如 classic 风格就是 p10k-classic.zsh ,具体文件夹按照官方安装一般在 ~/.oh-my-zsh/custom/themes/powerlevel10k );
2. 定位到有 %n@%m 这样的部分(参考线上比如 https://github.com/romkatv/powerlevel10k/blob/master/config/p10k-classic.zsh#L935 );
3. 改成 %n 后重开终端则只显示用户名(%n 指代用户名,%m 指代主机名)。
MasterCai
MasterCai
3 天前
@JasonEWNL
感谢大佬,我在`~/.oh-my-zsh/custom/themes/powerlevel10k/config/p10k-classic.zsh`路径找到了配置文件,修改了 [L931-L935]( https://github.com/romkatv/powerlevel10k/blob/8fa10f43a0f65a5e15417128be63e68e1d5b1f66/config/p10k-classic.zsh#L931C1-L935C51)
所有的`%n@%m` 为 `%n`
然后退出 ssh 后重新登录,包括重新 source 都不生效,您能再给点排查建议嘛
xxb
xxb
3 天前
~/.zshrc :
# 设置自定义的 PROMPT,如
PROMPT='%n %~ %(!.#.$) '
MasterCai
MasterCai
3 天前
@xxb Thanks 但并没有 work..
JasonEWNL
JasonEWNL
3 天前
若是改具体风格的不行,直接修改 ~/.p10k.zsh (内容与之前一致)也行,改完 source ~/.p10k.zsh 生效。
xxb
xxb
3 天前
@MasterCai #7 ,有没有放到文件最后面并且 source 或重新登录?放在前面有可能会被覆盖
MasterCai
MasterCai
3 天前
@JasonEWNL #8 牛,解决了,还是 V 站人才多
MasterCai
MasterCai
3 天前
@xxb #9 有,但是还是没效果,最后还是修改 p10k.zsh 有效
zhj9709
zhj9709
2 天前
# PS1
export PS1='%(?:%{$fg_bold[green]%}%n@%m:%{$fg_bold[red]%}%n@%m) %{$fg[cyan]%}%c%{$reset_color%} $(git_prompt_info)'
这是我用的 PS1 ,里面的%m 就是主机名,自己换掉就行了
zhj9709
zhj9709
2 天前
刚搜了一下 powerlevel10k 跟我想的不一样

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1119780

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX