我已从Elm Slack频道复制了以下问题以供后代使用。
我无法让Elm VSCode plugin在保存时进行格式化。我已经为elm-format
中的settings.json
全局安装设置了绝对路径。我还为elm设置了保存格式:
"[elm]": {
"editor.formatOnSave": true,
},
我在Ubuntu计算机上,并且在保存或使用Ctrl-Shift-I
时都不会发生格式化。有人看到我可能会丢失的东西吗?
答案 0 :(得分:3)
为VSCode安装扩展名Elm Language Support,其中包括语法和错误突出显示
配置VS代码settings.json
:
"[elm]": {
"editor.formatOnSave": true
},
答案 1 :(得分:1)
以下是响应和解决方法。
@stoft的回复:
尝试使用npm在本地或全局安装elm格式,这在MacOS上对我有帮助。
@razzee的回复:
请检查两件事:
- 您正在使用最新的Elm格式版本
- 增加vscode的格式化超时,可惜elm-format有时太慢了,“ editor.formatOnSaveTimeout”就是所谓的设置。“
在全球范围内安装最新版本的elm-format
足以保存格式。
在elm-0.19-workshop中,有一种情况无法遵循这些建议进行保存格式化。保存格式不会触发intro/part1/
或任何其他“部分”目录中的Elm文件。
答案 2 :(得分:1)
VS超时1.42(Q1 2020)不应成为保存超时格式的问题
参见“ Better handling of slow save operations”:
VS Code允许扩展程序在将文件保存到磁盘时更改文件的内容。
例如 {Format on Save
和Fix on Save
之类的功能。但是,保存是至关重要的操作,在保存期间进行处理的扩展必须迅速完成,以便可以继续实际的保存操作。
“快速”以前是由VS Code强制执行的,超时导致VS Code取消扩展名保存参与。
该强制执行保证了快速的节省,但由于有时无法进行预期的处理而可能会令人沮丧。在此版本中,我们放弃了基于超时的方法,而是显示进度通知,该通知允许您取消参与保存的扩展(“
Save Participants
”)。
该通知使您知道保存操作正在运行,并且可以决定是否要等待保存参与者完成。
答案 3 :(得分:1)
未将路径设置为elm格式,而elm-tests对我明确起作用。
我跑了
npm install --global elm-test elm-format
然后让扩展名找出它在哪里。
一旦指定/home/a-teammate/npm/lib/node_modules/elm-test/bin/elm-format
是我要使用的Elm格式,它就会停止工作。尽管指向相同的elm格式。
已在elmtooling.elm-ls-vscode 0.9.4版,elm 0.19.1版和elm格式0.8.3版中进行了测试