博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
高效开发者是如何个性化VS Code插件与配置的?
阅读量:5943 次
发布时间:2019-06-19

本文共 4255 字,大约阅读时间需要 14 分钟。

译者按: IDE是生产力的保证!

  • 原文:
  • 译者:

本文采用意译,版权归原作者所有

2年之前,我放弃了Sublime Text,选择了作为代码编辑器。

我每天花在VS Code上的时间长达5~6个小时,因此按照我的需求优化VS Code配置十分必要。过去这2年里,我试过各种各样的插件与配置,而现在我感觉一切都完美了,是时候给大家分享一下我的使用技巧了!

插件

VS Code有着非常丰富的插件,这里我给大家推荐几个我最喜欢的VS Code插件。

下载量:167万

我使用Prettier来统一代码风格,当我保存HTML/CSS/JavaScript文件时,它会自动调整代码格式。这样,我不用担心代码格式问题了。由于Prettier本身不能个性化配置,有时可能会引起不适,但是至少保证团队成员可以轻易统一代码风格。

下载量:119万

npm插件可以检查package.json中所定义的npm模块与实际安装的npm模块是否一致:

  • package.json中定义了,但是实际未安装
  • package.json中未定义,但是实际安装了
  • package.json中定义的版本与实际安装的版本不一致

下载量:105万

npm Intellisense插件会为package.json建立索引,这样当我require某个模块时,它可以自动补全。

下载量:95万

Bracket Pair Colorizer可以为代码中的匹配的括号自动着色,以不同的颜色进行区分,这样我们可以轻易地辨别某个代码块的开始与结束。

, 1代码搞定BUG监控!

下载量:117万

Auto Close Tag插件的功能非常简单,它可以自动补全HTML/XML的关闭标签。

下载量:164万

我非常喜欢Gitlens,因为它可以帮助我快速理解代码的修改历史。

Current Line Blame:查看当前行代码的结尾查看最近一次commit的姓名、时间以及信息

Current Line Hovers:在当前行代码的悬浮框查看详细的最近一次的commit信息。

下载量:45万

Markdown All in One插件帮助我编写README以及其他MarkDown文件。我尤其喜欢它处理列表以及表格的方式。

自动调整列表的数字序号

自动格式化表格

用户配置

除了安装各种各样的插件,我们还可以通过配置VS Code的User Settings来个性化我们的VS Code。

字体设置

我非常喜欢带有ligatures(合字、连字、连结字或合体字)的字体。ligatures就是将多于一个字母的合成一个字形。我主要使用作为我编程所使用的字体,如下图中的=>===

我的字体配置如下:

"editor.fontFamily": "'Fira Code', 'Operator Mono', 'iA Writer Duospace', 'Source Code Pro', Menlo, Monaco, monospace","editor.fontLigatures": true

关于缩进,我是这样配置的:

"editor.detectIndentation": true, "editor.renderIndentGuides": false,

import路径移动或者重命名时,自动更新:

"javascript.updateImportsOnFileMove.enabled": "always",

user-settings.json

下面是我的VS Code的配置文件user-settings.json

{    "workbench.colorCustomizations": {        "activityBar.background": "#111111",        "activityBarBadge.background": "#FFA000",        "list.activeSelectionForeground": "#FFA000",        "list.inactiveSelectionForeground": "#FFA000",        "list.highlightForeground": "#FFA000",        "scrollbarSlider.activeBackground": "#FFA00050",        "editorSuggestWidget.highlightForeground": "#FFA000",        "textLink.foreground": "#FFA000",        "progressBar.background": "#FFA000",        "pickerGroup.foreground": "#FFA000",        "tab.activeBorder": "#FFA000",        "notificationLink.foreground": "#FFA000",        "editorWidget.resizeBorder": "#FFA000",        "editorWidget.border": "#FFA000",        "settings.modifiedItemIndicator": "#FFA000",        "settings.headerForeground": "#FFA000",        "panelTitle.activeBorder": "#FFA000",        "breadcrumb.activeSelectionForeground": "#FFA000",        "menu.selectionForeground": "#FFA000",        "menubar.selectionForeground": "#FFA000"    },    "editor.fontSize": 14,    "editor.lineHeight": 24,    // These are for subliminal, check them out.    "editor.hideCursorInOverviewRuler": true,    "editor.lineNumbers": "on",    "editor.overviewRulerBorder": false,    "editor.renderIndentGuides": false,    "editor.renderLineHighlight": "none",    "editor.quickSuggestions": true,    // end subliminal changes    "editor.fontFamily": "'Fira Code', 'Operator Mono', 'iA Writer Duospace', 'Source Code Pro', Menlo, Monaco, monospace",    "vsicons.projectDetection.autoReload": true,    "editor.formatOnPaste": false,    "editor.formatOnSave": true,    "editor.fontLigatures": true,    "prettier.tabWidth": 4,    "editor.wordWrap": "on",    "editor.detectIndentation": true,    "workbench.iconTheme": "eq-material-theme-icons-palenight",    "editor.minimap.enabled": false,    "editor.minimap.renderCharacters": false,    "prettier.parser": "flow",    "workbench.editor.enablePreview": false,    "emmet.includeLanguages": {        "javascript": "javascriptreact",        "jsx-sublime-babel-tags": "javascriptreact"    },    "emmet.triggerExpansionOnTab": true,    "emmet.showExpandedAbbreviation": "never",    "workbench.statusBar.visible": true,    "workbench.activityBar.visible": true,    "workbench.editor.showIcons": false,    "editor.multiCursorModifier": "ctrlCmd",    "explorer.confirmDelete": false,    "window.zoomLevel": 0,    "javascript.updateImportsOnFileMove.enabled": "always",    "materialTheme.accent": "Yellow",    "editor.cursorBlinking": "smooth",    "editor.fontWeight": "500"}

如果你想知道更多的VS Code使用技巧,可以查看。

推荐阅读

  • [我为什么推荐Prettier来统一代码风格

关于Fundebug

专注于JavaScript、微信小程序、微信小游戏、支付宝小程序、React Native、Node.js和Java实时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了6亿+错误事件,得到了Google、360、金山软件等众多知名用户的认可。欢迎免费试用!

转载地址:http://mzzxx.baihongyu.com/

你可能感兴趣的文章
JSON and Microsoft Technologies(翻译)
查看>>
ylbtech-LanguageSamples-ConditionalMethods(条件方法)
查看>>
js 判断各种数据类型
查看>>
【leetcode】Find Peak Element ☆
查看>>
linux:sed高级命令之n、N(转)
查看>>
触发器更新多条数据
查看>>
微信公众平台原创声明功能公测 自媒体原创保护的福音
查看>>
ADF_Advanced ADF系列2_Fusion应用的客制和个性化(Part2)
查看>>
php_linux_centos6.4_安装mysql_apache_php
查看>>
Myeclipse或Eclipse中搭建Easyui环境
查看>>
(转)数字格式化函数:Highcharts.numberFormat()
查看>>
我的学习笔记_Windows_HOOK编程 2009-12-03 11:19
查看>>
CCNA2.0笔记_ipv6的EIGRP
查看>>
最短路径算法整理(二)
查看>>
java的基本数据类型
查看>>
Android IOS WebRTC 音视频开发总结(二四)-- p2p调用堆栈
查看>>
Java面向对象基础二
查看>>
PR使用技巧
查看>>
项目总结笔记系列 Social Hub KT Session1
查看>>
EasyMock 使用方法与原理剖析--转载
查看>>