VS Code设置代码片段(C++)

前言

VS Code设置代码片段,官网介绍
代码片段是模板,可以快速地输入重复的代码,比如循环、条件语句、注释模板等。在vs code中代码片段会和自动提示IntelliSense(Ctrl + Space)一起出现,也出现在专用的代码片段选择器中(在“命令面板”中插入代码片段)。还支持制表符补全:使用启用它"editor.tabCompletion": “on”,键入一个代码段前缀(触发文本),然后按Tab键插入一个代码段。

在这里插入图片描述

正文

本文主要介绍如何自定义代码片段,可以选择要显示代码段的编程语言,我们这里以C++为例。
打开 文件->首选项->用户代码段
在这里插入图片描述
选择C++
在这里插入图片描述
打开后已经存在一个注释的示例代码:

    // Place your snippets for cpp here. Each snippet is defined under a snippet name and has a prefix, body and // description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the // same ids are connected.// Example:// "Print to console": {// 	"prefix": "log",// 	"body": [// 		"console.log('$1');",// 		"$2"// 	],// 	"description": "Log output to console"// }

说明:

  • “Print to console” 是代码段名称。如果未description提供,则通过IntelliSense显示。
  • prefix定义一个或多个在IntelliSense中显示摘要的触发词。
  • body是一或多个内容行,插入时将作为多行内容加入。换行符和嵌入的选项卡将根据插入代码段的上下文进行格式化。$1和$2是占位符,可以通过tab进行切换。
  • description 是IntelliSense显示的代码段的可选描述。

根据以上规则,我们可以实现自己想要的代码片段,比如:

	"Add File Header": {"prefix": "fileheader","body": ["/**""  * @file    :${TM_FILENAME}""  * @brief   :$1""  * @author  :xxxx""  * @version :V1.0.0""  * @date    :${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE}""  */"],"description": "Add file describe"},"pragma once":{"prefix": "once","body": "#pragma once"}

注意,如果有多个代码片段,需要用逗号隔开。
以上实现了两个代码片段,通过fileheader和once就能分别引用到,如下:
在这里插入图片描述
在这里插入图片描述

变量

使用$name或${name:default},您可以插入变量的值。如果未设置变量,则将其默认值或空字符串插入。当变量未知(即未定义其名称)时,将插入该变量的名称,并将其转换为占位符。

可以使用以下变量:

  • TM_SELECTED_TEXT 当前选择的文本或空字符串
  • TM_CURRENT_LINE 当前行的内容
  • TM_CURRENT_WORD 光标下的单词内容或空字符串
  • TM_LINE_INDEX 基于零索引的行号
  • TM_LINE_NUMBER 基于一索引的行号
  • TM_FILENAME 当前文档的文件名
  • TM_FILENAME_BASE 当前文档的文件名,不带扩展名
  • TM_DIRECTORY 当前文档的目录
  • TM_FILEPATH 当前文档的完整文件路径
  • CLIPBOARD 剪贴板中的内容
  • WORKSPACE_NAME 打开的工作空间或文件夹的名称
  • WORKSPACE_FOLDER 打开的工作空间或文件夹的路径

要插入当前日期和时间:

  • CURRENT_YEAR 本年度
  • CURRENT_YEAR_SHORT 本年度的最后两位数字
  • CURRENT_MONTH 以两位数字表示的月份(例如“ 02”)
  • CURRENT_MONTH_NAME 月的全名(例如“七月”)
  • CURRENT_MONTH_NAME_SHORT 该月的简称(例如“ Jul”)
  • CURRENT_DATE 一个月中的某天
  • CURRENT_DAY_NAME 一天的名称(例如“星期一”)
  • CURRENT_DAY_NAME_SHORT 一天的简称(例如“ Mon”)
  • CURRENT_HOUR 当前小时(24小时制)
  • CURRENT_MINUTE 当前分钟
  • CURRENT_SECOND 当前秒
  • CURRENT_SECONDS_UNIX 自Unix时代以来的秒数

要插入行或块注释,请遵循当前语言:

  • BLOCK_COMMENT_START输出示例:PHP/*或HTML
  • BLOCK_COMMENT_END输出示例:PHP*/或HTML–>
  • LINE_COMMENT 示例输出:在PHP中 //

更多设置请参考:
https://code.visualstudio.com/docs/editor/userdefinedsnippets#_common-questions


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部