Youtube live comments regex filter

Filter youtube live comments. Removes comments with japanese characters by default.

От 15.07.2021. Виж последната версия.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

// ==UserScript==
// @name         Youtube live comments regex filter
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Filter youtube live comments. Removes comments with japanese characters by default.
// @author       You
// @include      https://www.youtube.com/*
// @icon         https://www.google.com/s2/favicons?domain=youtube.com
// @grant        none
// @require http://code.jquery.com/jquery-3.4.1.min.js
// ==/UserScript==

(function() {
    'use strict';

    var reg = /^.*([一-龠]+|[ぁ-ゔ]+|[ァ-ヴー]+|[々〆〤]+).*$/u;

    $('yt-live-chat-app').find('YT-LIVE-CHAT-TEXT-MESSAGE-RENDERER').each(function(e){
        var target = $(e.target);
        target.find('#message').each(function(ee){
            var text = $(this).text();
            if(reg.test(text)){
                target.hide();
            }
        });
    });


    $('yt-live-chat-app').bind("DOMSubtreeModified", function(e) {
        var target = $(e.target);
        if(target.prop("tagName") === 'YT-LIVE-CHAT-TEXT-MESSAGE-RENDERER'){
            target.find('#message').bind("DOMSubtreeModified", function(ee) {
                var text = $(this).text();
                if(reg.test(text)){
                    target.hide();
                }
            });
        }
    });
})();