相关疑难解决方法(0)

如何在 Zsh 命令行中展开所有变量?

在之前针对 bash 的问题中,我问如何在命令行中扩展相对路径并使用制表符补全?

我喜欢 @Mikel 的答案,其中提到使用Ctrl+ Alt+e来扩展所有变量,并且我经常使用它。

从那时起,我已经切换到,zsh虽然我可以键入$PWD并按Tab以展开当前目录的路径,但如果我键入类似的内容$PWD/.profile并按Tab它不会展开。

我已经阅读了类似的问题,并且看到了有关扩展别名的答案,以及如何通过键入变量并按来扩展变量,但没有什么与在 中按+ +Tab相同 。CtrlAltebash

是否有某种方法允许转义序列(例如Ctrl+ Alt+)e展开正在输入的命令行中的所有变量zsh

command-line zsh environment-variables variable

5
推荐指数
1
解决办法
2393
查看次数

制表符完成前缀的外壳?

我希望当光标位于单词的开头和光标位于单词的末尾时,制表符完成的行为有所不同。

我只见过用制表符完成后缀的 shell,如下所示:

$ tiff2?
tiff2bw    tiff2pdf   tiff2ps    tiff2rgba
Run Code Online (Sandbox Code Playgroud)

但是,有时我还想在插入符号位于单词开头时对前缀进行制表符补全。也就是说,2tiff 如果光标位于单词的开头,我想扩展到所有以 结尾的命令2tiff,如下所示:

$ ?2tiff
raw2tiff gif2tiff bmp2tiff ppm2tiff pnmtotiff ras2tiff e2mtiff fax2tiff
Run Code Online (Sandbox Code Playgroud)

Fish在某些情况下会这样做:

~> ?2tiff
bmp2tiff  (Executable, 17kB)  ppm2tiff  (Executable, 14kB)
fax2tiff  (Executable, 18kB)  ras2tiff  (Executable, 14kB)
gif2tiff  (Executable, 18kB)  raw2tiff  (Executable, 17kB)
Run Code Online (Sandbox Code Playgroud)

这也有将光标移动到单词末尾的副作用,并且仅在没有有效的后缀完成时才有效:

~> ?tiff
tiff2bw                    (Convert a color TIFF image to greyscale)
tiff2pdf                    (Convert a TIFF image to a PDF document)
tiff2ps                                    (Convert a TIFF image to)
tiff2rgba                 (Convert a TIFF image to RGBA …
Run Code Online (Sandbox Code Playgroud)

bash zsh autocomplete fish readline

5
推荐指数
1
解决办法
403
查看次数