emacs
Из вопросов, связанных с локализацией, почему-то нигде не рассмотрен emacs (я имею в виду соответствующие разделы в документации и Gentoo-wiki).
Самый главный вопрос -- не работает переключение на русский язык по Ctrl-\ -- выдается сообщение activate-input-method: Can't activate input method `cyrillic-jcuken'.
Ну и вообще, кто какие конфиги для кириллизации использует, как решает проблемы со шрифтами?
Я использую найденный для koi8 конфиг, в котором постарался все koi8 заменить на utf8. Сам я большую часть этого не понимаю, и подозреваю, что не все здесь правильно (если все вообще не является бредом)
(set-language-environment 'UTF-8) (set-terminal-coding-system 'utf-8) (set-keyboard-coding-system 'utf-8) (setq default-buffer-file-coding-system 'koi8-r) (put-charset-property 'cyrillic-iso8859-5 'preferred-coding-system 'utf-8) (codepage-setup 1251) (define-coding-system-alias 'windows-1251 'cp1251) (set-input-mode nil nil 'We-will-use-eighth-bit-of-input-byte) (setq-default coding-system-for-read 'utf-8) (set-selection-coding-system 'utf-8) (prefer-coding-system 'windows-1251) (prefer-coding-system 'koi8-r) (prefer-coding-system 'utf-8)
Что нужно сделать, чтобы можно было вставлять русский текст из буфера обмена?
При запуске у меня в иксах был совершенно кривой шрифт. Погуглив, нашел такое решение
Для того чтобы emacs правильно показывал кириллицу при работе в UTF-8, можно добавить строчку в ~/.Xresources:Emacs*font: -*-*-medium-r-*-*-13-*-*-*-*-*-iso10646-1
или указать шрифт явно через опцию -fn:emacs -fn -*-*-medium-r-*-*-13-*-*-*-*-*-iso10646-1
Как бы этот шрифт прописать в ~/.emacs? Какие еще могуть быть шрифты?
- Для комментирования войдите или зарегистрируйтесь

>>Какие еще
>>Какие еще могуть быть шрифты?
Какие поставил :). Поиграйся с xfontsel, оно у всех есть, кажется идет в составе иксов.
Что-то особого
Что-то особого внимания к emacs тут не наблюдается :(
Я в общем-то более-менее разобрался, могу даже HOWTO написать. Вот только проверку русской орфографии прикрутить не получается.
У меня
У меня наблюдается. Периодически пинаю emacs (xemacs жутко не понравился, снес) c разных сторон. Отладка и все такое. Прикольно. Пытаюсь ответить на извечный вопрос "А оно мне надо?". На лоре в документации надысь нарыл русский инфо, зело помогает. А приличный хауту по емаксу написать нереально, бо получится инфо от и до :)
Ну хотя бы по
Ну хотя бы по русификации... Потому доки о русификации emacs'а есть, но они в основном для koi, и не разъясняют, как юзать с ним aspell
Ага,
Ага, разобрался. Ну, если кому-то нужна дока по тому, как приручить emacs-cvs к utf-8, я могу через недельку-две написать руководство
а что там не
а что там не понятного?..
Напиши
Напиши пожалуйста, все тебе очень благодарны будут :)
Куда выложишь и когда скажешь?
Как сдам
Как сдам сессию, следите за анонсами :)
Пока что вот вам мой ~/.emacs.d/init.el, правда, тут еще возможно что-то придется править
Еще раз обращаю внимание: у меня emacs-cvs-22.0.50!
А можно
А можно дурацкий вопрос?
Почему в твоей UTF8 локали первая предпочитаемая кодировка не utf-8? Разве не логично начинать постепенно использовать эту кодировку как основную?
prefer-coding-system
prefer-coding-system помещает кодировку в НАЧАЛО списка предпочитаемых кодировок
И кстати, у меня все никак не дойдут руки проверить, как работает автоопределение кодировок с этим конфигом на файлах с koi/win/dos
o
o
HOWTO обещанный и долгожданный :)
http://ru.gentoo-wiki.com/HOWTO_Emacs_и_utf8
Пинайте.
а можно что-нибудь сделать с клавиатурными сокращениями?
Ну то есть если я в русской раскладке, то чтобы все равно работали всякие там C-x C-f?
Можно.
Можно. Переключайся на русский с помощью ctrl-\. Естественно, сначала нужно сделать всё по статье на вики
А нельзя это на
А нельзя это на capslock повесить?
Надысь
Надысь пришлось юзать емакс с консоли, и писать на ем русские буки. Локаль ессно кои. Ну и напоролся на вилы коих под иксами нет.
Во первых оно не переключалось по контрол шифт (как все остальное консольное). Ранше глюк не замечал , бо под иксами пашет как миленький. Вычитал волшебную комбинацию Ctrl-\
Пришлось вернуться к истокам:
>>Самый главный вопрос -- не работает переключение на русский язык по >>Ctrl-\ -- выдается
>>activate-input-method: Can't activate input method `cyrillic-jcuken'.
Это как раз из за кривой сборки
emerge -pv emacs
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] app-editors/emacs-21.4-r4 USE="X -leim nls -Xaw3d -lesstif -motif -nosendmail" 0 kB
За локализацию отвечают 2 флага nls (муле) и leim (это тот самый пресловутый input metod). Некоторые утверждают что лейм вроде как не нужен потому как муле есть. Врут. О чем собсно и гласит info emacs. Лейм это отдельный пакет. Весит три метра. Собсно он эти инпут методы и определяет. После пересборки с mule и leim ошибка по Ctrl-\ исчезла, и все стало переключаться как надо.
Осталась еще одна проблема (вопросики вместо русских букв). Опять же проявилась в консоли, то бишь под иксами ее не видно. Это от того что koi однобайтная кодировка. Исправляется параметрами запуска --unibyte.
emacs --unibyte
В общем все.
Leim не нужен
Leim не нужен. В нём, как я понял, только определения раскладок клавиатуры, причём на кучу языков. При этом там нет виндовой раскладки (т.е. где точка возле shift-а) (хотя, может уже добавили)
Лучше просто определить в .emacs:
;; windows keymapping (quail-define-package "cyrillic-jcuken-win" "Cyrillic" "RU" nil "ЙЦУКЕН + windows keymapping" nil t t t t nil nil nil nil nil t) ;; 1! 2" 3# 4; 5% 6: 7? 8* 9( 0) -_ =+ Ё ;; Й Ц У К Е Н Г Ш Щ З Х ъ ;; Ф Ы В А П Р О Л Д Ж Э ;; Я Ч С М И Т Ь Б Ю ., (quail-define-rules ("1" ?1) ("2" ?2) ("3" ?3) ("4" ?4) ("5" ?5) ("6" ?6) ("7" ?7) ("8" ?8) ("9" ?9) ("0" ?0) ("-" ?-) ("=" ?=) ("`" ?ё) ("q" ?й) ("w" ?ц) ("e" ?у) ("r" ?к) ("t" ?е) ("y" ?н) ("u" ?г) ("i" ?ш) ("o" ?щ) ("p" ?з) ("[" ?х) ("]" ?ъ) ("a" ?ф) ("s" ?ы) ("d" ?в) ("f" ?а) ("g" ?п) ("h" ?р) ("j" ?о) ("k" ?л) ("l" ?д) (";" ?ж) ("'" ?э) ("\\" ?\\) ("z" ?я) ("x" ?ч) ("c" ?с) ("v" ?м) ("b" ?и) ("n" ?т) ("m" ?ь) ("," ?б) ("." ?ю) ("/" ?.) ("!" ?!) ("@" ?\") ("#" ?#) ("$" ?\;) ("%" ?%) ("^" ?:) ("&" ??) ("*" ?*) ("(" ?() (")" ?)) ("_" ?_) ("+" ?+) ("~" ?Ё) ("Q" ?Й) ("W" ?Ц) ("E" ?У) ("R" ?К) ("T" ?Е) ("Y" ?Н) ("U" ?Г) ("I" ?Ш) ("O" ?Щ) ("P" ?З) ("{" ?Х) ("}" ?Ъ) ("A" ?Ф) ("S" ?Ы) ("D" ?В) ("F" ?А) ("G" ?П) ("H" ?Р) ("J" ?О) ("K" ?Л) ("L" ?Д) (":" ?Ж) ("\"" ?Э) ("|" ?|) ("Z" ?Я) ("X" ?Ч) ("C" ?С) ("V" ?М) ("B" ?И) ("N" ?Т) ("M" ?Ь) ("<" ?Б) (">" ?Ю) ("?" ?,) )- это то же, что и в Leim, тока немного подредактированное.
Лично мне кажется - так проще. Места меньше займёт. Всё в вашем личном конфиге. И под другими операционками) сразу будет работать (могут быть только проблемы из-за кодировки самого конфига, - перекодируйте по аналогии с файлами Leim)
В 22 версии это
В 22 версии это уже есть
(setq default-input-method 'russian-computer)