使用vscode

目前在用vscode编写golang和vue。本文记录一些使用经验。

---------快捷键--------

大括号匹配跳转:Ctrl + Shift+ \

----------扩展----------

Draw.io Integration 绘制流程图

Thunder Client 代替postman

favorites  一开始用的pin,也就是那种图钉图标的功能。不过那个pin有bug,移除文件时有问题,总是移除最后一个,而不是移除我选中的。后来一想,pin这种钉一下功能,不就是收藏起来吗。于是搜索favorite,就找到很多。开始装了几个,都不好用,直到发现这个。

Status Bar Tag 可以给打开的文件夹自定义名字,显示再状态栏上。

Eva Theme这个主题不错。鼠标选中关键词时,希望其他地方的关键词也高亮出来。这个主题表现的比较好。

Material Theme也是个不错的主题。

dark-plus-syntax 是个不错的主题(2021-4发现,看c++代码很舒服)

Bracket Pair Colorizer 这个扩展可以把代码中的作用域标的很清楚。

godef工具实现golang的代码查看时的跳转,但没有缓存,每次跳转,都要查找语法树,很慢。https://github.com/gitbufenshuo/godefcache 这个工具实现了缓存功能,跳转时很快。https://github.com/archxm/godefcache.git 我又适当增强了下。

go-outline 工具提供了代码大纲功能,不过不太好用。比如类成员函数,展示给我们的是类名+函数名称,由于这两名称连一块,很长,只显示了前面那部分,这样我们没法看清是那个函数。go outliner这一扩展工具,属于前者的加强版,该扩展查看函数,类等等,更加方便

highlight-icemode-select 选中后相同内容高亮。发现该扩展不太好用,不会全词匹配。还是使用vscode自带的更好,需要进行设置,如下:

"workbench.colorCustomizations": {
	"editor.selectionBackground": "#14a",
	"editor.selectionHighlightBackground": "#733",
	"editor.wordHighlightBackground": "#660",
	"editorCursor.foreground": "#fff"
}

错误提示不刷新:语法出现错误时,改完后保存,就会消失。不过,如果文件中的符号是从其他文件引用的,然后其他文件有改动,当前文件中的符号引用可能会提示类型不匹配的错误,如果其他文件中定义该符号的地方又变回来了,当前文件的符号还是提示语法错误,但实际上,已经没有语法错误了。这时可以在当前文件随便输入个回车,保存,再删除,再保存,错误提示就消失了。

调试时,把launch.json中的program修改为:"program": "${workspaceRoot}"

Bookmarks,以前用VS写C++项目时,习惯了bookmark,现在vs code里没有该功能,需要加扩展。这个扩展的源码在https://github.com/alefragnani/vscode-bookmarks。该源码的package.json里,可看到一些原生命令,这些命令在另一个叫做

statusbar-commands 的扩展里,会用到。

Line Highlight Bookmark,同样是bookmark,不过这款的快捷键似乎更好用,ctrl+b就是把当前行设置或取消bookmark,按F2跳到下一个。

statusbar-commands vscode的一些快捷按钮比较少,所以使用该扩展,在状态栏那里增加一些快捷按钮。

简单地说,当安装完bookmark和 statusbar-commands后,在settings.json里,增加如下代码:

"statusbar_command.commands":
    [{
      "text": "$(bookmark)",
      "tooltip": "workspace settings",
      "alignment": "left",
      "command": "bookmarks.toggle"
    },{
      "text": "$(arrow-left)",
      "tooltip": "workspace settings",
      "alignment": "left",
      "command": "bookmarks.jumpToPrevious"
    },{
      "text": "$(arrow-right)",
      "tooltip": "workspace settings",
      "alignment": "left",
      "command": "bookmarks.jumpToNext"
    }

其实还有更强大的一个扩展,就叫Commands,但我这次没试它。以前在这个扩展的描述里,我学到,像$(bookmark)这种指定图标的素材,是在Octicons中获取的。

有时间的话,还是应该好好研究下vscode的扩展写法。

----------一些尝试----------

https://github.com/fatih/gomodifytags 一个工具,可以快速为结构体生成tag

----------使用经验----------

如果编辑器内字体小,可以设置字体大小,如果菜单项字体小,可以按住ctrl再按+或者-。

"C_Cpp.intelliSenseCachePath": "${workspaceFolder}/.vscode/cache" 改完后,c++的intelliSense感觉要快些。原因不明。

禁用不必要的扩展:因为我需要编写golang和c++代码,所以安装了golang和c++相关的扩展,当我打开一个c++项目时,go.exe也会时不时运行,还挺占用cpu资源的。于是搜了搜,找到一个方案,先把所有扩展都禁用,然后打开c++项目,再把需要用到的扩展对工作区启用。go扩展不打开,所以go.exe就不运行了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值