diff --git a/include/MKkey_defs.sh b/include/MKkey_defs.sh
index 45a06d0..e58ee2b 100755
--- a/include/MKkey_defs.sh
+++ b/include/MKkey_defs.sh
@@ -1,7 +1,8 @@
 #! /bin/sh
-# $Id: MKkey_defs.sh,v 1.15 2013/03/09 16:32:01 tom Exp $
+# $Id: MKkey_defs.sh,v 1.24 2024/01/19 12:26:17 tom Exp $
 ##############################################################################
-# Copyright (c) 2001-2003,2013 Free Software Foundation, Inc.                #
+# Copyright 2019-2022,2024 Thomas E. Dickey                                  #
+# Copyright 2001-2013,2017 Free Software Foundation, Inc.                    #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
 # copy of this software and associated documentation files (the "Software"), #
@@ -34,26 +35,28 @@
 #
 # Extract function-key definitions from the Caps file
 #
-: ${AWK-awk}
-DATA=${1-Caps}
+: "${AWK-awk}"
+
+test $# = 0 && set Caps
 
 data=data$$
 pass1=pass1_$$
 pass2=pass2_$$
 pass3=pass3_$$
 pass4=pass4_$$
-trap 'rm -f $data pass[1234]_$$' 0 1 2 5 15
+trap 'rm -f $data pass[1234]_$$; exit 1' 1 2 3 15
+trap 'rm -f $data pass[1234]_$$' 0
 
 # change repeated tabs (used for readability) to single tabs (needed to make
 # awk see the right field alignment of the corresponding columns):
-if sort -k 6 $DATA >$data 2>/dev/null
+if sort -k 6 "$@" >$data 2>/dev/null
 then
 	# POSIX
-	sed -e 's/[	][	]*/	/g' < $DATA |sort -n -k 6 >$data
-elif sort -n +5 $DATA >$data 2>/dev/null
+	sed -e 's/[	][	]*/	/g' "$@" |sort -n -k 6 >$data
+elif sort -n +5 "$@" >$data 2>/dev/null
 then
 	# SunOS (and SVr4, marked as obsolete but still recognized)
-	sed -e 's/[	][	]*/	/g' < $DATA |sort -n +5 >$data
+	sed -e 's/[	][	]*/	/g' "$@" |sort -n +5 >$data
 else
 	echo "Your sort utility is broken.  Please install one that works." >&2
 	exit 1
@@ -61,16 +64,14 @@
 
 # add keys that we generate automatically:
 cat >>$data <<EOF
-key_resize	kr1	str	R1	KEY_RESIZE	+	-----	Terminal resize event
-key_event	kv1	str	V1	KEY_EVENT	+	-----	We were interrupted by an event
+key_resize	kr1	str	R1	KEY_RESIZE	+	NCURSES_SIGWINCH 	Terminal resize event
 EOF
 
-THIS=./`basename $0`
-PARM=./`basename $DATA`
+THIS=./`basename "$0"`
 
 cat <<EOF
 /*
- * These definitions were generated by $THIS $PARM
+ * These definitions were generated by $THIS $*
  */
 EOF
 
@@ -124,6 +125,8 @@
 /^#/		{next;}
 /^capalias/	{next;}
 /^infoalias/	{next;}
+/^used_by/	{next;}
+/^userdef/	{next;}
 
 $5 != "-" && $6 != "-" {
 		if ($6 == "+") {
@@ -139,6 +142,12 @@
 			maxkey = thiskey;
 		if (pass == 2 || pass == 3) {
 			showkey=sprintf(octal_fmt, thiskey);
+			ifdef = 0;
+			if (index($7,"NCURSES_") == 1) {
+				ifdef = 1;
+				printf "\n";
+				printf "#if %s\n", $7;
+			}
 			if ($5 == "KEY_F(0)" ) {
 				printf "#define "
 				print_cols("KEY_F0", 16);
@@ -157,6 +166,9 @@
 					printf " %s", $i
 				print " */"
 			}
+			if (ifdef != 0) {
+				printf "#endif\n";
+			}
 		}
 	}
 END	{
