GithubHelp home page GithubHelp logo

obkoro1 / koro1fileheader Goto Github PK

View Code? Open in Web Editor NEW
5.3K 34.0 255.0 63.05 MB

VSCode插件:自动生成,自动更新VSCode文件头部注释, 自动生成函数注释并支持提取函数参数,支持所有主流语言,文档齐全,使用简单,配置灵活方便,持续维护多年。

License: MIT License

JavaScript 79.65% Shell 0.79% C++ 3.41% Go 1.70% Java 1.24% Python 1.23% TypeScript 2.14% Visual Basic .NET 0.96% Lua 0.54% PHP 1.39% HTML 2.03% Vue 2.57% Blade 0.13% C 1.04% C# 0.78% CSS 0.02% Dart 0.12% Objective-C 0.12% SCSS 0.03% Hack 0.11%
vscode vscode-plugin fileheader annotations functionn-annotation header-annotation

koro1fileheader's Introduction

koroFileHeader

koro1FileHeader Repo stars wiki文档详细 持续维护 cicd 开源协议-MIT

简介

  1. VSCode插件: 用于一键生成文件头部注释并自动更新最后编辑人和编辑时间、函数注释自动生成和参数提取。
  2. 插件可以帮助用户养成良好的编码习惯,规范整个团队风格。
  3. 从2018年5月维护至今, 关闭issue 500+ ,拥有39.7w+的用户,VSCode图表统计日均安装200-500
  4. 经过多版迭代后,插件支持所有主流语言,灵活方便,文档齐全,食用简单!
  5. 觉得插件不错的话,就给个Star⭐️吧~

主要功能

  1. 自动生成文件头部注释,自动更新最后编辑人、最后编辑时间等。
  2. 一键生成函数注释,支持函数参数自动提取并列到注释中。
  3. 支持添加佛祖保佑永无bug、神兽护体、甩葱少女等好玩有趣的图像注释
  4. 配置非常灵活方便,各种细节都能配置,可以量身打造适合你的注释。
  5. 支持所有主流语言, 配置文档非常详细,齐全。

使用效果:

头部注释和注释图案

example.gif

函数注释: 自动提取函数参数

  1. 支持主流语言自动提取函数参数

koroFileHeader函数参数提取

  1. 多行函数参数支持自动提取

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

注释图案

支持一键添加佛祖保佑永无BUG、神兽护体等注释图案

添加注释图案

安装和快速上手

安装和快速上手

快速查看插件功能与配置方法

功能目录:查看配置右侧自动生成的markdown目录,浏览所有最新最全的功能。

配置简介配置字段

Wiki文档

安装和快速上手

支持语言

插件设置/配置

配置字段

更新日志

常见问题

佛祖保佑永无BUG、神兽护体等注释图案

我的其他开源推荐

减少摸鱼的时间和频率的Chrome插件:在上班/学习期间很容易下意识的打开摸鱼网站,插件帮助我们减少摸鱼的时间和频率,提高我们上班和学习的效率,节省时间用于学习提升自己或者享受生活

这是一个用于Git自动commit的VSCode插件,它可以用来补充之前忘记提交commit,帮助你把首页的绿色格子填满。

收集和整理了一个大厂前端需要掌握能力的仓库。

其中分为JS基础能力,大厂场景题、大厂面试真题。

希望能够帮助大家提升自己的能力,在面试的时候能够游刃有余,轻松拿到高薪offer。

大厂前端需要掌握的能力

用爱发电,求赞助 😭

开源不易,本插件的开发与维护全都是利用业余时间。

如果觉得这个效率工具还不错, 对你有所帮助,就赞助支持一下我的工作吧。

请我喝杯水吧,十块八块不嫌多,三块五块不嫌少 ❤️

赞助

License

MIT

求Star

如果觉得还不错的话,就给个 Star ⭐️ 鼓励一下我吧~

联系我

掘金前端进阶积累公众号GitHub微信:OBkoro1、邮箱:[email protected]

koro1fileheader's People

Contributors

dependabot[bot] avatar jawa0919 avatar kent119 avatar obkoro1 avatar wangling12 avatar zfb132 avatar zhcode-fun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

koro1fileheader's Issues

language的语言设置不能成功

头部的language自定义设置,都不能成功。
1.是自定义的一门后缀名,如test,保存的时候头部没有增加language自定义的配置。
2.已知后缀md.想自定义配置。保存时还是按默认设置
以上,annotationStr下的use都设置为true

当head中有多余空格时,无法自动更新修改时间

描述bug

wiki没有指明head不能有多余的空格

或者能否优化处理策略

在自定义顶部注释模板的时候,如果配置 head 时使用了空格,那么生成的模板将无法自动更新修改时间。

复现步骤

对任意文件类型,配置 head 时使用空格。

注释设置

/*=================fileheader start=================*/
  // 文件顶部注释配置
  "fileheader.customMade": {
    "Author": "CloudSen",
    "Date": "Do not edit",
    "LastEditors": "CloudSen",
    "LastEditTime": "Do not edit",
    "Description": ""
  },
  // 函数注释配置
  "fileheader.cursorMode": {
    "description": "",
    "param": "",
    "return": ""
  },
  // fileheader插件配置
  "fileheader.configObj": {
    // true此文件的创建时间,false注释生成时的时间
    "createFileTime": true,
    // true只显示日期,false显示时分秒
    "timeNoDetail": false,
    // 对不同的语言配置不同的注释符号, key最好用文件后缀
    "language": {
      "java": {
        "head": "/** ", // <<<<<<<<<<<<<<注意这里不小心多了空格
        "middle": " * @",
        "end": " */"
      },
      "html": {
        "head": "<!-- ", // <<<<<<<<<<<<<<注意这里不小心多了空格
        "middle": "  -- ",
        "end": " -->"
      },
      "js": {
        "head": "/**",
        "middle": " * @",
        "end": " */"
      }
    },
    // 是否自动添加顶部注释
    "autoAdd": false,
    // 只让支持的语言,自动添加头部注释,上面设置true才有用
    "autoAlready": true,
    // 默认注释形式
    "annotationStr": {
      "head": "/*",
      "middle": " * @",
      "end": " */",
      "use": false
    },
    // 在第几行插入顶部注释, 默认第一行
    "headInsertLine": {
      "php": 2,
      "html": 2 // html注释须在DOCTYPE下放定义
    },
    // 头部注释前面插入的内容,key是文件后缀
    "beforeAnnotation": {
      "py": "#!/usr/bin/env python\n# coding=UTF-8"
    },
    "specialOptions": {}
  }
  /*=================fileheader end=================*/

文件后缀

任意

得到的注释

<!--<space>
  -- Author: CloudSen
  -- LastEditors: CloudSen
  -- Description: 
  -- Date: 2019-02-28 09:42:56
  -- LastEditTime: 2019-02-28 11:19:53
-->
/** <space>
 * @Author: CloudSen
 * @LastEditors: CloudSen
 * @Description: 
 * @Date: 2019-02-28 10:07:07
 * @LastEditTime: 2019-02-28 11:17:41
 */

预期的行为

修改文件并保存后,应该自动更新LastEditTime,但是因为配置中head有空格的原因,无法更新。

go 语言支持能力不足

想要支持新的语言:

语言:golang

提供你最终想要的注释模板:
文件头注释:

// Package xxx description
// <Copyright(C) xxx Technology Co., Ltd. All rights reserved.>
// Author: [email protected]
// Date: 2019-05-29
// LastEditors: xxx
// LastEditTime: 2019-05-29

函数注释:

// funcName brief
// description: xxx
// xxx: xxx

您的特性请求是否与问题相关?请描述

  1. 文件头注释
    go lint 要求文件头注释 必须 以 Package xxx 开头;Package前不能有空格;Package与包名之间只能有空格,不能有:

    现有特性生成的文件头注释,不满嘴 go lint 的要求,也没有配置项可以解决这个问题。

  2. 函数注释
    另外,函数注释也存在类似的问题,go lint 要求 以函数名开始后跟函数功能说明。

清楚而简明地描述问题所在,当...不能做到的时候,我总是很沮丧。

描述一下你想要的解决方案.

  1. 增加配置项,允许生成的注释中,配置项后不跟 :
  2. 文件头注释,支持添加版权信息自定义
  3. 函数注释能够自动添加函数名
  4. 函数注释支持自动添加参数列表

描述你考虑过的备选方案
对您考虑过的任何替代解决方案或特性的清晰而简明的描述。

其他相关
文件头注释 go lint 提示:
image

函数注释 go lint 提示:
image

希望JS 函数注释能够自动添加函数参数和函数名功能

想要支持新的语言:

语言:JavaScript

提供你最终想要的注释模板:

/**
     * [nextSteps description]
     * @param  {[type]} index [description]
     * @param  {[type]} a     [description]
     * @return {[type]}       [description]
     */
    nextSteps (index, a) {
      
    }

您的特性请求是否与问题相关?请描述

模板如上,希望在函数注释时,可以生成如上模板,并且根据函数生成对应的参数和函数名,
目前想实现的第一点是如何插入一个 []在param上面。

描述一下你想要的解决方案.

对你想要发生的事情的清晰而简明的描述。

描述你考虑过的备选方案
对您考虑过的任何替代解决方案或特性的清晰而简明的描述。

其他相关
在这里添加关于特性请求的任何其他上下文或屏幕截图。

注释的最前面需要增加说明

一般python的头部注释的最前面还有这种python及编码的说明

#!/usr/bin/env python
# coding=UTF-8

想要达到的效果:

#!/usr/bin/env python
# coding=UTF-8
'''
@Author: TavisD
@Date: 2017-10-16 13:03:37
@LastEditors: TavisD
@LastEditTime: 2019-01-11 12:26:24
@Description: file content
'''

请问下,这个要怎么配置?

大兄弟,你这不支持key自定义啊,要能支持key-value都自定义就好了

描述bug
一个清楚而简洁的bug描述。

复现步骤

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

预期的行为:

预期将会:

屏幕截图

如果方便的话,添加截图来帮助解释你的问题:

版本

VsCode的版本:

注释设置:

您的VsCode设置:

你得到的注释:

你生成的注释为:

问题相关
在这里添加关于这个问题的任何其他上下文。

函数注释没用

vscode 设置快捷键中 搜索 fileheader 值搜索到了ctrl+alt+i的快捷键 。并没有ctrl+alt+d的快捷键

language中fortran语言设置无效

描述bug(必填)
测试了几种语言都没问题,但针对f90, F90, for等为后缀名的fortran语言设置无效。

注释设置(必填):
"language": {
"f90": {
"head": "!!!!!",
"middle": "! ",
"end": "!!!!!"
}
},

文件后缀(必填):

任意文件test.f90.

你得到的注释(必填):
/*

得到的注释仍然是默认注释格式,并非自定义的“!”开头的注释。但如果我把前面所有f90替换为f90a就可以成功。

php下快捷键添加头信息,会插到<?php的前面

描述bug(必填)
php下快捷键添加头信息,会插到<?php的前面

复现步骤

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

注释设置(必填):

// 插件配置选项,readme:https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
"fileheader.configObj": {
"createFileTime": true,
"autoAdd": true,
"annotationStr": {
"head": "/*",
"middle": " * @",
"end": " */",
"use": false
}
},

// 在光标处插入函数注释,默认配置:{'msg':'','param':'','return':''}
"fileheader.cursorMode": {},

// 头部注释,默认设置:{'Author':'your name','Date':'Do not edit','LastEditors':'your name','LastEditTime':'Do not edit','Description':'file content'}
"fileheader.customMade": {"Author":"[email protected]","Date":"Do not edit","LastEditors":"[email protected]","LastEditTime":"Do not edit","Description":"file content"}

VsCode设置:

文件后缀(必填):
php

如:test.js 的后缀为 js

你得到的注释(必填):

你生成的注释为:
/*

预期的行为:

预期得到的注释/行为:

屏幕截图(选填)

如果方便的话,添加截图来帮助解释你的问题:

问题相关(选填)
在这里添加关于这个问题的任何其他上下文。

请求增加语言是否自动添加头选项

您的特性请求是否与问题相关?请描述

比如我只想它在Python和Java中自动添加,C/C++和Markdown里不自动添加,虽然它们都是支持语言

描述一下你想要的解决方案.

提供一个自动添加头的语言黑名单选项

描述你考虑过的备选方案

目前关闭了自动添加,但很想要自动添加的功能😂

时间格式错误且无法自动更新最后修改时间

描述bug(必填)

时间格式与预期不符,和文档中说明的格式也不符,且 ctrl + s 后文件未更新最后修改时间
插入头部注释显示如下:

复现步骤

任意 md 文件均如此,vscode无报错

注释设置(必填):

VsCode设置:

    "fileheader.configObj": {
        "createFileTime": true,
        "timeNoDetail": false,
        "language": {
            "languagetest": {
                "head": "/$$",
                "middle": " $ @",
                "end": " $/"
            },
            "markdown": {
                "head": "---",
                "middle": "",
                "end": "---"
            }
        },
        "autoAdd": false,
        "autoAlready": true,
        "annotationStr": {
            "head": "/*",
            "middle": " * @",
            "end": " */",
            "use": false
        },
        "headInsertLine": {
            "php": 2
        },
        "beforeAnnotation": {
            "py": "#!/usr/bin/env python\n# coding=UTF-8"
        },
        "specialOptions": {
            "Date": "date",
            "LastEditTime": "updated_at",
        }
    },
    "fileheader.cursorMode": {},
    "fileheader.customMade": {
            "Date": "Do not edit", // 文件创建时间(不变)
            "LastEditTime": "Do not edit", // 文件最后编辑时间
            "tags": "",
            "title": "",
            "description": "",
            "keywords": "",
    }

文件后缀(必填):

md

你得到的注释(必填):

你生成的注释为:

---
tags: 
title: 
description: 
keywords: 
date: Thu Feb 21 2019 20:35:59
updated_at: Thu Feb 21 2019 21:16:13
---

预期的行为:

预期得到的注释/行为:

---
tags: 
title: 
description: 
keywords: 
date: 2019-02-21 20:35:59
updated_at: 2019-02-21 21:16:13
---

不能输出头部注释

"fileheader.configObj": {
"createFileTime": true,
"timeNoDetail": false,
"language": {
"languagetest": {
"head": "/$$",
"middle": " $ @",
"end": " $/"
},
"python": {
"head": "'''",
"middle": "",
"end": "'''"
}
},
"autoAdd": false,
"autoAlready": true,
"annotationStr": {
"head": "/*",
"middle": " * @",
"end": " */",
"use": false
},
"headInsertLine": {
"php": 2,
"py": 2
},
"beforeAnnotation": {
"py": "#!/usr/bin/env python3\n# coding= utf-8"
},
"specialOptions": {}
},
"fileheader.customMade":{
"Author": "",
"License": "reserved.",
"Contact": "",
"Editor": "VSCODE",
"File name": "s",
"Created time":"Do not edit",
"Description":"file content"
}

得不到任何注释 不知道错误的原因在哪里
但是我在设置前 是可以看到你的默认配置的,所以我的快捷键没有被占用 那是怎么回事呢

保存后,LastEditTime没有更新

"fileheader.customMade": { "Version": "0.0.0", "Description": "", "Author": "***", "Date": "Do not edit", "LastEditor": "***", "LastEditTime": "Do not edit" }我的用户设置是这个样子的,保存文件后LastEditTime没有修改

【疑问】已经有了的头部信息怎么覆盖修改人和最新日期?

比方说别人创建了,有作者和创建时间。我只是修改,只需要改后面两项,也就是修改人和最后修改时间。

目前使用是会生成一个新的,不会覆盖之前的。

同时要保证没有注释的的时候,我生成的作者就是自己,请问这个插件可以实现吗?

fileheader.cursorMode.LastEditTime 无效

作者,你好。

如题:fileheader.cursorMode.LastEditTime: "Do not edit" 属性无效果, 显示在编辑器里就是 "Do not edit" 这个值而不是真实时间。

vscode 版本号及系统信息如下:

Version: 1.33.0 (user setup)
Commit: 0dd516dd412d42323fc3464531b1c715d51c4c1a
Date: 2019-04-04T15:14:28.026Z
Electron: 3.1.6
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Windows_NT x64 6.1.7600

typescript,fileheader.configObj中annotationStr和language设置不生效

想要支持新的语言:

语言:typescript

"fileheader.configObj":{
"language": {
"languagetest": {
"head": "/**",
"middle": " * @",
"end": " */"
}
},
"annotationStr": {
"head": "/**",
"middle": " * @",
"end": " */",
"use": true } }`

设置如上,但是head效果只会显示'/*',不会显示‘/**’,麻烦指导一下

函数头部注释可以增加时间吗?

描述bug
函数头部注释可以增加时间吗?

预期的行为:
这是我想要的功能:
image

屏幕截图
目前的设置:
image

得到的结果: 时间没有显示
image

还有一个问题
函数注释头部 key 中的 @ 符号怎么去掉?

希望可以得到回答!

这个不支持Linux吗~~~Linux下快捷键有问题

想要支持新的语言:

语言:

提供你最终想要的注释模板:

您的特性请求是否与问题相关?请描述

清楚而简明地描述问题所在,当...不能做到的时候,我总是很沮丧。

描述一下你想要的解决方案.

对你想要发生的事情的清晰而简明的描述。

描述你考虑过的备选方案
对您考虑过的任何替代解决方案或特性的清晰而简明的描述。

其他相关
在这里添加关于特性请求的任何其他上下文或屏幕截图。

关于静态博客头部设置

想要支持新的语言:

语言:markdown

我最终想要的注释模板:

---
date: 2017-03-21 21:10:50
tags:
- firstblog
title: good night
updated_at: 2019-01-26
---

您的特性请求是否与问题相关?请描述

考虑到不同注释的需求, 可能没法要求, 只能使用@Date来表示创建时间

描述一下你想要的解决方案.

将时间相关参数提取出来,作为变量给其他关键词设置

描述你考虑过的备选方案

暂时没想到好的备选方案.

其他相关

而且我没法设置自定义头部:

    "fileheader.customMade": {
        "date": "@Date",
        "tags": "",
        "title": "",
        "updated_at": "@LastEditTime"
    }

我在设置文件中里加了这段, 它总是提示:

[jsonc] Expected comma [514]
头部注释,默认设置:{'Author':'your name','Date':'Do not edit','LastEditors':'your name','LastEditTime':'Do not edit','Description':'file content'}

所以我也没有测试我的可能的备选方案, 我希望头部可以添加一些我自行设置的参数

我没有找到关于自定义头部的设置, 只看到关于插入函数注释的设置.

py文件头

想要支持新的语言:

语言: Python

提供你最终想要的注释模板:

#!/usr/bin/env python2.7
# -*- coding: utf-8 -*-

您的特性请求是否与问题相关?请描述

python 2 文件头不仅需要功能描述、作者、时间等,还需要 python 的 2 个必有内容

描述一下你想要的解决方案.

对你想要发生的事情的清晰而简明的描述。

描述你考虑过的备选方案
对您考虑过的任何替代解决方案或特性的清晰而简明的描述。

其他相关
在这里添加关于特性请求的任何其他上下文或屏幕截图。

配置优先级和Date的格式和其他参数的请求

想要支持新的语言:Java

语言:Java

如下是我在使用插件时想要达到的效果

/**
 * 文件注释.
 * <p></p>
 *
 * @author reasuon
 * @since 2019-01-16
 */ 

想要的:

  1. Date灵活点,不想必须带上时间
  2. @hide注解或其他方式生成两行文字
  3. 用户的配置优于插件

问题描述:
目前的Java语言默认的格式是/*,但是JavaDoc的格式是/**,所以我每生成一次都得修改一次,蛮麻烦的,以及Date只能大写(还有其他的选项也是,JavaDoc不支持Author,只支持author,这就比较不方便)

我希望可以将Date、Author之类的变成注解,这样不管什么语言,都可以直接使用注解完成,如下配置格式:

"fileheader.configObj": {
		"Date": "yyyy-MM-dd",//这是我希望能做到的一个功能,我找了四个插件都没有,他们总是将时间也给我带上去了,而事实我并不需要时间,甚至不应该出现时间,这个其实可以将它拆成三个,@Date、@Time、@DateTime,或者直接让用户配置,例如yyyy-MM-dd对应2019-01-16
		"createFileTime": true,
		"autoAdd": false,
		"autoAlready": true,
		"annotationStr": {
			"head": "/**",
			"middle": " * @",
			"end": " */",
			"use": false
		},
		"headInsertLine": {
			"java": 1  //设置完这项之后我希望我这个配置文件的优先级是要高于插件的,这样方便用户的自定义,不必要写的太死吧,毕竟有时候我希望能够自动帮我在源文件上面使用特定的注解(例如非原生语言自带的注解等)
		}
	},

"fileheader.customMade": {
		"title":"@hide文件说明.",
		"content":"@hide<p>说明内容</p>",//我希望能够使用@hide不生成左边部分,这样就可以直接生成两行我想要的文字,且不带@的前缀
		"author": "reasuon",
		"since": "@Date",
	},

总感觉林林总总提了不少过分的要求,希望不要介意,谢谢

下面是我当前的配置项:
code

support afterAnnotation

既然有了beforeAnnotation 可以在文件注释前添加自定义内容。也可以搞一个afterAnnotation 可以在文件注释末尾添加自定义内容。比如python通常在代码开始是有个作者信息格式为

#!/usr/bin/env python
# -*- coding: utf-8 -*-

__author__ = '[email protected]'

这个功能可以支持一下的

文件头部需要添加:编码说明、脚本程序路径和名称(如python、bash)

描述bug(必填)
一般python的头部注释的最前面还有这种python及编码的说明:

#!/usr/bin/env python
# coding=UTF-8

在我的工程目录下settings.jsonz中添加了如下配置,但未能实现效果:

"fileheader.configObj": {
        "autoAdd": false, // 将该选项设置为true即可开启 
        "beforeAnnotation": {
              "py": "#!/usr/bin/env python\n# coding=UTF-8" // py文件默认,可修改
        },
        "autoAlready": true 
}

复现步骤

  1. 添加配置
  2. ctrl+shift+i

注释设置(必填):

{
    "typescript.locale": "zh-CN",
    "editor.fontSize": 18,
    "fileheader.configObj": {
        "autoAdd": false, // 将该选项设置为true即可开启 
        "beforeAnnotation": {
            "py": "#!/usr/bin/env python\n# coding=UTF-8" // py文件默认,可修改
        },
        "autoAlready": true
    },
    "fileheader.customMade": {       
        "Author": "shuyu.wu",
        "LastEditors": "shuyu.wu",
        "Date": "2019-02-22 14:28:48",
        "LastEditTime": "Do not edit",
        "Description": ""
    }
}

插件版本
3.6.0

shell script 不能正确注释

描述bug(必填)
shell script 不能正确注释,添加 language 也不能正常添加头部,但是自定义了 beforeAnnotation 是可以成功的。

注释设置(必填):

        "beforeAnnotation": {
            "py": "#!/usr/bin/env python\n# -*- coding:utf-8 -*-",
            "sh": "#!/bin/bash",
        },
        "language": {
            "sh": {
                "head": "###",
                "middle": " # @",
                "end": "###"
            }
        },

VsCode设置:

你得到的注释(必填):
你生成的注释为:

#!/bin/bash
/*
 * @Description: 
 * @Author: Linsir
 * @Github: https://github.com/linsir
 * @Date: 2019-05-16 12:06:14
 * @LastEditors: Linsir
 * @LastEditTime: 2019-05-16 12:06:14
 */

预期的行为:

预期得到的注释/行为:

屏幕截图(选填)

如果方便的话,添加截图来帮助解释你的问题:

问题相关(选填)
支持的语言也并没有 shell,但是不知道为啥不配置 language 也能添加。

只能注释js吗?py文件能否注释?

感谢作者的工作,插件非常好用。

但是有个问题,我想把插件改为可以注释.py文件,因此把部分代码做了修改,如下:

Object.keys(data).forEach(key => {
      strContent += `* @${key}: &${key}&\r\n`;
    });
    fontTpl = `\'\'\'\r\n ${strContent}\'\'\'\r\n`;
    let tpl = new fontTemplate(fontTpl).render(data); // 生成模板
    editBuilder.insert(new vscode.Position(0, 0), tpl); // 插入

但是修改后的代码可以直接插入成注释,但是不能自动更新修改时间,请问有什么解决办法?

谢谢!

建议提供自定义时间格式化

想要支持新的语言:

语言:

提供你最终想要的注释模板:
Date: 2019-05-20 15:42:07 +0800

您的特性请求是否与问题相关?请描述
像jekyll的静态博客,时间格式为Ruby中的Time.parse
所以我需要在时间尾部加上时区,要是能自定义格式化就方便许多了。
可能我不知道是否已经有这个功能,下面的"Date"是否有其它值可以设置,好像"Do not edit"并没有具体的意义。

"fileheader.customMade": {
    "Date": "Do not edit", // 文件创建时间(不变)
}

fileheader.customMade如何自动读取LastEditors信息

提供你最终想要的注释模板:

"fileheader.customMade": {
"Author": "自动读取",
"Date": "Do not edit", // 文件创建时间(不变)
"LastEditTime": "Do not edit", // 文件最后编辑时间
"LastEditors": "${fileheader.LastModifiedBy}", // 文件最后编辑者应该从配置中自动读取
}

**您的特性请求是否与问题相关?

多人协作开发的时候,最后作者应该是从配置读取才对,目前应该如何配置?

只有禁用后才起作用,不禁用不起作用

vscode version:1.33.1;korofileheader version:3.6.0;问题很奇怪,安装完成后,只有禁用,插件才起作用,看了配置,不知道哪有问题,启用就不起作用,不知道是哪儿做反了!

LastEditTime 不自动更新

描述bug
更新文件后, LastEditTime, 不自动更新

屏幕截图

Uploading image.png…

版本

VsCode的版本:1.29.1
koroFileHeader 的版本: 2.9.0

python注释支持双引号

想要支持新的语言:

语言:python

提供你最终想要的注释模板:
"""
New Annotation Symbol
"""

您的特性请求是否与问题相关?请描述

当前python的注释只支持单引号,能否也支持双引号。

描述一下你想要的解决方案.

对你想要发生的事情的清晰而简明的描述。

描述你考虑过的备选方案
对您考虑过的任何替代解决方案或特性的清晰而简明的描述。

其他相关
在这里添加关于特性请求的任何其他上下文或屏幕截图。

自定义tex注释似乎无效?

感谢分享很好用的插件!

已自定义设置tex格式
"language": {
"languagetest": {
"head": "/$$",
"middle": " $ @",
"end": " $/"
},
"tex": {
"head": "%%",
"middle": " %% @",
"end": " %%/"
}
},

但是在.tex文件中输出仍然是:
/*

  • @description:
  • @author: Xin Chen
  • @LastEditors: Xin Chen
  • @Date: 2019-04-14 11:53:25
  • @LastEditTime: 2019-04-14 12:23:52
    */

怎么更改注释符号?

楼主你好,非常感谢插件的开发。

我想请教一下怎样更改注释号。我目前在写VBA,它的注释号是单引号('),我怎样在用户定义里面改?

函数注释自动缩进 + 自动生成函数参数列表

下面是我最终想要的样子(python):

def func(param1, param2):
    '''
    @description: 
    @param : 
        param1:
        param2:
    @return: 
    '''   

下面是目前能自动生成的样子:

def func(param1, param2):
'''
@description: 
@param {type} 
@return: 
'''    

描述一下你想要的解决方案.

自动生成函数注释的时候能够自动缩进一个tab,同时自动生成参数列表,就如上面的例子那样。

头部注释错误

描述bug(必填)
修改了language的配置,在该类型的文件下执行fileheader时,开发者工具报错“头部注释错误: TypeError: Cannot read property 'middle' of undefined”

复现步骤

注释设置(必填):

"language": {
	"vue": {
		"head": "<!--",
		"middle": " * @",
		"end": " -->"
	}
},

VsCode设置:

文件后缀(必填):
vue

你得到的注释(必填):
报错

预期的行为:
得到注释

预期得到的注释/行为:

屏幕截图(选填)
image

如果方便的话,添加截图来帮助解释你的问题:

问题相关(选填)
在这里添加关于这个问题的任何其他上下文。

感觉格式不够灵活,看这种格式怎么配置

/*  +-------------------------------------------------------------------------------------
*   |   Title:  客户管理
*   +-------------------------------------------------------------------------------------
*   |   Author: chahualao    |   Email:  [email protected]    |   Update: {updateTime}
*   +-------------------------------------------------------------------------------------
*   |   Description:    
*   |                   
*   +-------------------------------------------------------------------------------------
*/

为什么不直接替换里面的变量,然后格式完全自己定制呢

how to add python annotation

i want to add this in the header `#!/usr/bin/python

-- coding: UTF-8 --`

how to carry out in fileheader.customMade ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.