Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions autoload/signature/sign.vim
Original file line number Diff line number Diff line change
Expand Up @@ -123,14 +123,16 @@ function! s:RefreshLine(lnum)
\ )
let l:SignatureMarkTextHL = s:EvaluateHL(g:SignatureMarkTextHL, a:lnum, "SignatureMarkText")
let l:SignatureMarkLineHL = s:EvaluateHL(g:SignatureMarkLineHL, a:lnum, "SignatureMarkLine")
let l:SignatureMarkCulHL = s:EvaluateHL(g:SignatureMarkCulHL, a:lnum, "SignatureMarkCul")
let l:str = substitute(b:SignatureMarkOrder, "\m", signature#utils#GetChar(b:sig_marks[a:lnum], 0), '')
let l:str = substitute(l:str, "\p", signature#utils#GetChar(b:sig_marks[a:lnum], 1), '')

execute 'sign define Signature_' . l:str . ' text=' . l:str . ' texthl=' . l:SignatureMarkTextHL . ' linehl=' . l:SignatureMarkLineHL
execute 'sign define Signature_' . l:str . ' text=' . l:str . ' texthl=' . l:SignatureMarkTextHL . ' linehl=' . l:SignatureMarkLineHL ' culhl=' . l:SignatureMarkCulHL

elseif has_key(b:sig_markers, a:lnum)
let l:SignatureMarkerTextHL = s:EvaluateHL(g:SignatureMarkerTextHL, a:lnum, "SignatureMarkerText")
let l:SignatureMarkerLineHL = s:EvaluateHL(g:SignatureMarkerLineHL, a:lnum, "SignatureMarkerLine")
let l:SignatureMarkerCulHL = s:EvaluateHL(g:SignatureMarkerCulHL, a:lnum, "SignatureMarkerCul")

" Since the same marker can be placed on multiple lines, we can't use the same sign for all of them.
" This is because if dynamic highlighting of markers is enabled then the sign placed on eg. a modified line should
Expand All @@ -139,7 +141,7 @@ function! s:RefreshLine(lnum)
let l:txt = signature#utils#GetChar(b:sig_markers[a:lnum], 0)
let l:str = l:txt . '_' . l:SignatureMarkerTextHL . '_' . l:SignatureMarkerLineHL

execute 'sign define Signature_' . l:str . ' text=' . l:txt . ' texthl=' . l:SignatureMarkerTextHL . ' linehl=' . l:SignatureMarkerLineHL
execute 'sign define Signature_' . l:str . ' text=' . l:txt . ' texthl=' . l:SignatureMarkerTextHL . ' linehl=' . l:SignatureMarkerLineHL ' culhl=' . l:SignatureMarkerCulHL
else
call signature#sign#Unplace(a:lnum)
endif
Expand Down
2 changes: 2 additions & 0 deletions plugin/signature.vim
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,11 @@ call signature#utils#Set('g:SignatureIncludeMarks', 'abcdefghijklmnop
call signature#utils#Set('g:SignatureIncludeMarkers', ')!@#$%^&*(' )
call signature#utils#Set('g:SignatureMarkTextHL', "SignatureMarkText" )
call signature#utils#Set('g:SignatureMarkTextHLDynamic', 0 )
call signature#utils#Set('g:SignatureMarkCulHL', "SignatureMarkCul" )
call signature#utils#Set('g:SignatureMarkLineHL', "SignatureMarkLine" )
call signature#utils#Set('g:SignatureMarkerTextHL', "SignatureMarkerText" )
call signature#utils#Set('g:SignatureMarkerTextHLDynamic', 0 )
call signature#utils#Set('g:SignatureMarkerCulHL', "SignatureMarkerCul" )
call signature#utils#Set('g:SignatureMarkerLineHL', "SignatureMarkerLine" )
call signature#utils#Set('g:SignatureWrapJumps', 1 )
call signature#utils#Set('g:SignatureMarkOrder', "\p\m" )
Expand Down