Versões mais antigas do gnome-terminal, como enviadas até o Ubuntu Utopic, usadas para implementar um comportamento "automático" "dual". Se você tivesse pelo menos 6 abas, Alt + 6 mudaria para o 6º; caso contrário, ele enviaria o pressionamento de tecla para qualquer aplicativo que estivesse sendo executado (por exemplo, emacs).
Versões mais recentes (começando com o Ubuntu Vivid) não têm mais esse comportamento automático. Alt + 1 - Alt + 9 são vinculados por padrão para alternar as guias e, portanto, não fazem nada se você não tiver abas suficientes abertas. Você pode indefini-las em Editar- > Preferências- > Atalhos ou reatribuir essas ações para outras chaves de sua escolha, nesse caso o Alt + 6 será enviado para o aplicativo (emacs).
Alternativamente, você pode se acostumar a pressionar Esc 6.
Is the key first caught by terminal, and then the terminal pass it to emacs?
Sim. O terminal não tem como saber se o aplicativo em execução lidaria com o evento de não, e não consegue descobrir depois de enviar o evento. Então, a abordagem oposta (vamos ver se o emacs faz algo com isso, e se não, então a aba de switches do terminal gnome) não funciona por design.
A única exceção a esse design é eventos de mouse. Um aplicativo precisa sinalizar para o terminal com antecedência se estiver interessado em eventos de mouse. Se for, o gnome-terminal envia o evento, caso contrário, ele o manipula.
Editar: eventos de mouse não é a única exceção :) Outro que me ocorreu é que quando o terminal é alternado para a tela alternativa (aquela que não tem uma barra de rolagem; como feito pela maioria dos aplicativos de tela cheia) as teclas que afetam a barra de rolagem (por exemplo, Shift + PageUp) também são enviadas para o aplicativo como seqüências de escape.