Essa resposta útil me levou a uma solução. Meu mapa de teclado padrão (obtido de sudo dumpkeys ) continha
keycode 104 = Prior
...
string Prior = "3[5~"
eu adicionei
control keycode 104 = F105
...
string F105 = "3[5;5~"
e semelhantemente para PgDn . Observe que o alias não pode ser uma string arbitrária; tem que ser um dos keyyms listados por sudo dumpkeys -l , então eu escolhi o F105 que não foi usado.
Agora, cat -v - mostra ^[[5;5~ para Ctrl + PgUp como no modo gráfico. O Vim ainda não reagiu como esperado (não sei por que, já que funciona no modo gráfico) mas pelo menos Ctrl + PgUp produz uma seqüência de controle diferente de < kbd> PgUp , que eu remapear no meu .vimrc como de costume:
nnoremap ^[[5;5~ :tabp<Enter>