blob: 05ac8cf625786e96f9302da392d1e4a550de14e9 [file] [log] [blame]
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05301#! /bin/sh
micky3879b9f5e72025-07-08 18:04:53 -04002# $Id: MKkeys_list.sh,v 1.9 2024/01/19 12:26:30 tom Exp $
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05303##############################################################################
micky3879b9f5e72025-07-08 18:04:53 -04004# Copyright 2019-2022,2024 Thomas E. Dickey #
5# Copyright 2001-2003,2017 Free Software Foundation, Inc. #
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05306# #
7# Permission is hereby granted, free of charge, to any person obtaining a #
8# copy of this software and associated documentation files (the "Software"), #
9# to deal in the Software without restriction, including without limitation #
10# the rights to use, copy, modify, merge, publish, distribute, distribute #
11# with modifications, sublicense, and/or sell copies of the Software, and to #
12# permit persons to whom the Software is furnished to do so, subject to the #
13# following conditions: #
14# #
15# The above copyright notice and this permission notice shall be included in #
16# all copies or substantial portions of the Software. #
17# #
18# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR #
19# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, #
20# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL #
21# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER #
22# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING #
23# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER #
24# DEALINGS IN THE SOFTWARE. #
25# #
26# Except as contained in this notice, the name(s) of the above copyright #
27# holders shall not be used in advertising or otherwise to promote the sale, #
28# use or other dealings in this Software without prior written #
29# authorization. #
30##############################################################################
31#
32# MKkey_defs.sh -- generate list of function-keys for terminfo database
33#
34# Author: Thomas E. Dickey 2001
35#
36# Extract function-key names from the Caps file
37#
38: ${AWK-awk}
micky3879b9f5e72025-07-08 18:04:53 -040039: ${USE_SIGWINCH-0}
40if test $# != 0
41then
42 DATA="$*"
43else
44 DATA=../../include/Caps
45fi
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053046
47data=data$$
micky3879b9f5e72025-07-08 18:04:53 -040048trap 'rm -f $data; exit 1' 1 2 3 15
49trap 'rm -f $data' 0
50cat $DATA | sed -e 's/[ ][ ]*/ /g' >$data
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053051
52cat <<EOF
53# These definitions were generated by $0 $DATA
54KEY_BREAK
55KEY_SRESET
56KEY_RESET
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053057EOF
micky3879b9f5e72025-07-08 18:04:53 -040058test "$USE_SIGWINCH" = 1 && echo KEY_RESIZE
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053059
60${AWK-awk} <$data '
61/^#/ {next;}
62/^capalias/ {next;}
63/^infoalias/ {next;}
micky3879b9f5e72025-07-08 18:04:53 -040064/^userdef/ {next;}
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053065
66$5 != "-" {
67 if (substr($5, 1, 4) == "KEY_" ) {
68 printf "%s %s\n", $5, $1
69 }
70}
71'