是否可以禁用 Fish shell 中的 & 符号? (不需要使用 \& 进行转义)

是否可以禁用 Fish shell 中的 & 符号? (不需要使用 \& 进行转义)

因此,可以通过启用功能标志来永久禁用 的功能?,从而使\?功能变得不必要qmark-noglob

我想对 做同样的事情&,因为我从不将它用于它应该做的事情,但经常使用包含它的网址。

可能没有相应的标志(因为这不是 Fish 与 bash 不同的行为),但也许您知道如何做到这一点。 (我尝试设置别名,但不起作用)

基本上我想通过一直&打字来避免自己逃避。\&多谢!

答案1

Fish 没有禁用此功能的选项。目前存在禁用选项的原因??glob 已被弃用,并且将来将被完全删除。没有这样的计划&

你什么要做的是添加一个绑定,\&当您按 时会插入该绑定&。就像是

bind \& 'commandline -i "\&"'

&当然,这意味着如果您确实想使用它,则必须弄清楚如何插入实际值。

答案2

从 Fish 3.4 开始,有一个新选项(默认启用) ,如果后面跟有非分隔符,则ampersand-nobg-in-token禁用背景功能。&

set --universal fish_features qmark-noglob使得粘贴 URL 以安全地与curl.

相关内容