use utf8;
'' => {
desc => 'normal mode',
'~' => ["open home$sign{_}dir", 'cp'],
'@' => ["play macro", 'mo arg'],
'^' => ["left of page", 'pm'],
'0' => '^',
'$' => ["right of page", 'pm'],
'#' => ["rev. find word", 'pm'],
'*' => ["find word", 'pm'],
'+' => 'zi',
'-' => 'zo',
'^^'=> ["last tab", 'po'],
'?' => ["find rev.", 'pm args modec'],
'/' => ["find", 'pm args modec'],
'[' => ["focus forw$sign{_}ard", 'me arg mode['],
']' => ["focus back", 'me arg mode]'],
':' => ["comm$sign{_}and line mode", 'mo args'],
';' => ["extend$sign{_}ed hint$sign{_}s mode", 'me arg args mode;'],
"'" => ["jump to mark", 'pm'],
'`' => "'",
'a' => ["add bookm$sign{_}ark", 'mo args'],
'A' => ["toggle bookm$sign{_}ark$sign{_}ed", 'mo'],
'^a'=> ["incr$sign{_}em$sign{_}ent url nr", 'cp'],
'b' => ["to buffer", 'po args'],
'B' => ["list buffers", 'ci'],
'^b'=> ["page up", 'pm'],
'^c'=> ["stop loading", 'co'],
'^d'=> ["scroll down", 'pm'],
'd' => ["close tab", 'co'],
'D' => ["close tab left$sign{_}ward$sign{_}s", 'co'],
'i' => ["caret mode", 'mv'],
'^i'=> 'L',
'^e'=> 'j',
'f' => ["quick$sign{_}hint mode", 'cp args'],
'F' => ["f in tab", 'mi args'],
'^f'=> ["page down", 'pm'], # spacebar
'g' => ["extra cmds", 'me modeg arg'],
'G' => ["last/% line", 'pm'],
'^g'=> ["file name", 'ci'],
'h' => [$sign{left}, 'pm'],
'H' => ["page back", 'cp'],
'j' => [$sign{down}, 'pm'],
'k' => [$sign{up}, 'pm'],
'l' => [$sign{right}, 'pm'],
'L' => ["page forw$sign{_}ard", 'cp'],
'M' => ["mark url", 'mo arg'],
'm' => ["mark line", 'mo arg'],
'n' => ["find next", 'pm'],
'N' => ["find prev$sign{_}ious", 'pm'],
'^n'=> ["next tab", 'po'],
'o' => ["open", 'cp'],
'O' => ["alter url", 'cp'],
'^o'=> 'H',
'p' => ["open pasted url", 'cp'],
'P' => ["p in tab", 'mi'],
'^p'=> 'gT',
'q' => ["record macro", 'mv arg'],
'r' => ["reload page", 'co'],
'R' => ["reload uncach$sign{_}e$sign{_}d", 'cp'],
't' => ["tab open new", 'mi'],
'T' => ["tab open curr$sign{_}ent", 'mi'],
'^v'=> ["pass single", 'co arg'],
'^u'=> ["scroll up", 'pm'],
'u' => ["restore closed tab", 'mi'],
'^x'=> ["decr$sign{_}em$sign{_}ent url nr", 'cp'],
'y' => ["copy url", 'mo'],
'Y' => ["copy select$sign{_}ion", 'mo'],
'^y'=> 'k',
'z' => ["zoom", 'ci modez arg'],
'Z' => ["quit", 'me modeZ arg'],
'^z'=> ["pass throu$sign{_}gh", 'mv'],
}, # normal mode
g => {
desc => 'extended commands (g)',
lead => 'g',
'0' => ["first tab", 'po'],
'$' => ["last tab", 'po'],
'^' => 'g0',
'b' => ["repeat buffer cmd", 'po'],
'B' => ["reverse gb", 'po'],
'f' => ["view source", 'cp'],
'F' => ["source extern$sign{_}al", 'mo'],
'^g'=> ["file details", 'ci'],
'g' => ["first line", 'pm'],
'h' => ["open home$sign{_}page", 'cp'],
'H' => ["tab with home$sign{_}page", 'mi'],
'i' => ["last input field", 'pm'],
'n' => ["tabopen url mark", 'mi arg', 'Go in New tab'],
'o' => ["open url mark", 'cp arg'],
'P' => ["$sign{alias}P inactive", 'mi'],
't' => ["switch tab", 'po'],
'T' => ["tab back", 'po'],
'u' => ["parent dir$sign{_}ectory", 'cp'],
'U' => ["site root", 'cp'],
}, # mode g
';' => {
desc => 'extended hints (;)',
lead => ';',
';' => ["focus", 'pm'],
'?' => ["element details", 'ci'],
'a' => ["save prompt", 'mo args'],
'b' => ["open bg tab", 'mi v2'],
'f' => ["frame focus", 'pm v2'], # previously ';o'
'F' => ["multiple bg tabs", 'mi v2'], # previously ';t'
'o' => ["open", 'cp'],
'O' => ["open prompt", 'cp args'],
's' => ["save", 'mo'],
't' => ["open in tab", 'mi'],
'T' => ["tab prompt", 'mi args'],
'v' => ["view source", 'cp'],
'w' => ["open in wind$sign{_}ow", 'mi'],
'W' => ["wind$sign{_}ow prompt", 'mi args'],
'y' => ["copy url", 'mo'],
'Y' => ["copy text", 'mo'],
}, # mode ;
']' => {
desc => '(])',
lead => ']',
'f' => ["next frame$sign{_}set", 'pm'],
']' => ["open next
", 'cp'],
}, # mode ]
'[' => {
desc => '([)',
lead => '[',
'f' => ["previous frame$sign{_}set", 'pm'],
'[' => ["open prev
", 'cp'],
}, # mode [
z => {
desc => 'zoom commands (z)',
lead => 'z',
'i' => ["en$sign{_}large text", 'ci', 'Zoom In'],
'm' => ["en$sign{_}large more", 'ci', 'Zoom More'],
'o' => ["shrink text", 'ci', 'Zoom Out'],
'r' => ["tinier text", 'ci', 'Zoom Reduce'],
'z' => ["reset text size", 'ci', 'Zoom Zero'],
'I' => ["zoom in", 'ci'],
'M' => ["zoom more", 'ci'],
'O' => ["zoom out", 'ci'],
'R' => ["zoom out more", 'ci', 'Zoom Reduce'],
'Z' => ["zoom reset", 'ci', 'Zoom Zero'],
}, # mode z
Z => {
desc => 'quit commands (Z)',
lead => 'Z',
'Q' => ["quit no save", 'mo'],
'Z' => ["quit save ses$sign{_}s$sign{_}ion", 'mo'],
}, # mode Z