pfaffman
(Jay Pfaffman)
1
我是一位资深的 Emacs 用户,最近也在尝试 VS Code。(出乎意料的是,配置这个无限可扩展的编辑器,并不比配置 Emacs 更容易。我还没有放弃,它在某些方面确实很出色,但我远没有达到自己期望的那种“彻底转向”的程度。)
那么,有没有人有一套配置能让 Rubocop、ESLint 和 Prettier 都满意?无法在保存时立即看到这些检查结果,非要等到 Travis 报错,再复制粘贴那些(按理说早已存在于 bash 历史记录中的)命令来排查问题,这简直让人抓狂。
难道不能设置成保存时自动格式化,并在无法自动修复时发出明确警告吗?
如果有人在 VS Code 中实现了这样一套优雅的配置,我很想知道您使用了哪些插件组合。
不过,也许我会回头看看如何让 Emacs 实现这些功能,以及它那些我真正喜欢的特性(目前为止最棒的是 Shift+Ctrl+F 在整个子目录树中执行 grep)。
2 个赞
david
(David Taylor)
2
我想我们 CDCK 团队中有好几位同事全程使用 VSCode。针对代码检查和格式化,我安装了以下插件:
以及相关的配置设置:
{
"editor.tabSize": 2,
"[javascript]": {
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[scss]": {
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[ruby]": {
"editor.formatOnSave": true
},
"ruby.useBundler": true,
"ruby.format": "rubocop",
"ruby.lint": {
"rubocop": {
"useBundler": true
}
},
"editor.formatOnSaveTimeout": 10000,
"eslint.format.enable": true,
"javascript.validate.enable": false
}
没错!对于 Discourse 核心项目,我们配置了 lefthook 来尽量缓解这种痛苦。如果保存时的编辑器集成还不够用,你也可以在自己的插件中实现类似的功能。
另外,我非常推荐在 VSCode 中安装 ‘GitLens’ 插件。它可以在你工作时提供有用的代码追溯(blame)注解:
5 个赞
pfaffman
(Jay Pfaffman)
3
我还没做,但现在想先说声大大的感谢!也许你的设置正是我缺少的关键,等我弄清楚该把它放在哪儿就能派上用场。
你能再详细说说如何让那个左勾拳发挥作用吗?
david
(David Taylor)
4
我认为你只需要 cd 进入你的 discourse 目录,运行 yarn install(如果你还没做的话),然后执行 lefthook install。
之后,每次你尝试 git commit 时,它都会在变更的文件上运行代码检查工具(linters),并提示你任何存在的问题。
1 个赞