patch 9.2.0267: 'autowrite' not triggered for :term

Problem:  'autowrite' not triggered for :term
Solution: Trigger autowrite for :term command
          (rendcrx)

closes: #19855

Signed-off-by: rendcrx <974449413@qq.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
rendcrx
2026-03-29 09:20:34 +00:00
committed by Christian Brabandt
parent 8ea5f27745
commit 466b5f531a
4 changed files with 20 additions and 2 deletions
+2 -2
View File
@@ -1,4 +1,4 @@
*options.txt* For Vim version 9.2. Last change: 2026 Mar 23
*options.txt* For Vim version 9.2. Last change: 2026 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1031,7 +1031,7 @@ A jump table for the options with a short description can be found at |Q_op|.
global
Write the contents of the file, if it has been modified, on each
`:next`, `:rewind`, `:last`, `:first`, `:previous`, `:stop`,
`:suspend`, `:tag`, `:!`, `:make`, CTRL-] and CTRL-^ command; and when
`:suspend`, `:tag`, `:!`, `:make`, `:terminal`, CTRL-] and CTRL-^ command; and when
a `:buffer`, CTRL-O, CTRL-I, '{A-Z0-9}, or `{A-Z0-9} command takes one
to another file.
A buffer is not written if it becomes hidden, e.g. when 'bufhidden' is
+5
View File
@@ -810,6 +810,11 @@ ex_terminal(exarg_T *eap)
int opt_shell = FALSE;
char_u *cmd;
char_u *tofree = NULL;
int scroll_save = msg_scroll;
msg_scroll = FALSE; // don't scroll here
autowrite_all();
msg_scroll = scroll_save;
init_job_options(&opt);
+11
View File
@@ -1218,4 +1218,15 @@ func Test_term_getpos()
bw
endfunc
func Test_term_autowrite()
set autowrite
new termautowritetestfile
call setline(1, 'test content')
term echo "test"
call assert_equal(['test content'], readfile('termautowritetestfile'))
call delete('termautowritetestfile')
bwipe!
set noautowrite
endfunc
" vim: shiftwidth=2 sts=2 expandtab
+2
View File
@@ -734,6 +734,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
267,
/**/
266,
/**/