use utf8;

# screen version 4.00.03jw4

{

def => {
'' => {
	desc => 'index',

	'a' => ['g6', "literal a"],
	'A' => ['g8 args', "title"], # title
	'^a'=> ['', "command key"],
	'b' => ['g6', "send break"], # break
	'B' => ['g6', "reopen break"], # pow_break
	'^b'=> 'b',
	'c' => ['g8', "new"], # screen
	'C' => ['g1', "clear"], # clear
	'^c'=> 'c',
	'd' => ['g8', "detach"], # detach
	'D' => ['g8', "detach logout"], # pow_detach
	'^d'=> 'd',
	'f' => ['g3', "flow"], # flow
	'F' => ['g3', "fit"],
	'^f'=> 'f',
	'^g'=> ['g3', "vbell"], # vbell
	'h' => ['g5', "hardcopy"], # hardcopy
	'H' => ['g4', "log"], # log
	'^h'=> '^p',
	'i' => ['g0', "prop$sign{_}erties"], # info
	'I' => ['g4', "login on"], #XXX
	'^i'=> ['g1', "focus"], # focus
	'k' => ['g4', "kill"], # kill
	'K' => 'k',
	'l' => ['g1', "redraw"], # redisplay
	'L' => ['g4', "login"], # login
	'^l'=> 'l',
	'm' => ['g0', "last msg"], # lastmsg
	'M' => ['g4', "moni$sign{_}tor"], # monitor
	'^m'=> 'm',
	'n' => ['g2', "next"], # next
	'N' => ['g0', "number"], # number
	'^n'=> 'n',
	'O' => ['g4', "login off"], #XXX
	'^o'=> ['g2', "other"], # other
	'p' => ['g2', "previous"], # prev
	'^p'=> 'p',
	'q' => ['g3', "xon"], # xon
	'Q' => ['g1', "only"], # only
	'^q'=> 'q',
	'r' => ['g3', "wrap"], # wrap
	'^r'=> 'r',
	's' => ['g3', 'xoff'], # xoff
	'^s'=> 's',
	't' => ['g0', "time"], # time
	'^t'=> 't',
	'v' => ['g0', "version"],
	'^v'=> ['g6 arg arg linkdigraphs', "digraph"], # digraph
	'w' => ['g0', "windows"], # windows
	'W' => ['g3', "width"], # width
	'^w'=> 'w',
	'x' => ['g8', "lock screen"], # lockscreen
	'X' => ['g1', "remove"], # remove
	'^x'=> 'x',
	'z' => ['g8', "suspend"], # suspend
	'Z' => ['g8', "reset"],
	'^z'=> 'z',

	"'" => ['g2 arg', "select"], # select
	'"' => ['g2', "window$sign{_}list -b"], # windowlist -b
	':' => ['g3', "colon"], # colon
	"\e"=> ['g5', "copy"], # copy
	'[' => '^[',
	'^['=> "\e",
	'^]'=> ['g6', "paste ."], # paste .
	']' => '^]',
	'|' => ['g1', "split vert"], # split -v
	'{' => ['g6', "history"], # history
	'}' => ['g6', "history"], # history
	'=' => ['g5', "remove buf"], # removebuf
	'^?'=> '^h',
	'*' => ['g0', "displays"], # displays
	'.' => ['g8', "dump$sign{_}termcap"], # dumptermcap
	',' => ['g0', "license"], # license
	'-' => ['g2', "select -"], # select -
	'_' => ['g4', "silence"], # silence
	'>' => ['g5', "writebuf"], # writebuf
	'<' => ['g5', "readbuf"], # readbuf
	'^@'=> 'n',
},
},

flag => {
	g0 => ["info"],
	g1 => ["display"],
	g2 => ["select"],
	g3 => ["config"],
	g4 => ["window"],
	g5 => ["buffer"],
	g6 => ["contents"],
	g8 => ["screen"],

	arg => ["key$sign{arg}", "Commands with a dot need a char argument afterwards."],
},

}
