gpt4 book ai didi

vim - 如何用 Vim 中的函数结果替换字符串?

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

我想在文件的某些地方插入文件名和行号。例如这一行:

_debug('init');

我要换

:s/debug('/debug('(%current_filename_here%:%current_line_number_here%)\ /g

得到这个

_debug('(filename.ext:88) init');

我尝试使用 expand('%:t') 来获取文件名和 line(".") 来获取行号,但我不知道如何在替换表达式中使用它。

我该怎么做?

最佳答案

您可以使用 \= .例如:

:s@_debug('\zs@\=printf('(%s:%d) ', expand('%:t'), line('.'))@

When the {replacement} starts with "\=" it is evaluated as an expression,

关于vim - 如何用 Vim 中的函数结果替换字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10911247/

25 4 0
文章推荐: visual-studio-2010 - 您可以为所有使用 ClickOnce VS2010 的用户安装程序吗?
文章推荐: java - Android - 通过图像压缩优化应用程序性能
文章推荐: python - 如何从 python 端指定 Bokeh 图的第 n 个股票代码,其中 n 是股票代码的数量
文章推荐: java - 在 Java 中使用文件流写入和读取 ArrayList 时出现问题