Firefox Translate Helper

Replace bogus html lang=en with lang="" (helps built-in Translate)

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

You will need to install an extension such as Tampermonkey to install this script.

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
// ==UserScript==
// @name         Firefox Translate Helper
// @author       mekineer and Nova (ChatGPT 5.2 Thinking)
// @namespace    https://mekineer.com
// @license      GPL-3.0-or-later
// @version      0.3
// @description  Replace bogus html lang=en with lang="" (helps built-in Translate)
// @match        *://*/*
// Example: @exclude-match https://example.com/* (remove leading Example and starting with @ will make active)
// Example: @exclude-match https://*.example.org/*
// @run-at       document-start
// @grant        none
// ==/UserScript==

(() => {
  if (window.top !== window.self) return;

  const fix = () => {
    const html = document.documentElement;
    if (!html) return;

    const lang = (html.getAttribute("lang") || "").toLowerCase().trim();
    if (lang === "en" || lang.startsWith("en-")) {
      html.setAttribute("lang", "");
    }
  };

  fix();

  new MutationObserver(fix).observe(document.documentElement, {
    attributes: true,
    attributeFilter: ["lang"],
  });
})();