windows - Windows 上的 Ack.vim "No such file or directory"错误

标签 windows vim cmd ack

不久前,我在我的 Windows XP 机器上设置了 Ack 并与 Vim 一起正常工作。不确定我最近做了什么,但现在不起作用。

这是我在 Vim 中遇到的问题的示例:

:Ack searchterm

返回此错误信息:

ack: searchterm: No such file or directory

如果我尝试在 Vim 中“手动”运行命令:

:!ack searchterm

这会打开一个 cmd.exe 对话框,其中包含以下消息:

C:\WINDOWS\system32\cmd.exe /c ack searchterm
ack: searchterm: No such file or directory
shell returned 1
Hit any key to close this window....

仍然没有运气。

奇怪的是,如果我转到 START > Run 然后键入此命令:

cmd.exe /c ack searchterm

它工作正常,Ack 愉快地搜索 searchterm

我不明白。 Vim 调用 cmd.exe 的方式与我通过 run 调用它的方式有什么不同 - 结果应该和我想的一样。

有什么想法吗?

更新:

我现在知道消息“没有这样的文件或目录”是因为 Ack 认为我正在运行这种格式的 ack 命令:

ack searchterm filename

其中 filename 是您要搜索的文件。问题是我没有提供文件名 - 所以我不确定为什么它认为我的 searchterm 实际上是要搜索的文件。

vim 以某种方式将参数错误地传递给 cmd.exe - 但我看不出它是怎么做到的

更新 2

Vim 不是问题所在。一定是我的 Ack 版本出了问题。

如果我打开 cmd.exe 并输入:

ack searchterm

然后我也收到错误信息:

ack: searchterm: No such file or directory

如果我只输入 ack:

ack

然后它开始搜索……寻找某物……谁知道是什么

这不是我在两个示例中所期望的。不过我一定是越来越近了……

最佳答案

好的,我解决了。我的 .ackrc 文件被破坏了。显然这是无效的语法:

--type-set
coffeescript=.eco,.coffee
plsql=.tab,.bdy,.spc,.seq,.tps,.trg,.prc,.vw,.fnc,.syn

正确的语法是:

--type-set
coffeescript=.eco,.coffee
--type-set
plsql=.tab,.bdy,.spc,.seq,.tps,.trg,.prc,.vw,.fnc,.syn

为什么会导致我不知道的错误。但那是罪魁祸首。

关于windows - Windows 上的 Ack.vim "No such file or directory"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7411179/

相关文章:

windows - TabCtrl_SetItemSize 和用户绘制的选项卡控件

.Net 使用特殊文件夹表示法

django - 由于未知原因无法使用 pipenv 安装 Django(但可以使用 pip)

vim - 在完整窗口中打开帮助

javascript - 将一条线对象拆分为多线对象

vim - 在模式前插入 n 个字符

windows - Windows CE上套接字连接的调整超时时间

batch-file - 将参数从jenkins参数化的构建传递到Windows批处理命令

bash - Gitlab-CI:为 Linux 和 Windows 设置环境变量

batch-file - 为什么在cmd中使用 'echo %var%'命令后没有 'set var = text'的字符串输出?