refactor!: rename 'jumpoptions' flag "unload" to "clean" (#30418)

Follow-up to #29347
This commit is contained in:
zeertzjq 2024-09-19 18:05:27 +08:00 committed by GitHub
parent 0fe4362e21
commit 7dbbaaec3f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 23 additions and 19 deletions

View File

@ -18,6 +18,10 @@ BREAKING CHANGES IN HEAD *news-breaking-dev*
The following changes to UNRELEASED features were made during the development The following changes to UNRELEASED features were made during the development
cycle (Nvim HEAD, the "master" branch). cycle (Nvim HEAD, the "master" branch).
OPTIONS
• 'jumpoptions' flag "unload" has been renamed to "clean".
============================================================================== ==============================================================================
BREAKING CHANGES *news-breaking* BREAKING CHANGES *news-breaking*

View File

@ -3665,7 +3665,7 @@ A jump table for the options with a short description can be found at |Q_op|.
Otherwise only one space is inserted. Otherwise only one space is inserted.
*'jumpoptions'* *'jop'* *'jumpoptions'* *'jop'*
'jumpoptions' 'jop' string (default "unload") 'jumpoptions' 'jop' string (default "clean")
global global
List of words that change the behavior of the |jumplist|. List of words that change the behavior of the |jumplist|.
stack Make the jumplist behave like the tagstack. stack Make the jumplist behave like the tagstack.
@ -3678,7 +3678,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|alternate-file| or using |mark-motions| try to |alternate-file| or using |mark-motions| try to
restore the |mark-view| in which the action occurred. restore the |mark-view| in which the action occurred.
unload Remove unloaded buffers from the jumplist. clean Remove unloaded buffers from the jumplist.
EXPERIMENTAL: this flag may change in the future. EXPERIMENTAL: this flag may change in the future.
*'keymap'* *'kmp'* *'keymap'* *'kmp'*

View File

@ -62,7 +62,7 @@ Defaults *nvim-defaults*
- 'isfname' does not include ":" (on Windows). Drive letters are handled - 'isfname' does not include ":" (on Windows). Drive letters are handled
correctly without it. (Use |gF| for filepaths suffixed with ":line:col"). correctly without it. (Use |gF| for filepaths suffixed with ":line:col").
- 'joinspaces' is disabled - 'joinspaces' is disabled
- 'jumpoptions' defaults to "unload" - 'jumpoptions' defaults to "clean"
- 'langnoremap' is enabled - 'langnoremap' is enabled
- 'langremap' is disabled - 'langremap' is disabled
- 'laststatus' defaults to 2 (statusline is always shown) - 'laststatus' defaults to 2 (statusline is always shown)
@ -348,7 +348,7 @@ string options work.
and |:command-preview| commands and |:command-preview| commands
- 'jumpoptions' - 'jumpoptions'
- "view" tries to restore |mark-view| when moving through the jumplist. - "view" tries to restore |mark-view| when moving through the jumplist.
- "unload" removes unloaded buffers from the jumplist. - "clean" removes unloaded buffers from the jumplist.
- the |jumplist|, |changelist|, |alternate-file| or using |mark-motions|. - the |jumplist|, |changelist|, |alternate-file| or using |mark-motions|.
- 'laststatus' global statusline support - 'laststatus' global statusline support
- 'mousescroll' amount to scroll by when scrolling with a mouse - 'mousescroll' amount to scroll by when scrolling with a mouse

View File

@ -3577,11 +3577,11 @@ vim.go.js = vim.go.joinspaces
--- |alternate-file` or using `mark-motions` try to --- |alternate-file` or using `mark-motions` try to
--- restore the `mark-view` in which the action occurred. --- restore the `mark-view` in which the action occurred.
--- ---
--- unload Remove unloaded buffers from the jumplist. --- clean Remove unloaded buffers from the jumplist.
--- EXPERIMENTAL: this flag may change in the future. --- EXPERIMENTAL: this flag may change in the future.
--- ---
--- @type string --- @type string
vim.o.jumpoptions = "unload" vim.o.jumpoptions = "clean"
vim.o.jop = vim.o.jumpoptions vim.o.jop = vim.o.jumpoptions
vim.go.jumpoptions = vim.o.jumpoptions vim.go.jumpoptions = vim.o.jumpoptions
vim.go.jop = vim.go.jumpoptions vim.go.jop = vim.go.jumpoptions

View File

@ -1388,7 +1388,7 @@ static int do_buffer_ext(int action, int start, int dir, int count, int flags)
// If the buffer to be deleted is not the current one, delete it here. // If the buffer to be deleted is not the current one, delete it here.
if (buf != curbuf) { if (buf != curbuf) {
if (jop_flags & JOP_UNLOAD) { if (jop_flags & JOP_CLEAN) {
// Remove the buffer to be deleted from the jump list. // Remove the buffer to be deleted from the jump list.
mark_jumplist_forget_file(curwin, buf_fnum); mark_jumplist_forget_file(curwin, buf_fnum);
} }
@ -1414,7 +1414,7 @@ static int do_buffer_ext(int action, int start, int dir, int count, int flags)
if (au_new_curbuf.br_buf != NULL && bufref_valid(&au_new_curbuf)) { if (au_new_curbuf.br_buf != NULL && bufref_valid(&au_new_curbuf)) {
buf = au_new_curbuf.br_buf; buf = au_new_curbuf.br_buf;
} else if (curwin->w_jumplistlen > 0) { } else if (curwin->w_jumplistlen > 0) {
if (jop_flags & JOP_UNLOAD) { if (jop_flags & JOP_CLEAN) {
// Remove the buffer from the jump list. // Remove the buffer from the jump list.
mark_jumplist_forget_file(curwin, buf_fnum); mark_jumplist_forget_file(curwin, buf_fnum);
} }
@ -1424,7 +1424,7 @@ static int do_buffer_ext(int action, int start, int dir, int count, int flags)
if (curwin->w_jumplistlen > 0) { if (curwin->w_jumplistlen > 0) {
int jumpidx = curwin->w_jumplistidx; int jumpidx = curwin->w_jumplistidx;
if (jop_flags & JOP_UNLOAD) { if (jop_flags & JOP_CLEAN) {
// If the index is the same as the length, the current position was not yet added to the // If the index is the same as the length, the current position was not yet added to the
// jump list. So we can safely go back to the last entry and search from there. // jump list. So we can safely go back to the last entry and search from there.
if (jumpidx == curwin->w_jumplistlen) { if (jumpidx == curwin->w_jumplistlen) {
@ -1438,7 +1438,7 @@ static int do_buffer_ext(int action, int start, int dir, int count, int flags)
} }
forward = jumpidx; forward = jumpidx;
while ((jop_flags & JOP_UNLOAD) || jumpidx != curwin->w_jumplistidx) { while ((jop_flags & JOP_CLEAN) || jumpidx != curwin->w_jumplistidx) {
buf = buflist_findnr(curwin->w_jumplist[jumpidx].fmark.fnum); buf = buflist_findnr(curwin->w_jumplist[jumpidx].fmark.fnum);
if (buf != NULL) { if (buf != NULL) {
@ -1455,7 +1455,7 @@ static int do_buffer_ext(int action, int start, int dir, int count, int flags)
} }
} }
if (buf != NULL) { // found a valid buffer: stop searching if (buf != NULL) { // found a valid buffer: stop searching
if (jop_flags & JOP_UNLOAD) { if (jop_flags & JOP_CLEAN) {
curwin->w_jumplistidx = jumpidx; curwin->w_jumplistidx = jumpidx;
update_jumplist = false; update_jumplist = false;
} }
@ -3715,7 +3715,7 @@ void ex_buffer_all(exarg_T *eap)
// Open the buffer in this window. // Open the buffer in this window.
swap_exists_action = SEA_DIALOG; swap_exists_action = SEA_DIALOG;
set_curbuf(buf, DOBUF_GOTO, !(jop_flags & JOP_UNLOAD)); set_curbuf(buf, DOBUF_GOTO, !(jop_flags & JOP_CLEAN));
if (!bufref_valid(&bufref)) { if (!bufref_valid(&bufref)) {
// Autocommands deleted the buffer. // Autocommands deleted the buffer.
swap_exists_action = SEA_NONE; swap_exists_action = SEA_NONE;

View File

@ -540,7 +540,7 @@ EXTERN char *p_jop; ///< 'jumpooptions'
EXTERN unsigned jop_flags; EXTERN unsigned jop_flags;
#define JOP_STACK 0x01 #define JOP_STACK 0x01
#define JOP_VIEW 0x02 #define JOP_VIEW 0x02
#define JOP_UNLOAD 0x04 #define JOP_CLEAN 0x04
EXTERN char *p_keymap; ///< 'keymap' EXTERN char *p_keymap; ///< 'keymap'
EXTERN char *p_kp; ///< 'keywordprg' EXTERN char *p_kp; ///< 'keywordprg'
EXTERN char *p_km; ///< 'keymodel' EXTERN char *p_km; ///< 'keymodel'

View File

@ -4515,7 +4515,7 @@ return {
{ {
abbreviation = 'jop', abbreviation = 'jop',
cb = 'did_set_jumpoptions', cb = 'did_set_jumpoptions',
defaults = { if_true = 'unload' }, defaults = { if_true = 'clean' },
deny_duplicates = true, deny_duplicates = true,
desc = [=[ desc = [=[
List of words that change the behavior of the |jumplist|. List of words that change the behavior of the |jumplist|.
@ -4529,7 +4529,7 @@ return {
|alternate-file| or using |mark-motions| try to |alternate-file| or using |mark-motions| try to
restore the |mark-view| in which the action occurred. restore the |mark-view| in which the action occurred.
unload Remove unloaded buffers from the jumplist. clean Remove unloaded buffers from the jumplist.
EXPERIMENTAL: this flag may change in the future. EXPERIMENTAL: this flag may change in the future.
]=], ]=],
expand_cb = 'expand_set_jumpoptions', expand_cb = 'expand_set_jumpoptions',

View File

@ -139,7 +139,7 @@ static char *(p_fdc_values[]) = { "auto", "auto:1", "auto:2", "auto:3", "auto:4"
"5", "6", "7", "8", "9", NULL }; "5", "6", "7", "8", "9", NULL };
static char *(p_spo_values[]) = { "camel", "noplainbuffer", NULL }; static char *(p_spo_values[]) = { "camel", "noplainbuffer", NULL };
static char *(p_icm_values[]) = { "nosplit", "split", NULL }; static char *(p_icm_values[]) = { "nosplit", "split", NULL };
static char *(p_jop_values[]) = { "stack", "view", "unload", NULL }; static char *(p_jop_values[]) = { "stack", "view", "clean", NULL };
static char *(p_tpf_values[]) = { "BS", "HT", "FF", "ESC", "DEL", "C0", "C1", NULL }; static char *(p_tpf_values[]) = { "BS", "HT", "FF", "ESC", "DEL", "C0", "C1", NULL };
static char *(p_rdb_values[]) = { "compositor", "nothrottle", "invalid", "nodelta", "line", static char *(p_rdb_values[]) = { "compositor", "nothrottle", "invalid", "nodelta", "line",
"flush", NULL }; "flush", NULL };

View File

@ -194,7 +194,7 @@ describe("jumpoptions=stack behaves like 'tagstack'", function()
end) end)
end) end)
describe('buffer deletion with jumpoptions+=unload', function() describe('buffer deletion with jumpoptions+=clean', function()
local base_file = 'Xtest-functional-buffer-deletion' local base_file = 'Xtest-functional-buffer-deletion'
local file1 = base_file .. '1' local file1 = base_file .. '1'
local file2 = base_file .. '2' local file2 = base_file .. '2'
@ -325,7 +325,7 @@ describe('buffer deletion with jumpoptions+=unload', function()
end) end)
end) end)
describe('buffer deletion with jumpoptions-=unload', function() describe('buffer deletion with jumpoptions-=clean', function()
local base_file = 'Xtest-functional-buffer-deletion' local base_file = 'Xtest-functional-buffer-deletion'
local file1 = base_file .. '1' local file1 = base_file .. '1'
local file2 = base_file .. '2' local file2 = base_file .. '2'
@ -336,7 +336,7 @@ describe('buffer deletion with jumpoptions-=unload', function()
before_each(function() before_each(function()
clear() clear()
command('clearjumps') command('clearjumps')
command('set jumpoptions-=unload') command('set jumpoptions-=clean')
write_file(file1, content1, false, false) write_file(file1, content1, false, false)
write_file(file2, content2, false, false) write_file(file2, content2, false, false)