correctly inject the accent highlight groups.

This commit is contained in:
Bailey Ling 2013-09-15 22:47:13 -04:00
parent 858ef19a6f
commit 02aa620a92
4 changed files with 13 additions and 6 deletions

View File

@ -23,7 +23,8 @@ function! s:prototype.add_section(group, contents)
let self._line .= '%#'.a:group.'#'
endif
let self._line .= a:contents
let contents = substitute(a:contents, 'airline_accent', a:group, 'g')
let self._line .= contents
let self._curgroup = a:group
endfunction

View File

@ -9,8 +9,8 @@ function! s:create(parts, append)
let part = airline#parts#get(a:parts[idx])
let val = ''
if exists('part.highlight')
let val .= '%#'.(part.highlight).'#'
if exists('part.accent')
let val .= '%#airline_accent_'.(part.accent).'#'
endif
if exists('part.function')

View File

@ -37,6 +37,12 @@ describe 'active builder'
let stl = s:builder.build()
Expect stl == '%#Normal#hello>hello'
end
it 'should replace accent groups with the specified group'
call s:builder.add_section('Normal', '%#airline_accent_foo#hello')
let stl = s:builder.build()
Expect stl == '%#Normal#%#Normal_foo#hello'
end
end
describe 'inactive builder'

View File

@ -26,13 +26,13 @@ describe 'section'
Expect s == '%{airline#util#prepend("text",0)}%{airline#util#wrap("text",0)}'
end
it 'should prefix with highlight group if provided'
it 'should prefix with accent group if provided'
call airline#parts#define('hi', {
\ 'raw': 'hello',
\ 'highlight': 'hlgroup',
\ 'accent': 'red',
\ })
let s = airline#section#create(['hi'])
Expect s == '%#hlgroup#hello'
Expect s == '%#airline_accent_red#hello'
end
it 'should parse out a section from the distro'