#Firefox #Yandex #виброкодинг #ChatGPT #Tampermonkey

Навиброкодил связочку из #bookmarklet'а и #userscript'а, при помощи которых можно отправлять #YouTube-ролики прямо в https://300.ya.ru

Конечно, не совсем прямо, в сумме получается 4 клика (2, чтобы скопировать, 2 чтобы вставить). Но зато только мышкой.

1) Букмарклет

javascript:(async()=>{try{const text=await navigator.clipboard.readText();if(!text||!text.trim()){alert('Буфер пуст');return;}const w=window.open('about:blank','_blank');if(!w){alert('Popup заблокирован');return;}w.location.href='https://300.ya.ru/#'+encodeURIComponent(text);}catch(e){alert('Нет доступа к буферу');}})();

2) Юзерскрипт

// ==UserScript==
// @name 300.ya.ru Auto Paste via Hash (Stable)
// @namespace http://tampermonkey.net/
// @version 3.1
// @match https://300.ya.ru/*
// @run-at document-start
// ==/UserScript==

(function() {
'use strict';

const data = decodeURIComponent(location.hash.slice(1) || '');
if (!data) return;

let inserted = false;
let submitted = false;

function fireEvents(el) {
el.dispatchEvent(new Event('input', { bubbles: true }));
el.dispatchEvent(new Event('change', { bubbles: true }));
}

function insertOnce(el) {
if (inserted) return;
inserted = true;

el.focus();

const ok = document.execCommand('insertText', false, data);

if (!ok) {
const setter = Object.getOwnPropertyDescriptor(
HTMLTextAreaElement.prototype,
'value'
)?.set;

if (setter) setter.call(el, data);
else el.value = data;
}

fireEvents(el);
}

function tryRun() {
const textarea = document.querySelector('textarea');
if (!textarea || textarea.offsetParent === null) return;

insertOnce(textarea);

const btn = document.querySelector('button[type="submit"], .submit');

if (!submitted && btn && !btn.disabled) {
submitted = true;
observer.disconnect();
clearInterval(interval);
btn.click();
}
}

const observer = new MutationObserver(tryRun);

observer.observe(document.documentElement, {
childList: true,
subtree: true
});

const interval = setInterval(tryRun, 300);

})();

Копируем ссылку на YouTube-ролик, жмякаем букмарклет (2 клика, т.к. появится кнопка «Вставить» в целях безопасности). Откроется страничка Яши, и дальше уже всё само.

Нейросеть YandexGPT кратко перескажет видео на YouTube, статьи и тексты

Краткий пересказ от нейросети YandexGPT

userjs/mastodon/mastodon-threaded-replies.user.js at main · afontenot/userjs

collection of userjs files for various sites . Contribute to afontenot/userjs development by creating an account on GitHub.

GitHub

#Mastodon #MastodonTools #userscript #Tampermonkey #виброкодинг

Решил попробовать скормить скрипт скрытия прочитанных постов #Gemini для окончательного допиливания. Теперь работает. Вот прямо так, как мне нужно было 😀 👍 Теперь не стыдно и показать.

Что конкретно делает: когда вы скроллите ленту (неважно, вверх или вниз), фиксирует тот факт, что пост был полностью, от начала до конца, виден на экране, и после того, как он проскроллится за его пределы — скрывает его. Запоминает идентификаторы 1000 последних постов в local storage.

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

Типичный случай использования — вот вы листаете ленту, остановились где-то, сверху новые посты накопились, вы страничку перезагрузили и получается, что у вас будут непрочитанные, потом прочитанные, потом опять недочитанные. А так — нет 😀 Или, допустим, у вас лента поделена на списки, и нужно решить проблему дублирования.

Known Issues:

  • Наравне с постами съедает и уведомления (и вдобавок список списков 🙃 ). Я пока не решил, плохо это или хорошо, усложнять не хочу, а включить/выключить не проблема.
  • Если хотите добраться до очень старых постов, то кнопку Загрузить еще внизу придется нажимать много раз. Это не глюк, это, в принципе, логично.
  • Почему-то с первого раза (т.е. при открытии сайта из адресной строки) скрипт не цепляется, только после перезагрузки страницы по F5 🤔 Причину ищу, а пока так.
  • Забирайте, пробуйте, ставьте лайки, спрашивайте вопросы, предлагайте предложения!

    https://github.com/Johan-foreva/Mastodon-Hide-Read-Posts/blob/main/Hide-Read-Posts.js

    #MastodonTools #виброкодинг #userscript #вопрос

    Ну не то чтобы вопрос, размышления для себя:

    • вот есть ситуация, когда ты просматриваешь ленту снизу вверх, жмешь «Показать новые» — и они нормально подгружаются «за пределами экрана» и лента не смещается, можно мотать дальше. Но иногда, то ли из-за подгрузки картинок, то ли еще из-за чего — съезжает.

    #РешилДляСебя скриптом, который запоминает верхний пост на экране и принудительно скроллит обратно к нему.

    Но. Если активировать скрытие прочитанных постов, будет бяка: текущий пост на экране ведь считается «прочитанным», когда лента уедет — он исчезнет, и прокручивать обратно будет просто некуда.

    Можно, конечно, руками — сначала «Показать всё», потом «Показать новые», потом обратно «Скрыть прочитанные». Неаккуратненько © 🙁

    #ChatGPT предлагает пару вариантов взаимодействия между скриптами; либо что-то в изначальной логике работы надо поменять, но ее (логики итак мало 🙁).

    Например, скрывать не радикальным display:none, а как-то так, чтобы прокрутка к объекту всё же сработала...

    #Mastodon #MastodonTools #userscript #виброкодинг

    Так-так... А вот не мешало бы прикрутить автосохранение набранного, но не отправленного поста при перезагрузке страницы? Есть, конечно, копипаст, но так теряется цепочка комментариев. Правда, кажется, придется долго ковыряться в том, как восстановить родительский пост и адресовать ему камент...

    Боромир Евген бы смог...

    TIL about Pluraldawn
    https://exa.y2k.diy/garden/pluraldawn/

    It's a #Userscript ‡ that will look for a leading / trailing indicator and swap the displayed avatar and username when looking at an account that's posted to by multiple people in a plural system.

    I wish there was a more generalized solution for this.

    --
    ‡ a little bit of JavaScript that any of these Browser Extensions can use:
    Violentmonkey, Greasemonkey, Tampermonkey

    #plurality

    #виброкодинг #Mastodon #MastodonTools #Вопрос #виброкодинг

    Знатоки #HTML и #JavaScript, натолкните на правильный ход мысли. Пытаюсь навиброкодить #userscript, который будет скрывать из ленты просмотренные посты, черновой вариант есть, но не могу понять/решить, как по-элегантнее присваивать посту атрибут потраченопросмотрено: как формалинизировать тот факт, что пост «был на экране», допустим, более 2 секунд, если лента думскроллится в произвольном направлении, чтобы не было ложных срабатываний для частично попавших на экран (сверху или снизу)?

    @rf
    @rur
    @Russia
    @russian_mastodon

    @pinguthom Hab mal nen #userscript, pardon #userstyle gebastelt, was dieses super… „in Druckansicht Informationen verstecken“ „Feature“ … eliminiert. 😅

    https://gist.github.com/rugk/c564274d10bc359052cfbeb5acde22ca

    https://userstyles.world/style/26535/immobilienscout24immoscout-unhide-printing-info

    www.immobilienscout24.de (ImmoScout) – un-hide printing view https://userstyles.world/style/26535/immobilienscout24immoscout-unhide-printing-info

    www.immobilienscout24.de (ImmoScout) – un-hide printing view https://userstyles.world/style/26535/immobilienscout24immoscout-unhide-printing-info - description.txt

    Gist

    Полезная тулза для ревью чата с ИИ

    Всем привет. Почти 15 лет я не писал на хабр. Я не сошел с ума (см. предыдущий пост в профиле), всё в порядке, просто дело в том, что не было достойной темы. И вот впервые за 15 лет мне сильно захотелось поделиться с обществом своим небольшим открытием. В двух словах — вчера придумал инструмент для ревью чата с ИИ по аналогии с ревью гитлаба. Дипсик написал ТЗ, код, сопроводительные документы и статью для хабра.

    https://habr.com/ru/articles/993418/

    #ИИ #review #userscript

    Полезная тулза для ревью чата с ИИ

    Всем привет. Почти 15 лет я не писал на хабр. Я не сошел с ума (см. предыдущий пост в профиле), всё в порядке, просто дело в том, что не было достойной темы. И вот впервые за 15 лет мне сильно...

    Хабр

    #fediverse_ppl #смищно #Firefox #addons #ТрудностиПеревода #NeuralNetwork #userscript #Mastodon #MastodonTools

    Лол, кек. Удивительно непонятное, но от этого иещеболее занятное взаимодействие переводчика, который (каюсь, грешен) иногда включаю в ленте, и юзерскрипта, чтобы комментировать кого-то вот прямо в ленте.

    В комментарии — только 🚫 🤖— как напоминание о том, что @iron_bug не приемлет генерацию. Уважаю, позывы сдерживаю. Откуда берется такая интерпретация — совершенно непонятно. Пробовал добавлять тот же комментарий другим пользователям — не работает.

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

    Блок через 5-4-3-2...