Skip to content

koro1FileHeader安装和快速上手

更新说明

  • 维护人员:码小趣 (www.maxiaoqu.com)
  • 维护日期:2024-03-26T11:19:25.000Z
  • 最后维护人员:码小趣 (www.maxiaoqu.com)
  • 最后维护日期:2024-03-26T14:20:23.000Z

安装

在 Vscode 扩展商店中搜索koroFileHeader, 点击安装。

参考地址:https://github.com/OBKoro1/koro1FileHeader/wiki/安装和快速上手

打开setting.json设置模板

1、简单的输入命令

打开VSCode命令面板: mac: command + p, window: ctrl + p

输入> Open Settings(注意>后面有一个空格)

2、从设置中打开

首选项 > 设置 > 搜索fileheader > 在右侧中贴上配置 > 做简单的更改

设置setting.json设置模板

1、使用下方替换setting.json设置模板

json
{
  "[json]": {
    "editor.defaultFormatter": "vscode.json-language-features"
  },
  "[html]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  },
  "[typescript]": {
    "editor.defaultFormatter": "vscode.typescript-language-features"
  },
  "[javascript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  },
  "liveServer.settings.donotShowInfoMsg": true,
  "fileheader.configObj": {
    "autoAdd": true,
    "autoAddLine": 1000,
    "autoAlready": true,
    "supportAutoLanguage": [],
    "prohibitAutoAdd": [
      "json"
    ],
    "prohibitItemAutoAdd": [],
    "folderBlacklist": [
      "node_modules"
    ],
    "wideSame": false,
    "wideNum": 13,
    "functionWideNum": 0,
    "headInsertLine": {
      "php": 2,
      "sh": 2
    },
    "beforeAnnotation": {},
    "afterAnnotation": {},
    "specialOptions": {},
    "switch": {
      "newlineAddAnnotation": true
    },
    "moveCursor": true,
    "dateFormat": "YYYY-MM-DD HH:mm:ss",
    "atSymbol": [
      "@",
      "@"
    ],
    "atSymbolObj": {},
    "colon": [
      ": ",
      ": "
    ],
    "colonObj": {},
    "filePathColon": "",
    "showErrorMessage": false,
    "writeLog": false,
    "CheckFileChange": false,
    "createHeader": true,
    "useWorker": false,
    "designAddHead": false,
    "headDesignName": "random",
    "headDesign": false,
    "cursorModeInternalAll": {},
    "openFunctionParamsCheck": true,
    "functionParamsShape": [
      "{",
      "}"
    ],
    "functionBlankSpaceAll": {},
    "functionTypeSymbol": "*",
    "typeParamOrder": "type param",
    "customHasHeadEnd": {},
    "throttleTime": 10000,
    "language": {
      "ts/tsx/mts/js/jsx/mjs": {
        "head": "/** ",
        "middle": " * @",
        "end": " */",
        "functionSymbol": {
          "head": "/** ",
          "middle": " * @",
          "end": " */"
        },
        "functionParams": "typescript"
      },
      "md": {
        "head": "---",
        "middle": "",
        "end": "---"
      },
      "html/xml/xhtml/svg/svgz/vue/wsdl": {
        "head": "<!--",
        "middle": " * @",
        "end": "-->"
      }
    },
    "annotationStr": {
      "head": "/** ",
      "middle": " * @",
      "end": " */",
      "use": true
    },
    "createFileTime": true,
    "functionParamAddStr": "",
    "NoMatchParams": "no show param"
  },
  "editor.largeFileOptimizations": false,
  "fileheader.customMade": {
    "Description": "文件描述",
    "Author": "码小趣 (www.maxiaoqu.com)",
    "Date": "",
    "LastEditors": "码小趣 (www.maxiaoqu.com)",
    "LastEditTime": ""
  },
  "fileheader.cursorMode": {
    "description": "",
    "param": "",
    "return": ""
  }
}

2、修改fileheader.customMade里的AuthorLastEditors字段

ts
{
  "fileheader.customMade": {
    "Description": "文件描述",
    "Author": "码小趣 (www.maxiaoqu.com)", 
    "Date": "",
    "LastEditors": "码小趣 (www.maxiaoqu.com)", 
    "LastEditTime": ""
  }
}

修改成:你的姓名 (你的邮箱或网址)

ts
{
  "fileheader.customMade": {
    "Description": "文件描述",
    "Author": "码小趣 (www.maxiaoqu.com)", 
    "Author": "你的姓名 (你的邮箱或网址)", 
    "Date": "",
    "LastEditors": "码小趣 (www.maxiaoqu.com)",
    "LastEditors": "你的姓名 (你的邮箱或网址)",
    "LastEditTime": ""
  }
}

setting.json参数说明

text
{
    "[json]": {
        "editor.defaultFormatter": "vscode.json-language-features"
    },
    "[html]": {
        "editor.defaultFormatter": "esbenp.prettier-vscode"
    },
    "[typescript]": {
        "editor.defaultFormatter": "vscode.typescript-language-features"
    },
    "[javascript]": {
        "editor.defaultFormatter": "esbenp.prettier-vscode"
    },
    "liveServer.settings.donotShowInfoMsg": true,
    "fileheader.configObj": {
        "autoAdd": true, // 检测文件没有头部注释,自动添加文件头部注释
        "autoAddLine": 1000, // 文件超过多少行数 不再自动添加头部注释
        "autoAlready": true,  // 只添加插件支持的语言以及用户通过`language`选项自定义的注释
        // 设置之后,在数组内的文件才支持自动添加
        "supportAutoLanguage": [], 
        // 自动添加头部注释黑名单
        "prohibitAutoAdd": [
            "json"
        ], 
        // 项目的全称禁止项目自动添加头部注释, 使用快捷键自行添加
        "prohibitItemAutoAdd": [],
        // 文件夹或文件名禁止自动添加头部注释
        "folderBlacklist": [ "node_modules"],
        "wideSame": false,  // 头部注释等宽设置
        "wideNum": 13,  // 头部注释字段长度 默认为13
        "functionWideNum": 0, // 函数注释等宽设置 设为0 即为关闭
        // 头部注释第几行插入
        "headInsertLine": {
            "文件后缀": "行数",
            "php": 2,
            "sh": 2
        },
        // 头部注释之前插入内容
        "beforeAnnotation": {
            "文件后缀": "该文件后缀的头部注释之前添加某些内容"
        },
        // 头部注释之后插入内容
        "afterAnnotation": {
            "文件后缀": "该文件后缀的头部注释之后添加某些内容"
        },
        // 特殊字段自定义
        "specialOptions": {
            "特殊字段": "自定义比如LastEditTime/LastEditors"
        },
        "switch": {
            "newlineAddAnnotation": true // 默认遇到换行符(\r\n \n \r)添加注释符号
        },
        "moveCursor": true, // 自动移动光标到Description所在行
        "dateFormat": "YYYY-MM-DD HH:mm:ss", // 日期格式化格式
        // 更改所有文件的自定义注释中的@符号
        "atSymbol": [
            "@",
            "@"
        ],
        // 更改单独语言/文件的@
        "atSymbolObj": {
            "文件后缀": [
                "头部注释@符号",
                "函数注释@符号"
            ]
        },
        // 更改所有文件的注释冒号
        "colon": [
            ": ",
            ": "
        ],
        // 更改单独语言/文件的冒号
        "colonObj": {
            "文件后缀": [
                "头部注释冒号",
                "函数注释冒号"
            ]
        },
        "filePathColon": "路径分隔符替换", // 默认值: mac: / window是: \
        "showErrorMessage": false, // 是否显示插件错误通知 用于debugger
        "writeLog": false,// 错误日志生成
        "CheckFileChange": false,// 单个文件保存时进行diff检查
        "createHeader": true,// 新建文件自动添加头部注释
        "useWorker": false,// 是否使用工作区设置
        "designAddHead": false,// 添加注释图案时添加头部注释
        "headDesignName": "random",// 图案注释使用哪个图案 
        "headDesign": false,// 是否使用图案注释替换头部注释
        // 自定义配置是否在函数内生成注释 不同文件类型和语言类型
        "cursorModeInternalAll": {},
        "openFunctionParamsCheck": true,// 开启关闭自动提取添加函数参数
        // 函数参数外形自定义 
        "functionParamsShape": [
            "{",
            "}"
        ],
        // 函数注释空格缩进 默认为空对象 默认值为0 不缩进
        "functionBlankSpaceAll": {},
        "functionTypeSymbol": "*",// 参数没有类型时的默认值
        "typeParamOrder": "type param",// 参数类型 和 参数的位置自定义
        // 自定义语言注释,自定义取消 head、end 部分
        // 不设置自定义配置language无效 默认都有head、end
        "customHasHeadEnd": {},
        "throttleTime": 10000,// 对同一个文件 需要过10秒再次修改文件并保存才会更新注释
        // 自定义语言注释符号,覆盖插件的注释格式
        "language": {
            // script文件
            "ts/tsx/mts/js/jsx/mjs": {
                "head": "/** ",
                "middle": " * @",
                "end": " */",
                // 函数自定义注释符号:如果有此配置 会默认使用
                "functionSymbol": {
                    "head": "/** ", // 统一增加几个*号
                    "middle": " * @",
                    "end": " */"
                },
                "functionParams": "typescript" // 函数注释使用ts语言的解析逻辑
            },
            // markdown文件
            "md": {
                "head": "---",
                "middle": "",
                "end": "---"
            },
            // 超文本文件
            "html/xml/xhtml/svg/svgz/vue/wsdl":{
                "head": "<!--",
                "middle": " * @",
                "end": "-->",
            }
        },
        // 默认注释  没有匹配到注释符号的时候使用。
        "annotationStr": {
            "head": "/** ",// 自定义注释头部
            "middle": " * @",// 自定义注释中间部分(注意空格,这也是最终生成注释的一部分)
            "end": " */",// 自定义注释尾部
            "use": true // 是否使用自定义注释符号
        },
        "createFileTime": true, // 当前时间/创建文件时间
        "functionParamAddStr": "", // type param后面增加字符串,默认不增加字符串
        "NoMatchParams": "no show param" // 当没有匹配到函数注释参数时是否显示param和return
    },
    "editor.largeFileOptimizations": false,
    // 头部注释
    "fileheader.customMade": {
        "Description": "文件描述", // 介绍文件的作用
        "Author": "码小趣 (www.maxiaoqu.com)", // 用户名与邮箱
        "Date": "",// 文件创建时间(不变)
        "LastEditors": "码小趣 (www.maxiaoqu.com)",// 文件最后编辑者,与Author字段一致
        "LastEditTime": ""// 文件最后编辑时间
    },
    // 函数注释
    "fileheader.cursorMode": {
        "description": "", // 函数注释生成之后,光标移动到这里
        "param": "", // param 开启函数参数自动提取 需要将光标放在函数行或者函数上方的空白行
        "return": "",// 返回参数
    }
}

桑瑞新途.产品研发组