Copyright © 2014 by Thomas E. Dickey

Table of function-keys for XTerm and other Terminal Emulators

In 2014, I noticed a comment, which relates to the PF1-PF4 assignment, but also to the use of function-key modifiers:

... four of the function keys that had been working fine in rxvt did not work in XTerm.

and referencing a table from 2005 on another site. Some of the discussion in the latter page was (is still) incorrect.
Here is a better table generated from the ncurses database, illustrating a few points:

A few quirks deserve comment:

This table gives a better example than that presented in Phillip Gold's page:

NAME vt100 vt220 xterm-r6 xterm-vt220 xterm-xf86-v44 xterm-new rxvt mgt screen
kf0 \EOy \E[21~
kf1 \EOP \EOP \E[11~ \EOP \EOP \EOP \E[11~ \EOP \EOP
kf2 \EOQ \EOQ \E[12~ \EOQ \EOQ \EOQ \E[12~ \EOQ \EOQ
kf3 \EOR \EOR \E[13~ \EOR \EOR \EOR \E[13~ \EOR \EOR
kf4 \EOS \EOS \E[14~ \EOS \EOS \EOS \E[14~ \EOS \EOS
kf5 \EOt \E[15~ \E[15~ \E[15~ \E[15~ \E[15~ \E[15~ \E[15~
kf6 \EOu \E[17~ \E[17~ \E[17~ \E[17~ \E[17~ \E[17~ \E[17~ \E[17~
kf7 \EOv \E[18~ \E[18~ \E[18~ \E[18~ \E[18~ \E[18~ \E[18~ \E[18~
kf8 \EOl \E[19~ \E[19~ \E[19~ \E[19~ \E[19~ \E[19~ \E[19~ \E[19~
kf9 \EOw \E[20~ \E[20~ \E[20~ \E[20~ \E[20~ \E[20~ \E[20~ \E[20~
kf10 \EOx \E[21~ \E[21~ \E[21~ \E[21~ \E[21~ \E[21~ \E[21~ \E[21~
kf11 \E[23~ \E[23~ \E[23~ \E[23~ \E[23~ \E[23~ \E[23~ \E[23~
kf12 \E[24~ \E[24~ \E[24~ \E[24~ \E[24~ \E[24~ \E[24~ \E[24~
kf13 \E[25~ \E[25~ \E[25~ \EO2P \E[1;2P \E[25~ \E[25~
kf14 \E[26~ \E[26~ \E[26~ \EO2Q \E[1;2Q \E[26~ \E[26~
kf15 \E[28~ \E[28~ \E[28~ \EO2R \E[1;2R \E[28~ \E[28~
kf16 \E[29~ \E[29~ \E[29~ \EO2S \E[1;2S \E[29~ \E[29~
kf17 \E[31~ \E[31~ \E[31~ \E[15;2~ \E[15;2~ \E[31~ \E[31~
kf18 \E[32~ \E[32~ \E[32~ \E[17;2~ \E[17;2~ \E[32~ \E[32~
kf19 \E[33~ \E[33~ \E[33~ \E[18;2~ \E[18;2~ \E[33~ \E[33~
kf20 \E[34~ \E[34~ \E[34~ \E[19;2~ \E[19;2~ \E[34~ \E[34~
kf21 \E[20;2~ \E[20;2~ \E[23$
kf22 \E[21;2~ \E[21;2~ \E[24$
kf23 \E[23;2~ \E[23;2~ \E[11\^
kf24 \E[24;2~ \E[24;2~ \E[12\^
kf25 \EO5P \E[1;5P \E[13\^
kf26 \EO5Q \E[1;5Q \E[14\^
kf27 \EO5R \E[1;5R \E[15\^
kf28 \EO5S \E[1;5S \E[17\^
kf29 \E[15;5~ \E[15;5~ \E[18\^
kf30 \E[17;5~ \E[17;5~ \E[19\^
kf31 \E[18;5~ \E[18;5~ \E[20\^
kf32 \E[19;5~ \E[19;5~ \E[21\^
kf33 \E[20;5~ \E[20;5~ \E[23\^
kf34 \E[21;5~ \E[21;5~ \E[24\^
kf35 \E[23;5~ \E[23;5~ \E[25\^
kf36 \E[24;5~ \E[24;5~ \E[26\^
kf37 \EO6P \E[1;6P \E[28\^
kf38 \EO6Q \E[1;6Q \E[29\^
kf39 \EO6R \E[1;6R \E[31\^
kf40 \EO6S \E[1;6S \E[32\^
kf41 \E[15;6~ \E[15;6~ \E[33\^
kf42 \E[17;6~ \E[17;6~ \E[34\^
kf43 \E[18;6~ \E[18;6~ \E[23@
kf44 \E[19;6~ \E[19;6~ \E[24@
kf45 \E[20;6~ \E[20;6~
kf46 \E[21;6~ \E[21;6~
kf47 \E[23;6~ \E[23;6~
kf48 \E[24;6~ \E[24;6~
kf49 \E[1;3P
kf50 \E[1;3Q
kf51 \E[1;3R
kf52 \E[1;3S
kf53 \E[15;3~
kf54 \E[17;3~
kf55 \E[18;3~
kf56 \E[19;3~
kf57 \E[20;3~
kf58 \E[21;3~
kf59 \E[23;3~
kf60 \E[24;3~
kf61 \E[1;4P
kf62 \E[1;4Q
kf63 \E[1;4R