view src/testdir/test_langmap.vim @ 8947:c07caeb90a35 v7.4.1759

commit https://github.com/vim/vim/commit/40b1b5443c88fab77f1f7c6f9e801f7ffdb7e0a8 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Apr 20 20:18:23 2016 +0200 patch 7.4.1759 Problem: When using feedkeys() in a timer the inserted characters are not used right away. Solution: Break the wait loop when characters have been added to typebuf. use this for testing CursorHoldI.
author Christian Brabandt <cb@256bit.org>
date Wed, 20 Apr 2016 20:30:07 +0200
parents 1a595b2a4d5e
children f38fcbf343ce
line wrap: on
line source

" tests for 'langmap'

if !has('langmap')
  finish
endif

func Test_langmap()
  new
  set langmap=}l,^x,%v

  call setline(1, ['abc'])
  call feedkeys('gg0}^', 'tx')
  call assert_equal('ac', getline(1))

  " in Replace mode
  " need silent! to avoid a delay when entering Insert mode
  call setline(1, ['abcde'])
  silent! call feedkeys("gg0lR%{z\<Esc>00", 'tx')
  call assert_equal('a%{ze', getline(1))

  " in Select mode
  " need silent! to avoid a delay when entering Insert mode
  call setline(1, ['abcde'])
  silent! call feedkeys("gg0}%}\<C-G>}^\<Esc>00", 'tx')
  call assert_equal('a}^de', getline(1))

  quit!
endfunc