【问题标题】:Vim ALE processing an older version of the file I'm editingVim ALE 处理我正在编辑的文件的旧版本
【发布时间】:2020-06-06 19:28:15
【问题描述】:

我正在使用带有ALE 的 VIM 8.1,特别是 rust linter(基本上只是货物)。问题是 ALE 报告的错误和警告来自当前文件的旧版本。编辑和保存文件没有效果,重新启动 vim 也没有。我试过:ALEReset 然后:ALELint,但它只显示相同的棉绒。其他工具(如 cargo)使用这些文件很好,文件本身似乎没有任何问题。

这是:ALEInfo的输出:

 ALEInfo
 Current Filetype: rust
Available Linters: ['cargo', 'rls', 'rustc']
  Enabled Linters: ['cargo', 'rustc']
 Suggested Fixers:
  'remove_trailing_lines' - Remove all blank lines at the end of a file.
  'rustfmt' - Fix Rust files with Rustfmt.
  'trim_whitespace' - Remove all trailing whitespace characters at the end of every line.
 Linter Variables:

let g:ale_rust_cargo_avoid_whole_workspace = 1
let g:ale_rust_cargo_check_all_targets = 0
let g:ale_rust_cargo_check_examples = 0
let g:ale_rust_cargo_check_tests = 1
let g:ale_rust_cargo_clippy_options = ''
let g:ale_rust_cargo_default_feature_behavior = 'default'
let g:ale_rust_cargo_include_features = ''
let g:ale_rust_cargo_use_check = 1
let g:ale_rust_cargo_use_clippy = 0
let g:ale_rust_ignore_error_codes = []
let g:ale_rust_ignore_secondary_spans = 0
let g:ale_rust_rustc_options = '-Z no-codegen'

ALE 是我唯一安装的插件。

如何解决这个问题并再次使用我的 linter 插件?

【问题讨论】:

    标签: vim vim-plugin linter


    【解决方案1】:

    原来这不是 VIM 或 ALE 问题,而是货物问题。 ALE 使用cargo check 来检查代码而不进行代码生成(它更快并且留下的工件更少),而cargo build 没有返回任何错误或警告,cargo check 出于某种原因从项目的旧版本返回了警告(不是只是文件)。这已通过cargo clean 修复,然后再次运行cargo buildcargo check。因为我运行了cargo clean,所以我不再有导致这种行为的项目,所以我无法真正深入研究以找出项目出了什么问题。

    【讨论】:

    • 听起来像是一个奇怪的缓存问题或其他东西(虽然我对 rust 工具链不太熟悉)。
    猜你喜欢
    • 2018-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多