Greasy Fork is available in English.

网页latex公式解析(解决ChatGPT回答的latex格式无法解析)

hello!

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。
// ==UserScript==
// @name         网页latex公式解析(解决ChatGPT回答的latex格式无法解析)
// @namespace    http://tampermonkey.net/
// @version      1.4.1
// @description  hello!
// @author       season
// @match              https://chat.openai.com/*
// @match              https://www.bing.com/search?*
// @match              https://you.com/search?*&tbm=youchat*
// @match              https://www.you.com/search?*&tbm=youchat*
// @icon               https://chat.openai.com/favicon.ico
// @license GPL
// @require      https://code.jquery.com/jquery-3.4.1.min.js
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant        none
// @run-at             document-end
// ==/UserScript==



(function() {
    'use strict';
    // Load MathJax library
    var script = document.createElement("script");
    script.type = "text/javascript";
    script.src = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS_HTML";
    document.getElementsByTagName("head")[0].appendChild(script);

    // Configure MathJax to render LaTeX formulas
    window.MathJax = {
        tex2jax: {
            inlineMath: [ ['$','$'], ['\\(','\\)'] ],
            processEscapes: true
        },
        CommonHTML: { scale: 100 }
    };

    // Wait for MathJax to load and render LaTeX formulas
    var checkLoaded = setInterval(function() {
        if (typeof MathJax !== "undefined" && MathJax.Hub.queue.queue.length === 0) {
            clearInterval(checkLoaded);
            MathJax.Hub.Queue(["Typeset", MathJax.Hub, document.body]);
        }
    }, 100);

    // Listen for changes to the page content and re-render LaTeX formulas
    var observer = new MutationObserver(function(mutations) {
        mutations.forEach(function(mutation) {
            if (mutation.type === "childList" || mutation.type === "subtree") {
                MathJax.Hub.Queue(["Typeset", MathJax.Hub, mutation.target]);
            }
        });
    });
    observer.observe(document.body, {
        childList: true,
        subtree: true
    });
})();