问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

KoroFileHeader插件配置指南:实现自动代码注释

创作时间:
作者:
@小白创作中心

KoroFileHeader插件配置指南:实现自动代码注释

引用
CSDN
1.
https://m.blog.csdn.net/qq_44726074/article/details/142896794

KoroFileHeader是一款非常实用的代码注释插件,可以帮助开发者快速生成函数注释和头部注释。本文将详细介绍该插件的配置方法,包括如何实现自动添加注释、自定义注释格式等功能。

实现效果

在开始配置之前,让我们先看看使用该插件可以实现什么样的注释效果:

  • 头部注释:包含文件路径、作者信息、创建时间、最后编辑时间等信息。
  • 函数注释:支持自动提取函数参数,并可以自定义参数描述。

配置步骤

1. 下载插件特定版本

由于某些版本可能存在兼容性问题,建议下载4.9.2版本。具体操作如下:

2. 添加配置文件

在VSCode的设置中,选择一个可以打开JSON文件的设置,然后找到KoroFileHeader插件对应的代码位置,复制以下配置代码:

原版配置文件

// 头部注释
"fileheader.customMade": {
    "Author": "git config user.name && git config user.email", // 同时获取用户名与邮箱
    "Date": "Do not edit", // 文件创建时间(不变)
    "LastEditors": "git config user.name && git config user.email", // 文件最后编辑者
    "LastEditTime": "Do not edit", // 文件最后编辑时间
    "FilePath": "Do not edit", // 文件在项目中的相对路径
    "Description": "", // 文件作用说明
    "custom_string_obkoro1_copyright": "Copyright (c) ${now_year} by ${git_name_email}, All Rights Reserved. "
},

// 函数注释
"fileheader.cursorMode": {
    "description": "", // 函数描述
    "param": "", // 函数参数
    "return": "", // 返回值
},

// 插件配置项
"fileheader.configObj": {
    "autoAdd": true, // 检测文件没有头部注释,自动添加
    "autoAddLine": 100, // 超过100行不再自动添加
    "autoAlready": true, // 只添加插件支持的语言
    "supportAutoLanguage": [],
    "prohibitAutoAdd": ["json"], // 禁止自动添加的文件类型
    "folderBlacklist": ["node_modules"], // 禁止自动添加的文件夹
    "wideSame": false, // 头部注释等宽设置
    "wideNum": 13, // 字段长度
    "functionWideNum": 0, // 函数注释等宽设置
    "headInsertLine": {"php": 2}, // 插入位置
    "beforeAnnotation": {}, // 注释前插入内容
    "afterAnnotation": {}, // 注释后插入内容
    "specialOptions": {}, // 特殊字段
    "switch": {
        "newlineAddAnnotation": true // 遇到换行符添加注释符号
    },
    "moveCursor": true, // 自动移动光标到Description
    "dateFormat": "YYYY-MM-DD HH:mm:ss",
    "atSymbol": ["@", "@"], // 自定义注释符号
    "colon": [": ", ": "], // 自定义冒号
    "filePathColon": "路径分隔符替换",
    "showErrorMessage": false, // 是否显示错误通知
    "writeLog": false, // 错误日志
    "CheckFileChange": false, // 文件保存时检查
    "createHeader": false, // 新建文件自动添加
    "useWorker": false, // 使用工作区设置
    "designAddHead": false, // 图案注释
    "headDesignName": "random",
    "headDesign": false,
    "cursorModeInternalAll": {},
    "openFunctionParamsCheck": true, // 开启函数参数检查
    "functionParamsShape": ["{", "}"], // 函数参数外形
    "functionBlankSpaceAll": {},
    "functionTypeSymbol": "*",
    "typeParamOrder": "type param",
    "NoMatchParams": "no show param",
    "functionParamAddStr": "",
    "throttleTime": 60000, // 更新间隔
    "language": {
        "js": {
            "head": "/$$",
            "middle": " $ @",
            "end": " $/",
            "functionSymbol": {
                "head": "/******* ",
                "middle": " * @",
                "end": " */"
            },
            "functionParams": "typescript"
        },
        "h/hpp/cpp": {
            "head": "/*** ",
            "middle": " * @",
            "end": " */"
        },
        "blade.php": {
            "head": "<!--",
            "middle": " * @",
            "end": "-->"
        }
    },
    "annotationStr": {
        "head": "/*",
        "middle": " * @",
        "end": " */",
        "use": false
    }
}

中文配置文件

如果你更习惯使用中文注释,可以参考以下配置:

"fileheader.configObj": {
  "createFileTime": true,
  "language": {
    "c/cpp/h/hpp/java": {
      "head": "/**",
      "middle": " * @",
      "end": "*/"
    },
    "languagetest": {
      "head": "/$$",
      "middle": " $ @",
      "end": " $/",
      "functionSymbol": {
        "head": "/** ",
        "middle": " * @",
        "end": " */"
      },
      "functionParams": "js"
    }
  },
  "autoAdd": false,
  "autoAddLine": 100,
  "autoAlready": true,
  "annotationStr": {
    "head": "/*",
    "middle": " * @",
    "end": " */",
    "use": false
  },
  "headInsertLine": {
    "php": 2,
    "sh": 2
  },
  "beforeAnnotation": {
    "文件后缀": "该文件后缀的头部注释之前添加某些内容"
  },
  "afterAnnotation": {
    "文件后缀": "该文件后缀的头部注释之后添加某些内容"
  },
  "specialOptions": {
    "Author": "作者名称",
    "FilePath": "文件路径",
    "Date": "创建日期",
    "Description": "简要说明",
    "LastEditTime": "编辑时间"
  },
  "switch": {
    "newlineAddAnnotation": true
  },
  "supportAutoLanguage": [],
  "prohibitAutoAdd": ["json"],
  "folderBlacklist": ["node_modules"],
  "prohibitItemAutoAdd": ["项目的全称"],
  "moveCursor": true,
  "dateFormat": "YYYY-MM-DD HH:mm:ss",
  "atSymbol": ["@", "@"],
  "atSymbolObj": {
    "文件后缀": ["头部注释@符号", "函数注释@符号"]
  },
  "colon": [": ", ": "],
  "colonObj": {
    "文件后缀": ["头部注释冒号", "函数注释冒号"]
  },
  "filePathColon": "路径分隔符替换",
  "showErrorMessage": false,
  "writeLog": false,
  "wideSame": false,
  "wideNum": 13,
  "functionWideNum": 0,
  "CheckFileChange": false,
  "createHeader": true,
  "useWorker": false,
  "designAddHead": false,
  "headDesignName": "random",
  "headDesign": false,
  "cursorModeInternalAll": {},
  "openFunctionParamsCheck": true,
  "functionParamsShape": ["{", "}"],
  "functionBlankSpaceAll": {},
  "functionTypeSymbol": "*",
  "typeParamOrder": "param",
  "customHasHeadEnd": {},
  "throttleTime": 60000,
  "functionParamAddStr": " ",
  "NoMatchParams": "no show param"
},
"fileheader.customMade": {
  "FilePath": "Do not edit",
  "Author": "落影殇随",
  "文件版本": "V1.0.0",
  "Date": "Do not edit",
  "Description": "",
  "LastEditTime": "Do not edit",
  "custom_string_obkoro1_copyright": "Copyright (c) ${now_year} by 落影殇随, All Rights Reserved."
},
"fileheader.cursorMode": {
  "函数功能": "",
  "param": " ",
  "return": "",
  "函数备注": ""
}

总结

通过以上配置,你可以根据自己的需求来自定义代码注释的格式和内容。希望这篇文章能帮助你更好地使用KoroFileHeader插件,提高代码开发效率。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号