LINUX.ORG.RU

Небольшая панелька для LOR

 , , ,


6

5

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

https://ns.fiber-gate.ru/uploads/images/img_1778830448139_d366e4cd.png

Вот она, справа. Подстраивается автоматически под выбранную тему:

https://ns.fiber-gate.ru/uploads/images/img_1778830555340_a770df86.png

https://ns.fiber-gate.ru/uploads/images/img_1778830658445_22500337.png

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

Все возможности подробно описаны в настройках, во вкладке «Справка»:

https://ns.fiber-gate.ru/uploads/images/img_1778926219370_df3bc737.png

Что умеет панель

Навигация:

▲ и ▼ - перемотка в начало и в конец страницы

💬 - переход к своему последнему комментарию

📢 - переход к последнему комментарию, где вас упомянули

Быстрый доступ к разделам:

📋 Форум и ☰ Трекер: левый клик открывает раздел, правый клик показывает текущие темы с подсветкой изменений и количеством новых комментариев

🔔 Уведомления: левый клик - страница уведомлений, правый клик - модальное окно со списком, на кнопке отображается счётчик непрочитанных

Новые кнопки:

🚫 Чёрный список - добавьте ники авторов, чьи новости больше не хотите видеть. Мини-новости тоже проверяются через загрузку полной страницы

💾 Сохранённые - правый клик сохраняет текущую тему (запоминается позиция скролла и количество комментариев), левый клик открывает список сохранённого с проверкой новых сообщений. Повторный правый клик по кнопке в сохранённой теме обновляет информацию о ней. Автоматически ничего не сбрасывается - всё под вашим контролем. При первом заходе на сохранённую страницу позиция скролла восстанавливается автоматически

Прочее:

Бесконечная лента новостей с авто-подгрузкой при прокрутке

Все данные хранятся в localStorage вашего браузера

Настройки панели (открываются при ПКМ на кнопку профиля): масштаб, видимость рамки, выборочное отключение кнопок

Код буду дорабатывать, обновления здесь: https://github.com/Vladgobelen/NSLorPanel/

Это скрипт для расширения Violentmonkey (или аналогичных - Greasemonkey, Tampermonkey (но не тестировал)).

Основная панель: NSLorPanel.user.js

Дополнение для обработки черного списка авторов: NSLorNewsFilter.user.js

Модификация для редактора теста. Вставляется отдельным скриптом. Требует для настроек основную панель, но может работать и без нее: NSLorPanel-MarkdownToolbar.user.js

Модификация для подсветки модераторов. Вставляется отдельным скриптом, ищет основную панель, если находит - подхватывает настроки, если основной панели нет - работает без нее безусловно: NSLorModHighlighter.user.js

Поиск по теме в комментариях, плюс изменение кнопок «Мои сообщения» и «Упоминания» - при ПКМ можно искать по другим юзерам (может работать без основной панели): NSLorNavPlus.user.js

ОТДЕЛЬНО сортировка таблиц вне панели, если не нужна панель. Если используеся панель, этот скрипт не нужен: lor-table-sorting.user.js


Исправление блэк темы для смартфонов: lor-black-mobile-fix.user.js


Пишите чего если кому нужно еще добавить исправить - добавлю и исправлю, мне не жалко.

Перемещено maxcom из talks

★★★★★

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

Наверное ты про это: " Последнее посещение

Да.

Они у каждого юзера вроде есть.

Так нужно же на каждый профиль заходить, а хотелось бы таблицу:

НикБыл
user1<…>
user2<…>
dataman ★★★★★
()
Ответ на: комментарий от dataman

Я могу сделать при клике пкм на юзера в теме всплывающую модалку с нужной инфой о нем. Например - последнее посещение. Сойдет? Или вообще полную инфу о нем там.

Можно сделать отдельно список юзеров - выбираешь юзеров и в списке будет отображаться конкретно их последние посещения.

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

Сойдет?

Нет, не надо по ПКМ. Я уже писал, что контекстное меню браузера на ЛОРе не работает из-за сабжа.

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

Да работает оно. Ну я же проверил. Нажимаешь на кнопку и держишь 0.5с так. Попробуй например на профиле. Если не работает конкретно из за специфичного браузера, могу эмулировать это поведение вручную.

Пофиг. Сделаю и то и то. Будет кнопка со списом юзеров.

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

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

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

Короче, я сделаю вручную длительное зажадие. Одиночное будет работать как обычно, а длительное зажатие на кнопку дольше 500мс - открывать второй режим. Думаю это решит все прблемы. Отпишусь. Как а десктопе, так и на андроиде в любом браузере.

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

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

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

Итак. Получилось слишком монструозненько, поэтому провел небольшой рефакторинг.

  1. Разбил код на основной и модули.

  2. Основной код - собственно код панели.

  3. Модуль пока один это работа с черным списоком.

  4. Добавлены настройки для черного списка - варианты «вырезать» или «блюрить»

  5. В режиме «вырезать» работает бесконечная лента новостей, галереии и прочего. Теперь работает везде, где есть стати.

  6. В режиме «блюрить» собствено блюрит. Код я чуток испрвил по своему эстетическому видению. Убрал анимации, убрал мерцания лишние - просто блюрит. Наводишь - показывает. Убираешь - блюрит.

  7. Панелей теперь по сути четыре: Справа, слева, снизу, сверху. В настройках выбор где располагать кнопку и располагать ли.

  8. Добавлена кнопка справки. Опциональная - монжно отключить.

  9. Добавлена кнопка последних посещений. При клике ПКМ на нее или при длительном зажатии на нее добавляет автора текущей новости в список отслежианий. При ЛКМ на нее открывает модалку с добавленными никами и возможностью добавить ник вручную.

9.1) К слову, добавил длительное зажатие на кнопки: Зажием лкм на кнопку и ждем 500мс. Так срабатывает второй режим. Если так сделать на черный список - добавится автор новости в черный список. Если на трекер - появися модалка с трекером. Итд.

  1. В строках типа «Ответ на: комментарий от dataman 22.05.26 08:32:46 GMT+07:00» ник теперь кликабелен. При клике переход в профиль юзера. При наведении мыши на него - покает последнее посещение юзера.

10.1) При длительном зажатии на ник в «ответ на» тоже должен появиться тултип - для смартфонов.

  1. Добавлены на гите оба архива - основной код и модуль к нему.

Пока потестируем так, посмотрю что работает, что нет. На сегодня хватит. Продолжу завтра остальное. Если все работает - завтра сделаю редактор текста отдельным модулем.

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

https://github.com/Vladgobelen/NSLorPanel/

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

P.S.

Обновил. Исправил отображение мобильной панели. Теперь она будет отображаться там, где большинство кнопок в развернутом виде.

P.P.S

Отображение последнего входа некорректное - не обновляется сразу. Но я проверил - это вопросы не ко мне. Что в профиле, то и отображаю. Видимо для экономии ресурсов там обнволение сделано с задержкой или как то так.

LightDiver ★★★★★
() автор топика
Последнее исправление: LightDiver (всего исправлений: 2)
Ответ на: комментарий от LightDiver
  1. Панелей теперь по сути четыре: Справа, слева, снизу, сверху. В настройках выбор где располагать кнопку и располагать ли.

А почему чекбоксы? Вряд ли нужны дубли кнопок на разных панелях.

  1. Добавлена кнопка последних посещений. При клике ПКМ на нее или при длительном зажатии на нее добавляет автора текущей новости в список отслежианий.

Спасибо! Хорошо бы, чтоб добавляла и со страницы профиля.
А в списке хочется сортировку по никам и времени.

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

А почему чекбоксы? Вряд ли нужны дубли кнопок на разных панелях.

Сделал универсально, ну а вдруг кому надо сразу на двух.

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

LightDiver ★★★★★
() автор топика

Кажется, что действия кнопок 💬 и 📢 перепутаны.

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

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

VIT ★★
()
Ответ на: комментарий от VIT
  1. Поставить аддон Violentmonkey в браузер

  2. Зайти на ЛОР

  3. Тыкнуть на панели аддон Violentmonkey

  4. Нажать +. Откроется пустое окно вставки кода. Вставить туда код панели основной - NSLorPanel.user.js.

  5. Точно так же еще раз сделать для дополнения - вставить отдельно код NSLorNewsFilter.user.js вторым скриптом.

В мобильной версии фф у меня есть в Violentmonkey импортирование сохраненных скриптов - оно принимает архивы зип. Если есть импортирование, можно оба архива просто импортировать, а не вставлять вручную.

Затем обновляем страницу и тестируем.

LightDiver ★★★★★
() автор топика

Провел полный рефакторинг кода. Минус все возможные дублирования. Единый источник истины. Код стал меньше где то раза в полтора-два.

4 files changed, 987 insertions(+), 2246 deletions(-)

Но надо тестировать теперь - работает ли все.

https://github.com/Vladgobelen/NSLorPanel/

Вроде стало стабильнее работать.

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

Технически должно сработать с любым аддоном для юзер-скриптов. Не обязательно этот. Просто я использую этот.

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

vivaldi

https://chromewebstore.google.com/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo?hl=ru

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

Ставишь этот аддон, в его настройках разрешаешь юзерскрипты для сайтов. Затем добавляешь в него оба скрипта, сохраняешь и все работает.

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

«This extension may soon no longer be supported because it doesn’t follow best practices for Chrome extensions.»

Ну ладно, на сегодня нас эти бест практисес не волнуют.

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

Этот вроде получше выглядит:

One important warning in advance: Malicious scripts can violate your privacy and act on your behalf! You should only install scripts from sources you trust.

Я полагаю, что я вам доверяю и этот скрипт не сожжёт мне пол дома? :)

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

Я полагаю, что я вам доверяю и этот скрипт не сожжёт мне пол дома? :)

Я настраивал только максимум на четверть дома. Ну, может еще кота налысо обреет.

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

Да работает оно.
Если не работает конкретно из за специфичного браузера

Добрался до компа – в Falkon штатное меню по ПКМ не работает (он у меня только для пары-тройки вкладок).

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

Вот для этого я сделал специально длительное зажатие ЛКМ. Обнови код - я его довел вроде до ума попробуй. Зажмаешь ЛКМ на кнопках на 500мс и срабатывает второй режим. В темах на ники «комментарий от ник» тоже так работают - зажимаешь ЛКМ на ссылке.

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

Проверь что точно вставил без лишних символов. Я в хроме сейчас проверил - приняло.

Удаляешь все, что есть и вместо этого вставляешь содержимое файла.

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

Для таких огромных файлов? Я пытаюсь загрузку из локального файла освоить. Сейчас до консоли дойду, сообщу, что пишет.

VIT ★★
()
Ответ на: комментарий от VIT
Failed to load resource: net::ERR_BLOCKED_BY_CLIENT
tpsc-ue1.doubleverify.com/event.png?impid=b3490c62568a42e2a6a915d9259c6ac8&flavor=1&gdpr=&gdpr_consent=&isbxdms=102331&b0=60096&lffb=59996&sffb=59996&engifcsms=100917&eoid=37&b10=42592&lftb=42692&sftb=42692&enghvms=102425&dvp_adEng=true:1
VIT ★★
()
Последнее исправление: VIT (всего исправлений: 1)
Ответ на: комментарий от LightDiver

Вот для этого я сделал специально длительное зажатие ЛКМ.

Я как-то не точно сформулировал: мне нужно, чтоб работало штатное контекстное меню по ПКМ. :)

dataman ★★★★★
()
Ответ на: комментарий от LightDiver
Application version 26.04.1
QtWebEngine version 6.10.2
© 2020-2025 Juraj Oravec
© 2010-2019 David Rosca
https://falkon.org
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) QtWebEngine/6.10.2 Chrome/134.0.0.0 Safari/537.36
dataman ★★★★★
()
Ответ на: комментарий от dataman

Хм. Ошибка известная и из за конфликта встроенного аддона в фальконе. Была официально исправлена в 24.12 версии. Сейчас поставлю сам покопаюсь. Изучаю.

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

Версия приложения 25.12.3 Версия QtWebEngine 6.10.3 © 2020-2025 Juraj Oravec © 2010-2019 David Rosca https://falkon.org Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) QtWebEngine/6.10.3 Chrome/134.0.0.0 Safari/537.36

www-client/falkon-25.12.3::gentoo

Использовал встроенный GreaseMonkey.

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

Меню контекстное работает, скрипт работает. Но нашел два бага. Сейчас исправлю в течением минут 10. Чисто визуальные - ничего критичного.

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

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

Всё заработало! Разобрался, где накосячил. Какой то мусор был в конце скриптов.

Ну что, пока всё прикольно. Надо понять, что есть что, и какая четверть дома выбрана, чтобы быстро реагировать. Пёс жив.

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

Какой интересный браузер. Такое ощущение, что весь на косытлях и соплях склепан, если честно. Прям все как я пилю - но я то не программист.

Обновил код. Подогнал позиционирование панели под фалькон все 4 версии. По крайней мере в моей версии. Меню тоже работает.

Если ты ставил дополнения сторонние для юзер-скриптов - убери. Это сторонний адон только может гадить. Юзай стандартный встроенный.

P.S.

Исправил «Упоминания» и «Меня упоминали».

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

Если ты ставил дополнения сторонние для юзер-скриптов - убери.

Да только один – заблюривания. Отключил его и всё равно не работает. Включил его и отключил сабж – меню по ПКМ работает.


UPD: Ура, заработало! :)

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

А как бы научить панельку не проматывать в конец темы, если ты в эту тему первый раз зашëл? Несколько напрягает.

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

Кэширование - самая главная беда веб-разработки. Она мне немало нервов попортила в первые месяцы, когда я только начинал. Применяешь код - не работает. Меняешь - не работает о_О!

А главное - даже сбрасываешь кэш иногда - меняешь, не работает, падла!!! Потом со временем вдруг само начинает работать.

Я уже философски относиться начал к этому: прежде чем нервничать, копаться, даю коду настояться и чаще всего все начинает работать.

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

Перемотки еще не совсем корректны. Я их все исправлю. Вот завтра и займусь. Или сделаю перемотки родные без скриптов или пропишу вручную нужное.

Если у тебя старая версия - обнови. Я там много менял.

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

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