pfaffman
(Jay Pfaffman)
1
我厌倦了提交无法通过 linting 测试的代码。有时,我可以将 rubocop 或 yarn eslint(依此类推)命令从 GitHub 复制粘贴到我的终端中并使其正常工作,但现在也不起作用了。
我收到类似以下的错误:
无法为文件推断出解析器:...
对于某些文件在某些条件下,vscode 会在保存时正确地重新格式化并告诉我存在语法错误,但现在也不起作用了。
你想做什么?
我想进行一次 Zoom(或其他)屏幕共享,让你指导我完成一些事情,以便:
- vscode 在保存时运行所有应有的操作,并修复格式,或者告诉我哪里出错了。
- 我可以从命令行运行
yarn eslint 以及 linting 测试中的任何其他内容。
你何时需要完成?
在我疯掉之前。
你能为这项任务提供多少美元预算?
我正在运行 Pop!Os,它本质上是 Ubuntu。
如果你很有把握能解决这个问题,我愿意支付你一小时的标准费率。如果你能在十分钟内完成,我很乐意支付一小时的费用。双赢。
2 个赞
Jay,
很令人沮丧,对吧?
我处理这类事情的方法是:
- 检查一个流行插件的 CI 工作流
- 查看插件根目录中的相关配置
你可以在这里看到我的 Chatbot 的代码检查测试:
我相信你可以从插件目录运行 eslint 和 prettier,但 rubocop 可以从 discourse 目录运行。
如果这解决了你的问题,请随时将其转换为一个 Dev 主题,不客气 
1 个赞
pfaffman
(Jay Pfaffman)
3
我所做的就是从 GitHub - discourse/discourse-plugin-skeleton: Template for Discourse plugins 和 GitHub - discourse/discourse-theme-skeleton: Template for Discourse themes 盲目复制工作流程。(我确实需要为我的仪表板插件稍微调整一下插件,它依赖于 stripe 插件)。我相信,这足以进行代码检查。
但我想要的是在提交之前,让 vscode 进行代码检查。我过去曾成功地让它工作过,但现在它停止了,我感觉自己像一个 20 年前懂 Emacs 的人,可能会说一些类似“按 control-p,然后执行安装格式化工具的操作,然后编辑配置文件使其正常工作”之类的话,然后我就可以再次输入 control-S,让我的 handlebars、javascript 和其他任何东西都格式化得漂亮,并且还能找到我定义但从未使用的所有讨厌的变量等等。
越来越接近
好的,但我做了这个:
npm install --global yarn
yarn add prettier
现在我有了 discourse-prettier:
#!/usr/bin/env bash
if [ -n "$(find assets -type f \( -name "*.scss" -or -name "*.js" -or -name "*.es6" -or -name "*.hbs" \) 2>/dev/null)" ]; then
yarn prettier --write "assets/**/*.{scss,js,es6,hbs}"
fi
if [ -n "$(find admin/assets -type f \( -name "*.scss" -or -name "*.js" -or -name "*.es6" -or -name "*.hbs" \) 2>/dev/null)" ]; then
yarn prettier --write "admin/assets/**/*.{scss,js,es6,hbs}"
fi
if [ 0 -lt $(find test -type f \( -name "*.js" -or -name "*.es6" \) 2> /dev/null | wc -l) ]; then
yarn prettier --write "test/**/*.{js,es6}"
fi
if [ -n "$(find assets -type f \( -name "*.scss" -or -name "*.js" -or -name "*.es6" -or -name "*.hbs" \) 2>/dev/null)" ]; then
yarn prettier --list-different "assets/**/*.{scss,js,es6,hbs}"
fi
if [ -n "$(find admin/assets -type f \( -name "*.scss" -or -name "*.js" -or -name "*.es6" -or -name "*.hbs" \) 2>/dev/null)" ]; then
yarn prettier --list-different "admin/assets/**/*.{scss,js,es6,hbs}"
fi
if [ 0 -lt $(find test -type f \( -name "*.js" -or -name "*.es6" \) 2> /dev/null | wc -l) ]; then
yarn prettier --list-different "test/**/*.{js,es6}"
fi
这解决了我的部分问题,所以至少我可以在命令行上运行 prettier。但我仍然愿意付费寻求帮助,让 vscode 为我代劳。当我保存时,它应该运行 eslint(或 rubop 或其他任何东西),然后修复它或告诉我它无法修复。我太老了,不认为我的编辑器应该编写我的代码,但又不是老到认为它不应该格式化代码。
以前有一个主题,有人建议了他们正在使用的 vscode 插件,这对我有些帮助,但现在我看不到了。
1 个赞
system
(system)
关闭
4
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.