Home  >  Article  >  Development Tools  >  Share a useful VSCode header annotation plug-in: Fileheader Pro

Share a useful VSCode header annotation plug-in: Fileheader Pro

青灯夜游
青灯夜游forward
2022-07-13 20:22:573508browse

How to quickly make header comments in

VSCode? The following article will share with you a useful VSCode header annotation plug-in: Fileheader Pro. Will you like the Fileheader plug-in that is ready to use out of the box and can be fully customized? All in all, it’s pretty easy to use. Just leave it to it to add header comments!

Share a useful VSCode header annotation plug-in: Fileheader Pro

[Recommended study: "vscode introductory tutorial"]

Sometimes you need to add a comment like this at the head of the code . This comment includes information such as the author, code copyright license, etc. Each repeated addition will be very troublesome for you. As a developer, your time is of course very important. Then this plug-in is born for this scene, and it can do it for you silently and without feeling. If you want to add some ASCII Art at the head of your code like this. It can suit your needs too.

/*
 * @Author: IronLu233
 * @Date: 2021-03-10 12:00:00
 * Copyright © 你的公司名字. All rights reserved.
 */
/*
#### ########   #######  ##    ## ##       ##     ##  #######   #######   #######  
 ##  ##     ## ##     ## ###   ## ##       ##     ## ##     ## ##     ## ##     ## 
 ##  ##     ## ##     ## ####  ## ##       ##     ##        ##        ##        ## 
 ##  ########  ##     ## ## ## ## ##       ##     ##  #######   #######   #######  
 ##  ##   ##   ##     ## ##  #### ##       ##     ## ##               ##        ## 
 ##  ##    ##  ##     ## ##   ### ##       ##     ## ##        ##     ## ##     ## 
#### ##     ##  #######  ##    ## ########  #######  #########  #######   #######  

 * @author        IronLu233 <lrironsora@gmail.com>
 * @date          2022-06-12 22:33:53
 */

This code comes from here:

https://github.com/IronLu233/fileheader-pro/blob/main/src/Extension.ts

Installation and use

How to get it

to let it silently add header comments

The information in the file comments comes from your version control tool, currently The plug-in only supports Git, and in the future it will support other version control tools such as SVN and Mercurial. So please make sure to use it in projects with Git.

After installation, the default template will be able to combine most usage scenarios.

When you create a new file, Fileheader will be automatically added for you. Therefore, in most cases you do not need to manually add

Share a useful VSCode header annotation plug-in: Fileheader Pro

If you need to manually add to existing code, open a file and go to your command panel [ You can use Ctrl (Command under Mac) Shift P], enter

Fileheader Pro: Add Fileheader and press Enter, and you will see that the file comments are properly added to the head of your ingenious code.

Share a useful VSCode header annotation plug-in: Fileheader Pro

#When saving, if your file header comments need to be updated, Fileheader Pro will automatically update them for you.

Share a useful VSCode header annotation plug-in: Fileheader Pro

Custom template

Although the built-in template can meet most scenarios. However, the power and integration capabilities of custom templates make it worth configuring them specifically.

Share a useful VSCode header annotation plug-in: Fileheader Pro

Don’t forget to submit your template to git, and ask the students who develop with you to also install Fileheader Pro

First we need to create a template. In your VSCode command panel, execute this command:

Fileheader Pro: Generate Custom Fileheader Template;

Share a useful VSCode header annotation plug-in: Fileheader Pro

At this time in the root directory of the project of

.vscode/fileheader.template.js. Please modify class CustomLanguageProvider. Especially its getTemplate method. Its return value determines the final appearance of your file header comment. Additionally, languages ​​will determine in which languages' files it can be used.

Please be sure to use

tpl for all returned strings to call the template string function, otherwise some strange problems may occur

Share a useful VSCode header annotation plug-in: Fileheader Pro

You can use each field in the variable to process it and put it into the template. The fields of variables include the following

##birthtimeThe time when the file was created , if it is tracked by the version control system then the creation time will be obtained from the version control system, otherwise the time when the file was created on disk mtimefile The time it was modified. The acquisition logic is the same as authorNameThe author name will be found in the version control tool history. If the file is new, it will use authorEmailThe author's email address, the fallback mechanism is the same as userNameThe user’s name. For git, userEmail user's email address. For git, companyNamecompany name. If you don’t have a company, you can go to the Industrial and Commercial Bureau to register itprojectNameThe name of the current project, which is the name of the folder opened by VSCodefilePathThe path of the current filedirPathThe directory path of the current filefileNameThe file name of the current file
Field Meaning
birthime, is not recommended to use mtime. Because when a file is modified by multiple people, their comments about mtime will cause conflicts when the code is merged!
userName
authorName
git config user.name will be used to obtain the
will be obtained. git config user.emailGet
Fileheader Pro source code itself uses a custom template to add header comments.

So it's also an example:

fileheader-pro/fileheader.template.js at main · IronLu233/fileheader-pro (github.com)

Configuration items

FileheaderPro.disableFileds

For the default template, each field in it can be disabled through it. Disabled fields will not appear in comments. You can modify it in the settings interface of VSCode

The default value is

['mtime']. It is not recommended to enable mtime. Because when a file is modified by multiple people, their comments about mtime will cause conflicts when the code is merged! Share a useful VSCode header annotation plug-in: Fileheader Pro

FileheaderPro.companyName

You need to tell the plugin the name of the company in the settings, as you can't get it from anywhere else !

FileheaderPro.currentUserName and FileheaderPro.currentUserEmail

These two fields can directly overwrite the

userName and userEmail## in the template. #Variables will also indirectly affect authorName and authorEmail (when the file is not tracked by the version control tool)

FileheaderPro.dateFormat

The format of the date in the comment. Please refer to: https://momentjs.com/docs/#/displaying/format

FileheaderPro.autoInsertOnCreateFile

Whether to enable automatically adding file headers when creating files Note. By default it is turned on

FileheaderPro.autoUpdateOnSave

Whether to update the fileheader when saving. Enabled by default.

Fileheader Pro internally only updates file header comments when needed.

Q & A

How is it implemented?

Uses ES6’s

tagged template

.

We can know which ones are fixed strings and which ones are variables used by users. Next, please refer to this abstract class

fileheader-pro/FileheaderLanguageProvider.ts at main · IronLu233/fileheader-pro (github.com)

without me Supported Languages

These languages ​​are currently supported

Javascript
  • Typescript
  • Python
  • HTML
  • CSS
  • Vue
  • Java Please use a custom template, or open an
  • issue
  • . Of course, you are also welcome to submit PR to contribute to Fileheader Pro
  • For more related knowledge about VSCode, please visit:
vscode tutorial

!

The above is the detailed content of Share a useful VSCode header annotation plug-in: Fileheader Pro. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:juejin.cn. If there is any infringement, please contact admin@php.cn delete