繁体   English   中英

VS Code 多光标 - 重复粘贴单行

[英]VS Code Multiple Cursors - Paste Individual Lines Repeatedly

我正在使用带有 VI 绑定的 VS Code,我正在尝试执行以下操作。

我有以下文件内容:

abc="some value"
def="some other value"
ghi="some other other value"
jkl="some other other other value"
.
<etc. for many lines>

我想将此文件更改为(预期输出):

abc=${abc}
def=${def}
ghi=${ghi}
jkl=${jkl}

到目前为止,我首先用=${替换了=.+ 我得到以下信息:

abc=${
def=${
ghi=${
jkl=${

然后我试图通过 Cntrl + Alt + I 在 VS Code 中使用多个游标,我试图从头开始复制每一行以粘贴它,以便获得预期的输出。 出于某种原因,当我执行 Cntrl + Home 时,它​​不允许我选择整行。 有人可以帮我解决这个问题吗?

供参考:我的settings.json文件的VI部分如下:

// my settings
    "vim.easymotion": true,
    "vim.sneak": true,
    "vim.incsearch": true,
    "vim.useSystemClipboard": true,
    "vim.useCtrlKeys": true,
    "vim.hlsearch": true,
    "vim.handleKeys": {
    "<C-a>": false,
    "<C-f>": false,
    "<C-w>" : false,
    "<C-x>" : false,
    "<C-c>" : false,
    "<C-h>" : false,
    "<C-b>" : false,
    "<C-n>" : false
    },

我不使用 VI,但是使用代码段(在您的keybindings.json )很容易做到这一点。

{
  "key": "alt+b",                               // whatever keybinding you wish
  "command": "editor.action.insertSnippet",
  "args": {
    "snippet": "${TM_SELECTED_TEXT/(.*)=.*/$1=${$1}/g}"
  },
  "when": "textInputFocus && editorHasSelection"
}, 

然后选择您的代码和alt + b (或您使用的任何键绑定)。 您不需要多个光标或需要分别选择每一行。

“VI”片段替换

为什么它不适用于多光标?

使用默认键绑定。

  • 将光标置于a之前
  • 经常使用Ctrl + Alt + DownArrow
  • 使用Shift + Ctrl + RightArrow=之前全选
  • Ctrl + C
  • 右箭头2 次
  • Shift + End 全=
  • $ {
  • Ctrl + V
  • Esc键

或开始选择="后跟

Ctrl + Shift + L LeftArrow Shift + Home Ctrl + X RightArrow Shift + End $ { Ctrl + V Home Ctrl + V Esc

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM