主要问题
我想在所选完成的开头和结尾添加电力线字符,如下所示:
- Started the completion menu通过插入
c
并按TAB
键。 - Moved right in the completion menu按向右箭头键。
- Moved down in the completion menu按向下箭头键。
有没有办法让 zsh 看起来/像图片中那样?
注意事项
在创建列时应以某种方式在开头添加电力线三角形 + 空白字符,在末尾添加空白字符 + 电力线三角形以保持对齐正确。
奖金
在列表中每个补全的开头添加 2 个空格,这样当补全被选中时,文本看起来不会被移到右边。
(这个问题可以通过选择完成和不选择完成对比看出。)
备选问题
如果不更改 zsh 源代码就无法获得先前解释的行为,是否至少可以在所选完成的末尾仅添加电力线三角形?
我失败的尝试
- 我已经尝试在
list-colors
样式中使用lc
、rc
和ec
变量,但是那没有帮助:- 完成列表排列不当,造成了各种视觉问题。
- 符号已插入到完成列表的所有元素中,而不仅仅是选定的元素。
- 我也尝试过使用
ma
变量,但我无法在开头正确插入一个字符:- 该变量只需要一个代表颜色的数字,并且它可能包含在一些转义序列中,因此输出看起来不像预期的那样。
最佳答案
这对我有用。
zstyle ":completion:*:default" list-colors ${(s.:.)LS_COLORS} "ma=48;5;153;1"
使用我的 LS_COLORS 然后 ma 将我选择的背景设置为粗体和颜色 153 from https://jonasjacek.github.io/colors/ .
关于zsh - 如何在 zsh 中自定义当前选定(突出显示)完成的外观?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50125112/