Fix #237
This commit is contained in:
parent
d00540912c
commit
799491e007
@ -471,15 +471,27 @@ function! s:SetLines(lines, key) " {{{
|
|||||||
endfunction " }}}
|
endfunction " }}}
|
||||||
|
|
||||||
" -- Get characters from user input ------
|
" -- Get characters from user input ------
|
||||||
function! s:GetChar() " {{{
|
function! s:GetChar(...) abort "{{{
|
||||||
let char = getchar()
|
let mode = get(a:, 1, 0)
|
||||||
|
while 1
|
||||||
|
" Workaround for https://github.com/osyo-manga/vital-over/issues/53
|
||||||
|
try
|
||||||
|
let char = call('getchar', a:000)
|
||||||
|
catch /^Vim:Interrupt$/
|
||||||
|
let char = 3 " <C-c>
|
||||||
|
endtry
|
||||||
if char == 27 || char == 3
|
if char == 27 || char == 3
|
||||||
" Escape or <C-c> key pressed
|
" Escape or <C-c> key pressed
|
||||||
redraw
|
redraw
|
||||||
call s:Message('Cancelled')
|
call s:Message('Cancelled')
|
||||||
return ''
|
return ''
|
||||||
endif
|
endif
|
||||||
return nr2char(char)
|
" Workaround for the <expr> mappings
|
||||||
|
if string(char) !=# "\x80\xfd`"
|
||||||
|
return mode == 1 ? !!char
|
||||||
|
\ : type(char) == type(0) ? nr2char(char) : char
|
||||||
|
endif
|
||||||
|
endwhile
|
||||||
endfunction "}}}
|
endfunction "}}}
|
||||||
|
|
||||||
" -- Find Motion Helper ------------------
|
" -- Find Motion Helper ------------------
|
||||||
|
Loading…
Reference in New Issue
Block a user