shada: Also store last search direction

Note: it looks like viminfo files do not store search direction intentionally.
After reading viminfo file search direction was considered to be “forward”.

Note 2: all files created on earlier Neovim version will automatically receive
“forward” direction.

Fixes #3580
This commit is contained in:
ZyX
2015-11-01 21:26:53 +03:00
parent 321db59ca1
commit b98cea909f
8 changed files with 54 additions and 3 deletions

View File

@@ -209,6 +209,7 @@ describe('In autoload/shada.vim', function()
' + rc contents ["abc", "def"]',
' + rt type CHARACTERWISE',
' + rw block width 10',
' + sb search backward TRUE',
' + sc smartcase value FALSE',
' + se place cursor at end TRUE',
' + sh v:hlsearch value TRUE',
@@ -223,6 +224,7 @@ describe('In autoload/shada.vim', function()
'sc': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
'sl': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
'se': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
'sb': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
'so': 10,
'su': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
'ss': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
@@ -308,6 +310,7 @@ describe('In autoload/shada.vim', function()
' + sp pattern "abc"',
' + sh v:hlsearch value FALSE',
' + ss is :s pattern FALSE',
' + sb search backward FALSE',
' + sm magic value TRUE',
' + sc smartcase value FALSE',
' + sl has line offset FALSE',
@@ -323,6 +326,7 @@ describe('In autoload/shada.vim', function()
' + sp pattern "abc"',
' + sh v:hlsearch value FALSE',
' + ss is :s pattern FALSE',
' + sb search backward FALSE',
' + sm magic value TRUE',
' + sc smartcase value FALSE',
' + sl has line offset FALSE',
@@ -344,6 +348,7 @@ describe('In autoload/shada.vim', function()
' + sp pattern "abc"',
' + sh v:hlsearch value FALSE',
' + ss is :s pattern FALSE',
' + sb search backward FALSE',
' + sm magic value TRUE',
' + sc smartcase value FALSE',
' + sl has line offset FALSE',
@@ -354,6 +359,7 @@ describe('In autoload/shada.vim', function()
'sp': 'abc',
'sh': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
'ss': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
'sb': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
'sm': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
'sc': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
'sl': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
@@ -367,6 +373,7 @@ describe('In autoload/shada.vim', function()
' # Required key missing: sp',
' + sh v:hlsearch value FALSE',
' + ss is :s pattern FALSE',
' + sb search backward FALSE',
' + sm magic value TRUE',
' + sc smartcase value FALSE',
' + sl has line offset FALSE',
@@ -381,6 +388,7 @@ describe('In autoload/shada.vim', function()
' + sp pattern ""',
' + sh v:hlsearch value TRUE',
' + ss is :s pattern TRUE',
' + sb search backward TRUE',
' + sm magic value FALSE',
' + sc smartcase value TRUE',
' + sl has line offset TRUE',
@@ -391,6 +399,7 @@ describe('In autoload/shada.vim', function()
'sp': '',
'sh': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
'ss': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
'sb': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
'sm': {'_TYPE': v:msgpack_types.boolean, '_VAL': 0},
'sc': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
'sl': {'_TYPE': v:msgpack_types.boolean, '_VAL': 1},
@@ -408,6 +417,8 @@ describe('In autoload/shada.vim', function()
' # Expected boolean',
' + ss is :s pattern 0',
' # Expected boolean',
' + sb search backward 0',
' # Expected boolean',
' + sm magic value 0',
' # Expected boolean',
' + sc smartcase value 0',
@@ -423,6 +434,7 @@ describe('In autoload/shada.vim', function()
'sp': 0,
'sh': 0,
'ss': 0,
'sb': 0,
'sm': 0,
'sc': 0,
'sl': 0,