LINUX.ORG.RU

lorify-ng новое универсальное расширение для LOR -а

 , ,


23

14

Это реинкарнация проекта lorify - скрипт+расширение, реализующее функционал схожий с тем, что добавляет куклоскрипт для имиджборд.

Расширение умеет:

  • Получать сообщения от сервера через WebSocket и обновлять контент на странице (новые комментарии, уведомления, правки)
  • Индикацию на фавиконе вкладки о количестве новых комментариев (очищается даблкликом в любом месте страницы);
    Цвета информируют о состоянии соединения с сервером (зеленый - ок, желтый - отсоединился, красный - сбой)
  • Системные оповещения о уведомлениях пользователя (для юзерскрипта требуется «разрешить сайту www.linux.org.ru показывать уведомления»)
  • Динамическая навигация по страничкам темы (по умолчанию подгружается только текущая открытая и последняя, в настройках можно задать количество подгружаемых заранее)
  • Само собой показ превью постов и ссылки указывающие на комментарии с ответами
  • Кнопки разметки и хоткеи (гайд по использованию)
  • Просмотр, масштабирование и поворачивание картинок, как для встроенных превью в топике так и доступных в тексте комментариев по прямым ссылкам (если url картинки имеет непрямой вид к нему можно добавить хэштег с названием и расширением картинки imghost.orc/24dfuh5d1#скриншот.png)
  • Цитирование с форматированием, как всего комментария так и выделенного в нем текста


Доступны следующие варианты установки

  • Юзерскрипт(тестировался с Violentmonkey)
  • Аддон для Firefox
  • Chrome (платный, нужно $5)
    • можно так же установить вручную включив на странице chrome://extensions режим разработчика и выбрав папку с исходниками расширения в качестве распакованного

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

>>> Страница проекта на GitHub

★★★

Последнее исправление: uin (всего исправлений: 10)

Ответ на: комментарий от mandala

Кстати, если не ошибаюсь, вроде ж Хром умел в эти скрипты:

C февраля 2009 года в Google Chrome появилась встроенная поддержка пользовательских скриптов в формате Greasemonkey

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

Проще юзерскрипт тем, что он уже есть, а для хромого ng-версии нету и WE от лисы надо все равно портировать, а не только перепаковать. Для хрома только старая lorify https://chrome.google.com/webstore/detail/lorify/lcbahplohbljaoccfaionnkdgakd... (Нет больше слёзок — lorify), но и она не плохая, только заброшена.

Greasemonkey изговнился

Его плохо портировали на лисе, когда ломали старые дополнения. На лисе я щас юзаю Violentmonkey тоже

там была куча вредоносного кода среди скриптов

Ну так не надо всякое говно с гитхабов от хз каких авторов тащить к себе в браузер :)

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

Да, хром когда вышел не умел в скрипты и его за это закидывали гнилыми помидорами (лиса то умела с оперой).

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

Яснопонятно. Думал, что оно есть у автора, просто он не хочет заливать в хромостор из-за бабла. Старое дополнение товарища b0r3d0m я юзал раньше, да. Жаль, он резко куда-то пропал. Надеюсь, у него все в порядке.

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

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

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

Ничего там портировать не нужно, достаточно тупо запаковать и выложить гуглстор.
Gonzo
Ты можешь поставить распакованное расширение в «режиме разработчика». Не знаю как на хроме на опере у меня так работает.

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

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

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

Ну сейчас лиса вебекстеншены хорошо поддерживает, а свои родные дополнения вообще закапывает.

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

Ага, то есть клонировать с гитхаба и скормить директорию с файлами хрому? Спасибо.

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

Перепилил уведомления, теперь они будут линейно раз в сорок секунд проверяться и выдавать одно уведомление без повторов.

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

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

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

Версия для анонимов старая. Мне то пофик, я анонимно не сижу, так, просто заметил. А вообще, огромное спасибо.

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

А, тогда ок, молчу-молчу, я не смотрел на автора, просто глянул версии.

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

Это моя сборка, надо удалить, раз оригинал теперь работает и у анонимусов.

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

Расширение теперь будет их проверять в фоне даже если ни одной вкладки с лором не открыто

Уже оценил на телефоне, в Firefox for Android отлично работает, хотя вкладка с лором и не была обновлена.

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

Оно туда наверх (куда все приложения срут) уведомляет что ли? Прикольно. А если браузер в фон свернут то же работает?

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

Оно туда наверх (куда все приложения срут) уведомляет что ли?

Да, обычное уведомление, показывается даже кол-во уведомлений.

А если браузер в фон свернут то же работает?

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

Но конкретно сейчас мне уведомление не пришло о твоем ответе, хотя я читал в соседней вкладке.

Вообще есть инструментарий от Мозиллы для отладки дополнений именно для мобильного ФФ через adb на телефоне, я как-то пробовал потыкать, но юзкейсов не было.

Virtuos86 ★★★★★
()

расширение пытается заменить favicon? у меня firefox с resistFingerprinting ругается, что ЛОР хочет получить доступ к канвасу

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

Оно рисует на фавикон пуш-уведомления, естественно при помощи санваса потому что это стандартное API для рисования в джаваскрипте. Причем здесь лор правда хз, видимо resistFingerprinting не видит разницы между скриптами на странице и скриптами которые инжектирует расширение.

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

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

eternal_sorrow ★★★★★
()
Последнее исправление: eternal_sorrow (всего исправлений: 1)

(на грани правах маразма) Насколько сложно собрать pandoc в WASM и впилить в lorify поддержку pandoc markdown?

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)

И ещё:

Chrome (платный, нужно $5)

Кому нужно $5? Единоразово или периодически? Я хочу видеть это расширение в Chrome App Store, куда нести $5?

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

написана на Haskell

Может, поискать что-то похожее на Rust, который отлично компилируется в WASM? Тебе же для маркдауна (вроде ты просил реализовать на форуме для разметки сообщений)?

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

Тебе же для маркдауна

Да.

Может, поискать что-то похожее

Тогда можно сразу взять эталонную реализацию CommonMark на js, вопрос не в этом. Хочется иметь возможность использовать именно pandoc markdown (это сильно расширенный диалект Markdown).

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

Вроде бы, регистрация как разработчика дополнений для Chrome стоит 5 баксов (как, например, и регистрация в Play Market для Android, если не больше). Но дополнение можно самому установить из локального файла.

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

Но дополнение можно самому установить из локального файла.

Я знаю, вопрос не в этом. Хочется видеть это расширение в Chrome App Store.

// Да блин, что ж такое-то? Приходишь с вопросом: «хочу полку для книг». Первый ответ: «может, лучше надувной шарик в форме собаки?»

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

Я писал тебе ответ с рассмотрением реальной идеи с общением с пандоком по специальному API, но раз ты такой нервный, подождешь, когда тебе ответит ТС.

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

На самом деле кажется, что у этого предложения есть принципиальная проблема — не понятно, как делать обратное преобразование при редактировании (i. e. за то, что LOR заменяет > на [quote]...[/quote] в исходнике сообщения, нужно убивать).

Если есть идеи насчёт того, как это решить — с удовольствием выслушаю. А нативный хост — тоже решение, да.

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

сделать опцию отключения этой возможности или же перенести отрисовку из контекста страницы в фоновый контекст расширения

Оно у тебя рушит приложение что-ли? Если нет то выносить это в опцию не имеет смысла так как твои настройки секъюрности и так по сути его отключают а больше ни от кого запроса на это не поступало.
Если рушит, то надо вначале посмотреть может оно там на половину скрипта ругается.

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

Насколько сложно собрать pandoc в WASM и впилить в lorify поддержку pandoc markdown?

Что такое pandoc markdown и чем оно отличается от markdown (для начала).
беглое гугление дало понять что это какая то программа парсящая разметку - ты хочешь для разметки лора использовать markdown?

Это можно но это будет
1) всего лишь костыль
2) можно реализовать только то что предоставляет лоровская разметка (код, лист, курсив, ссылки заворачиваемые в текст итп)

не понятно, как делать обратное преобразование при редактировании

парсить bb код (если конечно форма редактирования обратно markdown принимает)

Кому нужно $5? Единоразово или периодически? Я хочу видеть это расширение в Chrome App Store, куда нести $5?

Там единоразово но можно только через банковскую карту.

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

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

eternal_sorrow ★★★★★
()
Последнее исправление: eternal_sorrow (всего исправлений: 1)

А можно в lorify как-то сделать, чтобы одной кнопкой сразу все сообщение цитировалось?

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

Последнее посещение: 30.10.2018 11:30:55

Сломался борец с системой.

Deleted
()
5 декабря 2018 г.

Очень надоело цитировать руками сообщение, в котором в свою очередь есть цитаты, т.е. вида такого:

цитата в цитате

цитата

Приходится выделять цитата в цитате, дважды жмакать quote, потом выделять и копировать цитата и вставлять ее руками куда надо.

Было бы неплохо, если оно само парсилось и копировалось, как надо.

Virtuos86 ★★★★★
()

Замечательно

Chrome: 70.0.3538.110, установка в режиме разработчика.

Все работает прекрасно, спасибо uin за труды!)

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

Если кому, как и мне, нужна реализация моей хотелки, можете забрать сборку дополнения, в которой я это реализовал, отсюда. Сборка проверена и подписана на AMO.

Дружно ищем кнопку quote-all на панели, ничего выделять предварительно не надо.

dikiy, тебе тоже подойдет.

Дополнение при цитировании сообщения обрабатывает теги quote и code, поэтому для сранья в комментах уже пригодно. Но есть и другие теги в LORCODE, например, list, поэтому требуется допилка, но сейчас мне будет некогда, поэтому отложил до лучших времен.

Багрепорты НЕ приветствуются, жрите, что дают, и радуйтесь :).

P.S. не забываем обновлять сайт Ctrl+F5 после того, как отключите старую версию Lorify-NG и установите мою (которая устанавливается следующим образом: about:addons, кнопка с «шестерней» слева от поисковой формы, «Установить дополнение из файла…»). Всем мир, у меня сегодня ДР.

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

Ага, вижу, что с переносами строк какой-то провал вылез, видимо, я перемудрил с последними штрихами. Ладно, это поправлю.

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

подожду до завтра, пока баги вылавливаются %)

Спс большое за работу!

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

Я знаю, что это не одобряется, но мне

  • надо
  • оттестировать
  • новую
  • фичу

Надо проверить корректность работы, а

бегать по ЛОР'у и искать примеры использования LORCODE очень утомительно.

Virtuos86 ★★★★★
()
Последнее исправление: Virtuos86 (всего исправлений: 2)

FR: при цитировании текста с форматированием распознавать и вставлять в цитату соответствующие теги. Если сложно — думаю, лучше сделать вывод скрытой разметки на стороне движка, по аналогии со скрытыми запятыми между тегами в понитеме.

Moondancer
()
5 марта 2019 г.

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

Deleted
()

Иногда окошко с настройками/уведомлениями (по нажатию на иконку расширения на тулбаре ФФ) пустое и имеет черный или белый фон. При повторном нажатии открывается нормально. Пару раз оно «приходило в себя» аж по третьему нажатию. Никто не замечал?

Gonzo ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.