diff --git a/runtime/doc/Make_mvc.mak b/runtime/doc/Make_mvc.mak
index 5bfe934..a6af4ba 100644
--- a/runtime/doc/Make_mvc.mak
+++ b/runtime/doc/Make_mvc.mak
@@ -10,7 +10,7 @@
 # TODO: to think about what to use instead of awk. PowerShell?
 #AWK =
 
-# Correct the following line for the where executeable file vim is installed.
+# Correct the following line for the where executable file vim is installed.
 # Please do not put the path in quotes.
 VIMPROG = D:\Programs\Vim\vim91\vim.exe
 
diff --git a/runtime/doc/builtin.txt b/runtime/doc/builtin.txt
index d32c09d..67f447d 100644
--- a/runtime/doc/builtin.txt
+++ b/runtime/doc/builtin.txt
@@ -1,4 +1,4 @@
-*builtin.txt*	For Vim version 9.1.  Last change: 2024 Nov 09
+*builtin.txt*	For Vim version 9.1.  Last change: 2024 Nov 10
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -467,9 +467,9 @@
 prop_type_list([{props}])	List	get list of property types
 pum_getpos()			Dict	position and size of pum if visible
 pumvisible()			Number	whether popup menu is visible
-py3eval({expr}[, {locals}])	any	evaluate |python3| expression
-pyeval({expr}[, {locals}])	any	evaluate |Python| expression
-pyxeval({expr}[, {locals}])	any	evaluate |python_x| expression
+py3eval({expr} [, {locals}])	any	evaluate |python3| expression
+pyeval({expr} [, {locals}])	any	evaluate |Python| expression
+pyxeval({expr} [, {locals}])	any	evaluate |python_x| expression
 rand([{expr}])			Number	get pseudo-random number
 range({expr} [, {max} [, {stride}]])
 				List	items from {expr} to {max}
@@ -8127,7 +8127,7 @@
 		Return type: |Number|
 
 
-py3eval({expr}[, {locals}])				*py3eval()*
+py3eval({expr} [, {locals}])				*py3eval()*
 		Evaluate Python expression {expr} and return its result
 		converted to Vim data structures.
 		If a {locals} |Dictionary| is given, it defines set of local
@@ -8153,7 +8153,7 @@
 		{only available when compiled with the |+python3| feature}
 
 							*E858* *E859*
-pyeval({expr}[, {locals}])				*pyeval()*
+pyeval({expr} [, {locals}])				*pyeval()*
 		Evaluate Python expression {expr} and return its result
 		converted to Vim data structures.
 		For {locals} see |py3eval()|.
@@ -8172,7 +8172,7 @@
 
 		{only available when compiled with the |+python| feature}
 
-pyxeval({expr}[, {locals}])				*pyxeval()*
+pyxeval({expr} [, {locals}])				*pyxeval()*
 		Evaluate Python expression {expr} and return its result
 		converted to Vim data structures.
 		For {locals} see |py3eval()|.
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 37f0a18..48f192a 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt*  For Vim version 9.1.  Last change: 2024 Nov 07
+*quickfix.txt*  For Vim version 9.1.  Last change: 2024 Nov 10
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -361,7 +361,7 @@
 			Example: >
     :g/mypattern/caddexpr expand("%") .. ":" .. line(".") ..  ":" .. getline(".")
 <
-						*:lad* *:addd* *:laddexpr*
+						*:lad* *:ladd* *:laddexpr*
 :lad[dexpr] {expr}	Same as ":caddexpr", except the location list for the
 			current window is used instead of the quickfix list.
 
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index eff99f7..b0c77db 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 9.1.  Last change: 2024 Nov 09
+*syntax.txt*	For Vim version 9.1.  Last change: 2024 Nov 10
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2670,7 +2670,7 @@
 
 	:let g:pandoc#syntax#conceal#blacklist = []
 
-This is a list of the rules wich can be used here:
+This is a list of the rules which can be used here:
 
   - titleblock
   - image
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 6e5085a..3039737 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -2216,7 +2216,6 @@
 :abo	windows.txt	/*:abo*
 :aboveleft	windows.txt	/*:aboveleft*
 :abstract	vim9class.txt	/*:abstract*
-:addd	quickfix.txt	/*:addd*
 :al	windows.txt	/*:al*
 :all	windows.txt	/*:all*
 :am	gui.txt	/*:am*
@@ -2736,6 +2735,7 @@
 :lab	quickfix.txt	/*:lab*
 :labove	quickfix.txt	/*:labove*
 :lad	quickfix.txt	/*:lad*
+:ladd	quickfix.txt	/*:ladd*
 :laddb	quickfix.txt	/*:laddb*
 :laddbuffer	quickfix.txt	/*:laddbuffer*
 :laddexpr	quickfix.txt	/*:laddexpr*
