Hello, xemacs-users-ru,
Собственно, документация подкачала. Там серым по черному
написано:
====
To use any of these systems, you need to create it with `M-x
codepage-setup'. *Note MS-DOS and MULE::. After creating the
coding system for the codepage, you can use it as any other
coding system. For example, to visit a file encoded in
codepage 850, type `C-x <RET> c cp850 <RET> C-x C-f FILENAME
<RET>'.
===
что я и делаю: (codepage-setup 866), после чего открываю
файл, в котором русский отображается, как бы это чтобы
понятнее, наполовину. Например:
вместо "взнос" - "взнот",
вместо "обычный" - "обьшньй",
вместо "междунароный" - "междфнасодный" и т.п.
Тот же эффект, если в файле прописать:
-*- coding: cp866; -*-
При этом ввод с клавы происходит нормально, йцукеном.
Но стоит попытаться сохранить текст - ругань:
--------------------------
These default coding systems were tried:
cp866-dos iso-latin-1
However, none of them safely encodes the target text.
Select one of the following safe coding systems:
raw-text emacs-mule no-conversion
--------------------------
Попытка выбора "одной из следующих БЕЗОПАСНЫХ" кодировок
приводят к такой же безвозвратной утере русского текста -
он превращается в нечто страшное и двухбайтовое :(
И вот еще, что неясно - есть как минимум 2 претендента
на досовскую кодировку: cp866 и cp866-dos
Зачем? Почему? Но это, на самом деле, фиолетово - не
работают обе :(
p.s. Пусть простят меня все присутствующие фанаты XEmacs,
ибо речь идет о Emacs 21.2.1 (что вообщем-то должно
следовать из сабжа) (В XEmacs, как я писал раньше, русский
ни в каком виде получить не удалось)
--
best regards,
Artiom mailto:aneganov@end.org.ru
Show replies by date
intro: "AN" == Artiom Neganov <aneganov(a)end.org.ru> writes:
AN> Hello, Nickolay,
AN> Thursday, December 5, 2002, 1:46:26 PM, you wrote:
AN> Кстати, крайне неудобно переключаться по C-\ (виндовая переключалка
AN> locale работает только для win1251 - видимо, по причине "встроенности"
AN> последней). Так вот, нельзя ли заставить Emacs включать нужную
AN> перекодировку для клавы при изменении системного locale?
AN> Т.е. два вопроса:
AN> 1) Как заставить input-method переключаться при изменении
AN> виндового Locale (переключаться в cyrillic-jcuken, что сейчас делается по
AN> C-\)
AN> 2) Как убедить emacs включать НУЖНУЮ перекодировку для
AN> клавы в зависимости от текущей coding-system? Т.е. koi для koi, alt для
AN> alt и т.д..
(set-keyboard-coding-system 'cp1251-dos)
Тогда емакс будет сам перекодировать буковки из входной кодировки (cp1251) в
кодировку буфера (alternativnyj, koi).
Коля.
AN> -- best regards, Artiom mailto:aneganov@end.org.ru
Hello, Nickolay,
Thursday, December 5, 2002, 1:46:26 PM, you wrote:
NP> У меня в Windows 2000 Емакс 21.2.1 понимает кодировку "альтернативная"
(то есть
NP> та же кодовая страница 866, но закодированная для Емакса вручную). Название в
NP> (X)Емаксе alternattivnyj.
Вот спасибо, помогло! :) И как я сам не допер...
А вообще странно, что cp866 не работает, не правда ли?
Может бага в cp-таблице в codepage.el?
NP> Я проверил -- досовские документы и читаются, и пишутся в этой кодировке.
Да, у меня тоже ok!
NP> Суффикс -dos означает, что конец строки...
Ага, ясно. И право, мелочи :)
Кстати, крайне неудобно переключаться по C-\ (виндовая
переключалка locale работает только для win1251 - видимо,
по причине "встроенности" последней).
Так вот, нельзя ли заставить Emacs включать нужную
перекодировку для клавы при изменении системного locale?
Т.е. два вопроса:
1) Как заставить input-method переключаться при изменении
виндового Locale (переключаться в cyrillic-jcuken, что
сейчас делается по C-\)
2) Как убедить emacs включать НУЖНУЮ перекодировку для
клавы в зависимости от текущей coding-system?
Т.е. koi для koi, alt для alt и т.д..
--
best regards,
Artiom mailto:aneganov@end.org.ru
::
- Копперфильд в Москву прилетел!
- Сам или на самолете?
::
У меня в Windows 2000 Емакс 21.2.1 понимает кодировку "альтернативная" (то есть
та же кодовая страница 866, но закодированная для Емакса вручную). Название в
(X)Емаксе alternattivnyj.
Я проверил -- досовские документы и читаются, и пишутся в этой кодировке.
Суффикс -dos означает, что конец строки по-досовски перевод каретки перевод
строки (или наоборот, не помню). Суффикс -unix означает, что конец строки по
униксовому. Отсутствие суффикса -- то ли определяет автоматически тип конца
строки, то ли использует значение по умолчанию.
Коля.
intro: "AN" == Artiom Neganov <aneganov(a)end.org.ru> writes:
AN> Hello, xemacs-users-ru, Собственно, документация подкачала. Там серым по
AN> черному написано:
AN> ==== To use any of these systems, you need to create it with `M-x
AN> codepage-setup'. *Note MS-DOS and MULE::. After creating the coding
AN> system for the codepage, you can use it as any other coding system. For
AN> example, to visit a file encoded in codepage 850, type `C-x <RET> c cp850
AN> <RET> C-x C-f FILENAME <RET>'. ===
AN> что я и делаю: (codepage-setup 866), после чего открываю файл, в котором
AN> русский отображается, как бы это чтобы понятнее, наполовину. Например:
AN> вместо "взнос" - "взнот", вместо "обычный" -
"обьшньй", вместо
AN> "междунароный" - "междфнасодный" и т.п.
AN> Тот же эффект, если в файле прописать:
AN> -*- coding: cp866; -*-
AN> При этом ввод с клавы происходит нормально, йцукеном. Но стоит
AN> попытаться сохранить текст - ругань: -------------------------- These
AN> default coding systems were tried: cp866-dos iso-latin-1 However, none of
AN> them safely encodes the target text.
AN> Select one of the following safe coding systems: raw-text emacs-mule
AN> no-conversion -------------------------- Попытка выбора "одной из
AN> следующих БЕЗОПАСНЫХ" кодировок приводят к такой же безвозвратной утере
AN> русского текста - он превращается в нечто страшное и двухбайтовое :(
AN> И вот еще, что неясно - есть как минимум 2 претендента на досовскую
AN> кодировку: cp866 и cp866-dos Зачем? Почему? Но это, на самом деле,
AN> фиолетово - не работают обе :(
AN> p.s. Пусть простят меня все присутствующие фанаты XEmacs, ибо речь идет о
AN> Emacs 21.2.1 (что вообщем-то должно следовать из сабжа) (В XEmacs, как я
AN> писал раньше, русский ни в каком виде получить не удалось)
AN> -- best regards, Artiom mailto:aneganov@end.org.ru
Hello, xemacs-users-ru,
Собственно, документация подкачала. Там серым по черному
написано:
====
To use any of these systems, you need to create it with `M-x
codepage-setup'. *Note MS-DOS and MULE::. After creating the
coding system for the codepage, you can use it as any other
coding system. For example, to visit a file encoded in
codepage 850, type `C-x <RET> c cp850 <RET> C-x C-f FILENAME
<RET>'.
===
что я и делаю: (codepage-setup 866), после чего открываю
файл, в котором русский отображается, как бы это чтобы
понятнее, наполовину. Например:
вместо "взнос" - "взнот",
вместо "обычный" - "обьшньй",
вместо "междунароный" - "междфнасодный" и т.п.
Тот же эффект, если в файле прописать:
-*- coding: cp866; -*-
При этом ввод с клавы происходит нормально, йцукеном.
Но стоит попытаться сохранить текст - ругань:
--------------------------
These default coding systems were tried:
cp866-dos iso-latin-1
However, none of them safely encodes the target text.
Select one of the following safe coding systems:
raw-text emacs-mule no-conversion
--------------------------
Попытка выбора "одной из следующих БЕЗОПАСНЫХ" кодировок
приводят к такой же безвозвратной утере русского текста -
он превращается в нечто страшное и двухбайтовое :(
И вот еще, что неясно - есть как минимум 2 претендента
на досовскую кодировку: cp866 и cp866-dos
Зачем? Почему? Но это, на самом деле, фиолетово - не
работают обе :(
p.s. Пусть простят меня все присутствующие фанаты XEmacs,
ибо речь идет о Emacs 21.2.1 (что вообщем-то должно
следовать из сабжа) (В XEmacs, как я писал раньше, русский
ни в каком виде получить не удалось)
--
best regards,
Artiom mailto:aneganov@end.org.ru