summaryrefslogtreecommitdiff
path: root/src/testdir/test84.in
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2012-03-28 19:59:04 +0200
committerBram Moolenaar <Bram@vim.org>2012-03-28 19:59:04 +0200
commit913077c37c0ba2f70e6b06e9b46d176e8b9e7956 (patch)
tree47050d9c4e6ec2d0d91fcbad831f730edf232c82 /src/testdir/test84.in
parentca628610c06abed1b39470d20e7d73f8f7a860af (diff)
downloadvim-git-913077c37c0ba2f70e6b06e9b46d176e8b9e7956.tar.gz
updated for version 7.3.487v7.3.487
Problem: When setting 'timeoutlen' or 'ttimeoutlen' the column for vertical movement is reset unnecessarily. Solution: Do not set w_set_curswant for every option. Add a test for this. (Kana Natsuno) Add the P_CURSWANT flag for options.
Diffstat (limited to 'src/testdir/test84.in')
-rw-r--r--src/testdir/test84.in35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/testdir/test84.in b/src/testdir/test84.in
new file mode 100644
index 000000000..25482db54
--- /dev/null
+++ b/src/testdir/test84.in
@@ -0,0 +1,35 @@
+Tests for curswant not changing when setting an option
+
+STARTTEST
+:so small.vim
+:/^start target options$/+1,/^end target options$/-1 yank
+:let target_option_names = split(@0)
+:function TestCurswant(option_name)
+: normal! ggf8j
+: let curswant_before = winsaveview().curswant
+: execute 'let' '&'.a:option_name '=' '&'.a:option_name
+: let curswant_after = winsaveview().curswant
+: return [a:option_name, curswant_before, curswant_after]
+:endfunction
+:
+:new
+:put =['1234567890', '12345']
+:1 delete _
+:let result = []
+:for option_name in target_option_names
+: call add(result, TestCurswant(option_name))
+:endfor
+:
+:new
+:put =map(copy(result), 'join(v:val, '' '')')
+:1 delete _
+:write test.out
+:
+:qall!
+ENDTEST
+
+start target options
+ tabstop
+ timeoutlen
+ ttimeoutlen
+end target options