diff options
author | Famiu Haque <famiuhaque@proton.me> | 2024-11-08 11:57:59 +0600 |
---|---|---|
committer | Famiu Haque <famiuhaque@proton.me> | 2024-12-26 20:55:13 +0600 |
commit | 6257270040bc5c61a489f7fb9d4102223c36cf89 (patch) | |
tree | a0db9a3bf31b56dedd9a240b54c5d47b02ce43ff /test/functional/lua/with_spec.lua | |
parent | 98763ce4e93752f22d379e3f735f4c78ae49afad (diff) | |
download | rneovim-6257270040bc5c61a489f7fb9d4102223c36cf89.tar.gz rneovim-6257270040bc5c61a489f7fb9d4102223c36cf89.tar.bz2 rneovim-6257270040bc5c61a489f7fb9d4102223c36cf89.zip |
refactor(options): set option value for non-current context directly
Problem: Currently, we use `switch_option_context` to temporarily switch the current option context before setting an option for a different buffer / window. This is not ideal because we already support getting and setting option values for non-current contexts in the underlying implementation.
Solution: Set option value for non-current context by passing the context directly to the lower level functions. Also introduce a new `OptCtx` struct to store option context information, this will scale much better if we add more option scopes and other context information in the future.
Diffstat (limited to 'test/functional/lua/with_spec.lua')
-rw-r--r-- | test/functional/lua/with_spec.lua | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/test/functional/lua/with_spec.lua b/test/functional/lua/with_spec.lua index 92e798e7f3..a68a7722a4 100644 --- a/test/functional/lua/with_spec.lua +++ b/test/functional/lua/with_spec.lua @@ -882,11 +882,7 @@ describe('vim._with', function() eq({ bo = { cms_cur = '// %s', cms_other = '-- %s', ul_cur = 250, ul_other = -123456 }, wo = { ve_cur = 'insert', ve_other = 'block', winbl_cur = 25, winbl_other = 10 }, - -- Global `winbl` inside context ideally should be untouched and equal - -- to 50. It seems to be equal to 0 because `context.buf` uses - -- `aucmd_prepbuf` C approach which has no guarantees about window or - -- window option values inside context. - go = { cms = '-- %s', ul = 0, ve = 'none', winbl = 0, lmap = 'xy,yx' }, + go = { cms = '-- %s', ul = 0, ve = 'none', winbl = 50, lmap = 'xy,yx' }, }, out.inner) eq(out.before, out.after) end) |