当前位置: 首页 > news >正文

VScode自动添加指定内容

在 VS Code 中,可以通过配置 用户代码片段(User Snippets) 或使用 文件模板扩展 来实现新建指定文件类型时自动添加指定内容。以下是具体方法:


方法 1:使用 VS Code 内置的「用户代码片段」

适用场景:适用于特定文件类型(如 .js.py.html 等),在新建文件后通过快捷键插入预设内容。

步骤
  1. 打开代码片段配置

    • 快捷键:Ctrl + Shift + P(Windows/Linux)或 Cmd + Shift + P(Mac),输入 Configure User Snippets
    • 选择目标语言(例如 PythonJavaScript),或创建全局片段(New Global Snippets file)。
  2. 编辑代码片段

    • 例如为 .py 文件添加默认内容,编辑 python.json
      {"Python Template": {"prefix": "py_template",  // 触发前缀(输入时提示)"body": ["#!/usr/bin/env python3","# -*- coding: utf-8 -*-","","\"\"\"","Description: ${1:文件描述}","Author: ${2:Your Name}","Date: ${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE}","\"\"\"","","def main():","    ${0:pass}","","if __name__ == \"__main__\":","    main()"],"description": "Python 文件模板"}
      }
      
    • 变量说明
      • ${1:占位文本}:光标跳转位置,按 Tab 切换。
      • $CURRENT_YEAR 等:VS Code 内置变量(自动填充日期/时间)。
  3. 使用代码片段

    • 新建 .py 文件,输入 py_template 后按 TabEnter,即可插入模板。

方法 2:使用扩展实现「新建文件时自动填充」

适用场景:希望在创建文件时(如右键新建)自动填充内容,无需手动触发代码片段。

推荐扩展
  1. File Templates(扩展ID:brpaz.file-templates

    • 安装后,通过命令面板(Ctrl+Shift+P)运行 File Templates: Create File from Template
    • 配置模板文件(支持变量如 ${date}${name})。
  2. Template Generator(扩展ID:krizzdewizz.template-generator

    • 支持更复杂的模板逻辑,如根据目录生成不同内容。
配置示例(以 File Templates 为例)
  1. 安装扩展后,在项目根目录创建 .vscode/templates 文件夹。
  2. 新建模板文件(如 template.py)并写入内容:
    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-"""
    Description: ${1:Description}
    Author: ${2:Your Name}
    """def main():${0:pass}if __name__ == "__main__":main()
    
  3. 通过命令面板选择模板创建文件。

方法 3:自定义脚本(高级)

如果需要更复杂的逻辑(如根据项目类型动态生成内容),可以:

  1. 编写一个 Node.js/Python 脚本 生成文件。
  2. 通过 VS Code 的 Task扩展 API 绑定到快捷键/右键菜单。

总结

方法优点缺点
用户代码片段原生支持,无需扩展需手动触发(输入前缀)
文件模板扩展自动化强,支持变量需安装扩展
自定义脚本灵活性最高配置复杂

推荐

  • 简单场景 → 用户代码片段
  • 全自动填充 → File Templates 扩展
http://www.xdnf.cn/news/782569.html

相关文章:

  • NLP学习路线图(二十一): 词向量可视化与分析
  • 大语言模型评测体系全解析(上篇):基础框架与综合评测平台
  • 虚荣虚无的对立统一
  • 电阻电容的选型
  • html基础01:前端基础知识学习
  • webstrom中git插件勾选提交部分文件时却出现提交全部问题怎么解决
  • SpringBoot3.2新特性:JdbcClient
  • Trae CN IDE自动生成注释功能测试与效率提升全解析
  • 在linux系统上搭建git服务器(ssh协议)
  • RTC实时时钟DS1338Z-33/PT7C433833WEX国产替代FRTC1338S
  • 【Kotlin】高阶函数Lambda内联函数
  • Elasticsearch | 如何将修改已有的索引字段类型并迁移数据
  • MongoDB账号密码笔记
  • mybatis打印完整的SQL,p6spy
  • 应用智能化转型—MCP原理分析
  • 6-2 MySQL 数据结构选择的合理性
  • MCP:让AI工具协作变得像聊天一样简单 [特殊字符]
  • 数据库密码加密
  • Go Modules 详解 -《Go语言实战指南》
  • Cursor快速梳理ipynb文件Prompt
  • 群晖 NAS 如何帮助培训学校解决文件管理难题
  • python计算股票年化收益率、波动率、夏普比率、VaR
  • Hadoop 3.x 伪分布式 8088端口无法访问问题处理
  • Playwright 多浏览器并行测试与数据隔离实战指南
  • 【云计算】基础篇,含云测试
  • 解决 idea提示`SQL dialect is not configured` 问题
  • redis数据过期策略
  • Jpom:Java开发者的一站式自动化运维平台详解
  • Matlab实现LSTM-SVM回归预测,作者:机器学习之心
  • 日语输入法怎么使用罗马字布局怎么安装日语输入法