use utf8;
{

key => {
	'+<' => "history start",
	'+>' => "history end",
	'+?' => "list complet<>ion<>s",
	'^@' => "set mark",

	'+#' => "prefix comm<>en<>t",
	'+&' => "tilde expand",
	'+*' => "complet<>e all",
	'+.' => "insert last",

	'^[' => "meta",
	'+\\'=> "delete whitesp<>ace",
	'^]' => "find char",
	'^+]'=> "rev find char",
	'^_' => "undo",

	'+~' => "user<>name exp<>and",
	'+!' => "cmd expand",
	'+@' => "host<>name exp<>and",
	'+$' => "variable expand",
	'+^' => "history expand",
	'+/' => "filename expand",

	'^a' => "begin of line",
	'^b' => "char back<>w<>ard<>s",
	'+b' => "word back<>w<>ard<>s",
	'^c' => "cancel comm<>and",
	'+c' => "capital<>ise word",
	'^d' => "delete char",
	'+d' => "delete word rem<>ain<>der",
#	'^e' => "emacs mode",
	'^e' => "end of line",
	'^f' => "char forward",
	'+f' => "word forward",
	'^g' => "abort cmd, bell",
	'^h' => "back<>space",
	'^+h'=> "delete bound word",
	'^i' => "auto<>complet<>e\n(tab)",
	'^+j'=> "vim mode",
	'^k' => "delete till eol",
	'^l' => "clear screen",
	'+l' => "lowcase word",
	'^m' => "enter line\n(enter)",
	'^n' => "history next",
	'+n' => "match history",
	'^o' => "enter and next",
	'^p' => "history back",
	'+p' => "rev match history",
#	'^q' => "\nQuote",  #TODO fix partial override
	'^r' => "reverse history",
	'+r' => "full undo\nRevert",
	'^s' => "search history",
	'^t' => "move char forw<>ard\nTranspose char",
	'+t' => "move word forw<>ard\nTranspose word",
	'^u' => "delete till bol", # unix
	'+u' => "upcase word",
	'^v' => "verbat<>im char",
	'^w' => "delete word", # unix
	'^x' => "extend<>ed",
	'^y' => "yank top",
	'+y' => "rotate yank",
	'^+y'=> "yank arg",
	'^z' => "back<>ground",

	'^x('  => "start macro",
	'^x)'  => "end macro",
	'^xe'  => "run macro\nExecute",
	'^x^e' => "editor",
	'^x^r' => "reload inputrc",
	'^x^x' => "swap cursor\neXchange",
	'^x^v' => "shell version",
},

mode => {
	''   => "emacs mode",
	'^x' => "emacs ctrl-x bindings",
},

flag => {
	ci => [info    => "Info command: shows/does something without altering anything."],
	pm => [motion  => "Move the cursor."],
	co => [history => "Replace contents involving kill ring, undo, or command history."],
	mi => [change  => "Alter current text (filtering or completion)."],
	mo => [delete  => "Remove text."],
	mv => [misc    => "Miscellaneous commands."],
	me => [mode    => "Additional key functionality (click to view)."],

	arg => ["key<arg>" => "Commands with a dot need a char argument afterwards."],
	new => ["&gt;v2.0" => "Unavailable before readline version 2.1 (1997)."],
	ext => ["bash" => "Default assignment in Bash shells, but not common readline."],
},

}
