Я предполагаю, что советовать self-insert-command, перехватывать события и соответственно изменять буфер - это то, что вы хотите сделать. Затем вам нужно будет повторно привязать команды направления (forward-char и друзья поменялись местами на противоположных линиях) и т. Д.
Много работы, но определенно возможно.
Прежде чем писать что-то слишком сложное, спросите у emacs-devel. Как показывают комментарии, может быть полезно иметь общую поддержку для чего-то подобного ... хотя произвольные фрагменты текста с разными направлениями не будут переносить слова (при вставке) так же, как ваш текст.
Редактировать: Очевидно, что советующие self-insert-command не совсем подходят для этого, поэтому вам нужно будет настроить раскладку клавиш (и привязать? A к (my-new-insert-command? A) и так далее ... .).