Гениальная идея (Unicode и Base64)?
От: Shmj Ниоткуда  
Дата: 26.07.18 22:25
Оценка: +1 -2
Сейчас все больше и больше юзают Base64. Уже даже картинки вставляют в этом формате (см. первый попавшийся стиль: https://userstyles.org/styles/31267/global-dark-style-changes-everything-to-dark).

Так вот. А что если принудь консорциум Unicode ввести 2 символа:

1. Начало бинарного текста.
2. Конец бинарного текста.

И тогда при сохранении в текстовый файл или при передаче по сети — бинарные данные передавались бы как есть — без преобразования в Base64.

В примитивных текстовых редакторах преобразоывать в Base64, чтобы чел. мог редактировать как раньше. Но при сохранении, опять таки, вертать все взад. А в продвинутых редакторах отображать как BLOB с возможностью навести и отредактировать в любом формате, хоть в HEX хоть в BASE64 хоть файл вставить.

Гениально?

З.Ы.
Наверное, еще придется добавить симфол для экранирования символа 2. Или же убрать символ 2 а после символа 1 обязать указывать длину бинарного текста.
Отредактировано 26.07.2018 23:05 Shmj . Предыдущая версия .
Re: Гениальная идея (Unicode и Base64)?
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 26.07.18 22:45
Оценка: +2 :))) :)
Здравствуйте, Shmj, Вы писали:

S>Сейчас все больше и больше юзают Base64. Уже даже картинки вставляют в этом формате (см. первый попавшийся стиль: https://userstyles.org/styles/31267/global-dark-style-changes-everything-to-dark).


S>Так вот. А что если принудь консорциум Unicode ввести 2 символа:


Ну принудь, чо



S>Гениально?


Бес сомнения
Маньяк Робокряк колесит по городу
Re: Гениальная идея (Unicode и Base64)?
От: kov_serg Россия  
Дата: 26.07.18 23:14
Оценка: +1
Здравствуйте, Shmj, Вы писали:

S>Гениально?

Бабу вам надо завести, барин.

Hex и Base64 может быть набрана на клавиатуре,
а вот попробуйте однозначно воспроизвести unicode с распечатанного текста.

И зачем изобретать новый стандарт?
https://www.w3.org/Protocols/rfc1341/7_2_Multipart.html
Re[2]: Гениальная идея (Unicode и Base64)?
От: Shmj Ниоткуда  
Дата: 26.07.18 23:34
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>Hex и Base64 может быть набрана на клавиатуре,

_>а вот попробуйте однозначно воспроизвести unicode с распечатанного текста.

Я же написал — в примитивных редакторах отображать бинарный текст как Base64. Ну и добавить типа символ B> и <B или только один.

_>И зачем изобретать новый стандарт?

_>https://www.w3.org/Protocols/rfc1341/7_2_Multipart.html

Не оно.
Re: Гениальная идея (Unicode и Base64)?
От: Mumitroller Беларусь  
Дата: 27.07.18 05:54
Оценка: 1 (1)
Здравствуйте, Shmj, Вы писали:

S>И тогда при сохранении в текстовый файл или при передаче по сети — бинарные данные передавались бы как есть — без преобразования в Base64.


В Microsoft от такого подхода наоборот отказались для rtf (Rich Text Format). То есть в rtf всё ещё есть тег binN, и современный rich edit control в windows вполне нормально его читает, но при записи заменяет на какой-нибудь не бинарный аналог. Зато файл с не бинарными данными можно открывать и править в любом текстовом редакторе не опасаясь, что какая-нибудь замена пробелов на табуляции (или что-то подобное) всё поломает.

Mumitroller
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Re: Гениальная идея (Unicode и Base64)?
От: Sinclair Россия https://github.com/evilguest/
Дата: 27.07.18 08:05
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Гениально?

Эмм, а можно пояснить — зачем этот троллейбус из буханки?
Какую проблему решает это нововведение?
S>З.Ы.
S>Наверное, еще придется добавить симфол для экранирования символа 2. Или же убрать символ 2 а после символа 1 обязать указывать длину бинарного текста.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[2]: Гениальная идея (Unicode и Base64)?
От: Ops Россия  
Дата: 27.07.18 08:18
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>Hex и Base64 может быть набрана на клавиатуре,

_>а вот попробуйте однозначно воспроизвести unicode с распечатанного текста.

Бред. Ты и Base64 с распечатанного текста в уме не закодируешь. А если помнишь коды, или распечатка уже в них, то не проблема ввести что unicode©, что Base64™
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re: Гениальная идея (Unicode и Base64)?
От: Слава  
Дата: 27.07.18 08:51
Оценка: :))
Здравствуйте, Shmj, Вы писали:

S>Так вот. А что если принудь консорциум Unicode ввести 2 символа:


S>1. Начало бинарного текста.

S>2. Конец бинарного текста.

Я предлагаю сразу ввести ASN.1 в новый стандарт Unicode.
Re[2]: Гениальная идея (Unicode и Base64)?
От: Shmj Ниоткуда  
Дата: 27.07.18 09:08
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>>Гениально?

S>Эмм, а можно пояснить — зачем этот троллейбус из буханки?
S>Какую проблему решает это нововведение?

1. Текстовые файлы с элементами бинарных данных будут занимать меньше места.
2. Появится возможность в продвинутых редакторах более удобной работы с нечитаемыми человеком бинарными данными (отображать их в виде символа BLOB и добавить расширенные возможности для редактирования).
Re[3]: Гениальная идея (Unicode и Base64)?
От: kov_serg Россия  
Дата: 27.07.18 09:42
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>Здравствуйте, kov_serg, Вы писали:


_>>Hex и Base64 может быть набрана на клавиатуре,

_>>а вот попробуйте однозначно воспроизвести unicode с распечатанного текста.

Ops>Бред. Ты и Base64 с распечатанного текста в уме не закодируешь. А если помнишь коды, или распечатка уже в них, то не проблема ввести что unicode©, что Base64™

Бред™. Попробуй русскую букву O отличить от латинской O или от греческой Ο или полуширинный пробел от пробела который нельзя переносить, не говоря уже о направления вывода текста и всяких модификаторах.
А в base64 вы 4 байтами однозначно кодируете 3 байта, при этом символы всё же можно различить визуально и набрать на обычной клавиатуре.
Re[3]: Гениальная идея (Unicode и Base64)?
От: kov_serg Россия  
Дата: 27.07.18 09:47
Оценка:
Здравствуйте, Shmj, Вы писали:

S>>Какую проблему решает это нововведение?


S>1. Текстовые файлы с элементами бинарных данных будут занимать меньше места.

Глупости. textfile.txt.gz занимает в 10 раз меньше места и не требует дополнительных нововведений.
и работать с ним легко zcat textfile.txt.gz | grep foobar | head
S>2. Появится возможность в продвинутых редакторах более удобной работы с нечитаемыми человеком бинарными данными (отображать их в виде символа BLOB и добавить расширенные возможности для редактирования).
А если редакторам понадобится оглавление, превью история изменений, мульти версионность, быстрая или частичная загрузка, стили, индексы для поиска и т.д, что тоже всё в юникод совать?
Re[4]: Гениальная идея (Unicode и Base64)?
От: Ops Россия  
Дата: 27.07.18 10:00
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>Бред™. Попробуй русскую букву O отличить от латинской O или от греческой Ο или полуширинный пробел от пробела который нельзя переносить, не говоря уже о направления вывода текста и всяких модификаторах.

_>А в base64 вы 4 байтами однозначно кодируете 3 байта, при этом символы всё же можно различить визуально и набрать на обычной клавиатуре.

Ты про бумагу начал. Если на бумаге простой текст, то ты в уме никуда его не закодируешь, и с переводом разноязычных букв у тебя будут те же проблемы и в base64. А если он на бумаге уже кодированный, то какая разница, какой вводить? У юникода разве что побольше знаков будет.
Не надо придумывать разные условия для разных кодировок.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[4]: Гениальная идея (Unicode и Base64)?
От: Shmj Ниоткуда  
Дата: 27.07.18 10:12
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>Глупости. textfile.txt.gz занимает в 10 раз меньше места и не требует дополнительных нововведений.

_>и работать с ним легко zcat textfile.txt.gz | grep foobar | head

Можно вообще ничего не делать — диски дешево стоят. Архивирование туда-обратно не всегда удобно, лучше не плодить сущности.

S>>2. Появится возможность в продвинутых редакторах более удобной работы с нечитаемыми человеком бинарными данными (отображать их в виде символа BLOB и добавить расширенные возможности для редактирования).

_>А если редакторам понадобится оглавление, превью история изменений, мульти версионность, быстрая или частичная загрузка, стили, индексы для поиска и т.д, что тоже всё в юникод совать?

Речь же о человеко-машинно-читаемых форматах, как CSS, JSON, XML и пр.
Re[3]: Гениальная идея (Unicode и Base64)?
От: Sinclair Россия https://github.com/evilguest/
Дата: 27.07.18 10:15
Оценка:
Здравствуйте, Shmj, Вы писали:
S>1. Текстовые файлы с элементами бинарных данных будут занимать меньше места.
Попробуйте xml.zip — будете удивлены. Во-первых, меньше места будут занимать даже те XML, где нет никакого base64. Во-вторых, не нужно уговаривать ни Unicode Consortium, ни w3c, ни авторов редакторов для XML.
S>2. Появится возможность в продвинутых редакторах более удобной работы с нечитаемыми человеком бинарными данными (отображать их в виде символа BLOB и добавить расширенные возможности для редактирования).
Непонятно, откуда возьмутся расширенные возможности редактирования. Ведь редактор ничего не знает про эти данные — то ли там музыка, то ли видео, то ли PNG.
А если редактор — специализированный, то он и с base64 справится прекрасно.
Вот, есть, например, такой широко известный специализированный редактор XML — Microsoft Word. Он отлично редактирует и текстовые и бинарные данные.

Низкоуровневому редактору вроде visual studio удобнее работать с текстом — т.к. там я хотя бы могу сделать copy-paste общегражданскими средствами.
Ну, и не забываем про остальной тулчейн — например, XML-с-base64 отлично мёрджится стандартными средствами вроде TortoiseMerge и десятками других.
Для полубинарного формата придётся отказаться от этих инструментов.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[5]: Гениальная идея (Unicode и Base64)?
От: kov_serg Россия  
Дата: 27.07.18 11:01
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>Ты про бумагу начал.

base64 решает другие задачи. он кодирует бинарные данные печатными символами как и UUE
Ops>Если на бумаге простой текст, то ты в уме никуда его не закодируешь,
Причем тут "в уме" если надо в уме то hex или number sequence, assembler или яп ...
Ops> и с переводом разноязычных букв у тебя будут те же проблемы и в base64.
С какого бодунища? Там A-Za-z0-9 и еще 2 символа. Какие проблеммы? Нет контрольных сумм и таблиц востановления?
Не нравится intel hex еще есть

Ops> А если он на бумаге уже кодированный, то какая разница, какой вводить? У юникода разве что побольше знаков будет.

Именно невозможно однозначно юникодный текст ввести с клавиатуры.
Вот попробуйте выделить или скопировать кусок unicode текста или ввести такое с клавиатуры
cat abc.txt
a‮z‭b‮y‭c‮x‭d‮w‭e‮v‭f‮u‭g‮t‭h‮s‭i‮r‭j‮q‭k‮p‭l‮o‭m‮n‭

А вот ввести его представление в utf8 кодированное base64 не вызывает проблем
cat abc.txt | base64
YeKArnrigK1i4oCueeKArWPigK544oCtZOKArnfigK1l4oCuduKArWbigK514oCtZ+KArnTigK1o
4oCuc+KArWnigK5y4oCtauKArnHigK1r4oCucOKArWzigK5v4oCtbeKArm7igK0K

Или пожатый вариант
cat abc.txt | gzip | base64
H4sIAEz7WlsAAw3FNQGAAAAAsJ+WuLtzUQhCkYTtWfjd7/XdT+TTsQ8n3p16c+bVuRcXnl16cuXR
tQc37t26c/ADJW7JjGkAAAA=

Ops>Не надо придумывать разные условия для разных кодировок.
Причем тут разные кодировки?
Отредактировано 27.07.2018 11:05 kov_serg . Предыдущая версия . Еще …
Отредактировано 27.07.2018 11:03 kov_serg . Предыдущая версия .
Re[6]: Гениальная идея (Unicode и Base64)?
От: Ops Россия  
Дата: 27.07.18 11:29
Оценка:
Здравствуйте, kov_serg, Вы писали:

Ops>> А если он на бумаге уже кодированный, то какая разница, какой вводить? У юникода разве что побольше знаков будет.

_>Именно невозможно однозначно юникодный текст ввести с клавиатуры.
\u0123\u0124\u0125
Такое же нечитаемое как base64, и легко вводимое
Не надо придумывать разные условия для разных кодировок. На бумаге оно будет или в виде нормального текста, или такое нечитаемое, для обоих случаев.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[7]: Гениальная идея (Unicode и Base64)?
От: kov_serg Россия  
Дата: 27.07.18 14:01
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>Здравствуйте, kov_serg, Вы писали:


Ops>>> А если он на бумаге уже кодированный, то какая разница, какой вводить? У юникода разве что побольше знаков будет.

_>>Именно невозможно однозначно юникодный текст ввести с клавиатуры.
Ops>\u0123\u0124\u0125
Ops>Такое же нечитаемое как base64, и легко вводимое
Не путайте мягкое с тёплым. unicode текст и варианты его кодирования.
unicode используется для отображения текстов разных народов с их за_бами и плюс кучи другого гавнища. Но он не предназначен для передачи данных 1 в 1.
В нём заложена лютая неоднозначность.
Ops>Не надо придумывать разные условия для разных кодировок. На бумаге оно будет или в виде нормального текста, или такое нечитаемое, для обоих случаев.
Вы видимо думаете о чем-то своём. Я говорю про то что unicode текст не всегда можно даже выделить и скопировать 1 в 1 из одного редактора в другой, не то что набрать с клавиатуры смотря на изображения этого текста.
Например символ U+0419 (Й) можно записать как U+0418 + U+0306 ( Й ).
\u0123 — это такой же юникод, как 0x123 и &#291; и %01%23 или U+xxxxxx это просто варианты его кодирования когда отображать символы юникодом бессмысленно или не возможно.
Отредактировано 27.07.2018 14:03 kov_serg . Предыдущая версия .
Re[8]: Гениальная идея (Unicode и Base64)?
От: Ops Россия  
Дата: 27.07.18 14:17
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>Вы видимо думаете о чем-то своём. Я говорю про то что unicode текст не всегда можно даже выделить и скопировать 1 в 1 из одного редактора в другой, не то что набрать с клавиатуры смотря на изображения этого текста.


В Base64 точно так же невозможно для символов не из ASCII — нужна информация о кодировке, которой он сам не содержит.

_>Например символ U+0419 (Й) можно записать как U+0418 + U+0306 ( Й ).

_>\u0123 — это такой же юникод, как 0x123 и &#291; и %01%23 или U+xxxxxx это просто варианты его кодирования когда отображать символы юникодом бессмысленно или не возможно.

Так Base64 — это тоже способ представления.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[9]: Гениальная идея (Unicode и Base64)?
От: kov_serg Россия  
Дата: 27.07.18 14:33
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>В Base64 точно так же невозможно для символов не из ASCII — нужна информация о кодировке, которой он сам не содержит.

??? Накой. base64 представляет бинарные данные (любые бинарнае данные хоть видео хоть текст хоть exe-шник) в виде печатных ASCII символов A-Za-z0-9 и еще 2х типа + /, так чтоб их потом можно было отправить email, через чат или напечатать на бумаге, перепечатать на пишущей машинке под диктовку по телефону и отправить почтой россии на оленях, что бы потом набрать с ручками и преобразовать обратно в бинарный файл.

_>>Например символ U+0419 (Й) можно записать как U+0418 + U+0306 ( Й ).

_>>\u0123 — это такой же юникод, как 0x123 и &#291; и %01%23 или U+xxxxxx это просто варианты его кодирования когда отображать символы юникодом бессмысленно или не возможно.
Ops>Так Base64 — это тоже способ представления.
Нет это способ кодирования бинарных данных.
Re[10]: Гениальная идея (Unicode и Base64)?
От: Ops Россия  
Дата: 27.07.18 15:06
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>??? Накой. base64 представляет бинарные данные (любые бинарнае данные хоть видео хоть текст хоть exe-шник) в виде печатных ASCII символов A-Za-z0-9 и еще 2х типа + /, так чтоб их потом можно было отправить email, через чат или напечатать на бумаге, перепечатать на пишущей машинке под диктовку по телефону и отправить почтой россии на оленях, что бы потом набрать с ручками и преобразовать обратно в бинарный файл.


Кто мешает сделать то же самое с юникодом? Распечатать в шестнадцатиричном представлении и возить на оленях? А на месте вбить, и распечатать уже то, что он описывает?
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.