有没有什么方法可以自动修复Rust中未使用的导入?我见过cargo fix
,它确实可以工作,但它也会进行一大堆其他的修复。有没有什么方法可以告诉cargo fix
只修复未使用的导入(最好是在指定的文件中),而不修复其他的?
附带问题:有什么方法可以让IntelliJ做到这一点吗?通常的快捷方式(Cmd + Option + O)在其他语言中也可以工作,但对于Rust,它只是重新排序导入。
有没有什么方法可以自动修复Rust中未使用的导入?我见过cargo fix
,它确实可以工作,但它也会进行一大堆其他的修复。有没有什么方法可以告诉cargo fix
只修复未使用的导入(最好是在指定的文件中),而不修复其他的?
附带问题:有什么方法可以让IntelliJ做到这一点吗?通常的快捷方式(Cmd + Option + O)在其他语言中也可以工作,但对于Rust,它只是重新排序导入。
3条答案
按热度按时间kzmpq1sx1#
根据this pull request,JetBrains的Rust插件应该已经能够删除未使用的导入,但默认情况下它没有启用。根据这条评论,开发团队似乎需要等到
org.rust.macros.proc
(目前默认情况下禁用的实验特性)默认启用。eqfvzcg82#
目前只能通过源代码中的属性配置单个lint,无法通过命令行工具告诉
cargo check
或cargo fix
忽略某些lint规则。根据我使用JetBrains工具的经验,他们不太可能在幕后使用
cargo fix
,他们已经构建了自己的Rust工具来解析和分析代码,这就是这个特性的发展方向。我建议向JetBrains提交功能请求。
kxxlusnw3#
1.使能
Settings > Editor > Inspections > Rust > Lints > Unused Import
。1.禁用同一部分中的
Enable inspection only if procedural macros are enabled
。版本
Build #IU-223.7571.182
0.4.185.5086-223