如何在zsh中自定义当前选定(突出显示)的完成外观?

问题描述 投票:2回答:1

主要问题

我想在所选完成的开始和结尾处添加电力线字符,如下所示:

  1. 通过插入Started the completion menu并按c键的[TAB
  2. 按右箭头键[Moved right in the completion menu
  3. 通过按下箭头键[Moved down in the completion menu

有没有什么方法可以使zsh看起来像在图片中一样?

注意

在创建列以保持对齐正确时,应该以某种方式考虑添加的电源线三角形+开头的空白字符和空白字符+电源线三角形的末尾。

奖励

在列表中的

每个完成的开头添加2个空格,因此,当选择完成时,它看起来不像文本向右移动。(通过比较带有和不带有选择项的完成情况,可以看到此问题。)


替代问题

如果先前解释的行为在不更改zsh源代码的情况下无法获得的情况下,是否至少有可能在所选完成操作的末尾添加电力线三角形only


我失败的尝试

  • 我尝试以lc样式使用rceclist-colors变量,但这没有帮助:
    1. 完成列表排列不正确,会造成各种视觉问题。
    2. 符号已插入完成列表的所有元素中,而不仅仅是选定的元素。
  • 我也尝试过使用ma变量,但是我不能在开头正确插入一个字符:
    1. 该变量只期望代表一种颜色的数字,并且可能将其包装在某些转义序列中,因此输出看起来与预期的不一样。
zsh zshrc zsh-completion
1个回答
1
投票

这对我有用。

zstyle ":completion:*:default" list-colors ${(s.:.)LS_COLORS} "ma=48;5;153;1"

使用我的LS_COLORS,然后将https://jonasjacek.github.io/colors/中我选择的背景设置为粗体和颜色153。

https://www.zsh.org/mla/users/2010/msg00811.html找到

© www.soinside.com 2019 - 2024. All rights reserved.