[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [проект] метод передачи названия кодировки используемой на других платформах для данной локали



On Wed, 27 Sep 2000, Victor Wagner wrote:

> On Wed, 27 Sep 2000, Vlad Harchev wrote:
> 
> > > >  А он использует wv? Смотри wv, файл text.c - там отображение кодов языков от 
> > > > MS в имена кодировок - например 1049->cp1251. А дальше юзаешь iconv для
> > > 
> > > Нет не использует. Потому что должен собираться под DOS в 16-битном
> > > режиме. Соответственно, никаких iconv. Ну нету этой функции на большей
> > > части поддерживаемых платформ. Всяких там SunOS 4, HP/UX 9 и так далее. 
> > 
> >  Есть libiconv которая предоставляет iconv_* - именно ее юзает абиворд на
> > платформах отличных от линукса. Ее наверно и под дос скомпилить можно, если
> > выкинуть японксие кодировки (у них там наверно размер одной таблицы больше 64K
> > будет).
> 
> Сомневаюсь. Я собственно, и libcole не использую. Современные программисты
> давно забыли как программировать на 16-битных платформах.

 И слава богу что забыли. А вот русские - вроде не забыли, к сожалению.

> У меня в catdoc есть вполне работоспособная логика конвертирования в
> юникод/из юникода, которая легко расширяема - читает текстовые описания
> кодировок с ftp.unicode.org, и имеет легко настраиваемую систему
> подстановок, в том числе и для вывода plaintext. Как частный случай - если
> почитать catdoc русский текст (не только doc) при выходной кодировке
> us-ascii, то получится вполне корректная транслитерация.
>  
> Так что я не вижу причин отказываться от этой логики.

> Отказываться от логики разбора формата приходится, особенно из-за word>=8,
> где запросто может встретиться кусок в cp1252, а кусок в UCS2, причем
> граница между ними по границе 128-байтного блока. 
> 
> Но использование честной библиотеки для разбора OLE (даже если она
> соберется Turbo C 2.01) это отказ от работы с non-seekable файлами.
> А терять возможность конвертить по пайпу не хочется.
> 
> И вообще, если за таким монстром как AbiWord две лишние библиотеки таскать
> осмыслено, то за маленькой утилиткой (досовский екзешник 0.90.3 - 26К)
> это уже вопрос. 

 Вообще-то да. Но все равно, можно глянуть откуда wv берет код языка и потом
это (смещение и маску) использовать в catdoc.

>   
> -- 
> Victor Wagner			vitus@ice.ru
> Programmer			Office:7-(095)-785-09-72
> Communiware.Net 		Home: 7-(095)-135-46-61
> http://www.communiware.net      http://www.ice.ru/~vitus
> 

 Best regards,
  -Vlad