cygwin - 让 gvim 自动翻译 cygwin 路径

标签 cygwin vim

我喜欢 cygwin 和原生 Windows 版本的 gvim,并且我一直将它们一起使用。我遇到的唯一问题是 cygwin 路径名。 Windows 版 Gvim 不理解它们,所以我不得不输入如下内容:

gvim `cygpath -wa ~/scripts/myscript.pl`

这很烦人!

我想知道是否有一种巧妙的方法使用 autocmd 来检测是否已提供 cygwin 路径,如果是,则在 FileReadPre 事件上将其转换为 Windows 路径。有谁知道是否/如何实现这一点?

最佳答案

存在多种解决方案(请参阅 vim.wikia.com,cygwin 类别)。

我正在维护更灵活的一个:cyg-wrapper.sh (从某种意义上说是灵活的,它知道 (vim) 标志不是路径名,甚至可以告诉像 -c 这样的“二进制”标志需要另一个不是路径名的参数,并且从某种意义上说,它不是特定于 vim 的)

关于从 win32-vim 调用 cygwin 可执行文件,你不会有任何麻烦......只要可执行文件不会返回以 *nix 格式表示的路径名。 对于所有与编译相关的可执行文件(gcc/make/doxygen/...),我也有一个解决方案。过去它是一个简单的独立 Perl 脚本(仍然可以在 vim.org 上找到)。现在我有了一个完整的解决方案,可以执行其他编译相关的操作: BuildToolsWrapper (需要同一站点上的 lh-vim-lib)

关于:e/etc/hosts之类的事情,我没有解决方案。很久以前,我尝试过使用FileReadPre & co,但我中途放弃了,我不记得为什么^^'。

关于cygwin - 让 gvim 自动翻译 cygwin 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3164181/

相关文章:

vim - 当文件被另一个应用程序更改时如何得到通知?

vim - 在 Vim 中复制没有换行符和制表符的区域

xcode - 从命令行从 XCode 中提取构建标志

带有千位分隔符的状态栏中的 VIM 行数?

关于 "undefined subroutine"的 Perl 模块错误

c++ - 使用 C+11 和 Newlib 时出现错误 "sigemptyset was not declared in this scope"

git - 在 Visual Studio 中使用 Cygwin Git+SSH

shell - Cygwin 终端提示丢失

可以访问网站但不能访问子目录中的文本文件

vim - tmux 支持相对行号吗?