É um desafio interessante, e eu concordo que o xinput não parece ser perfeitamente adequado. Passei algum tempo mexendo nas habilidades do xmodmap, e cheguei tão frustrantemente perto de conseguir o que você quer fazer ... sem realmente conseguir chegar lá.
Usando o xmodmap, é possível atribuir o parenleft como um símbolo de teclas na tecla left-shift:
xmodmap -e 'keysym Shift_L = Shift_L parenleft Shift_L parenleft'
qual sorta funciona, pelo menos em testes na minha caixa do Fedora 17, mas não de forma satisfatória. Descobri que, com esse mapeamento em vigor, a tecla Shift ainda funcionava normalmente e não apresentava nenhum parêntese espúrio, mas (frustrantemente) não produzia de forma confiável os parênteses esquerdos. Por alguma razão, a chave não aparecem para modificar de forma confiável em si , que quebra sua atribuição mudou ... inicialmente. Por alguma razão, bater o deslocamento para a esquerda algumas vezes sucessivas acabaria fazendo com que ele começasse a produzir parêntesis esquerdos, mas somente após a quarta ou quinta impressão.
Um comportamento que notei, no entanto, é que você poderia trabalhar com um analógico "próximo o suficiente": descobri que depois de mapear parenleft e parenright para Shift_L e Shift_R, eu poderia digitar parens de maneira confiável "rolando" em ambas as teclas shift - em outras palavras, com esse mapeamento:
xmodmap -e 'keysym Shift_L = Shift_L parenleft Shift_L parenleft'
xmodmap -e 'keysym Shift_R = Shift_R parenright Shift_R parenright'
pressionando Shift_L seguido por Shift_R, então liberando ambos, produziria um parênquima direito, ou um parênquima esquerdo na outra direção. (É claro que os mapeamentos de parêntese poderiam ser revertidos; eu não conseguia decidir qual caminho me pareceria mais "natural".)
Isso foi o mais perto que cheguei de alcançar o comportamento exato que você está procurando; não parece ser possível usar o xmodmap sozinho.
Eu estava meio convencido de que simplesmente não é possível, mas eu percebi que há pelo menos uma tecla que funciona exatamente como você descreve: A tecla Super ("Windows"). Sob o Gnome Shell, é uma tecla modificadora (mod4), que produz um efeito diferente (triggering Overview) quando pressionada sozinha. Assim, pelo menos em teoria, pode ser possível implementar a sobrecarga de teclas de deslocamento desejada da mesma maneira.
... Mas, eu não tenho absolutamente nenhuma idéia de como isso seria feito, ou o quão invasivo seria ficar atolado no processamento necessário toda vez que você apertar a tecla Shift. :-)