Este não é um problema de teclado, e sim um problema de saída. Alguma fonte que você está usando provavelmente tem o código ASCII para a barra vertical mapeada para ö. Tente uma fonte diferente e veja se o problema desaparece.
Estou usando um Mac e estou passando alguns dados de curl
para tar
e quando fui acertar o | no terminal, recebi o o com um trema. Ele funciona totalmente bem, já que o caractere unicode ainda aparece como U + 007C, que é mapeado para a linha vertical, mas não exibe o caractere correto.
Como corrijo para mostrar o personagem certo?
Este não é um problema de teclado, e sim um problema de saída. Alguma fonte que você está usando provavelmente tem o código ASCII para a barra vertical mapeada para ö. Tente uma fonte diferente e veja se o problema desaparece.