使用vs code扩展自动补全bat代码

前言

一直想和linux命令自动补全那样方便的在vs code里写bat代码,后面自己发现了一个非常好用的扩展,还可以自定义配置补全的内容。

安装Rech Batch扩展

弹窗提示

弹窗时选don't ask anymore

原文

1
The built-in extension 'Windows Bat Language Basics' is enabled along with Rech Batch, which may lead to misbehavior while inserting 'rem' comments in lowercase. Would you like to manually disable the built-in extension 'Windows Bat Language Basics'?

有道翻译

1
内置的扩展'Windows Bat Language Basics'与Rech批处理一起启用,这可能会导致错误行为,而插入'rem'注释小写。是否要手动禁用内置扩展“Windows Bat Language Basics”?

配置补全语句

默认安装路径C:\Users\Administrator\.vscode\extensions\rechinformatica.rech-editor-batch-0.0.19\snippets里面编辑bat.json,这里面就是快捷补全内容。

比如我在前面添加了以下两个补全配置

再测试输入刚刚配置好的@ea回车,自动补全了我们定义的代码。

编码

这个扩展的编码是作者国家的Windows 1252编码,而国内用gbk编码。

在扩展主目录C:\Users\Administrator\.vscode\extensions\rechinformatica.rech-editor-batch-0.0.19下找到package.json进行编辑。可以看到第34行就是编码配置,改成小写的gbk,然后重启vs code生效。

可以看到现在打开bat文件默认就是gbk编码了。

全部文件默认编码

分享一个所有文本都指定为gbk编码,默认是utf-8。当然上面bat扩展的编码只能通过以上的配置文件进行修改。
在vs code中选择文件-首选项-设置-文本编辑器里的文件中修改Encoding选项为gbk就好了。

不建议这么做,因为很多文件默认必须用utf-8,比如我hexo默认编码是utf-8,编写md文档到hexo上就会乱码。

分割线修复

非常奇怪的设定,中间会出现一条分割线,叫字符提示线。如果不是公司团队必须规定多少字符换行,个人用就感觉特别鸡肋,影响视觉。去掉这个当时也找了好久的教程,后面自己摸索出来了。

首先调vs code的配置上没有用的,可以看到vs code的配置根本没有配置字符提示线。

同上面调vs code的默认编码一样,必须去修改此扩展的配置,还是之前修改编码的package.json文件里修改。

35到37行就是设置字符提示线的配置,这里设置的是在120个字符显示,json文件是没有注释功能的,删除这个120和vs code的配置保持一致就好了。

参考文献

VS Code怎么设置文件中默认使用的字符集编码