view src/testdir/test_termencoding.vim @ 15521:6d949e552e99 v8.1.0768

patch 8.1.0768: updating completions may cause the popup menu to flicker commit https://github.com/vim/vim/commit/ae654385dfb2ae4c1d70789d1dce3676dba4dfbc Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jan 17 21:09:05 2019 +0100 patch 8.1.0768: updating completions may cause the popup menu to flicker Problem: Updating completions may cause the popup menu to flicker. Solution: Avoid updating the text below the popup menu before drawing the popup menu.
author Bram Moolenaar <Bram@vim.org>
date Thu, 17 Jan 2019 21:15:06 +0100
parents 247511eadb7a
children 2dcaa860e3fc
line wrap: on
line source

" Test for setting 'encoding' to something else than the terminal uses, then
" setting 'termencoding' to make it work.

" This only works with "iconv".
if !has('multi_byte') || !has('iconv')
  finish
endif

source screendump.vim
if !CanRunVimInTerminal()
  finish
endif

" This Vim is running with 'encoding' "utf-8", the Vim in the terminal is
" running with 'encoding' "euc-jp".  We need to make sure the text is in the
" right encoding, this is a bit tricky.
func Test_termencoding_euc_jp()
  new
  call setline(1, 'E89: バッファ %ld の変更は保存されていません (! で変更を破棄)')
  write ++enc=euc-jp Xeuc_jp.txt
  quit

  call writefile([
	\ 'set encoding=euc-jp',
	\ 'set termencoding=utf-8',
	\ 'scriptencoding utf-8',
	\ 'exe "normal aE83: バッファを作成できないので、他のを使用します...\<Esc>"',
	\ 'split Xeuc_jp.txt',
	\ ], 'XTest_tenc_euc_jp')
  let buf = RunVimInTerminal('-S XTest_tenc_euc_jp', {'rows': 10})
  call VerifyScreenDump(buf, 'Test_tenc_euc_jp_01', {})

  " clean up
  call StopVimInTerminal(buf)
  call delete('Xeuc_jp.txt')
  call delete('XTest_tenc_euc_jp')
endfunc