-> я скористався рецептом боротьби з емаксом. Емакс з'їв то зразу, а
-> от Ікс-емакс - не хоче малювати українські букви. Я перепробував
-> стандартні варіанти -- не вийшло. Де йому треба казати, щоб він
-> українськими буквами писав, а не "~~" ?
Як саме це виглядає?
Я можу уявити собі три причини:
- перемикається в український режим але не може вводити літери;
- не перемикається в український режим;
- перемикається і вводить, але нічого не видно, бо шрифти інші.
Починаючи з кінця
------------------
1.
Якщо це проблема з шрифтами, то його треба запустити з '-fn шрифт'. В цьому
випадку всі гарні шрифти пропадають (все стає написаним одним єдиним шрифтом -
меню, вікна і т.д.), але зате українська працює.
N.B.:
Опція '--unibyte' для xemacs не працює, і як цю заразу перемикнути в
однобайтний режим я не знаю. Єдиний фікс який я знаю - це користуватися
нормальний emacs'ом, що я і роблю

2.
Чи xemacs перемикається в український режим? Це можна визначити по 'KOI-8',
яке з'являється (або не з'являється в status-line)
Ті комбінації клавіш, для перемикання в укр/лат режими, що у мене на сторінці,
не працюють для xemacs. Причина проста - в xemacs не вистачає однієї функції
-- toggle-enable-multibyte-characters.
- попробуй зробити вручну
- стартуй його: 'xemacs -q -f fixed'
-q -- щоб не вантажився .emacs
- завантажити файл: 'M-x load-file'
Load file: ukrainian.el
- M-x ukrainian-insertion-mode (перемкнулося чи ні?)
- якщо з'явилося KOI-8 в статус рядку попробуй друкувати
Якщо це була причина - знайди місце в .emacs, де зустрічається
toggle-enable-multibyte-characters і закоментуй цей рядок:
(defun toggle-ukrainian ()
(interactive)
"Make sure the Russian is off first and then toggle Ukrainian"
; (toggle-enable-multibyte-characters 'nil) <----- ось тут
(russian-insertion-mode -1)
(ukrainian-insertion-mode)
)
3.
Деякі версії (старі) ukrainian.el не працюють з xemacs
В цьому випадку він перемикається в український режим, але надрукувати нічого
неможливо. Симптоми такі - на кожну клавішу він пищить як скажений і в
міні-буфері пишеться:
"Wrong type argument: 0, #keypress-event [клавіша, яка була натиснута]>"
Структури даних у них двох відрізняються.
Фікс такий:
я трохи змінив код ukrainian.el В самому кінці файлу є таке:
(defun ukrainian-perform-insertion ()
(interactive)
(insert (aref ukrainian-insertion-mode-table last-command-event)))
треба це змінити на:
(if (string-equal (substring (emacs-version) 0 3) "GNU")
(defun ukrainian-perform-insertion ()
(interactive)
(insert (aref ukrainian-insertion-mode-table last-command-event)))
;; for XEmacsen
(defun ukrainian-perform-insertion ()
(interactive)
(insert (aref ukrainian-insertion-mode-table
(event-to-character last-command-event)))))
Для новіших версій ukrainian.el це вже не потрібно. Фікс вже зроблено, але
іншим чином.