LINUX.ORG.RU

n7t328IIpnwd 0.3

 , ,


3

4

Состоялся релиз n7t328IIpnwd 0.3 — утилиты для lossless дампа UTF-32 данных в KOI8-R/ASCII.

Название утилиты является производным от «utf-32 to koi8-r dump», где «n7t» и «pnwd» являются зеркальными отражениями (по вертикали) «utf» и «dump» соответственно. Утилита является более мощным и более современным аналогом таких утилит, как utfinfo.pl и uniname из набора утилит uniutils. В число особенностей утилиты входят отключаемость режима «один символ на строку» (по умолчанию выключен), который является единственным рабочим режимом для перечисленных утилит, а также наличие обёртки KOI8-R, которая позволяет дампить символы из состава 2-й половины кодовой таблицы KOI8-R как они есть, в соответствующих кодах KOI8-R (по умолчанию включена). При отключении обёртки KOI8-R как они есть дампятся только символы из состава ASCII.

Для получения информации о названиях символов Юникода утилита использует библиотеку libunistring, которая является чуть ли не единственным современным решением. utfinfo.pl использует модуль CharName.pm из состава Unicode-String, который не содержит информацию о ряде новых символов из состава юникода, соответствует данным о стандарте не новее чем 2005 г. uniname использует собственную таблицу и не обновлялась с 2009 г.

Примеры результатов:

   В своей формулировке теоремы о неполноте Гёдель использовал понятие
   [GREEK SMALL LETTER OMEGA]-непротиворечивой формальной системы [EM DASH] более сильное условие, чем
   просто непротиворечивость. Формальная система называется
   [GREEK SMALL LETTER OMEGA]-непротиворечивой, если для всякой формулы A(x) этой системы
   невозможно одновременно вывести формулы А(0), А(1), А(2), [HORIZONTAL ELLIPSIS] и [THERE EXISTS]x [NOT SIGN]A(x)
   (другими словами, из того, что для каждого натурального числа n
   выводима формула A(n), следует невыводимость формулы [THERE EXISTS]x [NOT SIGN]A(x)). Легко
   показать, что [GREEK SMALL LETTER OMEGA]-непротиворечивость влечёт простую непротиворечивость
   (то есть, любая [GREEK SMALL LETTER OMEGA]-непротиворечивая формальная система
   непротиворечива)^[6].
Vine Linux [HIRAGANA LETTER NI][HIRAGANA LETTER TU][HIRAGANA LETTER I][HIRAGANA LETTER TE]

   Vine Linux [HIRAGANA LETTER HA][IDEOGRAPHIC COMMA]Project Vine[HIRAGANA LETTER O][HIRAGANA LETTER YO][HIRAGANA LETTER BI][591a][HIRAGANA LETTER KU][HIRAGANA LETTER NO][5354][529b][8005][HIRAGANA LETTER NI][HIRAGANA LETTER YO][HIRAGANA LETTER SMALL TU][HIRAGANA LETTER TE][958b][767a][HIRAGANA LETTER GA][884c][HIRAGANA LETTER WA][HIRAGANA LETTER RE][HIRAGANA LETTER TE][HIRAGANA LETTER I][HIRAGANA LETTER RU][IDEOGRAPHIC COMMA]
   [KATAKANA LETTER KO][KATAKANA LETTER N][KATAKANA LETTER PA][KATAKANA LETTER KU][KATAKANA LETTER TO][HIRAGANA LETTER DE][8efd][91cf][HIRAGANA LETTER NA][65e5][672c][8a9e]Linux[KATAKANA LETTER DE][KATAKANA LETTER SMALL I][KATAKANA LETTER SU][KATAKANA LETTER TO][KATAKANA LETTER RI][KATAKANA LETTER BI][KATAKANA LETTER SMALL YU][KATAKANA-HIRAGANA PROLONGED SOUND MARK][KATAKANA LETTER SI][KATAKANA LETTER SMALL YO][KATAKANA LETTER N][HIRAGANA LETTER DE][HIRAGANA LETTER SU][IDEOGRAPHIC FULL STOP] [KATAKANA LETTER I][KATAKANA LETTER N][KATAKANA LETTER SU][KATAKANA LETTER TO][KATAKANA-HIRAGANA PROLONGED SOUND MARK][KATAKANA LETTER RU][HIRAGANA LETTER NO][76f4][5f8c][HIRAGANA LETTER KA][HIRAGANA LETTER RA][5feb][9069][HIRAGANA LETTER NA][65e5][672c][8a9e][74b0][5883][HIRAGANA LETTER DE][4f5c][696d][HIRAGANA LETTER GA][HIRAGANA LETTER DE][HIRAGANA LETTER KI][HIRAGANA LETTER RU][HIRAGANA LETTER YO][HIRAGANA LETTER U][HIRAGANA LETTER NI][IDEOGRAPHIC COMMA]

В состав архива входит также скрипт n7t328IIpnwd_lynx.sh, который дампит текст со страницы по ссылке в KOI8-R (UTF-8 -> UTF-32 -> KOI8-R) через lynx.

>>> Скачать (2257 байт)

★★★★★

Проверено: Shaman007 ()
Последнее исправление: sudopacman (всего исправлений: 3)

Да мой пароль от ЛОРа менее кртптоустойчив чем название этой программы

KennyMinigun ★★★★★
()
Ответ на: комментарий от saahriktu

Зачем прыгать с кодировки на кодировку? А если потом появится ещё какая-нибудь VUG-256, то все с радостью на неё перепрыгнут и переконвертируют свои коллекции текстовых файлов?

Автор конвертёра текстовых файлов с одной кодировки в другую рассказывает о ненужности прыжков между кодировками с переконвертированием текстовых файлов, ЧТД.

Не проще ли выбрать кодировку один раз в жизни?

Кодировка как жена — на всю жизнь всего одна!

h578b1bde ★☆
()
Последнее исправление: h578b1bde (всего исправлений: 2)
Ответ на: комментарий от saahriktu

Я говорю о том, что в случае задействования WM приходится рулить __одновременно__ всеми слоями:

Не приходится: screen не нужен вообще, вместо vim'а — gvim, а настроить горячие клавиши в lilyterm и openbox так, чтобы они не пересекались — плевое дело. А вот в vim'е внутри screen'а тебе придется жать ^A a вместо ^a, чтобы инкрементировать число под курсором.

dexpl ★★★★★
()

Нужно и полезно! Посоветуйте проводную ноду Fido в районе Новосибирска.

ZenitharChampion ★★★★★
()

Каким образом можно вспомнить эту абракадабру через год, если она вдруг остро понадобится? Нужно учить специальные мнемонические приёмы, повторять название на ночь, класть бумажку с названием под подушку? Это точно не манифест шизофрении? Что именно помешало назвать утилиту utf-32_to_koi8-r_dump?

Jameson ★★★★★
()
Последнее исправление: Jameson (всего исправлений: 1)
Ответ на: комментарий от h578b1bde

Автор конвертёра текстовых файлов с одной кодировки в другую рассказывает о ненужности прыжков между кодировками с переконвертированием текстовых файлов

Эти слова о прыжках между локалями. __Уже имеющееся__ перекодировать в нечто отличное от единожды выбранной локали нет смысла. А вот __при получении__ __чтобы всё имеющееся локально было в кодировке локали__ - есть. Но, конечно, бывают исключения, которые чаще всего касаются того, что выходит за пределы локальной машины - если сервер в интернете ожидает текст в UTF-8, то с этим ничего не поделать - это же не локалхост. Но, локальных файлов это не касается. Также могут быть разные сюрпризы со специализированными конверторами. Например, ffmpeg умеет конвертировать формат субтитров SRT в ASS (а ASS в plaintext только с самими диалогами дампить удобнее; чтобы потом читать без просмотра видеоряда), но при этом ожидает на входе UTF-8 без альтернатив. Однако, в какой-нибудь цепочке «cp1251 -> UTF-8 -> KOI8-R» разного рода UTF-8 - это всего лишь промежуточные данные, средство получения данных в KOI8-R с которой прыгать никто и не собирался. Так можно копить кучу текстов в KOI8-R. Всё конвертируя в неё и создавая своё сразу в ней. Чтобы на ней сидеть и никуда не прыгать.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от Jameson

Я не знаю как Вы систематизируете информацию вообще. Если Вы не сможете вспомнить даже это, то сколько всего другого Вами забывается напрочь...

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от StReLoK

Нормальный человек не будет закапывать локаль только потому, что она перестала быть модной и молодёжной. Вот если он, бедный, мучался с локалью, мучался,... А тут внезапно появилась новая локаль, которая решает все его проблемы - это другое дело. Но, это не мой случай. Мне и с локалью KOI8-R хорошо.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от StReLoK

Всё и так работало больше чем 10 лет. Это просто дополнительный инструмент для ещё большего удобства. И без него прекрасно, но с ним ещё лучше.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от saahriktu

Ты не поверишь. Многие действительно мучались. Особенно те, кому приходится иметь дело с тремя и более языками.

te111011010
()
Ответ на: комментарий от saahriktu

После ядерной консоли иксы поражают тормозами

А как насчёт фреймбуферных юзерспейсных эмуляторов терминала?

x3al ★★★★★
()

п║п╬я│я┌п╬я▐п╩я│я▐ я─п╣п╩п╦пЇ n7t328IIpnwd 0.3 — я┐я┌п╦п╩п╦я┌я▀ пЄп╩я▐ lossless пЄп╟п╪п©п╟ UTF-32 пЄп╟пҐпҐя▀я┘ п╡ KOI8-R/ASCII.

п²п╟пЇп╡п╟пҐп╦п╣ я┐я┌п╦п╩п╦я┌я▀ я▐п╡п╩я▐п╣я┌я│я▐ п©я─п╬п╦пЇп╡п╬пЄпҐя▀п╪ п╬я┌ «utf-32 to koi8-r dump», пЁпЄп╣ «n7t» п╦ «pnwd» я▐п╡п╩я▐я▌я┌я│я▐ пЇп╣я─п╨п╟п╩я▄пҐя▀п╪п╦ п╬я┌я─п╟пІп╣пҐп╦я▐п╪п╦ (п©п╬ п╡п╣я─я┌п╦п╨п╟п╩п╦) «utf» п╦ «dump» я│п╬п╬я┌п╡п╣я┌я│я┌п╡п╣пҐпҐп╬. пёя┌п╦п╩п╦я┌п╟ я▐п╡п╩я▐п╣я┌я│я▐ п╠п╬п╩п╣п╣ п╪п╬я┴пҐя▀п╪ п╦ п╠п╬п╩п╣п╣ я│п╬п╡я─п╣п╪п╣пҐпҐя▀п╪ п╟пҐп╟п╩п╬пЁп╬п╪ я┌п╟п╨п╦я┘ я┐я┌п╦п╩п╦я┌, п╨п╟п╨ utfinfo.pl п╦ uniname п╦пЇ пҐп╟п╠п╬я─п╟ я┐я┌п╦п╩п╦я┌ uniutils. п▓ я┤п╦я│п╩п╬ п╬я│п╬п╠п╣пҐпҐп╬я│я┌п╣п╧ я┐я┌п╦п╩п╦я┌я▀ п╡я┘п╬пЄя▐я┌ п╬я┌п╨п╩я▌я┤п╟п╣п╪п╬я│я┌я▄ я─п╣пІп╦п╪п╟ «п╬пЄп╦пҐ я│п╦п╪п╡п╬п╩ пҐп╟ я│я┌я─п╬п╨я┐» (п©п╬ я┐п╪п╬п╩я┤п╟пҐп╦я▌ п╡я▀п╨п╩я▌я┤п╣пҐ), п╨п╬я┌п╬я─я▀п╧ я▐п╡п╩я▐п╣я┌я│я▐ п╣пЄп╦пҐя│я┌п╡п╣пҐпҐя▀п╪ я─п╟п╠п╬я┤п╦п╪ я─п╣пІп╦п╪п╬п╪ пЄп╩я▐ п©п╣я─п╣я┤п╦я│п╩п╣пҐпҐя▀я┘ я┐я┌п╦п╩п╦я┌, п╟ я┌п╟п╨пІп╣ пҐп╟п╩п╦я┤п╦п╣ п╬п╠я▒я─я┌п╨п╦ KOI8-R, п╨п╬я┌п╬я─п╟я▐ п©п╬пЇп╡п╬п╩я▐п╣я┌ пЄп╟п╪п©п╦я┌я▄ я│п╦п╪п╡п╬п╩я▀ п╦пЇ я│п╬я│я┌п╟п╡п╟ 2-п╧ п©п╬п╩п╬п╡п╦пҐя▀ п╨п╬пЄп╬п╡п╬п╧ я┌п╟п╠п╩п╦я├я▀ KOI8-R п╨п╟п╨ п╬пҐп╦ п╣я│я┌я▄, п╡ я│п╬п╬я┌п╡п╣я┌я│я┌п╡я┐я▌я┴п╦я┘ п╨п╬пЄп╟я┘ KOI8-R (п©п╬ я┐п╪п╬п╩я┤п╟пҐп╦я▌ п╡п╨п╩я▌я┤п╣пҐп╟). п÷я─п╦ п╬я┌п╨п╩я▌я┤п╣пҐп╦п╦ п╬п╠я▒я─я┌п╨п╦ KOI8-R п╨п╟п╨ п╬пҐп╦ п╣я│я┌я▄ пЄп╟п╪п©я▐я┌я│я▐ я┌п╬п╩я▄п╨п╬ я│п╦п╪п╡п╬п╩я▀ п╦пЇ я│п╬я│я┌п╟п╡п╟ ASCII.

п■п╩я▐ п©п╬п╩я┐я┤п╣пҐп╦я▐ п╦пҐя└п╬я─п╪п╟я├п╦п╦ п╬ пҐп╟пЇп╡п╟пҐп╦я▐я┘ я│п╦п╪п╡п╬п╩п╬п╡ п╝пҐп╦п╨п╬пЄп╟ я┐я┌п╦п╩п╦я┌п╟ п╦я│п©п╬п╩я▄пЇя┐п╣я┌ п╠п╦п╠п╩п╦п╬я┌п╣п╨я┐ libunistring, п╨п╬я┌п╬я─п╟я▐ я▐п╡п╩я▐п╣я┌я│я▐ я┤я┐я┌я▄ п╩п╦ пҐп╣ п╣пЄп╦пҐя│я┌п╡п╣пҐпҐя▀п╪ я│п╬п╡я─п╣п╪п╣пҐпҐя▀п╪ я─п╣я┬п╣пҐп╦п╣п╪. utfinfo.pl п╦я│п©п╬п╩я▄пЇя┐п╣я┌ п╪п╬пЄя┐п╩я▄ CharName.pm п╦пЇ я│п╬я│я┌п╟п╡п╟ Unicode-String, п╨п╬я┌п╬я─я▀п╧ пҐп╣ я│п╬пЄп╣я─пІп╦я┌ п╦пҐя└п╬я─п╪п╟я├п╦я▌ п╬ я─я▐пЄп╣ пҐп╬п╡я▀я┘ я│п╦п╪п╡п╬п╩п╬п╡ п╦пЇ я│п╬я│я┌п╟п╡п╟ я▌пҐп╦п╨п╬пЄп╟, я│п╬п╬я┌п╡п╣я┌я│я┌п╡я┐п╣я┌ пЄп╟пҐпҐя▀п╪ п╬ я│я┌п╟пҐпЄп╟я─я┌п╣ пҐп╣ пҐп╬п╡п╣п╣ я┤п╣п╪ 2005 пЁ. uniname п╦я│п©п╬п╩я▄пЇя┐п╣я┌ я│п╬п╠я│я┌п╡п╣пҐпҐя┐я▌ я┌п╟п╠п╩п╦я├я┐ п╦ пҐп╣ п╬п╠пҐп╬п╡п╩я▐п╩п╟я│я▄ я│ 2009 пЁ.

чтд

anonymous
()
Ответ на: комментарий от te111011010

Юникод тоже для большего удобства.

Кому как.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от x3al

Я с такой скоростью не читаю. Так что, возможностей ядерной консоли мне выше крыши.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от saahriktu

Зачем Linux, если есть System V? Зачем вообще компьютер, если есть счёты и пишущая машинка?

te111011010
()
Ответ на: комментарий от dzidzitop

Да. Исправлю в следующей версии.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от dzidzitop

Ну, вот, собственно и версия 0.5 с парой новых опций: http://saahriktu.org/downloads/n7t328IIpnwd-0.5.tar.lz

Options:
-a - disable KOI8-R wrapper (ASCII only)
-1 - one char per line mode
-s - square brackets not as is mode
-be - UTF-32BE
-le - UTF-32LE
-h - help
Начиная с этой версии утилита по умолчанию пытается угадать порядок байт в кодировке. При явном указании -be/-le утилита угадывать не будет, а сразу начнёт дампить с указанным порядком байт.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от saahriktu

__Уже имеющееся__ перекодировать в нечто отличное от единожды выбранной локали нет смысла.

Конечно нет смысла, в мой текстовый редактор давным-давно завезли поддержку различных кодировок.

А вот __при получении__ __чтобы всё имеющееся локально было в кодировке локали__ - есть.

Зачем? В твой редактор поддержку кодировок не завезли?

Но, конечно, бывают исключения

Судя по твоим постам, в т.ч. и этом, ты живёшь в мире исключений.

h578b1bde ★☆
()

ъЫаk@кwКП@фмЮНЮ@лмЮПЫЮ@тwкЛНПлмкПкЮпwмрлаK

baragoon
()
Ответ на: комментарий от h578b1bde

Затем, чтобы grep'ать, читать less'ом без дополнительных перекодировок каждый раз,... и т.д. Удобнее когда кодировка коллекции текстовых файлов соответствует локали.

saahriktu ★★★★★
() автор топика

Юникод, а в особенности кодировка с переменной длиной символа utf-8 – это колоссальный шаг назад, в неправильном направлении. В сторону усложнения, а не упрощения, как должно быть.

Deleted
()

Кроме того, utf-8 выполняет и социальную функцию: она однобайтовая для жителей первого мира, и трёхбайтовая – для третьего.

Deleted
()
Ответ на: комментарий от Deleted

Кроме того, utf-8 выполняет и социальную функцию: она однобайтовая для жителей первого мира, и трёхбайтовая – для третьего.

А испанцы, немцы и русские — это жители какого мира?

h578b1bde ★☆
()
Ответ на: комментарий от Deleted

Юникод, а в особенности кодировка с переменной длиной символа utf-8 – это колоссальный шаг назад, в неправильном направлении. В сторону усложнения, а не упрощения, как должно быть.

KOI-7 наше всё?

h578b1bde ★☆
()
Ответ на: комментарий от Deleted

Кириллица и греческий занимают по два байта на символ.

Ок. А испанцы с немцами — они в первом мире или во втором?

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

У немцев вроде латиница, но с отдельными двухбайтовыми буквами типа ß, ü. Как у испанцев не знаю.

Deleted
()
Ответ на: комментарий от Deleted

переменной длиной символа

Будто что-то плохое с учётом того, что сейчас понимают под символом.

x3al ★★★★★
()

сайт классный, олдскульный. Ностальгия по таким)

Deleted
()
Ответ на: комментарий от h578b1bde

А испанцы, немцы и русские — это жители какого мира?

Европа, планета Земля, гомо сапиенс. :)

anonymous
()
Ответ на: комментарий от h578b1bde

В таком случае перекодирование всего один раз выглядит гораздо проще

Так я и перекодирую всего один раз. В KOI8-R. И не страдаю.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от x3al

с учётом того, что сейчас понимают под символом.

Не все одобряют современные определения. Мне ближе определения 30-ти летней давности, когда символ отождествляли с байтом и наоброт.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от te111011010

Вот поэтому у меня также есть проект 6-ти битной кодировки Cranium64, которая является надстройкой над KOI8-R и содержит поменьше символов, но больше чем традиционные 6-ти битные кодировки за счёт 2-х управляющих кодов - переключение регистра и РУС/ЛАТ. Как-нибудь надо будет допилить, да.

saahriktu ★★★★★
() автор топика
Ответ на: комментарий от saahriktu

Но ты упоминаешь гораздо чаще, чем все, и тогда, когда это не имеет никакого отношения к теме.

te111011010
()
Ответ на: комментарий от saahriktu

И это не костыль, а инструмент.

Юникод — это инструмент. А твоё поделие — костыль. Ибо коверкает текст. Вместо символов вставляет их названия на английском языке. Так можно и русские символы обозначать английским описанием и кричать, что ничего, кроме ascii, не нужно.

te111011010
()
Ответ на: комментарий от saahriktu

Зачем прыгать с кодировки на кодировку? А если потом появится ещё какая-нибудь VUG-256, то все с радостью на неё перепрыгнут и переконвертируют свои коллекции текстовых файлов? Не проще ли выбрать кодировку один раз в жизни?

У меня нет коллекции текстовых файлов. У многих тут тоже нет. И большинство не прыгало. Просто при установке дистрибутива был utf-8.

te111011010
()
Ответ на: комментарий от saahriktu

Однобайтные кодировки есть не для всех языков. И во многих есть комбинирующие codepoint'ы (например, знак ударения).

x3al ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.