LINUX.ORG.RU

7
Всего сообщений: 21

В июле этого года исполняется 3^3 лет стандарту KOI8-R

Сабж. Именно 3^3 лет назад, в июле 1993-его года, был создан RFC 1489.
За принятие RFC 1489 выступала Society of Unix User Groups (SUUG), поскольку кодировка KOI8-R уже была де-факто стандартом мира Unix на территории бывшего СССР.
Юникод уже существовал и RFC 1489 описывает соответствие кодов символов кодам уже принятого юникодного стандарта ISO 10646 для тех, кому юникод избыточен.
Через некоторое время (в мае 1999-го) и в glibc (версии 2.1.1) поддержка локали KOI8-R была добавлена не отдельной самодостаточной подсистемой, на поддержку которой нужны дополнительные силы и время, а как подмножество юникода (поддержка которого была добавлена только в glibc 2.0.1 (февраль 1997-го)).

Стандарт KOI8-R до RFC 1489 никогда не публиковался, но основан на нескольких опубликованных стандартах: ГОСТ 19768-74 (старый КОИ8), ISO 6937/8 (не зарегистрирован) и вариациях - INIS-cyrillic и ISO 5427.

Стандарт KOI8-U был принят позже - в RFC 2319 в апреле 1998-го года (в апреле было 22 года).

* * *

Ура! Поздравляю KOI8-R'щиков с очередным днём рождения стандарта самой лучшей кодировки!

Праздничная программа: gopher://sdf.org/9/users/saahriktu/filez/var/koi8r3r3.ha

 ,

saahriktu ()

Текстовые кодировки после контакта с внеземными цивилизациями

Лорчик,

после контакта с внеземными цивилизациями остро встанет вопрос кодировок. Добавить новые код поинты в сам стандарт юникода не проблема. А как быть с UTF8?

По стандарту изначально предел UTF8 был равен шести байтам на код поинт, из которых только тридцать один бит нёс информацию – остальные служебные. На сегодня её длина дополнительно ограничена четырьмя байтами, то есть двадцатью одним информационным битом. А ведь это всего два миллиона девяносто семь тысяч сто пятьдесят два возможных код поинта. Многие из которых уже аллоцированы.

Готовы ли мы принять это или нужно уже сейчас задумываться над созданием более гибкой кодировки? Сколько байт будут занимать код поинты кириллицы, символ рубля?

 , , , ,

d ()

создание файла с определенной кодировкой из консоли

чем можно такое сделать, желательно из консоли? ну примерно я себе так представляю:

#decode-programm -code utf-8 ./file_with_utf.txt 
#decode-programm -code koi8-r ./file_with_koi8.txt

[user]saahriktu[/user]

 , ,

chenbr0 ()

В июле этого года исполняется 26 лет стандарту KOI8-R

Сабж. Именно 26 лет назад, в июле 1993-его года, был создан RFC 1489.
За принятие RFC 1489 выступала Society of Unix User Groups (SUUG), поскольку кодировка KOI8-R уже была де-факто стандартом мира Unix на территории бывшего СССР.
Юникод уже существовал и RFC 1489 описывает соответствие кодов символов кодам уже принятого юникодного стандарта ISO 10646 для тех, кому юникод избыточен.

Стандарт KOI8-R до RFC 1489 никогда не публиковался, но основан на нескольких опубликованных стандартах: ГОСТ 19768-74 (старый КОИ8), ISO 6937/8 (не зарегистрирован) и вариациях - INIS-cyrillic и ISO 5427.

* * *

Ура! Поздравляю KOI8-R'щиков с очередным днём рождения стандарта самой лучшей кодировки!

 

saahriktu ()

INABA Hitoshi выпустил майское обновление (версии 1.15) Perl'ового модуля Char-KOI8R

Сабж. Модуль, напоминаю, полезен тем, кто пишет на 5-м Perl'е в кодировке KOI8-R.
Changelog: https://metacpan.org/source/INA/Char-KOI8R-1.15/Changes
Скачать: http://mirror.yandex.ru/mirrors/cpan/modules/by-authors/id/I/IN/INA/Char/KOI8...

 ,

saahriktu ()

Второапрельский ребус от saahriktu

Собственно, сабж:

(defvar datastr)
(defvar rstr)
(setq datastr "Сухофрукт спеет летом в 53 градуса тепла, а не зимой!")
(setq rstr (concatenate 'string (subseq datastr (floor (cos (/ pi 2))) (floor (sin (/ pi 2))))
 (subseq datastr (* 2 7 3) (+ (* 5 8) 3))
 (subseq datastr (+ (* 5 6) 9) (+ (* 6 6) 4))
 (subseq datastr (ceiling (expt 65536 0.0625)) (floor (expt 59049 0.1)))
 (subseq datastr (ceiling (expt 614656 0.25)) (- (* 5 7) 6))
 (subseq datastr (* 4 3 4) (- (* 5 7 2) (* 3 7)))
 (subseq datastr (floor (expt 282475249 0.1)) (/ 2664 333))
 (subseq datastr (ceiling (expt 64 0.5)) (/ 6993 777))
 (subseq datastr (- (* 6 7) 11) (floor (expt 1024 0.5)))
 (subseq datastr (+ (* 5 8) (- 10 4)) (- (* 8 8) (- 30 13)))
 (subseq datastr (/ 3075 123) (* 13 (floor (expt 4294967296 0.03125))))
 (subseq datastr (* 2 2 3 (- 19 17)) (* (/ 3885 777) (floor (expt 9765625 0.1))))
 (subseq datastr (+ (* 6 7) 1) (* 2 2 (floor (expt 25937424601 0.1))))
 (subseq datastr (+ (* 3 12) 1 1) (- (* 5 2 2 2) 1))
 (subseq datastr (+ (* 11 2 2) 1) (* 2 (- (* 5 5) 2)))
 (subseq datastr (* 5 7) (* (- 1001 999) (+ -7 10) (- -19 (* 2 -11)) (+ 19 -17)))
 (subseq datastr (floor (expt 380204032 0.2)) (ceiling (expt 7890481 0.25)))))
(format t "~s~%" rstr)
Собственно, суть ребуса: что выводит данная программа? %)

PS. Скрипт в KOI8-R (проверена работа в Steel Bank Common Lisp 1.5.1 при локали KOI8-R) можно скачать через gopher: gopher://sdf.org/9/users/saahriktu/filez/var/saahriktu20190402.lisp.lzma .

 ,

saahriktu ()

В новом irssi 1.2.0 поломали поле ввода для неюникодных локалей, но я пропатчил

Сабж. Набираемые сообщения и без патча отправляются нормально, но и при однобайтной локали выводятся в поле ввода юникодом, причём первый байт следующего символа затирает второй байт предыдущего. Т.е. ширина в один байт обрабатывается нормально, и всё остальное как положено. Там просто забыли добавить условие в одном месте.

Патч: http://saahriktu.org/downloads/patches/irssi-1.2.0-entry-nonutf.patch.lzma

Пробовал написать им в багзиллу, но она у них на гитхабе, а гитхаб мелкософт уже поломал. Раньше можно было туда писать из lynx'а, но теперь нельзя.

 , ,

saahriktu ()

Массовое обновление текстовых редакторов: ed 1.15, moe 1.10 и ed-1987 0.6

Сабж. Changelog ed'а и ссылка для скачивания: https://saahriktu.livejournal.com/26577.html

GNU moe - это, напоминаю, однобайтный (не для юникода) текстовый редактор. Changelog: https://fossies.org/linux/moe/NEWS
Скачать: ftp://ftp.gnu.org/gnu/moe/moe-1.10.tar.lz
Мой патч с которым moe начинает работать с любой однобайтной локалью, включая KOI8-R (а не только ISO-8859-15): http://saahriktu.org/downloads/patches/moe-1.10_any8bit.patch.lzma

А это багфиксное обновление моего форка (однобайтного) ed'а 1987-го года, к которому я прикрутил интерфейс на readline: gopher://sdf.org/9/users/saahriktu/filez/notbyme/ed-1987-0.6.tar.xz

Enjoy!

 , , ,

saahriktu ()

Обновлён скрипт для pip'а, который дружит его с KOI8-R

Сабж. Теперь в новом более универсальном формате.

Внезапно обнаружил, что в конце октября выходил Python 3.7.1. А в его составе pip 10.0.1. Значит, мои старые скрипты уже внезапно устарели.

Однако, я взял один из старых скриптов и допилил его до patch_any_pip_for_koi8-r-0.1.sh.

Напоминаю, некоторое время назад разработчики Python'а стали жёстко прописывать UTF-8 в pip, в результате чего при сборке и установке Python'а pip начал падать при попытке чтения дистрибутивной информации если локаль отличается от UTF-8. А мои скрипты устраняют эту проблему для локали KOI8-R.

Скачать: gopher://sdf.org/9/users/saahriktu/saahriktu.org/patches/patch_any_pip_for_koi8-r-0.1.sh.lzma (248 байт)

Скрипт запускается прямо в корне исходников.

 , ,

saahriktu ()

Вышел патч для Perl'овского модуля Text-Control 0.3 для однобайтных кодировок

Сабж. Модуль помогает форматировать текст так, чтобы контрольные символы заменялись либо точками, либо шестнадцатеричными кодами. Однако, автор писал его для ASCII, и символы с кодами \x7f-\xff из коробки считаются контрольными.

Результатом такого скрипта

use Text::Control;

print Text::Control::to_hex("KOI8-R рулит!") . "\n";
будет
KOI8-R \xd2\xd5\xcc\xc9\xd4!
А после применения патча:
KOI8-R рулит!

Скачать модуль можно здесь: https://cpan.metacpan.org/authors/id/F/FE/FELIPE/Text-Control-0.3.tar.gz
Скачать патч можно при помощи команды

curl gopher://sdf.org/9/users/saahriktu/saahriktu.org/patches/Text-Control-0.3-singlebyte.patch.lzma > Text-Control-0.3-singlebyte.patch.lzma

Enjoy!

 ,

saahriktu ()

Вышел True hackers' reader 0.23

Состоялся релиз нового просмотрщика текстов (минималистичного аналога less'а) в однобайтных кодировках True hackers' reader 0.23.

( читать дальше... )

Скачать (3177 байт)

Перемещено Shaman007 из opensource

 , , , ,

saahriktu ()

В июле этого года исполняется 25 лет стандарту KOI8-R

Сабж. Именно 25 лет назад, в июле 1993-его года, был создан RFC 1489.
За принятие RFC 1489 выступала Society of Unix User Groups (SUUG), поскольку кодировка KOI8-R уже была де-факто стандартом мира Unix на территории бывшего СССР.
Юникод уже существовал и RFC 1489 описывает соответствие кодов символов кодам уже принятого юникодного стандарта ISO 10646 для тех, кому юникод избыточен.
Через некоторое время (в мае 1999-го) и в glibc (версии 2.1.1) поддержка локали KOI8-R была добавлена не отдельной самодостаточной подсистемой, на поддержку которой нужны дополнительные силы и время, а как подмножество юникода (поддержка которого была добавлена только в glibc 2.0.1 (февраль 1997-го)).

Стандарт KOI8-R до RFC 1489 никогда не публиковался, но основан на нескольких опубликованных стандартах: ГОСТ 19768-74 (старый КОИ8), ISO 6937/8 (не зарегистрирован) и вариациях - INIS-cyrillic и ISO 5427.

Стандарт KOI8-U был принят позже - в RFC 2319 в апреле 1998-го года (в апреле было 20 лет).

* * *

Ура! Поздравляю других KOI8-R'щиков с юбилеем стандарта самой лучшей кодировки!

 ,

saahriktu ()

KOI7-H1 и Linux

saahriktu, ты не пробовал собирать софт с поддержкой локали KOI7-H1 ? https://ru.wikipedia.org/wiki/%D0%9A%D0%9E%D0%98-7#КОИ-7_Н1

Возможно ли такое?

 

pacify ()

DotNext 2018 Piter и KOI8-R

Только что наткнулся:

Уже завтра сотни .NET-специалистов соберутся в Санкт-Петербурге, чтобы два дня подряд слушать доклады и общаться. ... Какие доклады попали в открытую трансляцию? Полный список с описаниями — под катом, а перед ним отметим пару вещей. По итогам двух предыдущих DotNext Дилан Битти оказался явным зрительским фаворитом, поэтому откроет DotNext выступлением о том, как работают привычные нам технологии. А буквально вчера, когда доклад уже был полностью готов и согласован, Дилан открыл для себя тонкости кодировки KOI8-R и теперь увлечённо переделывает часть презентации!

http://www.pvsm.ru/konferentsiya/278401

The thing where you've got a talk pretty much locked in and then two days before you're giving it you discover something so interesting and relevant that you have no choice but to rework a section of the talk to incorporate it... Hello, KOI8-R encoding! 9:46 - 20 апр. 2018 г.

https://twitter.com/dylanbeattie/status/987371979475996672

 ,

saahriktu ()

pip внезапно обновился на середине дороги

Сабж. Как известно, в стабильных релизах Python'а pip версии 9.0.1. Однако, этот самый pip 9.0.1 теперь внезапно вопит о том, что последний pip версии 9.0.3 и нужно срочно обновляться. А последние pip'ы, как известно, заточены под UTF-8 (хлипкий парсер которого выпадает в осадок от «некорректных последовательностей байтов»).

Собрать стабильный релиз Python'а с локалью KOI8-R, напоминаю, можно перезаточив pip 9.0.1 под KOI8-R такими патчами как этот: http://saahriktu.org/downloads/patches/pip-9.0.1-koi8r-patch.sh .

После этого можно обновить pip, например, таким путём:

wget http://saahriktu.org/downloads/patches/make_pip-9.0.3koi8r-py2.py3-none-any.whl.sh
chmod +x make_pip-9.0.3koi8r-py2.py3-none-any.whl.sh
pip3 download pip
./make_pip-9.0.3koi8r-py2.py3-none-any.whl.sh
pip3 install ./pip-9.0.3koi8r-py2.py3-none-any.whl

Enjoy!

 , ,

saahriktu ()

Вышел radix50conv 0.1 для кодировки Radix-50 (в варианте PDP-11/VAX)

Сабж. radix50conv умеет конвертировать из ASCII/KOI8-R в Radix-50 PDP-11/VAX и обратно:

> echo "Привет всему ЛОРу!" | wc -c
19
> echo "Привет всему ЛОРу!" | radix50conv > tmp0
> hexdump -C tmp0
00000000  66 d9 90 9c b2 ab 21 5d  b0 ef 73 e4 b3 7c        |fы░°╡╚!]╟ОsДЁ||
0000000e
> cat tmp0 | radix50conv d
PRIWET.WSEMU.LORU....>
> du -b tmp0
14      tmp0
>
> du -b tomsawyer.*
279228  tomsawyer.radix50
418842  tomsawyer.txt
>
Radix-50, напоминаю, - это кодировка из 40-ка символов (включая пробел) (40 в десятичной системе счисления равно 50 в восьмеричной системе счисления - отсюда и название), которая в каждые 2 байта (одно слово) помещает очередные 3 символа.
https://en.wikipedia.org/wiki/DEC_Radix-50

Скачать: http://saahriktu.org/downloads/radix50conv-0.1.tar.lzma

 , , ,

saahriktu ()

Найдено очередно свидетельство koi8-r

https://imgur.com/n4W7GAl

Вообще удивительно Apple славится своей страстью к выпиливанию всякого legacy, а тут такая фоссилия.

 , ,

petrosyan ()

Новый релиз NodeJS модуля single-byte для конвертации текста между однобайтовыми кодировками

Вышел новый релиз NodeJS модуля single-byte 1.0.7. Он позволяет конвертировать тест между всеми существующими однобайтовыми кодировками, в том числе KOI8-R.

Ссылка на исходный код: https://github.com/mhagmajer/single-byte

 

kirk_johnson ()

Получил письмо в KOI8-R

Только что получил письмо в KOI8-R.

 

kirk_johnson ()

Отправить SMS'ку в KOI8-R через свой сайт? Max Zhuk спешит на помощь!

Max Zhuk пилит компонент для интеграции сервиса SMSC.RU API (smsc.ru) на сайт. В число возможностей входит выбор кодировки сообщения, среди которых есть KOI8-R и cp1251:

Свойства конструктора

     * логин клиента
     * пароль или MD5-хеш пароля в нижнем регистре
     * Массив с опциями:
          + protocol - использовать HTTPS протокол, любое значение кроме 'https' приравнивается использованию не
            защищенного протокола HTTP
          + charset - кодировка сообщения: utf-8 (по умолчанию), koi8-r или windows-1251
          + from - e-mail адрес отправителя
          + post - использовать метод POST, булев
          + debug - флаг отладки, булев
Проект располагается здесь: https://github.com/ZhukMax/smsc

 

saahriktu ()