### File: keymap_lynx
##
## Lynx like keymap.
##
## Usage:
##
## ------ Text ------
## w3m -o keymap_file=~/.w3m/keymap_lynx
## ------------------
##
## Metadata:
##
##   id - 52a93022-402a-439e-a7c3-a792278ac91b
##   author - <qq542vev at https://purl.org/meta/me/>
##   version - 1.0.0
##   date - 2022-06-28
##   since - 2020-03-20
##   copyright - Copyright (C) 2020-2022 qq542vev. Some rights reserved.
##   license - <CC-BY at https://creativecommons.org/licenses/by/4.0/>
##   package - w3mplus
##   source - <keymap.lynx at https://github.com/tats/w3m/blob/master/doc/keymap.lynx>
##
## See Also:
##
##   * <Project homepage at https://github.com/qq542vev/w3mplus>
##   * <Bug report at https://github.com/qq542vev/w3mplus/issues>
##   * <README.keymap at https://github.com/tats/w3m/blob/master/doc-jp/README.keymap>
##   * <Table of function-keys for XTerm and other Terminal Emulators at https://invisible-island.net/xterm/xterm-function-keys.html>

# Ctrl  : C-, ^
# Escape: ESC-, M-, ^[
# Space : SPC, ' '
# Tab   : TAB, ^i, ^I
# Delete: DEL, ^?
# Up    : UP, ^[[A
# Down  : DOWN, ^[[B
# Right : RIGHT, ^[[C
# Left  : LEFT, ^[[D

# Reset keymap #

## ASCII characters ##

### Printable characters ###

keymap "SPC" NULL
keymap "!" NULL
keymap "\"" NULL
keymap "#" NULL
keymap "$" NULL
keymap "%" NULL
keymap "&" NULL
keymap "'" NULL
keymap "(" NULL
keymap ")" NULL
keymap "*" NULL
keymap "+" NULL
keymap "," NULL
keymap "-" NULL
keymap "." NULL
keymap "/" NULL
keymap "0" NULL
keymap "1" NULL
keymap "2" NULL
keymap "3" NULL
keymap "4" NULL
keymap "5" NULL
keymap "6" NULL
keymap "7" NULL
keymap "8" NULL
keymap "9" NULL
keymap ":" NULL
keymap ";" NULL
keymap "<" NULL
keymap "=" NULL
keymap ">" NULL
keymap "?" NULL
keymap "@" NULL
keymap "A" NULL
keymap "B" NULL
keymap "C" NULL
keymap "D" NULL
keymap "E" NULL
keymap "F" NULL
keymap "G" NULL
keymap "H" NULL
keymap "I" NULL
keymap "J" NULL
keymap "K" NULL
keymap "L" NULL
keymap "M" NULL
keymap "N" NULL
keymap "O" NULL
keymap "P" NULL
keymap "Q" NULL
keymap "R" NULL
keymap "S" NULL
keymap "T" NULL
keymap "U" NULL
keymap "V" NULL
keymap "W" NULL
keymap "X" NULL
keymap "Y" NULL
keymap "Z" NULL
keymap "[" NULL
keymap "]" NULL
keymap "\^" NULL
keymap "_" NULL
keymap "`" NULL
keymap "a" NULL
keymap "b" NULL
keymap "c" NULL
keymap "d" NULL
keymap "e" NULL
keymap "f" NULL
keymap "g" NULL
keymap "h" NULL
keymap "i" NULL
keymap "j" NULL
keymap "k" NULL
keymap "l" NULL
keymap "m" NULL
keymap "n" NULL
keymap "o" NULL
keymap "p" NULL
keymap "q" NULL
keymap "r" NULL
keymap "s" NULL
keymap "t" NULL
keymap "u" NULL
keymap "v" NULL
keymap "w" NULL
keymap "x" NULL
keymap "y" NULL
keymap "z" NULL
keymap "{" NULL
keymap "|" NULL
keymap "}" NULL
keymap "~" NULL

### Control characters ###

keymap "C-@" NULL
keymap "C-a" NULL
keymap "C-b" NULL
keymap "C-c" NULL
keymap "C-d" NULL
keymap "C-e" NULL
keymap "C-f" NULL
keymap "C-g" NULL
keymap "C-h" NULL
keymap "C-i" NULL
keymap "C-j" NULL
keymap "C-k" NULL
keymap "C-l" NULL
keymap "C-m" NULL
keymap "C-n" NULL
keymap "C-o" NULL
keymap "C-p" NULL
keymap "C-q" NULL
keymap "C-r" NULL
keymap "C-s" NULL
keymap "C-t" NULL
keymap "C-u" NULL
keymap "C-v" NULL
keymap "C-w" NULL
keymap "C-x" NULL
keymap "C-y" NULL
keymap "C-z" NULL
#keymap "C-[" NULL
keymap "C-\\" NULL
keymap "C-]" NULL
keymap "C-^" NULL
keymap "C-_" NULL
keymap "C-?" NULL

## ESC + ASCII printable characters ##

keymap "ESC-SPC" NULL
keymap "ESC-!" NULL
keymap "ESC-\"" NULL
keymap "ESC-#" NULL
keymap "ESC-$" NULL
keymap "ESC-%" NULL
keymap "ESC-&" NULL
keymap "ESC-'" NULL
keymap "ESC-(" NULL
keymap "ESC-)" NULL
keymap "ESC-*" NULL
keymap "ESC-+" NULL
keymap "ESC-," NULL
keymap "ESC--" NULL
keymap "ESC-." NULL
keymap "ESC-/" NULL
keymap "ESC-0" NULL
keymap "ESC-1" NULL
keymap "ESC-2" NULL
keymap "ESC-3" NULL
keymap "ESC-4" NULL
keymap "ESC-5" NULL
keymap "ESC-6" NULL
keymap "ESC-7" NULL
keymap "ESC-8" NULL
keymap "ESC-9" NULL
keymap "ESC-:" NULL
keymap "ESC-;" NULL
keymap "ESC-<" NULL
keymap "ESC-=" NULL
keymap "ESC->" NULL
keymap "ESC-?" NULL
keymap "ESC-@" NULL
keymap "ESC-A" NULL
keymap "ESC-B" NULL
keymap "ESC-C" NULL
keymap "ESC-D" NULL
keymap "ESC-E" NULL
keymap "ESC-F" NULL
keymap "ESC-G" NULL
keymap "ESC-H" NULL
keymap "ESC-I" NULL
keymap "ESC-J" NULL
keymap "ESC-K" NULL
keymap "ESC-L" NULL
keymap "ESC-M" NULL
keymap "ESC-N" NULL
keymap "ESC-O" NULL
keymap "ESC-P" NULL
keymap "ESC-Q" NULL
keymap "ESC-R" NULL
keymap "ESC-S" NULL
keymap "ESC-T" NULL
keymap "ESC-U" NULL
keymap "ESC-V" NULL
keymap "ESC-W" NULL
keymap "ESC-X" NULL
keymap "ESC-Y" NULL
keymap "ESC-Z" NULL
keymap "ESC-[" NULL
keymap "ESC-]" NULL
keymap "ESC-\^" NULL
keymap "ESC-_" NULL
keymap "ESC-`" NULL
keymap "ESC-a" NULL
keymap "ESC-b" NULL
keymap "ESC-c" NULL
keymap "ESC-d" NULL
keymap "ESC-e" NULL
keymap "ESC-f" NULL
keymap "ESC-g" NULL
keymap "ESC-h" NULL
keymap "ESC-i" NULL
keymap "ESC-j" NULL
keymap "ESC-k" NULL
keymap "ESC-l" NULL
keymap "ESC-m" NULL
keymap "ESC-n" NULL
keymap "ESC-o" NULL
keymap "ESC-p" NULL
keymap "ESC-q" NULL
keymap "ESC-r" NULL
keymap "ESC-s" NULL
keymap "ESC-t" NULL
keymap "ESC-u" NULL
keymap "ESC-v" NULL
keymap "ESC-w" NULL
keymap "ESC-x" NULL
keymap "ESC-y" NULL
keymap "ESC-z" NULL
keymap "ESC-{" NULL
keymap "ESC-|" NULL
keymap "ESC-}" NULL
keymap "ESC-~" NULL

## ESC + ASCII Control characters ##

keymap "ESC-C-@" NULL
keymap "ESC-C-a" NULL
keymap "ESC-C-b" NULL
keymap "ESC-C-c" NULL
keymap "ESC-C-d" NULL
keymap "ESC-C-e" NULL
keymap "ESC-C-f" NULL
keymap "ESC-C-g" NULL
keymap "ESC-C-h" NULL
keymap "ESC-C-i" NULL
keymap "ESC-C-j" NULL
keymap "ESC-C-k" NULL
keymap "ESC-C-l" NULL
keymap "ESC-C-m" NULL
keymap "ESC-C-n" NULL
keymap "ESC-C-o" NULL
keymap "ESC-C-p" NULL
keymap "ESC-C-q" NULL
keymap "ESC-C-r" NULL
keymap "ESC-C-s" NULL
keymap "ESC-C-t" NULL
keymap "ESC-C-u" NULL
keymap "ESC-C-v" NULL
keymap "ESC-C-w" NULL
keymap "ESC-C-x" NULL
keymap "ESC-C-y" NULL
keymap "ESC-C-z" NULL
keymap "ESC-C-[" NULL
keymap "ESC-C-\\" NULL
keymap "ESC-C-]" NULL
keymap "ESC-C-^" NULL
keymap "ESC-C-_" NULL
keymap "ESC-C-?" NULL

## Special keys ##

### Navigation keys ###

#### Arrow keys ####

keymap "UP" NULL
keymap "DOWN" NULL
keymap "RIGHT" NULL
keymap "LEFT" NULL

#### Page Up key ####

keymap "^[[5~" NULL
keymap "^[[I" NULL

#### Page Down key ####

keymap "^[[6~" NULL
keymap "^[[G" NULL

#### Home key ####

keymap "^[OH" NULL
keymap "^[[1~" NULL
keymap "^[[7~" NULL
keymap "^[[H" NULL

#### End key ####

keymap "^[OF" NULL
keymap "^[[4~" NULL
keymap "^[[8~" NULL
keymap "^[[F" NULL

### Editing keys ###

#### Insert key ####

keymap "^[[2~" NULL
keymap "^[[L" NULL

#### Delete key ####

keymap "^[[3~" NULL

### Function keys (F1 key - F20 key) ###

keymap "^[OP" NULL
keymap "^[[11~" NULL
keymap "^[OQ" NULL
keymap "^[[12~" NULL
keymap "^[OR" NULL
keymap "^[[13~" NULL
keymap "^[OS" NULL
keymap "^[[14~" NULL
keymap "^[[15~" NULL
keymap "^[[17~" NULL
keymap "^[[18~" NULL
keymap "^[[19~" NULL
keymap "^[[20~" NULL
keymap "^[[21~" NULL
keymap "^[[22~" NULL
keymap "^[[23~" NULL
keymap "^[[24~" NULL
keymap "^[[25~" NULL
keymap "^[[26~" NULL
keymap "^[[27~" NULL
keymap "^[[28~" NULL
keymap "^[[29~" NULL
keymap "^[[30~" NULL
keymap "^[[31~" NULL
keymap "^[[32~" NULL
keymap "^[[33~" NULL
keymap "^[[34~" NULL

### Key used in w3m ###

keymap "^[[E" NULL
keymap "^[[L" NULL
keymap "^[[Z" NULL

# Defining a Lynx like keymap #

keymap "C-@" MARK
keymap "C-a" BEGIN
keymap "C-b" BACK
keymap "C-e" END
keymap "C-f" GOTO_LINK
keymap "C-g" LINE_INFO
keymap "C-h" HISTORY
keymap "TAB" NEXT_LINK
keymap "C-j" GOTO_LINK
keymap "C-k" COOKIE
keymap "C-l" REDRAW
keymap "C-m" GOTO_LINK
keymap "C-n" NEXT_LINK
keymap "C-p" PREV_LINK
keymap "C-q" CLOSE_TAB
keymap "C-r" RELOAD
keymap "C-s" SEARCH
keymap "C-t" TAB_LINK
keymap "C-u" PREV_LINK
keymap "C-v" NEXT_PAGE
keymap "C-w" REDRAW
keymap "C-z" SUSPEND

keymap "SPC" NEXT_PAGE
keymap "!" SHELL
keymap "\"" REG_MARK
keymap "#" PIPE_SHELL
keymap "$" LINE_END
keymap "(" UNDO
keymap ")" REDO
keymap "+" NEXT_PAGE
keymap "," LEFT
keymap "-" PREV_PAGE
keymap "." RIGHT
keymap "/" SEARCH
keymap ":" MARK_URL
keymap ";" MARK_WORD
keymap "<" SHIFT_LEFT
keymap "=" INFO
keymap ">" SHIFT_RIGHT
keymap "?" HELP
keymap "@" READ_SHELL
keymap "B" BACK
keymap "D" DOWNLOAD_LIST
keymap "E" EDIT
keymap "F" FRAME
keymap "G" GOTO_LINE
keymap "H" HELP
keymap "I" VIEW_IMAGE
keymap "J" UP
keymap "K" DOWN
keymap "L" LIST
keymap "M" EXTERN
keymap "N" NEXT_MARK
keymap "P" PREV_MARK
keymap "Q" EXIT
keymap "R" RELOAD
keymap "S" SAVE_SCREEN
keymap "T" NEW_TAB
keymap "U" GOTO
keymap "V" LOAD
keymap "W" PREV_WORD
keymap "Z" CENTER_H
keymap "[" LINK_BEGIN
keymap "\\" SOURCE
keymap "]" LINK_END
keymap "\^" LINE_BEGIN
keymap "a" ADD_BOOKMARK
keymap "b" PREV_PAGE
keymap "c" PEEK
keymap "d" SAVE_LINK
keymap "g" GOTO
keymap "h" MOVE_LEFT
keymap "i" PEEK_IMG
keymap "j" MOVE_DOWN
keymap "k" MOVE_UP
keymap "l" MOVE_RIGHT
keymap "m" MOUSE_TOGGLE
keymap "n" SEARCH_NEXT
keymap "o" OPTIONS
keymap "p" SAVE_SCREEN
keymap "q" QUIT
keymap "r" VERSION
keymap "s" SELECT_MENU
keymap "u" PEEK_LINK
keymap "v" BOOKMARK
keymap "w" NEXT_WORD
keymap "z" CENTER_V
keymap "{" PREV_TAB
keymap "|" PIPE_BUF
keymap "}" NEXT_TAB

keymap "ESC-TAB" PREV_LINK
keymap "ESC-C-j" SAVE_LINK
keymap "ESC-C-m" SAVE_LINK

keymap "ESC-:" MARK_MID
keymap "ESC-<" BEGIN
keymap "ESC->" END
keymap "ESC-I" SAVE_IMAGE
keymap "ESC-M" EXTERN_LINK
keymap "ESC-W" DICT_WORD_AT
keymap "ESC-a" ADD_BOOKMARK
keymap "ESC-b" BOOKMARK
keymap "ESC-c" COMMAND
keymap "ESC-e" EDIT_SCREEN
keymap "ESC-g" GOTO_LINE
keymap "ESC-k" DEFINE_KEY
keymap "ESC-l" LIST_MENU
keymap "ESC-m" MOVE_LIST_MENU
keymap "ESC-n" NEXT_MARK
keymap "ESC-o" SET_OPTION
keymap "ESC-p" PREV_MARK
keymap "ESC-s" SAVE
keymap "ESC-t" TAB_MENU
keymap "ESC-u" GOTO_RELATIVE
keymap "ESC-v" PREV_PAGE
keymap "ESC-w" DICT_WORD

keymap "UP" PREV_LINK
keymap "DOWN" NEXT_LINK
keymap "RIGHT" GOTO_LINK
keymap "LEFT" BACK

keymap "ESC-[E" MENU
keymap "ESC-[L" MENU

keymap "ESC-[1~" BEGIN
keymap "ESC-[2~" MENU
keymap "ESC-[4~" END
keymap "ESC-[5~" PREV_PAGE
keymap "ESC-[6~" NEXT_PAGE
keymap "ESC-[28~" MENU

keymap "ESC-C-b" SET_OPTION "keymap_file=keymap_w3mplus"
