Merge pull request #1012 from gosukiwi/patch-1
Add instructions for setting up Lightline
This commit is contained in:
commit
346c91fb6b
90
README.md
90
README.md
@ -36,13 +36,14 @@ servers with similar enough protocols, like `tsserver`.
|
|||||||
2. [How can I keep the sign gutter open?](#faq-keep-signs)
|
2. [How can I keep the sign gutter open?](#faq-keep-signs)
|
||||||
3. [How can I change the signs ALE uses?](#faq-change-signs)
|
3. [How can I change the signs ALE uses?](#faq-change-signs)
|
||||||
4. [How can I show errors or warnings in my statusline?](#faq-statusline)
|
4. [How can I show errors or warnings in my statusline?](#faq-statusline)
|
||||||
5. [How can I change the format for echo messages?](#faq-echo-format)
|
5. [How can I show errors or warnings in my lightline?](#faq-lightline)
|
||||||
6. [How can I execute some code when ALE stops linting?](#faq-autocmd)
|
6. [How can I change the format for echo messages?](#faq-echo-format)
|
||||||
7. [How can I navigate between errors quickly?](#faq-navigation)
|
7. [How can I execute some code when ALE stops linting?](#faq-autocmd)
|
||||||
8. [How can I run linters only when I save files?](#faq-lint-on-save)
|
8. [How can I navigate between errors quickly?](#faq-navigation)
|
||||||
9. [How can I use the quickfix list instead of the loclist?](#faq-quickfix)
|
9. [How can I run linters only when I save files?](#faq-lint-on-save)
|
||||||
10. [How can I check JSX files with both stylelint and eslint?](#faq-jsx-stylelint-eslint)
|
10. [How can I use the quickfix list instead of the loclist?](#faq-quickfix)
|
||||||
11. [Will this plugin eat all of my laptop battery power?](#faq-my-battery-is-sad)
|
11. [How can I check JSX files with both stylelint and eslint?](#faq-jsx-stylelint-eslint)
|
||||||
|
12. [Will this plugin eat all of my laptop battery power?](#faq-my-battery-is-sad)
|
||||||
|
|
||||||
<a name="supported-languages"></a>
|
<a name="supported-languages"></a>
|
||||||
|
|
||||||
@ -408,9 +409,70 @@ set statusline=%{LinterStatus()}
|
|||||||
|
|
||||||
See `:help ale#statusline#Count()` for more information.
|
See `:help ale#statusline#Count()` for more information.
|
||||||
|
|
||||||
|
<a name="faq-lightline"></a>
|
||||||
|
|
||||||
|
### 5.v. How can I show errors or warnings in my lightline?
|
||||||
|
|
||||||
|
[lightline](https://github.com/itchyny/lightline.vim) does not have built-in
|
||||||
|
support for ALE, nevertheless it's easy to do it yourself:
|
||||||
|
|
||||||
|
```vim
|
||||||
|
" This is regular lightline configuration, we just added
|
||||||
|
" 'linter_warnings', 'linter_errors' and 'linter_ok' to
|
||||||
|
" the active right panel. Feel free to move it anywhere.
|
||||||
|
" `component_expand' and `component_type' are required.
|
||||||
|
"
|
||||||
|
" For more info on how this works, see lightline documentation.
|
||||||
|
let g:lightline = {
|
||||||
|
\ 'active': {
|
||||||
|
\ 'right': [ [ 'lineinfo' ],
|
||||||
|
\ [ 'percent' ],
|
||||||
|
\ [ 'linter_warnings', 'linter_errors', 'linter_ok' ],
|
||||||
|
\ [ 'fileformat', 'fileencoding', 'filetype' ] ]
|
||||||
|
\ },
|
||||||
|
\ 'component_expand': {
|
||||||
|
\ 'linter_warnings': 'LightlineLinterWarnings',
|
||||||
|
\ 'linter_errors': 'LightlineLinterErrors',
|
||||||
|
\ 'linter_ok': 'LightlineLinterOK'
|
||||||
|
\ },
|
||||||
|
\ 'component_type': {
|
||||||
|
\ 'linter_warnings': 'warning',
|
||||||
|
\ 'linter_errors': 'error',
|
||||||
|
\ 'linter_ok': 'ok'
|
||||||
|
\ },
|
||||||
|
\ }
|
||||||
|
|
||||||
|
autocmd User ALELint call lightline#update()
|
||||||
|
|
||||||
|
" ale + lightline
|
||||||
|
function! LightlineLinterWarnings() abort
|
||||||
|
let l:counts = ale#statusline#Count(bufnr(''))
|
||||||
|
let l:all_errors = l:counts.error + l:counts.style_error
|
||||||
|
let l:all_non_errors = l:counts.total - l:all_errors
|
||||||
|
return l:counts.total == 0 ? '' : printf('%d --', all_non_errors)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! LightlineLinterErrors() abort
|
||||||
|
let l:counts = ale#statusline#Count(bufnr(''))
|
||||||
|
let l:all_errors = l:counts.error + l:counts.style_error
|
||||||
|
let l:all_non_errors = l:counts.total - l:all_errors
|
||||||
|
return l:counts.total == 0 ? '' : printf('%d >>', all_errors)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! LightlineLinterOK() abort
|
||||||
|
let l:counts = ale#statusline#Count(bufnr(''))
|
||||||
|
let l:all_errors = l:counts.error + l:counts.style_error
|
||||||
|
let l:all_non_errors = l:counts.total - l:all_errors
|
||||||
|
return l:counts.total == 0 ? '✓' : ''
|
||||||
|
endfunction
|
||||||
|
```
|
||||||
|
|
||||||
|
See `:help ale#statusline#Count()` and [lightline documentation](https://github.com/itchyny/lightline.vim#advanced-configuration)
|
||||||
|
for more information.
|
||||||
|
|
||||||
<a name="faq-echo-format"></a>
|
<a name="faq-echo-format"></a>
|
||||||
|
|
||||||
### 5.v. How can I change the format for echo messages?
|
### 5.vi. How can I change the format for echo messages?
|
||||||
|
|
||||||
There are 3 global options that allow customizing the echoed message.
|
There are 3 global options that allow customizing the echoed message.
|
||||||
|
|
||||||
@ -435,7 +497,7 @@ Will give you:
|
|||||||
|
|
||||||
<a name="faq-autocmd"></a>
|
<a name="faq-autocmd"></a>
|
||||||
|
|
||||||
### 5.vi. How can I execute some code when ALE stops linting?
|
### 5.vii. How can I execute some code when ALE stops linting?
|
||||||
|
|
||||||
ALE runs its own [autocmd](http://vimdoc.sourceforge.net/htmldoc/autocmd.html)
|
ALE runs its own [autocmd](http://vimdoc.sourceforge.net/htmldoc/autocmd.html)
|
||||||
event whenever has a linter has been successfully executed and processed. This
|
event whenever has a linter has been successfully executed and processed. This
|
||||||
@ -450,7 +512,7 @@ augroup END
|
|||||||
|
|
||||||
<a name="faq-navigation"></a>
|
<a name="faq-navigation"></a>
|
||||||
|
|
||||||
### 5.vii. How can I navigate between errors quickly?
|
### 5.viii. How can I navigate between errors quickly?
|
||||||
|
|
||||||
ALE offers some commands with `<Plug>` keybinds for moving between warnings and
|
ALE offers some commands with `<Plug>` keybinds for moving between warnings and
|
||||||
errors quickly. You can map the keys Ctrl+j and Ctrl+k to moving between errors
|
errors quickly. You can map the keys Ctrl+j and Ctrl+k to moving between errors
|
||||||
@ -466,7 +528,7 @@ For more information, consult the online documentation with
|
|||||||
|
|
||||||
<a name="faq-lint-on-save"></a>
|
<a name="faq-lint-on-save"></a>
|
||||||
|
|
||||||
### 5.viii. How can I run linters only when I save files?
|
### 5.ix. How can I run linters only when I save files?
|
||||||
|
|
||||||
ALE offers an option `g:ale_lint_on_save` for enabling running the linters
|
ALE offers an option `g:ale_lint_on_save` for enabling running the linters
|
||||||
when files are saved. This option is enabled by default. If you only
|
when files are saved. This option is enabled by default. If you only
|
||||||
@ -486,7 +548,7 @@ files, you can set `g:ale_lint_on_save` to `0`.
|
|||||||
|
|
||||||
<a name="faq-quickfix"></a>
|
<a name="faq-quickfix"></a>
|
||||||
|
|
||||||
### 5.ix. How can I use the quickfix list instead of the loclist?
|
### 5.x. How can I use the quickfix list instead of the loclist?
|
||||||
|
|
||||||
The quickfix list can be enabled by turning the `g:ale_set_quickfix`
|
The quickfix list can be enabled by turning the `g:ale_set_quickfix`
|
||||||
option on. If you wish to also disable the loclist, you can disable
|
option on. If you wish to also disable the loclist, you can disable
|
||||||
@ -513,7 +575,7 @@ let g:ale_keep_list_window_open = 1
|
|||||||
|
|
||||||
<a name="faq-jsx-stylelint-eslint"></a>
|
<a name="faq-jsx-stylelint-eslint"></a>
|
||||||
|
|
||||||
### 5.x. How can I check JSX files with both stylelint and eslint?
|
### 5.xi. How can I check JSX files with both stylelint and eslint?
|
||||||
|
|
||||||
If you configure ALE options correctly in your vimrc file, and install
|
If you configure ALE options correctly in your vimrc file, and install
|
||||||
the right tools, you can check JSX files with stylelint and eslint.
|
the right tools, you can check JSX files with stylelint and eslint.
|
||||||
@ -546,7 +608,7 @@ no linter will be run twice for the same file.
|
|||||||
|
|
||||||
<a name="faq-my-battery-is-sad"></a>
|
<a name="faq-my-battery-is-sad"></a>
|
||||||
|
|
||||||
### 5.xi. Will this plugin eat all of my laptop battery power?
|
### 5.xii. Will this plugin eat all of my laptop battery power?
|
||||||
|
|
||||||
ALE takes advantage of the power of various tools to check your code. This of
|
ALE takes advantage of the power of various tools to check your code. This of
|
||||||
course means that CPU time will be used to continuously check your code. If you
|
course means that CPU time will be used to continuously check your code. If you
|
||||||
|
Loading…
Reference in New Issue
Block a user