Блог пользователя yeputons

Автор yeputons, 12 лет назад, По-русски

Всем привет.
Меня достало прокручивать страницу блога в поисках новых комментариев, а заходить в "прямой эфир" не всегда удобно, поэтому написал userscript, который добавляет справа страницы кнопки перемотки по новым комментариям.
Работает в Firefox (надо поставить плагин GreaseMonkey), Chrome. Скорее всего, работает в Opera и чем-нибудь еще - никакого специфичного API нет.
Установить можно по ссылке. Если выдаётся исходник - значит, Ваш браузер не поддерживает userscripts.

О багах и предложениях можно отписываться тут.

UPD: теперь стало возможным просматривать родительский комментарий при наведении мышки на "^". Клик по-прежнему работает.

UPD2: создал репозиторий на GitHub.

  • Проголосовать: нравится
  • +165
  • Проголосовать: не нравится

»
12 лет назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится
а зачем ему

"your data on all websites"

afaik, там же можно указать в шапке для каких URL мы применяем данный скрипт(тогда, к слову, не надо это парсить внутри скрипта)
  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится
    Это не сильно кроссбраузерно (например, хрому иногда пофиг), но могу указать дополнительно.
    • »
      »
      »
      12 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Насчет кроссбраузерности не знал.
      Думаю так сделать было бы достаточно разумно, в любом случае.

      Весьма удобная штука.
»
12 лет назад, # |
  Проголосовать: нравится +26 Проголосовать: не нравится
Дико круто.
»
12 лет назад, # |
  Проголосовать: нравится +45 Проголосовать: не нравится
Что сказать - yeputonsa в разработчики!
»
12 лет назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

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

P.S. Ну и не знаю, насколько возможно второе, но было бы интерестно проскакить на первый непрочитанный с текущего положения - я когда прыгаю на новую ветку, то потом дальше листаю, пока она не закончится, и было бы классно просто нажать на "вниз" и перепрыгнуть на следующий непрочитанный блог. Хотя я, конечно, не знаю, может большинство читает по-другому. 

»
12 лет назад, # |
  Проголосовать: нравится +7 Проголосовать: не нравится
Пытался заставить работать в опере - гугл говорит, что для большинства скриптов при некотором шаманстве это возможно. Но не получилось. Пичаль.
»
12 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
Спасибо огромное.
»
12 лет назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится
Мне кажется, что это лучшее нововведение на codeforces в этом году. Может быть исходники этого скрипта стоит выложить в открытый доступ, чтобы минимизировать количество багов. Так же есть предложение администрации сайта добавить эту фичу в сам сайт ( как это сделано на хабре).
  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +12 Проголосовать: не нравится

    >исходники этого скрипта стоит выложить

    =)

  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +16 Проголосовать: не нравится
    В принципе, сам файл и есть все исходники. Правой кнопкой - view script source в FF. А, еще есть две картинки. Но могу завести проект на Github, например
    • »
      »
      »
      12 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Я имел в виду git, SVN. Так как можно будет просматривать историю изменений и исправлять код не только автору.
      • »
        »
        »
        »
        12 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Github чем не устраивает?
        Там есть и Git, и история изменений, и исправлять код можно не только автору.
        • »
          »
          »
          »
          »
          12 лет назад, # ^ |
            Проголосовать: нравится +8 Проголосовать: не нравится
          Это все равно, что спорить о выборе среды разработки. Каждый любит что-то своё.
»
12 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится
Плагин для ФФ называется Greasemonkey. По слову Greasу не смог найти :)
»
12 лет назад, # |
Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

Great job! Thank you!


PS #1:
If my post is "In English" and someone responds in English with "In Russian" radio button checked I cant see his post. Is there possibility to fix this bug? Or to see Russian comments with English interface?

Anyway thank you.
  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +5 Проголосовать: не нравится
    It is not a bug. If comment is checked as "In russian" it would be shown only in russian locale.
    If comment is checked as "In english" it would be shown in both locales.
»
12 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Можешь сделать так, чтобы в прямом эфире возле каждого поста показывало сколько new?
  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +11 Проголосовать: не нравится
    Неплохо бы сделать это в нативном интерфейсе Codeforces, а не юзерскриптами, кстати.
  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится
    Это уже что-то понавороченней надо. Потому как на текущей странице информации о других постах и комментах нет - надо делать запрос к серверу.
»
12 лет назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится
Спасибо, так гораздо удобнее. Может, сделать ещё кнопку перехода обратно к "Прямому эфиру", чтоб не прокручивать сотни комментариев и не тянуться к "Home"?
»
12 лет назад, # |
  Проголосовать: нравится +28 Проголосовать: не нравится
Егор, спасибо. Клево получилось. При случае поимплементим что-то такое нативно.
»
12 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Спасибо большое, очень круто вышло.
А каков воркфлоу работы, я просто зашел дважды в одну тему, за одно посещение сайта, и мне дважды показало новым одно и тоже сообщение, так и должно быть?
  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +13 Проголосовать: не нравится
    Я использую пометки Codeforces, когда новые сообщения отмечаются синим. Там, по наблюдениям, алгоритм примерно такой: снимать пометку через какое-то время после первого захода на страницу с комментом
»
12 лет назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится
yeputons отличная штука. спасибо. 
Пришла в голову мысль. Допустим что у меня есть новые сообщения. Я перешёл на первое, а дальше покручиваю колесиком мышки. Напрягает то, что если я нажимаю следующее, то меня кинет обратно наверх, ко второму, что по-моему не есть гуд. Думаю стоит как-то отслеживать прокрутку и кидать на следующее снизу)
  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится
    Да, было бы хорошо.
  • »
    »
    12 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +6 Проголосовать: не нравится

    А ещё у меня фонтан идей. 

    Меня например раздражает, что если ты хочешь на первом уровне оставить комментарий, то тебе приходится прокручивать в начало обсуждения. 
    Ещё есть мысль сделать сворачивание веток комментариев, а если появляются новые комментарии в этой ветке разворачивать её.
    Ещё, но это уже совсем выходит за рамки юзер скрипта меня раздражают фиолетовые ссылки там где их быть не должно: панелька участника (настройки блог соревнования и т.д.). Ведь совершенно очевидно что то что я там никакой информации не несёт. Там же меня раздражают точечки списка. которые по-моему выглядят убого, думаю было бы классно сделать всё это не простыми ссылками. а кнопочками такого же размера.
    UPD. Ещё думаю было бы полезно сделать возможность "спойлеров", часто встречаю "код во второй правке", "решение в правке" и т.п.
    P.S. что -то меня прорвало)
    • »
      »
      »
      12 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Фиолетовые ссылки правятся одной единственной строкой :)
      Думаю, администрация сможет это сделать меньше, чем за минуту.
    • »
      »
      »
      12 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Ну и ок, пролистай правки, посмотри.
»
12 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Хорошая вещь, спасибо. Но хочу указать на баги/неудобства.

Что я делаю: нажимаю на "n new". Появляются синие стрелочки, вверх-вниз. Жму вниз-вниз-вниз, радуюсь жизни. Справа написано "4/n". Дальше жму Ctrl + Down_Arrow, опять радуюсь жизни. Нажимаю несколько раз, что-то прокручивается. Справа написано "4/n". Нажимаю опять стрелку вниз, ту, что на экране, мышечкой нажимаю. Счётчик меняется, там уже написано "5/n", и действительно, подъехал пятый новый пост, пусть даже я читал восьмой (плюс-минус eps). По-моему, неудобно. Не знаю, правда, зачем я трогал то мышь, то клавиатуру, но... вот так.

А ещё, когда я навожу на "^", действительно показывается родительский пост, но он на прозрачном фоне, и неудобно читать: буквы лезут друг на дружку.

  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится +4 Проголосовать: не нравится

    Дело в том, что подобное было встроено вскоре в кодфорсес, то есть у Вас, скорее всего, два скроллера — «родной» и «дополнительный». И каждый считает по-своему, где Вы. А на ctrl+down реагирует только «родной» скрипт, поэтому на 4/n кнопки и не влияют.

»
12 лет назад, # |
  Проголосовать: нравится +12 Проголосовать: не нравится

Имеет смысл не показывать для неавторизованных, чтобы не обманывать, что новых сообщений 0.