Greasy Fork is available in English.

Translate Youtube subtitles

Translate Youtube subtitles for your browser language

Pada tanggal 05 Maret 2021. Lihat %(latest_version_link).

// ==UserScript==
// @name         Translate Youtube subtitles
// @version      1.6.3
// @description  Translate Youtube subtitles for your browser language
// @author       CoinkBeta
// @match        *://www.youtube.com/watch?v=*
// @match        *://www.youtube.com
// @match        *://www.youtube.com/*
// @require      https://unpkg.com/ajax-hook@2.0.2/dist/ajaxhook.min.js
// @grant        none
// @namespace    https://github.com/CoinkWang/Y2BDoubleSubs
// ==/UserScript==
(function() {
    let localeLang = navigator.language
    ah.proxy({
        onRequest: (config, handler) => {
            handler.next(config);
        },
        onResponse: (response, handler) => {
            if (response.config.url.includes('/api/timedtext') && !response.config.url.includes('&translate_h00ked')){
                let xhr = new XMLHttpRequest(); // Use RegExp to clean '&tlang=...' in our xhr request params while using Y2B auto translate.
                let reg = new RegExp("(^|[&?])tlang=([^&]*)",'g');
                xhr.open('GET', `${response.config.url.replace(reg,'')}&tlang=${localeLang}&translate_h00ked`, false);
                xhr.send();
                let localeJson = null;
                localeJson = JSON.parse(xhr.response) // Merge default subs with locale language subs
                response.response = JSON.stringify(localeJson)
            }
            handler.resolve(response)
        }
    })
})();