GPT Dictation Toggle (Alt+S) - Stable Edition

Toggles voice dictation in ChatGPT using Alt+S (works even after browser restarts)

// ==UserScript==
// @name         GPT Dictation Toggle (Alt+S) - Stable Edition
// @namespace    http://tampermonkey.net/
// @version      3.0
// @description  Toggles voice dictation in ChatGPT using Alt+S (works even after browser restarts)
// @author       Kamil
// @match        https://chatgpt.com/*
// @grant        none
// ==/UserScript==

(function () {
    'use strict';

    function simulateClick(element) {
        const event = new MouseEvent("click", {
            bubbles: true,
            cancelable: true,
            view: window
        });
        element.dispatchEvent(event);
        console.log("Clicked:", element);
    }

    function findDictateButton() {
        // Look for all .btn-primary buttons and return the one containing a microphone icon
        const candidates = document.querySelectorAll('.btn-primary');
        for (const btn of candidates) {
            if (btn.querySelector('svg')?.getAttribute('aria-label') === 'Mic icon') {
                return btn;
            }
        }
        return null;
    }

    function findSubmitButton() {
        // Submit dictation button always has this aria-label
        return document.querySelector('button[aria-label="Submit dictation"]');
    }

    document.addEventListener('keydown', function (e) {
        if (e.altKey && e.key.toLowerCase() === 's') {
            e.preventDefault();
            const stopBtn = findSubmitButton();
            const startBtn = findDictateButton();

            if (stopBtn) {
                simulateClick(stopBtn); // Stop dictation
            } else if (startBtn) {
                simulateClick(startBtn); // Start dictation
            } else {
                console.warn("No suitable dictation button was found.");
            }
        }
    });
})();
长期地址
遇到问题?请前往 GitHub 提 Issues,或加Q群1031348184

赞助商

Fishcpy

广告

Rainyun

注册一下就行

Rainyun

一年攒够 12 元