如何告诉emacs将某些表达式从第x行插入到第y行

cur*_*rer 1 emacs

在我的一些编程中,最近,我经常不得不手动输入long的值std::vector.所以对于大小为30的矢量,我必须继续打字

myvec[0]=1.0;
myvec[1]=4.6;
myvec[2]=6.7;
myvec[3]=7.8;
.
.
myvec[29]=87;
Run Code Online (Sandbox Code Playgroud)

我使用Emacs作为文本编辑器.是否有可能在Emacs中以某种方式指定从第30行到第59行插入行

myvec[0]= ;
myvec[1]= ;
myvec[2]= ;
.
.
myvec[29]= ;  
Run Code Online (Sandbox Code Playgroud)

当然,必须手动输入向量的各个值,但它会myvec[]一次又一次地为我节省大量的打字或复制/粘贴.

Dai*_*rod 6

键盘宏是更简单的方法.

C-x(myvec[C-xC-kC-i] = ;RETC-x)

  • C-x( 启动宏定义
  • C-xC-kC-i 插入并递增计数器
  • C-x) 结束宏定义

然后 M-3M-9C-xe

  • M-3M-9是一个捷径 C-u39,用于39作为参数发送
  • C-xe 执行记录的最后一个宏

因此,两者的组合执行宏39次.

您还可以查看手册,了解如何保存编辑它们.