* [mdk-re] Re: XML parser encodings
2001-11-13 20:30 ` Alexei Takaseev
@ 2001-11-13 20:38 ` Alexander Bokovoy
2001-11-13 20:47 ` [mdk-re] iconv -r ôÕÒÂÉÎ áÌÅËÓÅÊ
2001-11-13 20:49 ` [mdk-re] Re: XML parser encodings Sergey Vlasov
2001-11-13 20:50 ` Aleksey Novodvorsky
2001-11-14 7:02 ` Yura Gusev
2 siblings, 2 replies; 18+ messages in thread
From: Alexander Bokovoy @ 2001-11-13 20:38 UTC (permalink / raw)
To: mandrake-russian
On Wed, Nov 14, 2001 at 12:43:52AM +0800, Alexei Takaseev wrote:
> On Tue, 13 Nov 2001, Mikhail Zabaluev wrote:
>
> > Для тех libc, что не в танке, есть libiconv. Так что, думаю,
> > предлагать можно настойчиво, особенно если предусмотреть
> > aclocal-скрипт поиска реализации iconv, который можно стянуть из
> > доброго десятка других пакетов. Лучший, по-моему, в mutt.
>
> Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
> встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
> чтоб он его просто пропускал, и топал дальше текст жевать?
Если речь идет об утилите командной строки, то ключик --replace=SYMBOL,
если о функции, то смотрите исходники утилиты командной строки.
--
/ Alexander Bokovoy
$ cat /proc/identity >~/.signature
`Senior software developer and analyst for SaM-Solutions Ltd.`
---
A penny saved kills your career in government.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [mdk-re] iconv -r
2001-11-13 20:38 ` Alexander Bokovoy
@ 2001-11-13 20:47 ` ôÕÒÂÉÎ áÌÅËÓÅÊ
2001-11-13 20:49 ` [mdk-re] Re: XML parser encodings Sergey Vlasov
1 sibling, 0 replies; 18+ messages in thread
From: ôÕÒÂÉÎ áÌÅËÓÅÊ @ 2001-11-13 20:47 UTC (permalink / raw)
To: mandrake-russian
> Если речь идет об утилите командной строки, то ключик --replace=SYMBOL,
> если о функции, то смотрите исходники утилиты командной строки.
Да. Можно даже писать просто -r и будет заменяться на знак вопроса.
__
AT
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [mdk-re] Re: XML parser encodings
2001-11-13 20:38 ` Alexander Bokovoy
2001-11-13 20:47 ` [mdk-re] iconv -r ôÕÒÂÉÎ áÌÅËÓÅÊ
@ 2001-11-13 20:49 ` Sergey Vlasov
2001-11-13 21:00 ` Alexander Bokovoy
2001-11-15 2:48 ` Mikhail Zabaluev
1 sibling, 2 replies; 18+ messages in thread
From: Sergey Vlasov @ 2001-11-13 20:49 UTC (permalink / raw)
To: mandrake-russian
On Tue, 13 Nov 2001 19:50:16 +0200
Alexander Bokovoy <a.bokovoy@sam-solutions.net> wrote:
> On Wed, Nov 14, 2001 at 12:43:52AM +0800, Alexei Takaseev wrote:
> > On Tue, 13 Nov 2001, Mikhail Zabaluev wrote:
> >
> > > Для тех libc, что не в танке, есть libiconv. Так что, думаю,
> > > предлагать можно настойчиво, особенно если предусмотреть
> > > aclocal-скрипт поиска реализации iconv, который можно стянуть из
> > > доброго десятка других пакетов. Лучший, по-моему, в mutt.
> >
> > Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
> > встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
> > чтоб он его просто пропускал, и топал дальше текст жевать?
> Если речь идет об утилите командной строки, то ключик --replace=SYMBOL,
> если о функции, то смотрите исходники утилиты командной строки.
В эти исходники я заглядывал - лучше не смотреть, там все жестко
привязано к реализации iconv() в glibc (используются внутренние
структуры, даже не описанные в устанавливаемых файлах
заголовков). Оно и понятно - iconv --list вообще невозможно
реализовать стандартными средствами, не зависящими от реализации
iconv().
Лучше посмотреть на реализацию функции g_convert_with_fallback()
в GLib-1.3.x (pre-2.0) - там переносимая реализация. Основной
принцип - при ошибке преобразования исходная строка
преобразуется в UTF-8 (что должно пройти в любом случае), а
затем производится посимвольное преобразование из UTF-8 в
требуемую кодировку, с заменой символов, которые не удается
преобразовать.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [mdk-re] Re: XML parser encodings
2001-11-13 20:49 ` [mdk-re] Re: XML parser encodings Sergey Vlasov
@ 2001-11-13 21:00 ` Alexander Bokovoy
2001-11-15 2:48 ` Mikhail Zabaluev
1 sibling, 0 replies; 18+ messages in thread
From: Alexander Bokovoy @ 2001-11-13 21:00 UTC (permalink / raw)
To: mandrake-russian
On Tue, Nov 13, 2001 at 09:05:55PM +0300, Sergey Vlasov wrote:
> On Tue, 13 Nov 2001 19:50:16 +0200
> Alexander Bokovoy <a.bokovoy@sam-solutions.net> wrote:
>
> > On Wed, Nov 14, 2001 at 12:43:52AM +0800, Alexei Takaseev wrote:
> > > On Tue, 13 Nov 2001, Mikhail Zabaluev wrote:
> > >
> > > > Для тех libc, что не в танке, есть libiconv. Так что, думаю,
> > > > предлагать можно настойчиво, особенно если предусмотреть
> > > > aclocal-скрипт поиска реализации iconv, который можно стянуть из
> > > > доброго десятка других пакетов. Лучший, по-моему, в mutt.
> > >
> > > Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
> > > встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
> > > чтоб он его просто пропускал, и топал дальше текст жевать?
> > Если речь идет об утилите командной строки, то ключик --replace=SYMBOL,
> > если о функции, то смотрите исходники утилиты командной строки.
>
> В эти исходники я заглядывал - лучше не смотреть, там все жестко
> привязано к реализации iconv() в glibc (используются внутренние
> структуры, даже не описанные в устанавливаемых файлах
> заголовков). Оно и понятно - iconv --list вообще невозможно
> реализовать стандартными средствами, не зависящими от реализации
> iconv().
>
> Лучше посмотреть на реализацию функции g_convert_with_fallback()
> в GLib-1.3.x (pre-2.0) - там переносимая реализация. Основной
> принцип - при ошибке преобразования исходная строка
> преобразуется в UTF-8 (что должно пройти в любом случае), а
> затем производится посимвольное преобразование из UTF-8 в
> требуемую кодировку, с заменой символов, которые не удается
> преобразовать.
Тоже верно. Осталось дождаться выхода стабильной версии Glib 2.0.
--
/ Alexander Bokovoy
$ cat /proc/identity >~/.signature
`Senior software developer and analyst for SaM-Solutions Ltd.`
---
A penny saved kills your career in government.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [mdk-re] Re: XML parser encodings
2001-11-13 20:49 ` [mdk-re] Re: XML parser encodings Sergey Vlasov
2001-11-13 21:00 ` Alexander Bokovoy
@ 2001-11-15 2:48 ` Mikhail Zabaluev
2001-11-15 17:37 ` Sergey Vlasov
1 sibling, 1 reply; 18+ messages in thread
From: Mikhail Zabaluev @ 2001-11-15 2:48 UTC (permalink / raw)
To: mandrake-russian
Hello Sergey,
On Tue, Nov 13, 2001 at 09:05:55PM +0300, Sergey Vlasov wrote:
>
> > > Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
> > > встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
> > > чтоб он его просто пропускал, и топал дальше текст жевать?
> > Если речь идет об утилите командной строки, то ключик --replace=SYMBOL,
> > если о функции, то смотрите исходники утилиты командной строки.
>
> В эти исходники я заглядывал - лучше не смотреть, там все жестко
> привязано к реализации iconv() в glibc (используются внутренние
> структуры, даже не описанные в устанавливаемых файлах
> заголовков). Оно и понятно - iconv --list вообще невозможно
> реализовать стандартными средствами, не зависящими от реализации
> iconv().
>
> Лучше посмотреть на реализацию функции g_convert_with_fallback()
> в GLib-1.3.x (pre-2.0) - там переносимая реализация. Основной
> принцип - при ошибке преобразования исходная строка
> преобразуется в UTF-8 (что должно пройти в любом случае), а
> затем производится посимвольное преобразование из UTF-8 в
> требуемую кодировку, с заменой символов, которые не удается
> преобразовать.
Сие грамотно, разве что так тщательно нужно перекодировать только то
место, где iconv спотыкается -- ведь функция сама двигает указатели,
пока все OK.
--
Stay tuned,
MhZ JID: mookid@jabber.org
___________
After all, all he did was string together a lot of old, well-known quotations.
-- H.L. Mencken, on Shakespeare
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [mdk-re] Re: XML parser encodings
2001-11-15 2:48 ` Mikhail Zabaluev
@ 2001-11-15 17:37 ` Sergey Vlasov
2001-11-16 12:27 ` Mikhail Zabaluev
0 siblings, 1 reply; 18+ messages in thread
From: Sergey Vlasov @ 2001-11-15 17:37 UTC (permalink / raw)
To: mandrake-russian
On Thu, 15 Nov 2001 02:59:00 +0300
Mikhail Zabaluev <mhz@alt-linux.org> wrote:
> > Лучше посмотреть на реализацию функции g_convert_with_fallback()
> > в GLib-1.3.x (pre-2.0) - там переносимая реализация. Основной
> > принцип - при ошибке преобразования исходная строка
> > преобразуется в UTF-8 (что должно пройти в любом случае), а
> > затем производится посимвольное преобразование из UTF-8 в
> > требуемую кодировку, с заменой символов, которые не удается
> > преобразовать.
>
> Сие грамотно, разве что так тщательно нужно перекодировать только то
> место, где iconv спотыкается -- ведь функция сама двигает указатели,
> пока все OK.
В общем случае это не проходит - исходная кодировка может быть
хитрой многобайтовой, поэтому пропустить мешающий символ сложно.
В UTF-8 такой проблемы нет. Впрочем, все это используется только
если строка не перекодировалась напрямую.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [mdk-re] Re: XML parser encodings
2001-11-15 17:37 ` Sergey Vlasov
@ 2001-11-16 12:27 ` Mikhail Zabaluev
2001-11-16 12:51 ` Mikhail Zabaluev
0 siblings, 1 reply; 18+ messages in thread
From: Mikhail Zabaluev @ 2001-11-16 12:27 UTC (permalink / raw)
To: mandrake-russian
Hello Sergey,
On Thu, Nov 15, 2001 at 05:54:09PM +0300, Sergey Vlasov wrote:
>
> On Thu, 15 Nov 2001 02:59:00 +0300
> Mikhail Zabaluev <mhz@alt-linux.org> wrote:
>
> > > Лучше посмотреть на реализацию функции g_convert_with_fallback()
> > > в GLib-1.3.x (pre-2.0) - там переносимая реализация. Основной
> > > принцип - при ошибке преобразования исходная строка
> > > преобразуется в UTF-8 (что должно пройти в любом случае), а
> > > затем производится посимвольное преобразование из UTF-8 в
> > > требуемую кодировку, с заменой символов, которые не удается
> > > преобразовать.
> >
> > Сие грамотно, разве что так тщательно нужно перекодировать только то
> > место, где iconv спотыкается -- ведь функция сама двигает указатели,
> > пока все OK.
>
> В общем случае это не проходит - исходная кодировка может быть
> хитрой многобайтовой, поэтому пропустить мешающий символ сложно.
> В UTF-8 такой проблемы нет.
Тогда уж лучше в UCS-4, чтобы потом легко скакать по 32-битным словам.
Минимизировать работу по трехступенчатой схеме все же можно: сделать
lookahead на "сложном месте" байт в 6-8, чтобы любой известный науке
многобайтовый символ мог проскочить. А потом продолжить прямую
перекодировку с того места, где остановились указатели.
--
Stay tuned,
MhZ JID: mookid@jabber.org
___________
That government is best which governs least.
-- Henry David Thoreau, "Civil Disobedience"
^ permalink raw reply [flat|nested] 18+ messages in thread
* [mdk-re] Re: XML parser encodings
2001-11-16 12:27 ` Mikhail Zabaluev
@ 2001-11-16 12:51 ` Mikhail Zabaluev
0 siblings, 0 replies; 18+ messages in thread
From: Mikhail Zabaluev @ 2001-11-16 12:51 UTC (permalink / raw)
To: mandrake-russian
Hello mandrake-russian,
On Fri, Nov 16, 2001 at 12:38:03PM +0300, Mikhail Zabaluev wrote:
>
> > > Сие грамотно, разве что так тщательно нужно перекодировать только то
> > > место, где iconv спотыкается -- ведь функция сама двигает указатели,
> > > пока все OK.
> >
> > В общем случае это не проходит - исходная кодировка может быть
> > хитрой многобайтовой, поэтому пропустить мешающий символ сложно.
> > В UTF-8 такой проблемы нет.
>
> Тогда уж лучше в UCS-4, чтобы потом легко скакать по 32-битным словам.
> Минимизировать работу по трехступенчатой схеме все же можно: сделать
> lookahead на "сложном месте" байт в 6-8, чтобы любой известный науке
> многобайтовый символ мог проскочить. А потом продолжить прямую
> перекодировку с того места, где остановились указатели.
Подумав еще немного: нет, все же две разные перекодировки на одном месте
использовать опасно.
--
Stay tuned,
MhZ JID: mookid@jabber.org
___________
No one knows what he can do till he tries.
-- Publilius Syrus
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [mdk-re] Re: XML parser encodings
2001-11-13 20:30 ` Alexei Takaseev
2001-11-13 20:38 ` Alexander Bokovoy
@ 2001-11-13 20:50 ` Aleksey Novodvorsky
2001-11-13 21:06 ` Dmitry V. Levin
2001-11-14 7:02 ` Yura Gusev
2 siblings, 1 reply; 18+ messages in thread
From: Aleksey Novodvorsky @ 2001-11-13 20:50 UTC (permalink / raw)
To: mandrake-russian
Alexei Takaseev wrote:
> On Tue, 13 Nov 2001, Mikhail Zabaluev wrote:
>
> > Для тех libc, что не в танке, есть libiconv. Так что, думаю,
> > предлагать можно настойчиво, особенно если предусмотреть
> > aclocal-скрипт поиска реализации iconv, который можно стянуть из
> > доброго десятка других пакетов. Лучший, по-моему, в mutt.
>
> Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
> встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
> чтоб он его просто пропускал, и топал дальше текст жевать?
Если у Вас ALT, то -c
Rgrds, AEN
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [mdk-re] Re: XML parser encodings
2001-11-13 20:50 ` Aleksey Novodvorsky
@ 2001-11-13 21:06 ` Dmitry V. Levin
2001-11-13 21:23 ` John Profic
0 siblings, 1 reply; 18+ messages in thread
From: Dmitry V. Levin @ 2001-11-13 21:06 UTC (permalink / raw)
To: ALT Linux Spring mailing list
[-- Attachment #1: Type: text/plain, Size: 1166 bytes --]
On Tue, Nov 13, 2001 at 09:08:38PM +0300, Aleksey Novodvorsky wrote:
> > > Для тех libc, что не в танке, есть libiconv. Так что, думаю,
> > > предлагать можно настойчиво, особенно если предусмотреть
> > > aclocal-скрипт поиска реализации iconv, который можно стянуть из
> > > доброго десятка других пакетов. Лучший, по-моему, в mutt.
> >
> > Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
> > встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
> > чтоб он его просто пропускал, и топал дальше текст жевать?
>
> Если у Вас ALT, то -c
Не совсем:
У всех (glibc >= 2.2.2, кажется) есть "iconv -c"
В ALT (glibc >= 2.2-ipl2mdk) для однобайтных target-кодировок есть
"iconv -r".
Что именно умеет iconv в Вашей системе, см. "iconv --help"
Regards,
Dmitry
+-------------------------------------------------------------------------+
Dmitry V. Levin mailto://ldv@alt-linux.org
ALT Linux Team http://www.altlinux.ru/
Fandra Project http://www.fandra.org/
+-------------------------------------------------------------------------+
UNIX is user friendly. It's just very selective about who its friends are.
[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [mdk-re] Re: XML parser encodings
2001-11-13 21:06 ` Dmitry V. Levin
@ 2001-11-13 21:23 ` John Profic
0 siblings, 0 replies; 18+ messages in thread
From: John Profic @ 2001-11-13 21:23 UTC (permalink / raw)
To: mandrake-russian
Dmitry V. Levin wrote:
> On Tue, Nov 13, 2001 at 09:08:38PM +0300, Aleksey Novodvorsky wrote:
>>>>Для тех libc, что не в танке, есть libiconv. Так что, думаю,
>>>>предлагать можно настойчиво, особенно если предусмотреть
>>>>aclocal-скрипт поиска реализации iconv, который можно стянуть из
>>>>доброго десятка других пакетов. Лучший, по-моему, в mutt.
>>>Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
>>>встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
>>>чтоб он его просто пропускал, и топал дальше текст жевать?
>>Если у Вас ALT, то -c
> Не совсем:
> У всех (glibc >= 2.2.2, кажется) есть "iconv -c"
> В ALT (glibc >= 2.2-ipl2mdk) для однобайтных target-кодировок есть
> "iconv -r".
> Что именно умеет iconv в Вашей системе, см. "iconv --help"
Гы, моя система обозначена в подписи
так вот:
[root@server /]# iconv --help | grep -- "-r"
-r, --replace[=SYMBOL] replace invalid characters with specified
symbol
Большое спасибо AEN-у за наше счастливое дество :) Без его патчей к
многим прогам мне в системе с локалью ru_RU.CP1251 пришлось бы туго :)
А так берем src.rpm, вытаскиваем исходники, патчи, и собираем :)
Еще раз большое спасибо комманде ALTLinux и AEN-у в частности :)
--
Best regards,
John Profic <profic@lrn.ru>
Written by Mozilla 0.9.5
using SelfMake! Linux v0.9 based on ASPLinux release 1.1
with locale ru_RU.CP1251,
system: kernel 2.4.10-xfs-p1; glibc 2.2.4; gcc 3.0.1; XFree86 4.1.0;
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [mdk-re] Re: XML parser encodings
2001-11-13 20:30 ` Alexei Takaseev
2001-11-13 20:38 ` Alexander Bokovoy
2001-11-13 20:50 ` Aleksey Novodvorsky
@ 2001-11-14 7:02 ` Yura Gusev
2001-11-15 2:50 ` Mikhail Zabaluev
2 siblings, 1 reply; 18+ messages in thread
From: Yura Gusev @ 2001-11-14 7:02 UTC (permalink / raw)
To: mandrake-russian
On Wed, 14 Nov 2001, Alexei Takaseev wrote:
> On Tue, 13 Nov 2001, Mikhail Zabaluev wrote:
>
> > Для тех libc, что не в танке, есть libiconv. Так что, думаю,
> > предлагать можно настойчиво, особенно если предусмотреть
> > aclocal-скрипт поиска реализации iconv, который можно стянуть из
> > доброго десятка других пакетов. Лучший, по-моему, в mutt.
>
> Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
> встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
> чтоб он его просто пропускал, и топал дальше текст жевать?
Кстати плохо конвертит. Пробывал ради прикола поинт лист фидошный в кои8
сконвертить. Выдало ошибок 15(с остановкой конвертации) да псевдографика
вся убилась.
--
11:06pm up 28 days, 12:03, 2 users, load average: 0.00, 0.00, 0.00
__
| / \ | Iouri Goussev // \\
\_\\ //_/ elendal@w4.ca _\\()//_
.'/()\'. Foo-Bar / // \\ \
jgs \\ // http://foobar.irc-unix.net | \__/ |
I am not 31337. But I can use the Vi editor... ;-0
^ permalink raw reply [flat|nested] 18+ messages in thread
* [mdk-re] Re: XML parser encodings
2001-11-14 7:02 ` Yura Gusev
@ 2001-11-15 2:50 ` Mikhail Zabaluev
0 siblings, 0 replies; 18+ messages in thread
From: Mikhail Zabaluev @ 2001-11-15 2:50 UTC (permalink / raw)
To: mandrake-russian
Hello Yura,
On Tue, Nov 13, 2001 at 11:09:11PM -0500, Yura Gusev wrote:
>
> On Wed, 14 Nov 2001, Alexei Takaseev wrote:
>
> > On Tue, 13 Nov 2001, Mikhail Zabaluev wrote:
> >
> > > Для тех libc, что не в танке, есть libiconv. Так что, думаю,
> > > предлагать можно настойчиво, особенно если предусмотреть
> > > aclocal-скрипт поиска реализации iconv, который можно стянуть из
> > > доброго десятка других пакетов. Лучший, по-моему, в mutt.
> >
> > Да, кстати, а как сказать iconv, чтобы он не ругался на некоторые символы,
> > встречающиеся в текстах как "В данной кодировке таких символов нетути!" а
> > чтоб он его просто пропускал, и топал дальше текст жевать?
>
> Кстати плохо конвертит. Пробывал ради прикола поинт лист фидошный в кои8
> сконвертить. Выдало ошибок 15(с остановкой конвертации) да псевдографика
> вся убилась.
Странно, в KOI8-R она вроде бы должна быть...
--
Stay tuned,
MhZ JID: mookid@jabber.org
___________
A horse! A horse! My kingdom for a horse!
-- Wm. Shakespeare, "Henry VI"
^ permalink raw reply [flat|nested] 18+ messages in thread