Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.FTN.DEVELOP
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.FTN.DEVELOP с датами от 12 Jul 13 20:52:30 до 18 Oct 24 22:48:06, всего сообщений: 2735
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 26 из 2735 ===================================== RU.FTN.DEVELOP =
От   : Mithgol the Webmaster            2:5063/88          12 Jul 13 20:52:30
Кому : Sergey Poziturin                                    12 Jul 13 20:52:30
Тема : Сесть и всё самостоятельно сделать
FGHI : area://RU.FTN.DEVELOP?msgid=2:5063/88+51e03842
На   : area://RU.FTN.DEVELOP?msgid=2:5020/2141.3+fdf1f860
= Кодировка сообщения определена как: CP866 ==================================
==============================================================================
Так было 10:48 11 Jul 13 написано от Sergey Poziturin к Mithgol the Webmaster:

MtW>> Рассказываю: пишется новый софт (вон недавно под Android целых два
MtW>> различных редактора почты объявилися), но его авторы не особенно
MtW>> стремятся поддерживать мои замыслы гипертекстового Фидонета (даже
MtW>> в той части их, которая была мною подробно документирована).

SP> Я честно пытался, но не осилил с первых двух попыток написать regex,
SP> который бы распарсил ссылку fghi корректно в любом месте текста.
SP> Всему виной специальные символы, которые применяются в msgid фидошном.

Это настоящая драма. Даже если бы ты осилил эту попытку, то этот регэксп тебе
впоследствии было бы мучительно больно пополнять и отлаживать.

У меня есть альтернативная мысль: сперва хапнуть что-нибудь отдалённо
напоминающее FGHI-гиперссылку, для чего на языке регулярных выражений
достаточно ловить (netmail|areafix|echomail|area|fecho|faqserv|freq)
с последующим двоеточием и ненулевым количеством дальнейших символов.
Затем хапнутое бережно скармливать отдельному куску кода, который станет
смотреть, FGHI-гиперссылка это получилась или не FGHI-гиперссылка.

У меня на https://github.com/Mithgol/FGHI-URL/blob/master/index.js есть
кусок такого кода, но он, хотя и занимает больше трёхсот строк, на деле
даже ряд нововведений из FGHI URL 0.4 не распознаёт. Всё это потому, что
я несколько нет им не занимался. Вот когда я из него сделаю модернизированную
версию, оформленную в качестве модуля для Node.js и покрытую тестами ──
тогда он на что-нибудь да будет пригоден.

MtW>> Вижу один выход: всё самому сделать. Это долго, но это возможно.

SP> Это самое лучшее, что можно придумать.

Сегодня я сел, немного подумал, и у меня появился вот такой план:


Дерево технологий Фидонета
==========================

*) Формат адреса FGHI URL.

   Обеспечивает единую форму адресации типичных ресурсов и действий Фидонета.

   Нет необходимых более ранних технологий.

*) Парсер FGHI URL.

   Берёт адрес в формате FGHI URL, выдаёт объект с компонентами адреса.

   Необходим: формат адреса FGHI URL.

*) Текстовый конфигуратор.

   Средство чтения (анализа) простых текстовых конфигурационных файлов.

   В идеале умеет читать конфиги GoldED, HPT, BinkD.

   Нет необходимых более ранних технологий.

*) Обёртка JAM-баз.

   Код и API чтения и записи сообщений фидопочты, хранимых в JAM-базе.

   Нет необходимых более ранних технологий.

*) Графический фидобраузер начального уровня.

   Простейший фидобраузер. Связан ограничениями JAM-базы, так что не способен
   строить сложные структуры фидопочты. Связан ограничениями прежних тоссеров,
   так что не способен пользоваться итогами сложного анализа поступающей
   фидопочты. Конфигурацию хранит в текстовом файле.

   Обладает всеми качествами традиционного редактора фидопочты, в том числе
   может ходить по фидонетовским гиперссылкам (и создавать их) не хуже, чем
   GoldED-NSF. В отличие от этого последнего, может реализовывать некоторые
   новые возможности, не требующие прибегать к новым технологиям (аватары,
   Web-иллюстрирование, упрощённое развёртывание вложений), часть которых
   есть в ряде современных WebBBS и графических редакторов фидопочты.

   Поддерживает FGHI URL не полностью, потому что полная поддержка требует
   слишком долгой работы с традиционной базой хранения фидопочты.

   Необходимы: парсер FGHI URL, текстовый конфигуратор, обёртка JAM-баз.

*) Фидонетовские руны.

   Язык разметки гипертекста, но лёгкий, не мешающий читаемости. Принятая
   в традиционном Фидонете манера выделять текст знаками подчёркивания или
   звёздочками является примером такого языка. Он ни в коем случае не должен
   быть таким тяжеловесным и настолько мешающим чтению, как HTML. И этот язык
   должен быть не менее полон всякими возможностями, чем PHP Markdown Extra,
   но качествено легковесности в нём должно быть ещё сильнее. Обычный фидошник
   с традиционным редактором фидопочты (уровня GoldED-NSF) должен читать текст
   с фидонетовскими рунами с некоторым трудом, но не труднее, чем _такой_ или
  *такой* текст. (А если и чуть труднее, то очень, очень ненамного труднее.)

   Необходим (и апгрейдится): графический фидобраузер начального уровня (или
   более высокого уровня).

*) Формат SQLite-баз.

   Техническое описание формата (по крайней мере, таблиц), предназначенных
   для хранения фидопочты в базе данных SQLite.

   Формат должен обеспечивать, по меньшей мере, все достоинства баз JAM,
   а также ряд дополнительных возможностей (возможность поиска и сортировки
   по времени написания, по географической привязке, по ярлыкам, по объёму,
   а также раздельное хранение вложенных объектов, раздельное хранение
   оригиналов писем до их приведения к единой кодировке).

   Часть элементов фидопочты может храниться в файловой системе рядом с базой
   (подразумевается, что в базе хранятся тогда имена файлов и общий путь их).

   Нет необходимых более ранних технологий.

*) Обёртка SQLite-баз.

   Код и API чтения и записи сообщений фидопочты, хранимых в базе SQLite.

   Необходим: формат SQLite-баз.

*) Тоссер предобработки.

   Обладает всеми качествами традиционного тоссера, но дополнительно ведёт
   существенную предобработку поступающей фидопочты, вычленяя из неё и храня
   файловые вложения, географические сведения, подлинное время, а также
   преобразуя (с сохранением оригинала) фидопочту в необходимую кодировку.
   Итоги сохраняет в базу SQLite и в соседствующую с нею файловую систему.

   Задачей такого тоссера является однократное выполнение типичных задач,
   которые в противном случае фидобраузеру пришлось бы выполнять многократно,
   и рост скорости работы этого последнего. (Логика та же, которой ранее
   руководствовались при хранении дерева сообщений в базе, чтобы традиционный
   редактор фидопочты не имел необходимости обшаривать всю базу в поисках
   кладжей MSGID и REPLY и сопоставлять их всякий раз при построении дерева
   сообщений.)

   В настоящее время, кроме построения дерева сообщений, к разряду таких задач
   относится, по меньшей мере, декодирование вложенных файлов и преобразование
   первоначальной кодировки в необходимую; по мере развития возможностей Фидо
   такой задачею может стать также выяснение подлинного времени сообщения
   (а не только времени отправки да доставки) и определение географических
   координат отправителя, получателя, а то и содержащихся в письме объектов.

   Необходимы: текстовый конфигуратор, обёртка SQLite-баз.

*) Графический фидобраузер предобработанной почты.

   Обладает всеми качествами фидобраузера начального уровня, однако способен
   полагаться на заблаговременно подготовленную сложную структуру фидопочты,
   приготовленной для него тоссером предобработки.

   Поэтому способен строить не только деревья сообщений, но также и календари,
   карты, подобные блогосфере структуры (ленты, стены и проч.). Быстрее читает
   сообщения в чужой кодировке (потому что в базе есть итог перекодировки),
   быстрее ищет по ним.

   В иллюстрировании почты предобработанные внутрифидонетовские иллюстрации
   по своему удобству начиняют догонять Web-иллюстрации (за исключением ряда
   тех случаев, в которых мгновенный доступ к материалам не доступен из-за
   отсутствия подписки).

   Необходимы: графический фидобраузер начального уровня, обёртка SQLite-баз.

*) Автопочта.

   Формат почты, предназначенной для автоматической обработки тоссером.
   В своём собственном виде не интересна фидошнику, но результат её сбора
   делает жизнь фидошника в Фидонете информационно насыщеннее.

   Например, отсылка одобрения (like) или неодобрения по поводу некоторого
   сообщения, что позволяет вести счёт лайков.

   Например, отсылка извещения о подписке на эху (фэху) не только аплинку,
   но и модератору, а не то и прямо в эху. И то же самое об отписке. Что всем
   получающим это извещение позволит вести подсчёт подписчиков.

   Например, отсылка таких иллюстраций (по одной иллюстрации на письмо),
   на которые затем из основного (иллюстрируемого ими) письма ставятся ссылки.

   Необходимы (и апгрейдятся): тоссер предобработки, графический фидобраузер
   предобработанной почты.

*) Структурированный эхолист.

   Формат эхолиста, обладающий более сложною структурою данных по сравнению
   с нынешним CSV-эхолистом.

   Обладает возможностью хранить машинно-читаемые о комодераторах, а не только
   о модераторе.

   Обладает возможностью хранить ссылку (FGHI URL) на правила эхоконференции.

   Нет необходимых более ранних технологий.

*) Автомодерирование.

   Вариант традиционного модераториала, обладающий качествами автопочты. Может
   автоматически приниматься во внимание системами Фидонета, обеспечивающими
   режим read only для отмодерированного узла или пойнта. Даже фидобраузер
   может выдавать фидошнику предупреждение о том, что его сообщение не уйдёт
   дальше первого же узла, поддерживающего автомодерирование.

   Полномочия модератора (или комодератора) проверяются по эхолисту.

   Необходимы: структурированный эхолист, автопочта.

   Необходимы (и апгрейдятся): тоссер предобработки, графический фидобраузер
   предобработанной почты.

*) Гипертекстовый фрекопроцессор.

   Развитие идеи традиционного фрекопроцессора. Обеспечивает во время сеанса
   межмейлерной связи не только получение файла по его имени (или понятное
   сообщение об ошибке), но и ряд дополнительных функций быстрого обслуживания
   аплинком даунлинка, для которых, вероятно, вместо простого имени файла
   придётся передавать FGHI URL.

   Может обеспечивать дублирование функций ареафикса (подписка на эхи и фэхи,
   отписка от эх и фэх, запрос рескана прошлых материалов, запрос списка эх
   и фэх) с обработкой более быстрою, нежели отправка письма в следующем
   сеансе межмейлерного взаимодействия.

   Может обеспечивать выборочное (в отличие от полного рескана) получение
   сообщений из эхи (или файлов из файлэхоконференции) по известному FGHI URL.

   Может обеспечивать дублирование функций нетмейлового бота (с той разницею,
   что материалы по запросу получаются не нетмейлом по роутингу, а немедленно
   через прямое межмейлерное взаимодействие, не напрягая промежуточные узлы).

   Может обеспечивать мгновенное получение сведений о сисопе, им выложенных.
   Это сделает ненужным употребление гик-кода, фено-кода и прочих нынешних
   средств дублирования этих сведений в каждом письме, явно избыточного. Можно
   упоминать интересные сисопу эхи (а не только список доступных эх на узле).

   Необходимы: текстовый конфигуратор, парсер FGHI URL, обёртка SQLite-баз
   (или JAM-баз; то и другое понадобится только при необходимости доступа
   к фидопочте из эхоконференций).

*) Развитый фидобраузер.

   Обладает всеми качествами фидобраузера предобработанной почты, однако
   за счёт общения с гипертекстовыми фрекопроцессорами получает возможность
   выборочного доступа к произвольным данным (письмам, файлам, иллюстрациям)
   со своих аплинков (и других узлов Фидонета) без необходимости подписки
   на более крупные объекты (эхи, фэхи), когда она не нужна даунлинку и когда
   она напрасно затрудняла бы аплинк.

   Полная поддержка возможностей FGHI URL, часто почти мгновенная (в течение
   одного межмейлерного взаимодействия).

   Фидосфера по своим функциональным и информационным возможностям догоняет
   блогосферу, при этом сохраняя все свои достоинства распределённости.

   Необходимы: графический фидобраузер предобработанной почты, гипертекстовый
   фрекопроцессор.

*) Гипертекстовый Фидонет.

   Конец плана.


Сегодня этот план кажется мне несколько более осуществимым, нежели даже
два года назад. Потому что я многое узнал про Node и про node-webkit,
так что, кажется, наконец-то обрёл программную среду своей мечты.


Будет фигово, если этот план куда-нибудь пропадёт, потому что я на него
сегодня потратил довольно много времени. Так что я его, окромя локалки,
закину в пару тематических эхоконференций.


* изначально написано в эхоконференцию Pushkin.Local
* также было отослано в эхоконференцию Ru.Fidonet.Today
* также было отослано в эхоконференцию Ru.FTN.Develop


Фидонет будет великим и гипертекстовым!    [Ru.Mozilla]     http://Mithgol.Ru/
Mithgol the Webmaster.                    [Братство Нод] [Team А я меняю subj]

... Работа у меня такая ── думать дальше своего носа.         (Джордж Буш-мл.)
--- Эшелону: переиграть коммунистов RX-7 исключительно FLAME J-6 порнозвёздами
* Origin: Но я лишь голос вопиющего в пустыне ── ``RTFM, LMD!!!'' (2:5063/88)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.117128 секунды