From 5c799511c908c5aed6aeb05f5b183081dfdb9bcc Mon Sep 17 00:00:00 2001 From: Kazuo Teramoto Date: Wed, 23 Sep 2015 12:45:46 -0300 Subject: [PATCH] Add check for long lines to extensions#whitespace Check for lines > textwidth, disabled by default. --- autoload/airline/extensions/whitespace.vim | 11 ++++++++++- doc/airline.txt | 3 ++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/autoload/airline/extensions/whitespace.vim b/autoload/airline/extensions/whitespace.vim index fb9921ff..304e99b2 100644 --- a/autoload/airline/extensions/whitespace.vim +++ b/autoload/airline/extensions/whitespace.vim @@ -15,6 +15,7 @@ let s:default_checks = ['indent', 'trailing'] let s:trailing_format = get(g:, 'airline#extensions#whitespace#trailing_format', 'trailing[%s]') let s:mixed_indent_format = get(g:, 'airline#extensions#whitespace#mixed_indent_format', 'mixed-indent[%s]') +let s:long_format = get(g:, 'airline#extensions#whitespace#long_format', 'long[%s]') let s:indent_algo = get(g:, 'airline#extensions#whitespace#mixed_indent_algo', 0) let s:max_lines = get(g:, 'airline#extensions#whitespace#max_lines', 20000) @@ -56,7 +57,12 @@ function! airline#extensions#whitespace#check() let mixed = s:check_mixed_indent() endif - if trailing != 0 || mixed != 0 + let long = 0 + if index(checks, 'long') > -1 && &tw > 0 + let long = search('\%>'.&tw.'v.\+', 'nw') + endif + + if trailing != 0 || mixed != 0 || long != 0 let b:airline_whitespace_check = s:symbol if s:show_message if trailing != 0 @@ -65,6 +71,9 @@ function! airline#extensions#whitespace#check() if mixed != 0 let b:airline_whitespace_check .= (g:airline_symbols.space).printf(s:mixed_indent_format, mixed) endif + if long != 0 + let b:airline_whitespace_check .= (g:airline_symbols.space).printf(s:long_format, long) + endif endif endif endif diff --git a/doc/airline.txt b/doc/airline.txt index 0d269b43..8ec4a21f 100644 --- a/doc/airline.txt +++ b/doc/airline.txt @@ -422,7 +422,7 @@ eclim let g:airline#extensions#whitespace#symbol = '!' < * configure which whitespace checks to enable. > - let g:airline#extensions#whitespace#checks = [ 'indent', 'trailing' ] + let g:airline#extensions#whitespace#checks = [ 'indent', 'trailing', 'long' ] < * configure the maximum number of lines where whitespace checking is enabled. > let g:airline#extensions#whitespace#max_lines = 20000 @@ -433,6 +433,7 @@ eclim * configure the formatting of the warning messages. > let g:airline#extensions#whitespace#trailing_format = 'trailing[%s]' let g:airline#extensions#whitespace#mixed_indent_format = 'mixed-indent[%s]' + let g:airline#extensions#whitespace#long_format = 'long[%s]' < ------------------------------------- *airline-tabline* * enable/disable enhanced tabline. >