在VS代码中定义多行代码段的更好方法?

kak*_*kyo 9 editor code-snippets visual-studio-code

在Sublime Text中,您可以在编写常规文档时在代码段文件中定义带有空格的多行代码段,但就Visual Studio Code中类似的多行代码段而言,据我所知它必须是JSON条目,您必须在其中将每一行分解为列表中双引号的字符串元素,或者在一个字符串中使用显式ASCII换行符(\ n)。

我想知道是否有更好的方法来定义代码片段,尤其是当它很长时。

vin*_*nod 13

您可以查看此视频以获取快速的简短教程

https://youtu.be/g1ouTcFxQSU

转到文件 --> 首选项 --> 用户代码段。选择您的首选语言。
现在输入以下代码来创建一个 for 循环片段:

  "Create for loop":{
    "prefix": "for",
    "body":[
      "for(int i = 0; i < 10; i++)",
      "{",
      "   //code goes here",
      "}"
    ],
   "description": "Creates a for loop"
  }
Run Code Online (Sandbox Code Playgroud)

你完成了。
在编辑器中输入“for”并使用第一个预测。

捷径 -

  1. 安装Snippet-creator扩展。
  2. 突出显示您需要制作代码段的代码。
  3. ctrl+ shift+P并在命令面板上键入“创建代码段”,然后按 ENTER。
  4. 选择要为其创建片段的语言(例如:-CPP),然后键入
    片段名称,键入片段快捷方式,然后键入片段描述。
    你现在可以走了。
    在编辑器中键入您在第 4 步中输入的代码段快捷方式,然后选择
    最先出现的预测(如果没有预测,请按 ctrl+space)。

希望这可以帮助 :)

注意:转到 File->Preferences->User Snippets。然后选择您
创建代码段所用的语言。你会在那里找到片段。

  • @moff [CMD] + [SHIFT] + [P](mac 用户) (4认同)
  • 附加说明:作为 Mac 用户,您可以从 **Code**-&gt;Preferences-&gt;User Snippets 访问您的代码片段。 (3认同)
  • 旁注:代码片段创建者已被标记为已弃用 (2认同)

Arm*_*min 10

您可以将代码段的主体定义为字符串数组,每个字符串都从新行开始。

像这样:

  "Create for loop":{
    "prefix": "mkfor",
    "body":[
      "for(int i = 0; i < 3; i++)",
      "{",
      "   //code goes here",
      "}"
    ],
   "description": "Creates a for loop"
  }
Run Code Online (Sandbox Code Playgroud)

或者,如果您安装Easy Snippet Maker扩展程序,则可以通过突出显示文本来创建代码段。

  • 谢谢。您在此处提供的代码段正是我所问的问题:我不希望多个带有逗号的双引号字符串。我将尝试扩展。 (3认同)

Chr*_*sen 5

我也找不到创建多行代码段的好方法。这可能是我最想改进的功能之一。另一个答案是建议,这里有几个扩展可帮助创建Snippet(如thisthis)。但是,它们无法逃脱字面的美元符号,缩进也不是很好。

浏览此问题的答案时,我偶然发现了Denis Malinochkin的一支钢笔(与本期相关)。但是,它也没有正确地避开美元符号,因此我将其分叉并添加了这条线来处理字面的美元符号。它在这里:https : //codepen.io/cbejensen/pen/WXLxaE

希望有帮助!

PS-这是我添加的行:

line = line.replace(new RegExp(/\$/, 'g'), '\\$');
Run Code Online (Sandbox Code Playgroud)


Ale*_*lex 5

我创建了一个扩展来将片段存储在 markdown 文件中:

演示图像

https://marketplace.visualstudio.com/items?itemName=用户名hw.snippets-in-markdown