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