VScode中创建markdown模板

    利用代码片段快速生成特定信息

    1、vscode中新建“用户代码片段”

    • 打开“code“ - “首选项” - “配置用户代码片段”

    • “新建全局代码片段文件”,文件名可随意

    2、创建自定义信息

    • 文件默认信息是这样的
    {
    	// Place your 全局 snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and 
    	// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope 
    	// is left empty or omitted, the snippet gets applied to all languages. 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": {
    	// 	"scope": "javascript,typescript",
    	// 	"prefix": "log",
    	// 	"body": [
    	// 		"console.log('$1');",
    	// 		"$2"
    	// 	],
    	// 	"description": "Log output to console"
    	// }
    }
    
    • 参数说明
    scope: 文件类型
    prefix: 表示触发条件
    body: 表示显示的内容
    description: 代码片段的描述
    
    • 修改后的文件是这样的
    {
    	// Place your 全局 snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and 
    	// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope 
    	// is left empty or omitted, the snippet gets applied to all languages. 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": {
    		"scope": "markdown",
    		"prefix": "/date",
    		"body": [
    			"---",
    			"title: ${TM_FILENAME_BASE}",
    			"top_img: ",
    			"cover: ",
    			"categories: ${TM_DIRECTORY}",
    			"abbrlink: ",
    			"date: ${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE}  ${CURRENT_HOUR}:${CURRENT_MINUTE}:${CURRENT_SECOND} ",
    			"tags:",
    			"---"
    		],
    		"description": "blog info"
    	}
    }
    
    • 可以插入的变量

    使用规则:$name或${name:default}

    TM_CURRENT_LINE 当前行的内容
    TM_CURRENT_WORD 光标下单词的内容或空字符串
    TM_LINE_INDEX 基于零索引的行号
    TM_LINE_NUMBER 基于一个索引的行号
    TM_FILENAME 当前文档的文件名
    TM_FILENAME_BASE 当前文档的文件名,不带扩展名
    TM_DIRECTORY 当前文档的目录
    TM_FILEPATH 当前文档的完整文件路径
    RELATIVE_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 一天的简称(例如“星期一”)
    CURRENT_HOUR 24 小时制的当前小时
    CURRENT_MINUTE 当前分钟
    CURRENT_SECOND 当前秒
    CURRENT_SECONDS_UNIX 自 Unix 纪元以来的秒数
    

    3、结果展示