diff --git a/runtime/doc/builtin.txt b/runtime/doc/builtin.txt
index 996f0fb..96d7a0d 100644
--- a/runtime/doc/builtin.txt
+++ b/runtime/doc/builtin.txt
@@ -1,4 +1,4 @@
-*builtin.txt*	For Vim version 9.0.  Last change: 2023 Sep 27
+*builtin.txt*	For Vim version 9.0.  Last change: 2023 Nov 20
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -4008,8 +4008,8 @@
 			text	description of the error
 			type	type of the error, 'E', '1', etc.
 			valid	|TRUE|: recognized error message
-		        user_data
-			        custom data associated with the item, can be
+			user_data
+				custom data associated with the item, can be
 				any type.
 
 		When there is no error list or it's empty, an empty list is
@@ -6793,96 +6793,96 @@
 		having a different word order, positional arguments may be
 		used to indicate this. For instance: >
 
-			#, c-format
-			msgid "%s returning %s"
-			msgstr "waarde %2$s komt terug van %1$s"
+		    #, c-format
+		    msgid "%s returning %s"
+		    msgstr "waarde %2$s komt terug van %1$s"
 <
-		In this example, the sentence has its 2 string arguments reversed
-		in the output. >
+		In this example, the sentence has its 2 string arguments
+		reversed in the output. >
 
-			echo printf(
-				"In The Netherlands, vim's creator's name is: %1$s %2$s",
-				"Bram", "Moolenaar")
-<			In The Netherlands, vim's creator's name is: Bram Moolenaar >
+		    echo printf(
+			"In The Netherlands, vim's creator's name is: %1$s %2$s",
+			"Bram", "Moolenaar")
+<		    In The Netherlands, vim's creator's name is: Bram Moolenaar >
 
-			echo printf(
-				"In Belgium, vim's creator's name is: %2$s %1$s",
-				"Bram", "Moolenaar")
-<			In Belgium, vim's creator's name is: Moolenaar Bram
+		    echo printf(
+			"In Belgium, vim's creator's name is: %2$s %1$s",
+			"Bram", "Moolenaar")
+<		    In Belgium, vim's creator's name is: Moolenaar Bram
 
 		Width (and precision) can be specified using the '*' specifier.
 		In this case, you must specify the field width position in the
 		argument list. >
 
-			echo printf("%1$*2$.*3$d", 1, 2, 3)
-<			001 >
-			echo printf("%2$*3$.*1$d", 1, 2, 3)
-<			  2 >
-			echo printf("%3$*1$.*2$d", 1, 2, 3)
-<			03 >
-			echo printf("%1$*2$.*3$g", 1.4142, 2, 3)
-<			1.414
+		    echo printf("%1$*2$.*3$d", 1, 2, 3)
+<		    001 >
+		    echo printf("%2$*3$.*1$d", 1, 2, 3)
+<		      2 >
+		    echo printf("%3$*1$.*2$d", 1, 2, 3)
+<		    03 >
+		    echo printf("%1$*2$.*3$g", 1.4142, 2, 3)
+<		    1.414
 
 		You can mix specifying the width and/or precision directly
 		and via positional arguments: >
 
-			echo printf("%1$4.*2$f", 1.4142135, 6)
-<			1.414214 >
-			echo printf("%1$*2$.4f", 1.4142135, 6)
-<			1.4142 >
-			echo printf("%1$*2$.*3$f", 1.4142135, 6, 2)
-<			  1.41
+		    echo printf("%1$4.*2$f", 1.4142135, 6)
+<		    1.414214 >
+		    echo printf("%1$*2$.4f", 1.4142135, 6)
+<		    1.4142 >
+		    echo printf("%1$*2$.*3$f", 1.4142135, 6, 2)
+<		      1.41
 
 							*E1500*
 		You cannot mix positional and non-positional arguments: >
-			echo printf("%s%1$s", "One", "Two")
-<			E1500: Cannot mix positional and non-positional
-			arguments: %s%1$s
+		    echo printf("%s%1$s", "One", "Two")
+<		    E1500: Cannot mix positional and non-positional arguments:
+		    %s%1$s
 
 							*E1501*
 		You cannot skip a positional argument in a format string: >
-			echo printf("%3$s%1$s", "One", "Two", "Three")
-<			E1501: format argument 2 unused in $-style
-			format: %3$s%1$s
+		    echo printf("%3$s%1$s", "One", "Two", "Three")
+<		    E1501: format argument 2 unused in $-style format:
+		    %3$s%1$s
 
 							*E1502*
 		You can re-use a [field-width] (or [precision]) argument: >
-			echo printf("%1$d at width %2$d is: %01$*2$d", 1, 2)
-<			1 at width 2 is: 01
+		    echo printf("%1$d at width %2$d is: %01$*2$d", 1, 2)
+<		    1 at width 2 is: 01
 
 		However, you can't use it as a different type: >
-			echo printf("%1$d at width %2$ld is: %01$*2$d", 1, 2)
-<			E1502: Positional argument 2 used as field
-			width reused as different type: long int/int
+		    echo printf("%1$d at width %2$ld is: %01$*2$d", 1, 2)
+<		    E1502: Positional argument 2 used as field width reused as
+		    different type: long int/int
 
 							*E1503*
 		When a positional argument is used, but not the correct number
 		or arguments is given, an error is raised: >
-			echo printf("%1$d at width %2$d is: %01$*2$.*3$d", 1, 2)
-<			E1503: Positional argument 3 out of bounds:
-			%1$d at width %2$d is: %01$*2$.*3$d
+		    echo printf("%1$d at width %2$d is: %01$*2$.*3$d", 1, 2)
+<		    E1503: Positional argument 3 out of bounds: %1$d at width
+		    %2$d is: %01$*2$.*3$d
 
 		Only the first error is reported: >
-			echo printf("%01$*2$.*3$d %4$d", 1, 2)
-<			E1503: Positional argument 3 out of bounds:
-			%01$*2$.*3$d %4$d
+		    echo printf("%01$*2$.*3$d %4$d", 1, 2)
+<		    E1503: Positional argument 3 out of bounds: %01$*2$.*3$d
+		    %4$d
 
 							*E1504*
 		A positional argument can be used more than once: >
-			echo printf("%1$s %2$s %1$s", "One", "Two")
-<			One Two One
+		    echo printf("%1$s %2$s %1$s", "One", "Two")
+<		    One Two One
 
 		However, you can't use a different type the second time: >
-			echo printf("%1$s %2$s %1$d", "One", "Two")
-<			E1504: Positional argument 1 type used
-			inconsistently: int/string
+		    echo printf("%1$s %2$s %1$d", "One", "Two")
+<		    E1504: Positional argument 1 type used inconsistently:
+		    int/string
 
 							*E1505*
 		Various other errors that lead to a format string being
 		wrongly formatted lead to: >
-			echo printf("%1$d at width %2$d is: %01$*2$.3$d", 1, 2)
-<			E1505: Invalid format specifier:
-			%1$d at width %2$d is: %01$*2$.3$d
+		    echo printf("%1$d at width %2$d is: %01$*2$.3$d", 1, 2)
+<		    E1505: Invalid format specifier: %1$d at width %2$d is:
+		    %01$*2$.3$d
 
 							*E1507*
 		This internal error indicates that the logic to parse a
@@ -10177,8 +10177,8 @@
 			Job:	    8  |v:t_job|
 			Channel:    9  |v:t_channel|
 			Blob:	   10  |v:t_blob|
-			Class	   12  |v:t_class|
-			Object	   13  |v:t_object|
+			Class:	   12  |v:t_class|
+			Object:	   13  |v:t_object|
 		For backward compatibility, this method can be used: >
 			:if type(myvar) == type(0)
 			:if type(myvar) == type("")
