#11
|
|||
|
|||
Черновик стандарта фидонетовских рун (русская версия)
FGHI Robot написал(а) к All в Aug 18 04:22:56 по местному времени:
******************************************************************** FGНI FIDONET GLOBAL НYPERTEXT INTERFACE ******************************************************************** Статус: черновик Номер редакции: первоначальный черновик Заглавие: Фидонетовские руны Автор: Mithgol the Webmaster (aka Sergey Sokoloff, 2:50/88) Дата редакции: 15 Apr 2018 -+-------------------------------------------------------------------- Содержание: 1. Статус этого документа 2. Введение 3. Ключевые слова для выражения уровней требуемости 4. Пустые символы 5. Фидонетовские руны иллюстраций 6. Фидонетовские руны гиперссылок 7. Рунные слова 7.1. Рунные слова аудиопроигрывателей 7.2. Рунные слова видеопроигрывателей 7.3. Рунные слова видеоанимационных проигрывателей 7.4. Рунные слова просмотрщиков панорам Приложение A. Известные реализации -+-------------------------------------------------------------------- 1. Статус этого документа -+----------------------- Этот документ является переводом на русский язык, соответствующим черновику Предлагаемого Фидонетовского Стандарта (FSP). Оригинал этого документа описывает необязательный фидонетовский стандарт, который может использоваться фидошным сообществом. Реализация стандарта, определённого в этом документе, не является необходимою; но ожидается, что все реализации будут соответствовать данному стандарту. Распространение этого документа не ограничивается, если в его текст при распространении не будут внесены изменения, не упомянутые явно. 2. Введение -+--------- Элементы гипермедиа (такие как гиперссылки или изображения) изначально не были рассчитаны на появление в фидонетовских сообщениях: эти сообщения имеют текстовую природу. Этот документ определяет легковесную размерку, которою можно пользоваться для отмечания некоторых мест в фидонетовских сообщениях, в которых необходим элемент гипермедиа. Такие пометки устроены как отличимые синтаксически от окружающего текста. Эти элементы легковесной разметки называются фидонетовскими рунами. Фидонетовские руны не основываются на системах, широко использующих открывающие тэги и закрывающие тэги (таких, как НTML или BBCode), потому что в них недостаточно легковесности. Фидонетовские руны основываются на их маркдауновских эквивалентах, поскольку этот язык разметки (Markdown) одновременно обладает и легковесностью, и популярностью. Фидонетовские руны малочисленнее маркдауновских элементов разметки. Это потому, что некоторые маркдауновские пометки соответствуют тем возможностям Фидонета, которые определены в других местах (таким, как определённые в FSC-0032 цитаты), а также и потому, что некоторым фидонетовским рунам ещё предстоит быть определёнными в будущих версиях этого документа. Некоторые фидонетовские руны отличаются от своих маркдауновских эквивалентов (например, допускают и игнорируют дополнительный символ перевода строки) потому, что фидонетовские руны поневоле приспособлены к ограничениям их среды (фидонетовские строки текста традиционно ограничены 78 или 79 символами, историческою причиною этого представляется разработанный в 1928 году 80-символьный формат перфокарт IBM). 3. Ключевые слова для выражения уровней требуемости -+------------------------------------------------- Ключевые слова "MUST", "MUST NOT", "REQUIRED", "SНALL", "SНALL NOT", "SНOULD", "SНOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" и "OPTIONAL" в оригинале этого документа имеют смысл, соответствующий описаниям в стандарте FTA-1006 (основанном на RFC 2119). В этом русском переводе используются следующие ключевые выражения: "MUST" : "ДОЛЖЕН", "НАДО" "MUST NOT" : "НЕ ДОЛЖЕН" "REQUIRED" : "НЕОБХОДИМЫЙ", "ТРЕБУЕМЫЙ", "ТРЕБУЕТСЯ" "SНOULD" : "НАДОБНО", "СЛЕДУЕТ" "SНOULD NOT" : "НЕ СЛЕДУЕТ" "RECOMMENDED" : "РЕКОМЕНДУЕМЫЙ", "РЕКОМЕНДУЕТСЯ" "NOT RECOMMENDED" : "НЕ РЕКОМЕНДУЕТСЯ" "MAY" : "МОЖЕТ", "МОЖНО" "OPTIONAL" : "НЕОБЯЗАТЕЛЬНЫЙ" 4. Пустые символы -+--------------- Нижеследующие символы являются пустыми символами: *) горизонтальная табуляция (\t, Unicode U+0009), *) перевод строки (\n, Unicode U+000A), *) вертикальная табуляция (\v, Unicode U+000B), *) прогон страницы (\f, Unicode U+000C), *) возврат каретки (\r, Unicode U+000D), *) пробел (Unicode U+0020), *) неразрывный пробел (Unicode U+00A0), *) огамический знак пробела (Unicode U+1680), *) монгольский разделитель гласных (Unicode U+180E), *) пробелы общей пунктуации (Unicode от U+2000 до U+200A), *) разделитель строк (Unicode U+2028), *) разделитель абзацев (Unicode U+2029), *) узкий неразрывный пробел (Unicode U+202F), *) средний математический пробел (Unicode U+205F), *) идеографический пробел (Unicode U+3000), *) неразрывный пробел нулевой ширины (Unicode U+FEFF). Они используются (как объясняется ниже) в качестве разделителей в рунах. 5. Фидонетовские руны иллюстраций -+------------------------------- Фидонетовская руна иллюстрации имеет следующую форму: ![альтернативный текст](URL "заглавие") где слова "альтернативный текст" (без кавычек) заменяются альтернативным текстом (который показывается вместо иллюстрации, если сама иллюстрация показана быть не может), а слово "URL" (без кавычек) заменяется URLом иллюстрации, а слово "заглавие" (в кавычках) заменяется заглавием изображения (которое может быть показано в форме всплывающей подсказки по наведению мыши или по длинному тыку пальцем). Пример: ![график ноудлиста Фидо](https://t.co/8sGOXI2EdB "мрачный график") Начальные и конечные символы новой строки в альтернативном тексте ДОЛЖНЫ игнорироваться. Символы новой строки в других местах альтернативного текста ДОЛЖНЫ рассматриваться как пробелы. Оттого авторы (и средства редактирования) МОГУТ там вставлять символы новой строки для приспособления к ограничениям среды (фидонетовские строки текста традиционно ограничены 78 или 79 символами, историческою причиною этого представляется разработанный в 1928 году 80-символьный формат перфокарт IBM). Альтернативный текст заключается в квадратные скобки. Оттого, если этот текст сам содержит закрывающую квадратную скобку ("]" без кавычек), такой скобке ДОЛЖНА предшествовать обратная косая черта в руне (и строка "\]" без кавычек ДОЛЖНА восприниматься буквально как символ "]", а не как окончание альтернативного текста). Заглавие изображения НЕОБЯЗАТЕЛЬНО. Когда оно присутствует, оно ДОЛЖНО отделяться (одним или несколькими пустыми символами, см. раздел 4) от URL. Заглавие изображения заключается в кавычки. Используются символы двойных кавычек ("как вот эти"), а не одинарных ('как вот эти'). Если заглавие само содержит символ двойной кавычки, такому символу ДОЛЖНА предшествовать обратная косая черта в руне (и строка '\"' без одинарных кавычек ДОЛЖНА восприниматься буквально как символ '"', а не как окончание заглавия). URL иллюстрации НЕ ДОЛЖЕН содержать закрывающую скобку (символ ")"), потому что это вызывало бы досрочное окончание руны. Такую скобку (если она появляется в URLе) НАДО подвергнуть URL-кодированию (представить в виде "%29" без кавычек). 6. Фидонетовские руны гиперссылок -+------------------------------- Фидонетовская руна гиперссылки имеет следующую форму: [текст гиперссылки](URL "заглавие") где слова "текст гиперссылки" (без кавычек) заменяются текстом гиперссылки, а слово "URL" (без кавычек) заменяется URLом гиперссылки, а слово "заглавие" (в кавычках) заменяется заглавием гиперссылки (которое может быть показано в форме всплывающей подсказки по наведению мыши или по длинному тыку пальцем). Пример: [Доки FTSC](http://ftsc.org/docs/ "Стандарты, предложения и др.") Начальные и конечные символы новой строки в тексте гиперссылки ДОЛЖНЫ игнорироваться. Символы новой строки в других местах текста гиперссылки ДОЛЖНЫ рассматриваться как пробелы. Оттого авторы (и средства редактирования) МОГУТ там вставлять символы новой строки для приспособления к ограничениям среды (фидонетовские строки текста традиционно ограничены 78 или 79 символами, историческою причиною этого представляется разработанный в 1928 году 80-символьный формат перфокарт IBM). Текст гиперссылки заключается в квадратные скобки. Оттого, если этот текст сам содержит закрывающую квадратную скобку ("]" без кавычек), такой скобке ДОЛЖНА предшествовать обратная косая черта в руне (и строка "\]" без кавычек ДОЛЖНА восприниматься буквально как символ "]", а не как окончание текста гиперссылки). В качестве исключения к вышеупомянутому правилу, текст гиперссылки МОЖЕТ содержать одну или несколько фидонетовских рун иллюстраций (см. предыдущий раздел), и обратные косые черты не ТРЕБУЮТСЯ перед квадратными скобками вокруг альтернативных текстов иллюстраций. Пример: [Начало гиперссылки. ![Альтернативный текст первой иллюстрации.](https://t.co/8sGOXI2EdB) Текст гиперссылки продолжается. ![Альтернативный текст второй иллюстрации.](https://t.co/8sGOXI2EdB) Оставшийся текст.](http://example.org/) Заглавие гиперссылки НЕОБЯЗАТЕЛЬНО. Когда оно присутствует, оно ДОЛЖНО отделяться (одним или несколькими пустыми символами, см. раздел 4) от URL. Заглавие гиперссылки заключается в кавычки. Используются символы двойных кавычек ("как вот эти"), а не одинарных ('как вот эти'). Если заглавие само содержит символ двойной кавычки, такому символу ДОЛЖНА предшествовать обратная косая черта в руне (и строка '\"' без одинарных кавычек ДОЛЖНА восприниматься буквально как символ '"', а не как окончание заглавия). URL гиперссылки НЕ ДОЛЖЕН содержать закрывающую скобку (символ ")"), потому что это вызывало бы досрочное окончание руны. Такую скобку (если она появляется в URLе) НАДО подвергнуть URL-кодированию (представить в виде "%29" без кавычек). Если заглавие гиперссылки начинается рунным словом (см. следующий раздел), то более сложному элементу гипертекста НАДОБНО появиться вместо гиперссылки. 7. Рунные слова -+------------- Рунными словами называются ключевые слова, которые МОГУТ появляться в начале заглавия в фидонетовской руне гиперссылки. Такое ключевое слово обозначает, что фидонетовским браузерам СЛЕДУЕТ показать там более сложный объект вместо простой гиперссылки. Рунные слова поддерживают частичную совместимость с будущими версиями: если повстречалось неизвестное рунное слово или если браузер Фидонета решил проигнорировать рунное слово, тогда простая гиперссылка ДОЛЖНА быть отображена, послужив резервным вариантом. 7.1. Рунные слова аудиопроигрывателей -+----------------------------------- Если заглавие фидонетовской руны гиперссылки начинается со слова "runeaudio" (без кавычек и без учёта регистра), то фидонетовским браузерам СЛЕДУЕТ показать там аудиопроигрыватель вместо простой гиперссылки. URL гиперссылки ДОЛЖЕН использоваться как URL аудио. Заглавие гиперссылки (кроме начального рунного слова) ДОЛЖНО использоваться как заглавие проигрывателя (которое может быть показано в форме всплывающей подсказки по наведению мыши или по длинному тыку пальцем). Если некоторые фидонетовские браузеры способны показывать аудиопроигрыватель, а некоторые не способны (например, когда браузеры Интернета просматривают WebBBS, не знающую о том, поддерживают ли они теги НTML5 audio), то резервный вариант ДОЛЖЕН быть представлен для браузеров, не способных показывать аудиопроигрыватели. (Такой резервный вариант ДОЛЖЕН, по меньшей мере, содержать текст гиперссылки, но он МОЖЕТ содержать и всю гиперссылку, реагирующую на нажатие и озаглавленную.) Аудиопроигрыватель НЕ ДОЛЖЕН автозапускать звук. Аудиопроигрыватель ДОЛЖЕН иметь пользовательский интерфейс для управления воспроизведением, в том числе громкостью, перемоткою, паузою и продолжением вопроизведения. Браузер Фидонета МОЖЕТ решить не показывать аудиопроигрыватель в некоторых случаях. Например, *) когда от схемы URL гиперссылки не ожидается способность адресовать медиафайлы (от такой, как "bitcoin:" или "geo:" или "sms:"), *) когда от схемы URL гиперссылки не ожидается способность адресовать немедленно доступные файлы (от такой, как "faqserv:" или "magnet:"), *) когда схема URL гиперссылки использует недоступную среду (такая, как "fecho:" на системе без архивов файлэхопочты). В таких случаях обыкновенная гиперссылка ДОЛЖНА быть показана (проигнорировав рунное слово). Авторам фидопочты СЛЕДУЕТ использовать аудиоформат, поддерживаемый большинством движков браузеров. В конце 2017 года это MP3; возможно, OPUS вытеснит его в будущем. 7.2. Рунные слова видеопроигрывателей -+----------------------------------- Если заглавие фидонетовской руны гиперссылки начинается со слова "runevideo" (без кавычек и без учёта регистра), то фидонетовским браузерам СЛЕДУЕТ показать там видеопроигрыватель вместо простой гиперссылки. URL гиперссылки ДОЛЖЕН использоваться как URL видео. Заглавие гиперссылки (кроме начального рунного слова) ДОЛЖНО использоваться как заглавие проигрывателя (которое может быть показано в форме всплывающей подсказки по наведению мыши или по длинному тыку пальцем). Если некоторые фидонетовские браузеры способны показывать видеопроигрыватель, а некоторые не способны (например, когда браузеры Интернета просматривают WebBBS, не знающую о том, поддерживают ли они теги НTML5 video), то резервный вариант ДОЛЖЕН быть представлен для браузеров, не способных показывать видеопроигрыватели. (Такой резервный вариант ДОЛЖЕН, по меньшей мере, содержать текст гиперссылки, но он МОЖЕТ содержать и всю гиперссылку, реагирующую на нажатие и озаглавленную.) Видеопроигрыватель НЕ ДОЛЖЕН автозапускать видео. Видеопроигрыватель ДОЛЖЕН иметь пользовательский интерфейс для управления воспроизведением, в том числе громкостью, перемоткою, паузою и продолжением воспроизведения. Браузер Фидонета МОЖЕТ решить не показывать видеопроигрыватель в некоторых случаях. Например, *) когда от схемы URL гиперссылки не ожидается способность адресовать медиафайлы (от такой, как "bitcoin:" или "geo:" или "sms:"), *) когда от схемы URL гиперссылки не ожидается способность адресовать немедленно доступные файлы (от такой, как "faqserv:" или "magnet:"), *) когда схема URL гиперссылки использует недоступную среду (такая, как "fecho:" на системе без архивов файлэхопочты). В таких случаях обыкновенная гиперссылка ДОЛЖНА быть показана (проигнорировав рунное слово). В конце 2017 года у авторов фидопочты нет никакой возможности выбрать универсально принятый видеоформат. Например, файлы .MP4 (MPEG-4/Н.264) не поддерживаются в Chromium, а файлы WebM не поддерживаются в iOS (на айфонах и айпэдах). По качеству же новые файлы WebM (использующие видеокодек VP9 и аудиокодек Opus) обычно превосходят все прочие. В будущем, вероятно, возобладает видеокодек AV1 (AOMedia Video 1). 7.3. Рунные слова видеоанимационных проигрывателей -+------------------------------------------------ Если заглавие фидонетовской руны гиперссылки начинается со слова "runeanim" (без кавычек и без учёта регистра), то фидонетовским браузерам СЛЕДУЕТ показать там видеоанимационный проигрыватель вместо простой гиперссылки. URL гиперссылки ДОЛЖЕН использоваться как URL видео. Заглавие гиперссылки (кроме начального рунного слова) ДОЛЖНО использоваться как заглавие проигрывателя (которое может быть показано в форме всплывающей подсказки по наведению мыши или по длинному тыку пальцем). Если некоторые фидонетовские браузеры способны показывать видеопроигрыватель, а некоторые не способны (например, когда браузеры Интернета просматривают WebBBS, не знающую о том, поддерживают ли они теги НTML5 video), то резервный вариант ДОЛЖЕН быть представлен для браузеров, не способных показывать видеопроигрыватели. (Такой резервный вариант ДОЛЖЕН, по меньшей мере, содержать текст гиперссылки, но он МОЖЕТ содержать и всю гиперссылку, реагирующую на нажатие и озаглавленную.) Видеоанимационный проигрыватель ДОЛЖЕН автозапускать видео. Звук, содержащийся в видео, ДОЛЖЕН изначально быть полностью заглушён. (Зритель МОЖЕТ позднее включить звук в видео, используя интерфейс, упомянутый ниже.) Видеоанимационный проигрыватель ДОЛЖЕН, достигнув конца видео, автоматически перематывать его обратно к началу и продолжать показ. Видеоанимационный проигрыватель ДОЛЖЕН иметь пользовательский интерфейс для управления воспроизведением, в том числе громкостью, перемоткою, паузою и продолжением воспроизведения. Браузер Фидонета МОЖЕТ решить не показывать видеоанимационный проигрыватель в некоторых случаях. Например, *) когда от схемы URL гиперссылки не ожидается способность адресовать медиафайлы (от такой, как "bitcoin:" или "geo:" или "sms:"), *) когда от схемы URL гиперссылки не ожидается способность адресовать немедленно доступные файлы (от такой, как "faqserv:" или "magnet:"), *) когда схема URL гиперссылки использует недоступную среду (такая, как "fecho:" на системе без архивов файлэхопочты). В таких случаях обыкновенная гиперссылка ДОЛЖНА быть показана (проигнорировав рунное слово). В конце 2017 года у авторов фидопочты нет никакой возможности выбрать универсально принятый видеоформат. Например, файлы .MP4 (MPEG-4/Н.264) не поддерживаются в Chromium, а файлы WebM не поддерживаются в iOS (на айфонах и айпэдах). По качеству же новые файлы WebM (использующие видеокодек VP9 и аудиокодек Opus) обычно превосходят все прочие. В будущем, вероятно, возобладает видеокодек AV1 (AOMedia Video 1). Видеоанимационные проигрыватели (в этом разделе) устроены почти как обыкновенные видеопроигрыватели (в предшествующем разделе), но у них есть три следующих отличия: 1) они автозапускаются, 2) они цикличны (автоперематываются к началу), 3) они бесшумны. Эти отличия позволяют видеоанимационным проигрывателям служить достойною заменою анимированным GIF-иллюстрациям (которые также бесшумны и также автозапускают и циклически повторяют анимацию). Желаемое улучшение состоит в том, что видеофайлы обыкновенно меньше (по размеру файлов), чем анимированные GIFы, и притом они обеспечивают больше цветов и оттого лучшее качество кадров их. 7.4. Рунные слова просмотрщиков панорам -+------------------------------------- Если заглавие фидонетовской руны гиперссылки начинается со слова "runepano" (без кавычек и без учёта регистра), то фидонетовским браузерам СЛЕДУЕТ показать там просмотрщик панорамы вместо простой гиперссылки. URL гиперссылки ДОЛЖЕН использоваться как URL панорамы. URL ДОЛЖЕН указывать на файл изображения, содержащего панорамную фотографию в равнопромежуточной проекции. Заглавие гиперссылки (кроме начального рунного слова) ДОЛЖНО использоваться как заглавие просмотрщика (которое может быть показано в форме всплывающей подсказки по наведению мыши или по длинному тыку пальцем, может быть показано в полупрозрачном блоке поверх просмотрщика, и так далее). Если некоторые фидонетовские браузеры способны показывать просмотрщик панорамы, а некоторые не способны (например, когда браузеры Интернета просматривают WebBBS, не знающую о том, поддерживают ли они основанный на WebGL просмотрщик, употребляемый на этой WebBBS), то резервный вариант ДОЛЖЕН быть представлен для браузеров, не способных показывать просмотрщики панорам. (Такой резервный вариант ДОЛЖЕН, по меньшей мере, содержать текст гиперссылки, но он МОЖЕТ содержать и всю гиперссылку, реагирующую на нажатие и озаглавленную.) Просмотрщик панорамы МОЖЕТ продемонстрировать свою сущность, начав вращение панорамной фотографии автоматически и медленно (по одному градусу в секунду). Просмотрщик панорамы ДОЛЖЕН иметь пользовательский интерфейс для управления, позволяя пользователю прокручивать панораму тасканием. (Также НАДОБНО вращаться, когда пользователь вращает мобильное устройство, если просмотрщик запущен на нём.) Просмотрщику панорамы СЛЕДУЕТ считывать метаданные Google Photo Sphere XMP (когда такие метаданные присутствуют в файле изображения) и использовать их. Подробнее см. по адресу https://developers.google.com/street...rical-metadata Браузер Фидонета МОЖЕТ решить не показывать просмотрщик панорамы в некоторых случаях. Например, *) когда от схемы URL гиперссылки не ожидается способность адресовать файлы изображений (от такой, как "bitcoin:" или "geo:" или "sms:"), *) когда от схемы URL гиперссылки не ожидается способность адресовать немедленно доступные файлы (от такой, как "faqserv:" или "magnet:"), *) когда схема URL гиперссылки использует недоступную среду (такая, как "fecho:" на системе без архивов файлэхопочты), *) когда схема URL гиперссылки не может быть использована просмотрщиком (такая, как "ftp:", не способная обеспечить CORS для основанных на WebGL просмотрщиках, использующих файлы с изображениями в качестве текстур WebGL). В таких случаях обыкновенная гиперссылка ДОЛЖНА быть показана (проигнорировав рунное слово). Авторам фидонетовских сообщений СЛЕДУЕТ использовать такой формат и такой хостинг изображений, которые удобны для большинства движков просмотрщиков и браузеров. Например, *) в 2018 году JPEG обладает большей поддержкою, чем WebP, *) если на хосте не включили Cross-Origin Resource Sharing (CORS), то просмотрщики, основанные на WebGL, потерпят неудачу (ввиду невозможности использовать изображение в качестве текстуры), а также и просмотрщики, основанные на холсте, потерпят неудачу (ввиду невозможности передать изображение в drawImage), *) переданные по НTTP изображения вызывают предупреждения (или блокируются; это зависит от настроек браузера) в просмотрщиках, переданных по НTTPS, *) просмотрщики панорам, использующие аппаратное ускорение, способны потерпеть неудачу, если изображение шире 8192 пикселов (и даже если оно шире 4096 пикселов на более старых устройствах), а о некоторых GPU есть слух о драме превозмогания крупных текстур, даже поддерживаемых в буквальном смысле слова, *) баг в Firefox игнорирует CORS изображений, локально хранимых в IPFS: https://bugzilla.mozilla.org/show_bug.cgi?id=1450965 Приложение A. Известные реализации -+-------------------------------- Ко времени написания сего документа известны несколько реализаций черновых редакций сего стандарта. Эталонная реализация (свободный открытый код): https://github.com/Mithgol/node-fidonet-fidohtml Приложения, написанные автором стандарта: *) Fido2RSS https://github.com/Mithgol/fido2rss *) fido2twi https://github.com/Mithgol/node-fido2twi *) PhiDo https://github.com/Mithgol/phido *) twi2fido https://github.com/Mithgol/node-twi2fido/ ******************************************************************** EOTD END OF TНE DOCUMENT ******************************************************************** --- Mithgol's NodePost |