Skip to content

Releases: OBKoro1/koro1FileHeader

Release v4.9.3

29 Jan 08:12
Compare
Choose a tag to compare

[V4.9.3]

  • feat: specialOptions支持单独根据语言或者语言后缀进行配置,参考自定义语言的后缀形式 #539, 文档:特殊字段允许自定义

如下面的js、md,会针对后缀文件进行单独的特殊字段设置。

"fileheader.configObj": {
  "specialOptions":{
    "Author": "creater",
    "Date": "since",
    "LastEditTime": "lastTime",
    "LastEditors": "LastAuthor",
    "Description": "message", // 头部注释大写的描述Description
    "description": "function message", // 函数注释小写的描述:description
    "FilePath": "文件相对于项目的路径"
    "param": "param2", // 函数注释parm参数别名
    // 文件后缀、或者语言后缀,可针对单个文件后缀进行配置:language的自定义语言配置
    "js": {
        "Description": "message2",  // 合并specialOptions第一层级的配置,覆盖Description的配置
        "return": "return2", // 单独为js文件添加return 特殊字段配置
    },
    "md": {
      "Date": "date",
      "Description": "tag"
    }
  }
}
  • feat: 函数注释特殊字段为description,头部注释的特殊字段为Description,用于区分 #512

文档:特殊字段允许自定义移动光标到Description :所在行

  • fix: now_year改为全局匹配 #522
  • fix: now_year、用户名和邮箱不再绑定 #509
  • fix: param等宽错误 #495
  • fix: 修复vscode默认快捷键和插件简介描述 #498

Release v4.9.2

14 Dec 15:23
Compare
Choose a tag to compare
  • fix: VSCode 1.74.0 兼容,解决函数注释无法使用的问题

Release v4.9.1

21 May 10:56
Compare
Choose a tag to compare

[V4.9.1]

  • fix: 自定义特殊字段LastEditors取值导致的问题 #478
  • fix: 修复params读取失败的问题 #477
  • fix: 修复git config读取失败的问题 #475

Release v4.9.0

14 May 13:19
Compare
Choose a tag to compare

[V4.9.0]

  • feat: NoMatchParams当没有匹配到函数注释参数时是否显示paramreturn
"fileheader.configObj": {
  "NoMatchParams": "no param" // 默认不显示param那一行
}

示例:

// "NoMatchParams": "no show param"
/**
 * @description: 没匹配到函数参数,不显示@param那行
 * @return {type} 填写返回值
 */

export const download = async ( ) => {
  // do something
  console.log('空参数 匹配不到函数参数: NoMatchParams')
  return 'something'
};

// "NoMatchParams": "no show param and return"
/**
 * @description: 只显示description 不显示@param与@return这两行
 */
export const download = async ( ) => {
  // do something
  console.log('空参数 匹配不到函数参数: NoMatchParams')
  return 'something'
};

// "NoMatchParams": "show param"
/**
 * @description: 没匹配到函数参数 也显示@param与@return
 * @param {type}
 * @return {type}
 */
export const download = async ( ) => {
  console.log('空参数 匹配不到函数参数: NoMatchParams')
};

Release v4.8.23

14 May 09:01
Compare
Choose a tag to compare

[V4.8.23]

  • feat: functionParamAddStrtype param后面增加字符串, 在 type param 后面增加字符串 可能是冒号,方便输入参数描述。 #443
"fileheader.configObj": {
  "functionParamAddStr": "" // 默认不增加字符串
}

示例:

// "functionParamAddStr": ":"
/**
 * @description: 增加冒号 方便输入参数描述
 * @param {type} a:
 * @param {type} b:
 * @param {array} c:
 * @return {type}
 */
function test2(a, b, ...c) {}
  • fix: 在VSCode打开的对应项目中获取git config信息 #469
  • fix: 修复java函数注释参数提取不精准的问题 #470
  • fix: 修复不设置AuthorLastEditors时出现的无法生成注释的bug
  • fix: c、java、solidity不支持连续的容器对象作为参数 #468

Release v4.8.22

02 May 10:24
Compare
Choose a tag to compare

[V4.8.22]

配置:

// 头部注释模板
"fileheader.customMade": {
  // 获取当前项目下git config中的: 用户名、邮箱
  // 公司项目和个人项目可以配置不同的用户名与邮箱 搜索: gitconfig includeIf  比如: https://ayase.moe/2021/03/09/customized-git-config/
  "Author": "git config user.name && git config user.email", // 同时获取用户名与邮箱
  // "Author": "git config user.name", // 仅获取用户名
  // "Author": "git config user.email", // 仅获取邮箱
  // "Author": "OBKoro1", // 固定值 不从git config中获取
  "Date": "Do not edit",
  // 设置后,保存文件更改默认更新最后编辑人
  "LastEditors": "git config user.name && git config user.email", // 配置规则与Author字段一致
  "LastEditTime": "Do not edit",
  "FilePath": "",
  // 个人版权声明: ${git_name} ${git_email} ${git_name_email}
  // 公司版权声明: 写死即可
  "custom_string_obkoro1_copyright": "Copyright (c) ${now_year} by ${git_name} email: ${git_email}, All Rights Reserved. "
},

示例:

// "Author": "git config user.name && git config user.email"
// "LastEditors": "git config user.name"
//  "custom_string_obkoro1_copyright": "Copyright (c) ${now_year} by ${git_name} email: ${git_email}, All Rights Reserved. "
/*
 * Author       : OBKoro1 obkoro1@foxmail.com
 * Date         : 2022-05-01 15:35:12
 * LastEditors  : OBKoro1
 * LastEditTime : 2022-05-02 11:31:09
 * FilePath     : /fileHead/function-params/test.js
 * Copyright (c) 2022 by OBKoro1 email: obkoro1@foxmail.com, All Rights Reserved. 
 */
  • feat: 函数注释匹配到param 但是不需要type时 只显示param 比如: [*] 改成 []

配置:

"fileheader.configObj": {
    "functionTypeSymbol": "match param no type"
}

示例:

/**
 * @description: 这边匹配到param 但是没有type 正常是 [number] c [string] b
 * @param [] c
 * @param [] b
 * @return []
 */
function test2(c: number, b: string = '2') {}
  • feat: 新建文件自动添加头部注释,不再自动打开。
"fileheader.configObj": {
  "createHeader": false // 默认关闭 之前是true
}
  • feat: specialOptions特殊字段新增Author

Release v4.8.21

13 Mar 12:52
Compare
Choose a tag to compare
* fix: 函数注释特殊字段与函数注释等宽共同使用的问题. [#434](https://github.com/OBKoro1/koro…

…1FileHeader/issues/434)

Release v4.8.20

27 Feb 11:35
Compare
Choose a tag to compare

[V4.8.20]

  • feat: 多行函数参数支持选中后按函数注释快捷键自动提取

    1. 鼠标左键选择多行函数声明区域,函数声明区域尽量精准
    2. 按生成函数注释快捷键

    多行函数参数自动提取参数

  • fix: afterAnnotation只有一个换行,取消自动输入换行 防止换行两次 #430

  • fix: 佛祖保佑与永不宕机之间是否多了两个空格 #424

Release v4.8.19

23 Jan 07:33
Compare
Choose a tag to compare

[V4.8.19]

  • feat: 新增光标移动快捷键,用于函数参数填写时使用(光标移动到下一行的末尾)
// 快捷键
{
  "command": "koroFileheader.table",
  "key": "alt+y", // window系统
  "mac": "cmd+y", // mac
  "linux": "meta+y", // linux
  "when": "editorTextFocus"
}

  • feat: 函数注释参数提取新增支持tsx
  • feat: typeParamOrder支持函数参数提取只显示函数参数,不展示type类型, 关联#397
"fileheader.configObj": {
    "typeParamOrder": "param"
}
// "typeParamOrder": "param"
/**
 * @description: 只有参数 没有类型
 * @param axiosMethods
 * @param apiLink
 * @param opts
 * @param fileName
 * @return {type}
 */
export const download = async (axiosMethods, apiLink, opts, fileName) => {};
  • docs: 文档更新。
  • fix: 修复箭头函数参数的提取错误, 关联#394

Release v4.8.18

04 Nov 12:50
Compare
Choose a tag to compare

[V4.8.18]

"fileheader.configObj": {
    "specialOptions": { // 特殊字段自定义
      "param": "paramAlias", // 别名
      "return": "returnAlias", // 别名
    }
}
// 效果
/**
 * description: 
 * param2 [type] 字段重命名
 * return2 [type] 字段重命名
 */
function test(a, b) {}
"fileheader.configObj": {
    // 自定义语言
    "language": {
      "tsx": { // jsx后缀的文件
        "head": "/**",
        "middle": " * ",
        "end": "*/",
        "functionParams": "typescript" // 函数注释使用ts语言的解析逻辑
      }
    }
}

使用下列对象的key,即可获取对应语言解析函数参数的逻辑。

// 支持函数注释的语言
const supportLanguage = {
  javascript: 'function-js.js',
  javascriptreact: 'function-js.js', // react jsx
  vue: 'function-js.js', // vue
  html: 'function-js.js', // html
  typescript: 'function-ts.js', // ts
  typescriptreact: 'function-ts.js', // react tsx
  java: 'function-java.js', // java
  python: 'function-python.js', // py
  rust: 'function-rust.js', // rust
  go: 'function-go.js', // go
  c: 'function-c.js',
  cpp: 'function-c.js',
  php: 'function-php.js',
  solidity: 'function-solidity.js' // 智能合约的语言
}
  • feat: 支持solidity智能合约语言 #365

ps: vscode本身不支持solidity,需要安装solidity插件来支持该语言,而后才能开启函数注释。

/**
 * description:
 * param x [uint256]
 * param y [uint256]
 * return [type]
 */
function multiply(uint256 x, uint256 y) returns (uint256 z) {
    z = x * y;
}
  • fix: C++函数注释无法提取带有引用符号&的参数 #379
  • fix: 修复文档错误。
  • fix: 修复Ubuntu下的快捷键: ctrl+super+ictrl+super+t
  • fix: 修复functionParamsShapeno type时,函数注释return返回值出错的问题 #382
  • fix: 修复文件未保存到系统中,就进行读取diff,导致diff重置不准的问题