@@ -1386,6 +1386,44 @@ testVim('gu_and_gU', function(cm, vim, helpers) {
13861386 helpers . doKeys ( 'g' , 'U' , '2' , 'U' ) ;
13871387 eq ( cm . getValue ( ) , 'ABC EFG\nXYZ' ) ;
13881388} , { value : 'wa wb xx wc wd' } ) ;
1389+ testVim ( 'g?' , function ( cm , vim , helpers ) {
1390+ var curStart = makeCursor ( 0 , 7 ) ;
1391+ var value = cm . getValue ( ) ;
1392+ cm . setCursor ( curStart ) ;
1393+ helpers . doKeys ( '2' , 'g' , '?' , 'w' ) ;
1394+ eq ( cm . getValue ( ) , 'wa wb xk jp wd' ) ;
1395+ eqCursorPos ( curStart , cm . getCursor ( ) ) ;
1396+ helpers . doKeys ( '2' , 'g' , '?' , 'w' ) ;
1397+ eq ( cm . getValue ( ) , value ) ;
1398+
1399+ helpers . doKeys ( '2' , 'g' , '?' , 'B' ) ;
1400+ eq ( cm . getValue ( ) , 'wa jo kx wc wd' ) ;
1401+ eqCursorPos ( makeCursor ( 0 , 3 ) , cm . getCursor ( ) ) ;
1402+
1403+ cm . setCursor ( makeCursor ( 0 , 4 ) ) ;
1404+ helpers . doKeys ( 'g' , '?' , 'i' , 'w' ) ;
1405+ eq ( cm . getValue ( ) , 'wa wb kx wc wd' ) ;
1406+ eqCursorPos ( makeCursor ( 0 , 3 ) , cm . getCursor ( ) ) ;
1407+
1408+ var register = helpers . getRegisterController ( ) . getRegister ( ) ;
1409+ eq ( '' , register . toString ( ) ) ;
1410+ is ( ! register . linewise ) ;
1411+
1412+ cm . setCursor ( curStart ) ;
1413+ cm . setValue ( 'abc efg();\nxyz' ) ;
1414+ helpers . doKeys ( 'g' , '?' , 'g' , '?' ) ;
1415+ eq ( cm . getValue ( ) , 'nop rst();\nxyz' ) ;
1416+ helpers . doKeys ( 'g' , '?' , '?' ) ;
1417+ eq ( cm . getValue ( ) , 'abc efg();\nxyz' ) ;
1418+ eqCursorPos ( makeCursor ( 0 , 0 ) , cm . getCursor ( ) ) ;
1419+ helpers . doKeys ( 'g' , '?' , '2' , '?' ) ;
1420+ eq ( cm . getValue ( ) , 'nop rst();\nklm' ) ;
1421+
1422+ cm . setCursor ( curStart ) ;
1423+ cm . setValue ( 'hello\nworld' ) ;
1424+ helpers . doKeys ( 'l' , '<C-v>' , 'l' , 'j' , 'g' , '?' ) ;
1425+ eq ( cm . getValue ( ) , 'hrylo\nwbeld' ) ;
1426+ } , { value : 'wa wb xx wc wd' } ) ;
13891427testVim ( 'visual_block_~' , function ( cm , vim , helpers ) {
13901428 cm . setCursor ( 1 , 1 ) ;
13911429 helpers . doKeys ( '<C-v>' , 'l' , 'l' , 'j' , '~' ) ;
0 commit comments