Export Source to Docx
一个用于将源代码导出为 Word 文档的 VS Code 扩展,专门用于生成申请计算机软件著作权时所需的程序鉴别材料。
功能特性
- 自动将源代码导出为符合软著申请要求的 DOCX 文档
- 支持多种编程语言的代码文件
- 自动过滤空行,保持文档整洁
- 支持过滤代码注释(可选)
- 自定义页眉(软件名称)和页脚(版权信息)
- 自动添加页码
- 符合软著申请格式要求:每页50行
- 支持配置包含的文件扩展名
- 支持配置排除的文件模式(如 node_modules)
- 生成后自动打开文档(可选)
安装
从 VS Code Marketplace 安装
- 打开 VS Code
- 按
Ctrl+Shift+X 打开扩展面板
- 搜索 "Export Source to Docx"
- 点击 "安装" 按钮
从 VSIX 文件安装
- 下载最新的
.vsix 文件
- 打开 VS Code
- 按
Ctrl+Shift+P 打开命令面板
- 输入 "Install from VSIX"
- 选择下载的
.vsix 文件
使用方法
- 打开要导出的项目文件夹
- 按
Ctrl+Shift+P 打开命令面板
- 输入 "导出DOCX" 并执行
- 选择保存位置
- 等待文档生成完成
配置选项
在 VS Code 设置中搜索 "导出DOCX" 可以配置以下选项:
| 配置项 |
类型 |
默认值 |
说明 |
exportDocx.softwareName |
string |
"未命名软件V1.0" |
页眉显示的软件名称(含版本) |
exportDocx.copyrightOwner |
string |
"未知公司" |
页脚显示的版权信息 |
exportDocx.includeExtensions |
array |
["js", "ts", "cs", "cpp", "c", "h", "hpp", "java", "py", "rb", "php", "swift", "kt", "go", "rs", "dart", "scala", "pl", "r", "m", "mm", "sh", "vb", "lua", "hs", "jl"] |
包含的文件扩展名 |
exportDocx.excludePatterns |
array |
["/node_modules/"] |
排除文件的 glob 模式 |
exportDocx.autoOpen |
boolean |
true |
生成后自动打开文档 |
exportDocx.removeComments |
boolean |
false |
是否移除代码注释 |
支持的编程语言
本扩展支持以下编程语言的注释过滤:
| 语言 |
单行注释 |
多行注释 |
| JavaScript / TypeScript |
// |
/* */ |
| C / C++ / C# |
// |
/* */ |
| Java |
// |
/* */ |
| Python |
# |
""" """, ''' ''' |
| Ruby |
# |
- |
| PHP |
//, # |
/* */ |
| Swift |
// |
/* */ |
| Kotlin |
// |
/* */ |
| Go |
// |
/* */ |
| Rust |
// |
/* */ |
| Dart |
// |
/* */ |
| Scala |
// |
/* */ |
| Perl |
# |
- |
| R |
# |
- |
| Objective-C |
// |
/* */ |
| Shell |
# |
- |
| Visual Basic |
' |
- |
| Lua |
# |
- |
| Haskell |
-- |
{- -} |
| Julia |
# |
#= =# |
| SQL |
-- |
/* */ |
| HTML / XML / SVG |
- |
<!-- --> |
| CSS / SCSS / LESS |
- |
/* */ |
| Fortran |
! |
- |
版本历史
1.1.0
- 新增过滤代码注释功能
- 支持多种编程语言的注释格式(单行和多行注释)
- 可在设置中配置是否启用注释过滤
1.0.1
1.0.0
- 支持导出 DOCX 文档
- 支持配置软件名称、著作权人名称
- 支持配置源文件扩展名
- 支持配置要排除的源文件
开发
构建
npm install
npm run compile
打包
npx vsce package
许可证
本项目采用 MIT 许可证。
作者
武清云 emperorwqy@outlook.com
链接
贡献
欢迎提交 Issue 和 Pull Request!
免责声明
本扩展仅用于生成程序鉴别材料,不保证生成的文档完全符合所有地区的软著申请要求。请根据当地的具体要求进行调整。
| |