gpt4 book ai didi

vim - 在Vim中,如何将文件保存到变量中存储的路径中?

转载 作者:行者123 更新时间:2023-12-01 14:50:50 25 4
gpt4 key购买 nike

这是脚本内:

:let s:submission_path = expand("%:p:h") . '\submissions\test_submission.csv'
:echo s:submission_path
:write s:submission_path

该脚本引发错误“无法打开文件进行写入”,因为我在Windows上并且':'不是有效的文件名字符。如果我将变量命名为“submission_path”,则将写入具有该名称的文件(编辑:并且文件的内容符合我的预期,脚本正在编辑的缓冲区的内容)。

我不明白写入之前的echo命令执行了我期望的操作,将完整路径输出到要写入的文件。但是write似乎忽略了变量值,而是改用了它的名字?我是否需要以某种方式取消引用?

最佳答案

vim有非常严格的评估规则(您只需要学习它们)。 write不接受表达式,而接受字符串,因此s:submission_path会按字面对待write。但是,echo会评估其参数,因此会评估s:submission_path

要执行您想要的操作,您需要使用execute命令。

exec 'write' s:submission_path

关于vim - 在Vim中,如何将文件保存到变量中存储的路径中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28651472/

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