Releases: OBKoro1/koro1FileHeader
Releases · OBKoro1/koro1FileHeader
Release v4.9.3
[V4.9.3]
如下面的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
Release v4.9.2
- fix: VSCode 1.74.0 兼容,解决函数注释无法使用的问题
Release v4.9.1
Release v4.9.0
[V4.9.0]
- feat:
NoMatchParams
当没有匹配到函数注释参数时是否显示param
和return
"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
[V4.8.23]
- feat:
functionParamAddStr
在type 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) {}
Release v4.8.22
[V4.8.22]
- feat: 新增头部注释模板
Author
和LastEditors
从 git config中读取user.name
、user.email
的功能。 - feat: 新增版权声明获取git config配置:
${git_name}、${git_email}、${git_name_email}
配置:
// 头部注释模板
"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 [email protected]
* 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: [email protected], 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
* fix: 函数注释特殊字段与函数注释等宽共同使用的问题. [#434](https://github.com/OBKoro1/koro…
Release v4.8.20
Release v4.8.19
[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
[V4.8.18]
"fileheader.configObj": {
"specialOptions": { // 特殊字段自定义
"param": "paramAlias", // 别名
"return": "returnAlias", // 别名
}
}
// 效果
/**
* description:
* param2 [type] 字段重命名
* return2 [type] 字段重命名
*/
function test(a, b) {}
- feat: 自定义语言支持函数参数提取
"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;
}