X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/adc1751d8423b078e9f0fb7c5cd88ec8cc9f6935..5d63f06fcd53df308f4a31a894227de85a6a683c:/readline.eng.inc.pl diff --git a/readline.eng.inc.pl b/readline.eng.inc.pl index f9f04e4..4b28885 100644 --- a/readline.eng.inc.pl +++ b/readline.eng.inc.pl @@ -1,45 +1,45 @@ use utf8; -{ +{ key => { '+<' => "history start", '+>' => "history end", - '+?' => "list complet$sign{_}ion$sign{_}s", + '+?' => "list complet<>ion<>s", '^@' => "set mark", - '+#' => "prefix comm$sign{_}en$sign{_}t", + '+#' => "prefix comm<>en<>t", '+&' => "tilde expand", - '+*' => "complet$sign{_}e all", + '+*' => "complet<>e all", '+.' => "insert last", '^[' => "meta", - '+\\'=> "delete whitesp$sign{_}ace", + '+\\'=> "delete whitesp<>ace", '^]' => "find char", '^+]'=> "rev find char", '^_' => "undo", - '+~' => "user$sign{_}name exp$sign{_}and", + '+~' => "user<>name exp<>and", '+!' => "cmd expand", - '+@' => "host$sign{_}name exp$sign{_}and", + '+@' => "host<>name exp<>and", '+$' => "variable expand", '+^' => "history expand", '+/' => "filename expand", '^a' => "begin of line", - '^b' => "char back$sign{_}w$sign{_}ard$sign{_}s", - '+b' => "word back$sign{_}w$sign{_}ard$sign{_}s", - '^c' => "cancel comm$sign{_}and", - '+c' => "capital$sign{_}ise word", + '^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$sign{_}ain$sign{_}der", + '+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$sign{_}space", + '^h' => "back<>space", '^+h'=> "delete bound word", - '^i' => "auto$sign{_}complet$sign{_}e\n(tab)", + '^i' => "auto<>complet<>e\n(tab)", '^+j'=> "vim mode", '^k' => "delete till eol", '^l' => "clear screen", @@ -54,17 +54,17 @@ key => { '^r' => "reverse history", '+r' => "full undo\nRevert", '^s' => "search history", - '^t' => "move char forw$sign{_}ard\nTranspose char", - '+t' => "move word forw$sign{_}ard\nTranspose word", + '^t' => "move char forw<>ard\nTranspose char", + '+t' => "move word forw<>ard\nTranspose word", '^u' => "delete till bol", # unix '+u' => "upcase word", - '^v' => "verbat$sign{_}im char", + '^v' => "verbat<>im char", '^w' => "delete word", # unix - '^x' => "extend$sign{_}ed", + '^x' => "extend<>ed", '^y' => "yank top", '+y' => "rotate yank", '^+y'=> "yank arg", - '^z' => "back$sign{_}ground", + '^z' => "back<>ground", '^x(' => "start macro", '^x)' => "end macro", @@ -73,6 +73,10 @@ key => { '^x^r' => "reload inputrc", '^x^x' => "swap cursor\neXchange", '^x^v' => "shell version", + + # globally label escape as meta key + "\e" => "+", + "^x\e" => "+", }, mode => { @@ -81,17 +85,114 @@ mode => { }, 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$sign{arg}" => "Commands with a dot need a char argument afterwards."], + g1 => [info => "Info command: shows/does something without altering anything."], + g2 => [motion => "Move the cursor."], + g4 => [history => "Replace contents involving kill ring, undo, or command history."], + g6 => [change => "Alter current text (filtering or completion)."], + g7 => [delete => "Remove text."], + g8 => [misc => "Miscellaneous commands."], + g9 => [mode => "Additional key functionality (click to view)."], + + arg => ["key" => "Commands with a dot need a char argument afterwards."], new => [">v2.0" => "Unavailable before readline version 2.1 (1997)."], ext => ["bash" => "Default assignment in Bash shells, but not common readline."], }, +def => { + '' => { + "\e" => 'g8', + + '+<' => 'g4', + '+=' => '=+?', #TODO: new # emacs, not in v2.0 + '+>' => 'g4', + '^?' => '=^h', + '+?' => 'g1', + '^@' => 'g8 new', # not in v2.0 + + '+#' => 'g6 new', # not in v2.0 + '+&' => 'g6', + '+*' => 'g6 new', # not in v2.0 + '+.' => 'g4', + '+~' => '=+&', # emacs + + '^[' => 'g8', + '^+['=> '=^i', + '+\\'=> 'g7', + '^]' => 'g2 arg new', # not in v2.0 + '^+]'=> 'g2 arg new', # not in v2.0 + '^_' => 'g4', + '+_' => '=+.', + + '+~' => 'g6 ext', # common emacs => '=+&' + '+!' => 'g6 ext', + '+@' => 'g6 ext', + '+$' => 'g6 ext', + '+^' => 'g4 ext', + '+/' => 'g1 ext', + + '^a' => 'g2', + '^b' => 'g2', + '+b' => 'g2', + '^c' => 'g8 ext', + '+c' => 'g6', + '^d' => 'g7', + '+d' => 'g7 ring', + # '^e' => 'g9', + '^e' => 'g2', + '^f' => 'g2', + '+f' => 'g2', + '^g' => 'g8', + '^+g'=> '=^g', + '^h' => 'g7', + '^+h'=> 'g7 ring', #TODO + '^i' => 'g6', + '^+i'=> '=^v^i', + '^j' => '=^m', + '^+j'=> 'g9', #TODO: mode^+j + '^k' => 'g7 ring', + '^l' => 'g1', + '+l' => 'g6', + '^m' => 'g4', + '^+m'=> '=^+j', + '^n' => 'g4', + '+n' => 'g4', + '^o' => 'g4 ext', + '^p' => 'g4', + '+p' => 'g4', + '^q' => '=^v', + '^r' => 'g4', + '+r' => 'g4', + '^+r'=> '=+r', + '^s' => 'g4', + '^t' => 'g6', + '+t' => 'g6', + '^u' => 'g7 ring', + '+u' => 'g6', + '^v' => 'g8', + '^w' => 'g7 ring', + '^x' => 'g9 arg mode^x', + '^y' => 'g4', + '+y' => 'g4 ring', + '^+y'=> "yank arg", + '^z' => 'g8 ext', + }, + + '^x' => { + lead => "x̂", + + "\e" => 'g8 mode', + + '(' => 'g8', + ')' => 'g8', + 'e' => 'g8', + '^e' => 'g6 ext linkvi', + '^g' => '=^g', + '^h' => '=^u', + '^r' => 'g8', + '^u' => '=^_', + '^x' => 'g2 new', # not in v2.0 + '^v' => 'g1 ext', + '^?' => '=^x^h', + }, +}, }