Это можно прикрутить к системе, но: клавиатура посылает сигналы позиций клавиш (если хотите - дефолтные символы), а система ремапит их в соответствии с выбранной в системе раскладкой. Если выбрана, скажем Йцукен, то слой с символами даёт совсем не то, что ожидаешь. Например, " вместо @ или № вместо #. Проектировали всё это в эру динозавров, ни о каких слоях не думали. Общего решения, я так понимаю, нет.