Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vim 如何在不同长度的多行末尾追加数字序列?_Vim_Emacs_Editor - Fatal编程技术网

Vim 如何在不同长度的多行末尾追加数字序列?

Vim 如何在不同长度的多行末尾追加数字序列?,vim,emacs,editor,Vim,Emacs,Editor,我正在重写一些脚本。我想在许多行后面附加如下内容: short=s[ verylongword=s[ P=s[ 这些数字: 0 1 2 要获得此信息: short=s[0 verylongword=s[1 P=s[2 我试过VIM ctrl+v put我不能把它们放在这行的末尾。。。如果无法使用vim,哪种方法是即使使用emacs也可以做到这一点的最佳方法 编辑: 现在我知道如果我在我的例子中的列中有一个数字,我就可以这样做,所以问题是如何在不先写序列号的情况下更快地追加一个数字序列 你问

我正在重写一些脚本。我想在许多行后面附加如下内容:

short=s[
verylongword=s[
P=s[
这些数字:

0
1
2
要获得此信息:

short=s[0
verylongword=s[1
P=s[2
我试过VIM ctrl+v put我不能把它们放在这行的末尾。。。如果无法使用vim,哪种方法是即使使用emacs也可以做到这一点的最佳方法

编辑:
现在我知道如果我在我的例子中的列中有一个数字,我就可以这样做,所以问题是如何在不先写序列号的情况下更快地追加一个数字序列

你问vim或Emacs

在Emacs中,您只需选择要修改的行,然后执行:

replace-regexp RET $ RET \# RET
在库存Emacs设置中,将使用M-x替换regexp

\是一种特殊的替换,从0开始,每次进行替换时递增。这是伟大的,你当然可以将它与其他elisp替代品混合使用

例如,如果要对条目从100开始编号:

replace-regexp RET $ RET \,(+ 100 \#) RET

使用vim,您可以使用以下搜索和替换语句

%s/$/\=line('.')-1
崩溃

%                    apply to entire buffer
s                    substitute
/$                   search for end of line
/\=line('.')-1       replace with linenumber - 1

在Emacs中,也可以使用键盘宏来执行此操作。第一行末尾的点short=s[,定义如下:

F3开始宏定义

F3插入宏计数器默认从0开始

C-f移动到下一行的开头

C-e移动到行的末尾

F4结束宏定义

执行宏

通过反复按F4键手动操作 指定表示要重复宏的次数n的前缀参数:C-u n F4 指定前缀参数0以对所有剩余行重复宏:C-u n F4
如果您希望编号以不同于零的值开始,请通过发出M-x kmacro set counter来设置宏计数器值。此命令的默认键绑定为C-x C-k C-C。

@G M:是否始终希望从0开始添加递增的数字?G M可能重复:您能响应战术编码器的查询吗?存在断开连接在你的问题标题和你得到的答案之间,因为你的例子使用了一个升序的数字序列。你想要任意内容行的答案,还是仅仅是一个数字序列的答案?@phils事实上我只是想添加多行,但因为另一个问题有很多答案,所以我改变了这个问题,是吗思考是正确的做法吗?非常感谢!是的,在这种情况下,我认为这是一个很好的改变-它阻止了这是另一个问题的重复,而不会以任何方式使您的答案无效。我只是想解决我的问题,无论如何,我都可以使用这两个编辑器,因此如果在emacs中更容易,我可以使用它。。。