与Eshell 不区分大小写匹配?
如何使用 Eshell 进行不区分大小写的模式匹配?使用 Zsh,我们可以使用“globbing 标签”(即,如果extend_glob 已打开),例如
print L(#i)in(#I)ux
可以匹配LINux
。
Eshell 有类似的东西吗?据我所知,Eshell 不支持 Zsh 的“通配标记”之类的功能,但是您知道是否有用于不区分大小写匹配的 Eshell 谓词吗?如果没有,您对如何在 Eshell 中定义谓词来做到这一点有什么建议吗?
谢谢!
How can you do case-insensitive pattern matching with Eshell? With Zsh, one can use "globbing tags" (i.e., if the extended_glob is turned on) such as in
print L(#i)in(#I)ux
which would match LINux
for instance.
Is there anything like that for Eshell? From what I know Eshell doesn't have a support for something like Zsh's "globbing tags", but do you know if there is an Eshell predicate for case-insensitive matching? If there isn't, do you have any suggestion of how to define a predicate in Eshell to do that?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
(setq eshell-glob-case-insensitive t)
不起作用。(setq eshell-cmpl-ignore-case t)
这有效。将其放入.emacs
或.emacs.d/init.el
中。(setq eshell-glob-case-insensitive t)
Does not work.(setq eshell-cmpl-ignore-case t)
This works. Put it in your.emacs
or.emacs.d/init.el
.您可以将变量
eshell-glob-case-insensitive
设置为 true,以在 eshell 中启用不区分大小写的通配。You can set the variable
eshell-glob-case-insensitive
to true to enable case-insensitive globbing in eshell.