É melhor eu responder a minha própria pergunta para referência futura.
Após uma pesquisa profunda, descobri que xmodmap está realmente obsoleto e é aproximadamente corrigido no modelo de teclado xkb . O modelo xkb não usa uma matriz linear de alternativas, mas divide os layouts em groups , com cada grupo tendo um par de caracteres em diferentes níveis de turno. As definições de xmodmap preenchem as entradas em uma ordem muito engraçada: grupo 1, nível 1,2, grupo 2, nível 1,2, grupo 1, níveis 3 .... Os grupos devem ser como "layouts" e geralmente não são acessados com modificadores, mas com toggling. A exceção é o caractere Mode_switch que usei, mas só acessa o grupo 2.
Tudo ficaria bem, exceto que as chaves têm tipos . Cada chave é definida pelo layout como TWO_LEVEL , FOUR_LEVEL , FOUR_LEVEL_ALPHANUMERIC e assim por diante, e cada nível pode ter uma noção diferente de quais modificadores mapeiam para quais níveis. O comportamento que eu assumi (8 níveis, todas as combinações) foi na verdade LOCAL_EIGHT_LEVEL que não foi usado pelo layout. Portanto, no caso de keycode 51 , o padrão era na verdade TWO_LEVEL , e xmodmap preenchia 3 grupos com as 6 chaves em vez de adicionar 6 níveis ao 1º grupo. O terceiro grupo não foi alcançado pelo modificador Mode_switch . Usar outra chave resultou em comportamento diferente porque o tipo predefinido era diferente.
Como nas repetições na impressão por xmodmap , não sei exatamente o que acontece (imprimi as definições xkb e estava tudo bem), mas não me surpreendo que os erros ocorram quando você mapeia um array multidimensional de comprimento variável para uma única lista de symcodes. A saída não reflete o estado real de qualquer maneira.
Em conclusão, xmodmap é mal . Nunca use isso. Seu comportamento é errático e mal definido na melhor das hipóteses. Não faz o que diz que faz. Faça seus próprios xkb maps. Reutilize a maior parte do layout em include -ing e adicione as modificações necessárias.
No meu caso, a solução é derivar o segundo grupo do layout grego e substituir os símbolos matemáticos em lugares estratégicos, além de algumas modificações no primeiro grupo.
A maioria dos teclados baratos é muito limitada quando se trata de pressionar 3 teclas de cada vez. Isso resultou em falhas erráticas e dependentes de hardware para algumas chaves. Eu vou experimentar com diferentes teclas modificadoras (a chave mais inútil do mundo - a tecla de menu, ou similarmente inútil win-key), e possivelmente comprar um teclado melhor. A combinação de ambos os problemas (hardware quebrado por design + software fraudulento maligno) criou uma situação confusa de aparência aleatória que, a princípio, me impediu de vê-los como problemas separados.
Material de leitura: