FakeVim: Use registers 0, 1 and -

Command "y" additionally yanks text to register 0 if the default
register " is used.

Delete and change command set register 1, if removed text contains
multiple lines, or to small delete register (-).

Register " is always set.

Change-Id: I9d357911cedaac97fb1a91698523c9b0f3de8621
Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
hluk
2013-12-01 13:35:37 +01:00
committed by hjk
parent 3fd6a52ac7
commit 99d8567103
2 changed files with 60 additions and 2 deletions

View File

@@ -2259,6 +2259,45 @@ void FakeVimPlugin::test_vim_ex_yank()
data.setText("abc" N "def");
KEYS("\"xy$", X "abc" N "def");
KEYS("\"xP", "ab" X "cabc" N "def");
data.setText(
"abc def" N
"ghi jkl" N
);
KEYS("yiwp",
"aab" X "cbc def" N
"ghi jkl" N
);
KEYS("u",
X "abc def" N
"ghi jkl" N
);
KEYS("\"0p",
"aab" X "cbc def" N
"ghi jkl" N
);
KEYS("\"xyiw",
X "aabcbc def" N
"ghi jkl" N
);
KEYS("\"0p",
"aab" X "cabcbc def" N
"ghi jkl" N
);
KEYS("\"xp",
"aabcaabcb" X "cabcbc def" N
"ghi jkl" N
);
// register " is last yank
data.setText(
"abc def" N
"ghi jkl" N
);
KEYS("yiwp\"xyiw\"\"p",
"aaabcb" X "cabcbc def" N
"ghi jkl" N
);
}
void FakeVimPlugin::test_vim_ex_delete()