亚当解释中的ZSH变量替换

时间:2013-06-21 10:26:49

标签: command-prompt zsh

我检查了 R TFM ,但无法理解。该片段来自 ZSH 的adam2提示符。

local prompt_line_1a_width=${#${(S%%)prompt_line_1a//(\%([KF1]|)\{*\}|\%[Bbkf])}}

据我所知,局部变量prompt_line_1a被赋予变量操作的长度结果

${(S%%)prompt_line_1a//(\%([KF1]|)\{*\}|\%[Bbkf])}

但是在长度计算之前,原始变量prompt_line_1a会发生什么变化我不清楚。

1 个答案:

答案 0 :(得分:1)

所以,有人向我指出我只需要看正确的地方,该命令由两部分组成:

${(flags)variablename}

${string//pattern/substitution}

第一个导致:

  • S搜索ungreedy
  • %%完全迅速扩展(也是对结果词语的扩展)

如果不应用替换但是应该应用替换,则可以删除后者/substitution