diff -urN less-691-orig/cmd.h less-691/cmd.h
--- less-691-orig/cmd.h	2026-01-11 01:50:40 +0900
+++ less-691/cmd.h	2026-01-24 19:52:10 +0900
@@ -172,9 +172,5 @@
 #define SK_PAD_DOT             31
 #define SK_PAD_COMMA           32
 #define SK_PAD_ZERO            33
-#define SK_SHIFT_HOME          34
-#define SK_SHIFT_END           35
-#define SK_CTL_HOME            36
-#define SK_CTL_END             37
 
 #define SK_CONTROL_K           40
diff -urN less-691-orig/decode.c less-691/decode.c
--- less-691-orig/decode.c	2026-01-11 01:50:36 +0900
+++ less-691/decode.c	2026-01-24 19:55:37 +0900
@@ -102,12 +102,7 @@
 	ESC,'u',0,                      A_UNDO_SEARCH,
 	ESC,'U',0,                      A_CLR_SEARCH,
 	'g',0,                          A_GOLINE,
-	SK(SK_HOME),0,                  A_LLSHIFT,
-	SK(SK_SHIFT_HOME),0,            A_GOLINE|A_EXTRA,           ESC,'{',0,
-	SK(SK_CTL_HOME),0,              A_GOLINE|A_EXTRA,           ESC,'{',0,
-	SK(SK_END),0,                   A_RRSHIFT,
-	SK(SK_SHIFT_END),0,             A_GOEND|A_EXTRA,            ESC,'}',0,
-	SK(SK_CTL_END),0,               A_GOEND|A_EXTRA,            ESC,'}',0,
+	SK(SK_HOME),0,                  A_GOLINE,
 	'<',0,                          A_GOLINE,
 	ESC,'<',0,                      A_GOLINE,
 	'p',0,                          A_PERCENT,
@@ -132,6 +127,7 @@
 	ESC,'G',0,                      A_GOEND_BUF,
 	ESC,'>',0,                      A_GOEND,
 	'>',0,                          A_GOEND,
+	SK(SK_END),0,                   A_GOEND,
 	'P',0,                          A_GOPOS,
 
 	'0',0,                          A_DIGIT,
@@ -251,12 +247,8 @@
 	ESC,SK(SK_BACKSPACE),0,         EC_W_BACKSPACE, /* ESC BACKSPACE */
 	ESC,'0',0,                      EC_HOME,        /* ESC 0 */
 	SK(SK_HOME),0,                  EC_HOME,        /* HOME */
-	SK(SK_SHIFT_HOME),0,            EC_HOME,        /* SHIFT-HOME */
-	SK(SK_CTL_HOME),0,              EC_HOME,        /* CTRL-HOME */
 	ESC,'$',0,                      EC_END,         /* ESC $ */
 	SK(SK_END),0,                   EC_END,         /* END */
-	SK(SK_SHIFT_END),0,             EC_END,         /* SHIFT-END */
-	SK(SK_CTL_END),0,               EC_END,         /* CTRL-END */
 	ESC,'k',0,                      EC_UP,          /* ESC k */
 	SK(SK_UP_ARROW),0,              EC_UP,          /* UPARROW */
 	ESC,'j',0,                      EC_DOWN,        /* ESC j */
diff -urN less-691-orig/less.nro less-691/less.nro
--- less-691-orig/less.nro	2026-01-11 01:50:42 +0900
+++ less-691/less.nro	2026-01-24 19:53:17 +0900
@@ -171,16 +171,10 @@
 option).
 If a number N is specified, it becomes the default for future RIGHTARROW
 and LEFTARROW commands.
-.IP "ESC-} or \*^RIGHTARROW or END"
+.IP "ESC-} or \*^RIGHTARROW"
 Scroll horizontally right to show the end of the longest displayed line.
-.IP "ESC-{ or \*^LEFTARROW or HOME"
+.IP "ESC-{ or \*^LEFTARROW"
 Scroll horizontally left back to the first column.
-.IP "\*^END or SHIFT-END"
-Go to line N in the file, default the end of the file, and
-scroll horizontally right to show the end of the longest displayed line.
-.IP "\*^HOME or SHIFT-HOME"
-Go to line N in the file, default 1 (beginning of file),
-and scroll horizontally left back to the first column.
 .IP "r or \*^R or \*^L"
 Repaint the screen.
 .IP R
@@ -2123,7 +2117,7 @@
 (On MS-DOS and Windows systems, a "\e" is appended.)
 The environment variable LESSSEPARATOR can be used to specify a
 different character to append to a directory name.
-.IP "BACKTAB (SHIFT-TAB) [ ESC-TAB ]"
+.IP "BACKTAB [ ESC-TAB ]"
 Like TAB, but cycles in the reverse direction thru the matching filenames.
 .IP "\*^L"
 Complete the partial filename to the left of the cursor.
diff -urN less-691-orig/main.c less-691/main.c
--- less-691-orig/main.c	2026-01-11 01:50:35 +0900
+++ less-691/main.c	2026-01-24 19:52:11 +0900
@@ -247,7 +247,6 @@
 	struct xbuffer xfiles;
 	constant int *files;
 	size_t num_files;
-	size_t f;
 	lbool end_opts = FALSE;
 	lbool posixly_correct;
 
@@ -372,7 +371,7 @@
 		ifile = get_ifile(FAKE_HELPFILE, ifile);
 	files = (constant int *) xfiles.data;
 	num_files = xfiles.end / sizeof(int);
-	for (f = 0;  f < num_files;  f++)
+	for (i = 0;  i < num_files;  i++)
 	{
 #if (MSDOS_COMPILER && MSDOS_COMPILER != DJGPPC)
 		/*
@@ -386,7 +385,7 @@
 		char *gfilename;
 		char *qfilename;
 		
-		gfilename = lglob(argv[files[f]]);
+		gfilename = lglob(argv[files[i]]);
 		init_textlist(&tlist, gfilename);
 		filename = NULL;
 		while ((filename = forw_textlist(&tlist, filename)) != NULL)
@@ -398,7 +397,7 @@
 		}
 		free(gfilename);
 #else
-		(void) get_ifile(argv[files[f]], ifile);
+		(void) get_ifile(argv[files[i]], ifile);
 		ifile = prev_ifile(NULL_IFILE);
 #endif
 	}
diff -urN less-691-orig/pckeys.h less-691/pckeys.h
--- less-691-orig/pckeys.h	2026-01-11 01:50:41 +0900
+++ less-691/pckeys.h	2026-01-24 19:54:29 +0900
@@ -29,10 +29,6 @@
 #define PCK_INSERT              '\x52'
 #define PCK_DELETE              '\x53'
 /* The following are nonstandard and internal to less. */
-#define PCK_SHIFT_END           '\x61'
 #define PCK_CTL_DELETE          '\x62'
 #define PCK_CTL_LEFT            '\x63'
 #define PCK_CTL_RIGHT           '\x74'
-#define PCK_CTL_HOME            '\x7a'
-#define PCK_CTL_END             '\x7c'
-#define PCK_SHIFT_HOME          '\x7d'
diff -urN less-691-orig/screen.c less-691/screen.c
--- less-691-orig/screen.c	2026-01-11 01:50:35 +0900
+++ less-691/screen.c	2026-01-24 19:52:11 +0900
@@ -1042,10 +1042,6 @@
 	static char k_backtab[]         = { '\340', PCK_SHIFT_TAB, 0 };
 	static char k_pagedown[]        = { '\340', PCK_PAGEDOWN, 0 };
 	static char k_pageup[]          = { '\340', PCK_PAGEUP, 0 };
-	static char k_ctl_home[]        = { '\340', PCK_CTL_HOME, 0 };
-	static char k_ctl_end[]         = { '\340', PCK_CTL_END, 0 };
-	static char k_shift_home[]      = { '\340', PCK_SHIFT_HOME, 0 };
-	static char k_shift_end[]       = { '\340', PCK_SHIFT_END, 0 };
 	static char k_f1[]              = { '\340', PCK_F1, 0 };
 #endif
 #if !MSDOS_COMPILER
@@ -1150,18 +1146,6 @@
 	case SK_BACKTAB:
 		s = k_backtab;
 		break;
-	case SK_SHIFT_HOME:
-		s = k_shift_home;
-		break;
-	case SK_CTL_HOME:
-		s = k_ctl_home;
-		break;
-	case SK_SHIFT_END:
-		s = k_shift_end;
-		break;
-	case SK_CTL_END:
-		s = k_ctl_end;
-		break;
 #else
 	case SK_RIGHT_ARROW:
 		s = ltgetstr("kcuf1", "kr", &sp);
@@ -1184,21 +1168,9 @@
 	case SK_HOME:
 		s = ltgetstr("khome", "kh", &sp);
 		break;
-	case SK_SHIFT_HOME:
-		s = ltgetstr("kHOM", "#2", &sp);
-		break;
-	case SK_CTL_HOME:
-		s = ltgetstr("kHOM5", NULL, &sp);
-		break;
 	case SK_END:
 		s = ltgetstr("kend", "@7", &sp);
 		break;
-	case SK_SHIFT_END:
-		s = ltgetstr("kEND", "#7", &sp);
-		break;
-	case SK_CTL_END:
-		s = ltgetstr("kEND5", NULL, &sp);
-		break;
 	case SK_INSERT:
 		s = ltgetstr("kich1", "kI", &sp);
 		break;
@@ -1292,7 +1264,6 @@
 	return (s);
 }
 
-#if !MSDOS_COMPILER
 static constant char *ltgoto(constant char *cap, int col, int line)
 {
 #if USE_TERMINFO
@@ -1301,7 +1272,6 @@
 	return tgoto(cap, col, line);
 #endif
 }
-#endif /* MSDOS_COMPILER */
 
 #if MSDOS_COMPILER
 public void init_win_colors(void)
@@ -3285,29 +3255,11 @@
 		case PCK_DELETE: /* delete */
 			scan = PCK_CTL_DELETE;
 			break;
-		case PCK_HOME:
-			scan = PCK_CTL_HOME;
-			break;
-		case PCK_END:
-			scan = PCK_CTL_END;
-			break;
 		}
 	} else if (xip->ir.Event.KeyEvent.dwControlKeyState & SHIFT_PRESSED)
 	{
 		if (xip->ichar == '\t')
 			scan = PCK_SHIFT_TAB;
-		else
-		{
-			switch (xip->ir.Event.KeyEvent.wVirtualScanCode)
-			{
-				case PCK_HOME:
-					scan = PCK_SHIFT_HOME;
-					break;
-				case PCK_END:
-					scan = PCK_SHIFT_END;
-					break;
-			}
-		}
 	}
 	if (scan < 0 && xip->ichar == 0)
 		scan = xip->ir.Event.KeyEvent.wVirtualScanCode;
