gpt4 book ai didi

Quickfix窗口中的Vim文件路径

转载 作者:行者123 更新时间:2023-12-04 04:22:32 25 4
gpt4 key购买 nike

我在Vim中创建了一个函数,可以为我编译一些东西。看起来像这样:

function! MyFunc(mode)
lcd ./build
pwd
let &makeprg='the_command some_script_file'
let &errorformat='some format'.','
let &errorformat.='%-G%.%#'
silent make
lcd ..
cwindow
endfunction

我通常在项目目录中打开vim,然后运行此功能,将cd插入到build中,然后将其放入cd,然后将其放回cd中,这样我就留在了项目目录中。

但是,有时,当构建失败并打开quickfix窗口时,它会显示相对于我的项目目录的文件名(是),但是有时在同一文件中,它会显示绝对路径。构建脚本的输出总是显示相对路径,并且vim可以正确处理这两个路径,即找到正确的文件。

我怀疑路径处理是负责任的。我的问题是,这是什么问题,还有更好的方法来处理切换到构建目录和返回的问题吗?我总是希望显示相对路径。

谢谢!!

最佳答案

我认为这与lcd有关。从函数中打开quickfix窗口后,它将从当前窗口继承本地目录。但是,从其他任何地方(或在运行函数之前)打开quickfix窗口后,它将保留全局工作目录。如果不匹配,Vim必须显示绝对路径。

如果您确实需要使用:lcd,则最好使用位置列表(:lmake),因为这也将是窗口的本地内容。但我首先会尝试使用全局:cd,因为无论如何该开关只是临时的,到目前为止您都不在乎恢复实际的原始值。

关于Quickfix窗口中的Vim文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10743300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com