diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 5563a05..274d56e 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 9.1.  Last change: 2025 May 10
+*options.txt*	For Vim version 9.1.  Last change: 2025 May 14
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -3657,11 +3657,12 @@
 	  trunc		'>'		truncated text in the
 					|ins-completion-menu|.
 	  truncrl	'<'		same as "trunc" in 'rightleft' mode
+	  tpl_vert	'|'		vertical separators of 'tabpanel'
 
 	Any one that is omitted will fall back to the default.
 
 	Example: >
-	    :set fillchars=stl:\ ,stlnc:\ ,vert:\|,fold:-,diff:-
+	    :set fillchars=stl:\ ,stlnc:\ ,vert:\|,fold:-,diff:-,tpl_vert:\|
 <
 	All items support single-byte and multibyte characters.  But
 	double-width characters are not supported. |E1512|
@@ -7689,6 +7690,20 @@
 	line.
 	See |tab-page| for more information about tab pages.
 
+						*'showtabpanel'* *'stpl'*
+'showtabpanel' 'stpl'	number	(default 0)
+			global
+			{not in Vi}
+			{not available when compiled without the |+tabpanel|
+			feature}
+	The value of this option specifies when the |tabpanel| with tab page
+	labels will be displayed:
+		0: never
+		1: only if there are at least two tab pages
+		2: always
+	This is for the non-GUI implementation of the tabpanel only.
+	See |tab-page| for more information about tab page labels.
+
 						*'sidescroll'* *'ss'*
 'sidescroll' 'ss'	number	(default 0)
 			global
@@ -8408,6 +8423,71 @@
 	Maximum number of tab pages to be opened by the |-p| command line
 	argument or the ":tab all" command. |tabpage|
 
+				*'tabpanel'* *'tpl'* *g:actual_curtabpage*
+'tabpanel' 'tpl'			string	(default empty)
+			global
+			{not in Vi}
+	When non empty, this option determines the content of the |tabpanel|.
+	The option consists of printf style '%' items interspersed with
+	normal text, similar to the 'statusline' or 'tabline'.
+
+	When changing something that is used in 'tabpanel' that does not
+	trigger it to be updated, use |:redrawtabpanel|.
+	This option cannot be set in a modeline when 'modelineexpr' is off.
+
+	You can use |g:actual_curtabpage| within a function assigned to
+	tabpanel. |g:actual_curtabpage| represents current tab's label number.
+	This option can contain line breaks:
+>
+	set tabpanel=%!TabPanel()
+	function! TabPanel() abort
+	  return printf("(%2d)\n  %%f", g:actual_curtabpage)
+	endfunction
+<
+	The result is:
+>
+	+-----------+---------------------------------
+	|(1)        |
+	|  ~/aaa.txt|
+	|(2)        |
+	|  ~/.vimrc |
+	|           |
+	|           |
+	|           |
+<
+
+					*'tabpanelopt'* *'tplo'*
+'tabpanelopt' 'tplo'		string	(default "")
+			global
+			{not in Vi}
+	Optional settings for the |tabpanel|,  It can consist of the following
+	items.  Items must be separated by a comma.
+
+		align:{text}	Specified the position of tabpanel.
+				Currently supported positions are:
+
+				left	left-aligned
+				right	right-aligned
+
+				(default "left")
+
+		columns:{n}	Use the size (in char) of tabpanel.
+				The tabpanel is never shown when using zero
+				or less than the size of Vim window.
+				(default 20)
+
+		vert		Use a vertical separator for tabpanel.
+				This vertical separator is used "tpl_vert" of
+				'fillchars'.
+				(default off)
+
+	Examples: >
+		:set tabpanelopt=columns:16,align:right
+		:set tabpanelopt=
+		:set tabpanelopt=vert,align:right
+		:set tabpanelopt=columns:16
+<
+
 						*'tabstop'* *'ts'*
 'tabstop' 'ts'		number	(default 8)
 			local to buffer
