您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Delete ChatGPT chat with only Cmd/Ctrl+Shift+Delete, auto-confirms popup.
当前为
// ==UserScript== // @name ChatGPT Easy Delete Chat // @homepageURL https://raw.githubusercontent.com/nisc/chatgpt-userscripts/ // @namespace nisc // @version 1.2 // @description Delete ChatGPT chat with only Cmd/Ctrl+Shift+Delete, auto-confirms popup. // @author nisc // @match https://chatgpt.com/* // @icon https://chatgpt.com/favicon.ico // @grant none // ==/UserScript== (function() { 'use strict'; const IS_MAC = navigator.platform.includes('Mac'); const META = IS_MAC ? 'metaKey' : 'ctrlKey'; const findButtonByText = (regex) => Array.from(document.querySelectorAll('button')).find(b => regex.test(b.textContent || '')); const isChatPage = () => window.location.pathname.startsWith('/c/') && !window.location.hash.startsWith('#settings'); document.addEventListener('keydown', e => { if (!isChatPage()) return; const tgt = document.activeElement; if (['INPUT', 'TEXTAREA'].includes(tgt.tagName) || tgt.isContentEditable) return; if ( e.key === 'Delete' && e[META] && e.shiftKey && !e.altKey ) { e.preventDefault(); const btn = findButtonByText(/delete chat/i); if (btn) btn.click(); else console.warn('[ChatGPT Delete] button not found'); } }); new MutationObserver(() => { if (!isChatPage()) return; const confirmBtn = findButtonByText(/^delete$/i); if (confirmBtn) confirmBtn.click(); }).observe(document.body, { childList: true, subtree: true }); })();