gpt4 book ai didi

vim - 在 Ex 模式下将 "read"命令的输出作为范围处理

转载 作者:行者123 更新时间:2023-12-04 05:34:46 28 4
gpt4 key购买 nike

后台:

在 vim(Ex 模式)中,可以运行外部命令并将该命令的输出自动插入当前缓冲区。

在示例 001 中,我们看到如何 cd 到当前目录,获取那里的文件列表并将其自动插入当前缓冲区

示例 001:

    :cd . | :r ! dir /w/s/b

问题:

1) 是否可以自动指定或捕获 Vim {range} 以反射(reflect)最近插入到文件中的行?

2) 使用在问题 1) 中获得的范围是否可以链接 Ex 模式命令来自动处理插入到文件中的行?

3) 如果上面的 1) 或 2) 是不可能的,Vim 是否有其他方法可以识别最近插入缓冲区的行并对它们运行任意命令?

4) 可用于此目的的相关 :help 交叉引用是什么?

目标:

目标是能够将多个 Ex 模式命令链接在一起,以轻松运行进程最近添加到文件的行,而无需明确标识行号或使用可视模式或类似方式手动选择它们。

目标是做一些类似于示例 002 中的(伪代码)

示例 002:
    :cd . | :r ! dir /w/s/b | :{auto-range}s/^/    /

最佳答案

Vim 设置更改标记 '[']到插入的范围;您可以使用这些来定义后续 Ex 命令的范围:

:cd . | execute 'r ! dir /w/s/b' | '[,']s/^/    /

您需要 :execute因为否则 |被解释为属于 :r命令。

关于vim - 在 Ex 模式下将 "read"命令的输出作为范围处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12099444/

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