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)

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

вот это годно, но должно быть приляпано на сайте - остальное нинужно

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

На самом деле весьма удобно оказалось, правда надо еще понаблюдать за востребованностью и перепилить. Я вот наблюдаю и удивлен насколько мало пишут на форуме. Мне раньше казалось, что гораздо больше. А открываешь раздел, а там +1 новых, +2 новых… и это за полсуток.

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

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

Просто надо понаблюдать еще и сделать удобнее. Автоматизировать рутину.

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

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

Лично для себя ни одну из функций не нахожу хоть сколь-нибудь полезной, но всё же всегда приятно, когда люди берут и делают так, как хочется (и делятся с теми, кому тоже может пригодиться), а не только ноют о том, что что-то сделано не так, как нравится лично им. Зачёт!

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

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

Или ПКМ натрекер - сразу видно в какой теме сколько новых комментов с момента последнего просмотра.

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

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

Не, мне такое ни для чего не нужно. Я и так не упущу нужное.

Или ПКМ натрекер - сразу видно в какой теме сколько новых комментов с момента последнего просмотра.

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

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

Ну я это накидал по сути за 3,5 часа на интуции. Надо еще понаблюдать как работает и переделать. Например надо навигацию по теме доработать, чтобы сразу перемещало куда надо, а то не продумал немного.

Я просто смотрю какие действия у меня выполняются вручную раз за разом одни и те же и пытаюсь их автоматизировать. Не только тут.

А так да, в официальном было бы неплохо такое увидеть. С момента последнего посещения.

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

сомнительно. а за творчество - твёрдая 5+.
если в апстрим примут - то только с обязательной опцией отключения, желательно в профиле.

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

Специально для тебя:

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

Вроде все учел. Сам как то не додумался редактировать на ходу таблицу. Добавил новый столбец - просто отображает изменение с последнего захода. Надо потестировать, не понятно, работает ли верно.

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

отслеживать

зачем? все же в уведомлениях есть - перехоху из них по мере поступления или находясь в теме так вижу что отвечают мне.

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

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

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

интересуют только комменты, обращенные к тебе

в первую очередь

интересно прочитать чужую беседу

да читаю срачи иногда

amd_amd ★★★★★
()

Мне понравилось, классная вещь получилась. Заодно открыл для себя юзерскрипты :)

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

Открой для себя еще Stylus - cможешь любой сайт под себя переделать как хочешь.

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

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

добавьте ники авторов, чьи новости больше не хотите видеть

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

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

Тестировал на Андроиде в Berry Browser. Вот только там нет правого и левого кликов.
А хотелось бы попробовать фичи сабжа, где нужны эти клики.

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

Я специально сделал именно ПКМ. На андроиде это долгое зажатие на иконке. Просто зажми долго на нужной иконке - это аналог правого клика.

Добавление ников в новости - сделаю по ПКМ на иконку.

Я собираю недочеты, сразу исправлю все скоро.

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

Ещё пара-тройка идей:

  1. возможность изменения расположения панели: слева, справа (как сейчас), сверху, снизу.
  2. вместо «изкоробочного» игнорирования я использую скрипт заблюривания. Можно его интегрировать в сабж?

Немного его подправил:

// ==UserScript==
// @name         LOR user bluring
// @description  LOR user bluring
// @namespace    LOR
// @version      3
// @match        *://www.linux.org.ru/*
// @run-at       document-end
// @grant        none
// ==/UserScript==

(function() {
  const BLURED_USERS = ["anonymous", "firkax"]; // те, для которых можно не логиниться. Но у меня их тут ещё десяток-другой-третий :)
  const STYLE_FILTER = 'blur(2pt)';
  const TRANSITION_DURATION = 200;
  const ANIMATE_ITERATIONS = 5;
  const BLUR_MARK = "!blur!"; // если "!blur!" есть в комментарии к нику

  document.querySelectorAll('article').forEach((item) => {
    const creator = item.querySelector('a[itemprop=creator]');

    if (!creator) {
      return;
    }

    const user = creator.innerText;

    if (!BLURED_USERS.includes(user)) {
      const sign_node = item.getElementsByClassName('sign')[0];
      if (!sign_node.innerText.includes(BLUR_MARK)) {
        return;
      }
    }

    item.style.filter = STYLE_FILTER;

    item.onmouseleave = function() {
      item.animate([{}, {filter: STYLE_FILTER}], {duration: TRANSITION_DURATION, iterations: ANIMATE_ITERATIONS});
      setTimeout(function() {
        item.style.filter = STYLE_FILTER;
      }, TRANSITION_DURATION);
    }

    item.onmouseenter = function() {
      item.animate([{}, {filter: 'none'}], {duration: TRANSITION_DURATION, iterations: ANIMATE_ITERATIONS});
      setTimeout(function() {
        item.style.filter = 'none';
      }, TRANSITION_DURATION);
    }
  });
})();
  1. Часто смотрю в списке модераторов/корректоров их последние посещения. Хотелось бы редактируемый список для любых пользователей.
dataman ★★★★★
()
Последнее исправление: dataman (всего исправлений: 1)

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

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

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

Короче, я потестил на андроиде, весьма непросто попасть по мелким кнопкам.

  1. Я добавил ПКМ (на андроиде длительное зажатие) на кнопку «Черный список». При этом будет автоматом искаться автор новости и предложит его добавить - можно отказаться.

  2. Есть мобильный вид панели в настройках. При нем настройки вызываются ПКМ на кнопки «вверх» вниз" в свернутом виде. Свайп по панели вниз развернет ее. Свайп вверх - свернет.

В свернутом виде всего три кнопки - «Вверх», «Уведомления», «Вниз». Довольно компактно и быстрый доступ ко всему.

Длительные зажатия на кнопки потестировал - все работает.

  1. Добавил масштабирование для развернутого варианта мобильной панели. То есть свайпаем ее вниз и видим крупные кнопки, которые легко жать. Свайпаем вверх и снова три компактные кнопки.

  2. Добавил на гитхаб зип-архив с готовым для импортирования скриптом в аддон.

Пока потестирую это. Уже утро следущего дня. Остальное про блюр и выбор места панели посмотрю уже завтра. Сверху сделать и снизу не так просто, тут думать надо. Слева легко. Все, прочитаю все уже завтра.

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

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

Немного не понял что за редактор и что за теги. А. понял. Типа редактирование текста сделать удобное? Я подумаю. Завтра уже.

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

Спасибо!

Добавил на гитхаб зип-архив с готовым для импортирования скриптом

Скрипт в архиве отличается от скрипта в репе.

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

Ладно, я еще понаблюдаю за трекером. У меня просто ощущеие, что он новые некорректно отображает. Но я не могу пока это доказать.

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

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

Ну так я сделал 60% масштабирование специально, чтобы не мешало. Тебе никто не мешает настроить. Там масштабирование от 30% до 200% доступно.

Особенно это актуально на андроиде.

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

Так и показывал бы на скрине крупненько :) Я реально секунд 10 втыкал в картинку, пока не заметил, что там сборку что-то мелкое прилипло.

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

При этом будет автоматом искаться автор новости и предложит его добавить

А черносписочные новости и раньше не показывались только в новостях?
На главной и в неподтверждённых показываются.


Контекстное меню браузера не показывается по ПКМ (в Falkon).

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

Я пока только в новостях сделал. Ибо на главное всеравно с пяток тем висят - смыл чистить ее? А где еще удалять его? В уведомлениях, в трекере? Тоже удалять?

Да, единственное адекватное - еще и трекер чистить. Сделаю.

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

А где еще удалять его?

В статьях и галерее?

В уведомлениях, в трекере? Тоже удалять?

Да может и не надо. :)

dataman ★★★★★
()

Пишите чего если кому нужно еще добавить

Хотелось бы кнопку «развернуть/свернуть блоки кода на странице». А то браузерный поиск по странице находит текст в свёрнутых, но его не видно.

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

«развернуть/свернуть блоки кода на странице»

Вот сейчас не понял. Они же и так сворачиваются разворачиаются или ты о чем? Аааа. Все разом? Одной кнопкой? Это можно. Наверное. Надо попробовать. Записал.

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

Ещё. :)

Может быть вместо справки во вкладке настроек, показывать её при клике по новой кнопке ❓?

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

Ага, обмазаться панелями со всемх сторон. Я примерно такое правда и сделал в войсе. Смотри:

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

Справа кружочки - юзеры онлайн. Слева кружочки - сервера и комнаты.

Но всеравно вот представь, справка тебе нужна один раз в жизни а висеть она будет на панели всегда. Зачем? Не, я могу сделать опционально отключаемую кнопку - чего нет. Это пара строк.

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

Это пара строк.

Да ладно, запомню, надеюсь. :)
Вспомнил мою давнюю хотелку: добавлять в заголовки колонок таблиц значки сортировки строк таблицы при клике по заголовку колонки – как в Википедии.
Не знаю, насколько это сложно/возможно.

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

Вижу.. Таблицы в комментах. Это сложнее - надо смотреть структуру текста. Я записал, гляну.

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

А если надо сразу несколько тем отслеживать?

А зачем их отслеживать? В жизни мусора мало, да?

Есть Уведомления и Трекер, туда все прилетает, этого достаточно.

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

Часто смотрю в списке модераторов/корректоров их последние посещения. Хотелось бы редактируемый список для любых пользователей.

А где этот список?

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

Наверное ты про это: " Последнее посещение: 23.05.26 15:59:19 GMT+07:00"

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

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