首页 > 解决方案 > 如何配置 VIM Ale 以将 Tidy linter 用于 HTML?

问题描述

我正在尝试将 vim Ale 插件配置为使用 Tidy 来整理 HTML 代码。我添加到我的.vimrc文件中:

 let g:ale_linters = {
 \   'css': ['csslint'],
 \   'html': ['tidy'],
 \   'javascript': ['eslint'],
 \   'php': [''],
 \   'python': ['flake8'],
 \}

我得到了适用于 CSS、JavaScript 和 Python 的 linter,但不适用于 HTML。

:ALEInfo输出:

Current Filetype: html
Available Linters: ['alex', 'fecs', 'htmlhint', 'proselint', 'stylelint', 'tidy', 'writegood']
Linter Aliases: 'writegood' -> ['write-good']

Enabled Linters: ['tidy']

. . . at the end of the information . . .

Command History: (executable check - success) tidy

看起来 Tidy linter 可用并已配置,但我无法让它工作。html 文件似乎根本没有 linting。

我能够在终端中成功运行 Tidy:

> tidy test.html
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 1 column 1 - Warning: plain text isn't allowed in <head> elements
line 1 column 2 - Warning: discarding unexpected <html>
line 2 column 5 - Warning: <body> unexpected or duplicate quote mark
line 2 column 5 - Warning: discarding unexpected <body>
line 4 column 7 - Error: <bdy> is not recognized!
line 4 column 7 - Warning: discarding unexpected <bdy>
line 1 column 1 - Warning: inserting missing 'title' element
line 3 column 7 - Warning: trimming empty <p>
Info: Document content looks like HTML 3.2
8 warnings, 1 error were found!

如何让 Tidy 在 vi​​m 中与 Ale 一起工作?

标签: vimtidylintervim-ale

解决方案


您还需要知道vim在哪里可以找到整洁的可执行文件,例如,tidy在 Linux 上或tidy.exe在 Windows 上。

就我而言,我将此添加到我的vimrc

let g:ale_html_tidy_executable = "D://TidyHtml//tidy-5.6.0-vc14-64b//bin//tidy.exe"

在 vim 中,让 Ale 帮助整理::h ale-html-tidy


推荐阅读