diff --git a/autoload/SpaceVim/plugins/runner.vim b/autoload/SpaceVim/plugins/runner.vim index 24c19696e..3355a0e18 100644 --- a/autoload/SpaceVim/plugins/runner.vim +++ b/autoload/SpaceVim/plugins/runner.vim @@ -11,6 +11,8 @@ let s:BUFFER = SpaceVim#api#import('vim#buffer') let s:STRING = SpaceVim#api#import('data#string') let s:FILE = SpaceVim#api#import('file') let s:VIM = SpaceVim#api#import('vim') +let s:SYS = SpaceVim#api#import('system') +let s:ICONV = SpaceVim#api#import('iconv') let s:runners = {} @@ -259,7 +261,11 @@ if has('nvim') && exists('*chanclose') else let lines = s:_out_data endif + if s:SYS.isWindows + let lines = map(lines, 's:ICONV.iconv(v:val, "cp936", "utf-8")') + endif if !empty(lines) + let lines = map(lines, "substitute(v:val, ' $', '', 'g')") call s:BUFFER.buf_set_lines(s:bufnr, s:lines , s:lines + 1, 0, lines) call s:VIM.win_set_cursor(s:winid, [s:VIM.buf_line_count(s:bufnr), 1]) endif