Chatgpt Kod Aracı

Kodu snippet’lerini kaydetme veya kopyala seçeneği de dahil olmak üzere ChatGPT kod bloklarına işlevsellik ekleyin.

// ==UserScript==
// @name                  ChatGPT Code Tools
// @name:aa               ChatGPT Koox Silac
// @name:ab               АчатГПТ Акод Аинструмент
// @name:af               Chatgpt -kode -instrument
// @name:ak               ChatGPT koodu adwinnade .
// @name:am               የውይይት ኮድ መሣሪያ
// @name:ar               أداة رمز ChatGPT
// @name:as               Chatgpt ক’ড সঁজুলি
// @name:av               ЧатГПТ кодалъул алат
// @name:ay               Chatgpt ukax mä herramienta ukhamawa.
// @name:az               ChatGpt kodu alət
// @name:ba               ChatGPT коды ҡоралы
// @name:be               Інструмент кода чатппта
// @name:bg               Инструмент за код на Chatgpt
// @name:bh               चैटजीपीटी कोड टूल के बा।
// @name:bm               CHATGPT KODE BAARA .
// @name:bn               চ্যাটজিপিটি কোড সরঞ্জাম
// @name:bo               ཅཱ་ཊི་ཇི་པི་ཊི་ཨང་རྟགས་ལག་ཆ།
// @name:br               Ostilh Kod ChatGPT
// @name:bs               Alat za chapgpt
// @name:ca               Eina de codi Chatgpt
// @name:ce               ChatGPT Код ГӀирс
// @name:ceb              Chatgpt code tool
// @name:ch               Gai Elisibi Na’an
// @name:ckb              ئامرازی کۆدی Chatgpt
// @name:co               Strumentu di codice di chatgpt
// @name:cs               Nástroj Chatgpt Code
// @name:cv               ЧатГПТ Код инструменчĕ
// @name:cy               Offeryn Cod Chatgpt
// @name:da               ChatGPT -kodeværktøj
// @name:de               Chatgpt -Code -Tool
// @name:dv               ޗެޓްޖީޕީޓީ ކޯޑް ޓޫލް
// @name:dz               ཅཱཊི་ཇི་པི་ཊི་ཨང་རྟགས་ལག་ཆས་ཚུ།
// @name:ee               Chatgpt ƒe kɔda dɔwɔnu .
// @name:el               Εργαλείο κωδικού Chatgpt
// @name:en               ChatGPT Code Tool
// @name:en-GB            ChatGPT Code Tool
// @name:eo               Chatgpt -koda ilo
// @name:es               Herramienta de código chatgpt
// @name:es-419           Herramienta de código chatgpt
// @name:et               ChatGpt -koodi tööriist
// @name:eu               Chatgt kodea tresna
// @name:fa               ابزار کد chatgpt
// @name:ff               Kuutorgal kod ChatGPT
// @name:fi               Chatgpt -koodityökalu
// @name:fil              Tool ng code ng chatgpt
// @name:fj               iI.
// @name:fo               ChatGPT Kodatólið
// @name:fr               Outil de code chatppt
// @name:fr-CA            Outil de code chatppt
// @name:fy               Chatgpt koade ark
// @name:ga               Uirlis cód chatgpt
// @name:gd               Inneal còd còmhraidh
// @name:gl               Ferramenta de código Chatgpt
// @name:gn               CHATGPT Tembipururã .
// @name:gsw-berne        ChatGPT Code Tool
// @name:gu               ચેટ કોડ ટૂલ
// @name:gv               Code Code chatGPT
// @name:ha               Tool
// @name:he               כלי קוד CHATGPT
// @name:hi               चटपट कोड उपकरण
// @name:hmn              Chatgpt code Tool
// @name:hr               Chatgpt code alat
// @name:ht               Chatgpt Kòd Zouti
// @name:hu               Chatgpt kód eszköz
// @name:hy               Chatgpt կոդ գործիք
// @name:id               Alat kode chatgpt
// @name:ig               Nkata koodu
// @name:is               CHATGPT kóða tól
// @name:it               Strumento di codice CHATGPT
// @name:iu               ChatGPT ᓇᓗᓇᐃᒃᑯᑕᖅ ᓴᓇᕐᕈᑎ
// @name:ja               ChatGptコードツール
// @name:jv               Alat Code ChatGPT
// @name:ka               Chatgpt კოდის ინსტრუმენტი
// @name:kg               Kisalu ya nsiku ya ChatGPT
// @name:kk               Chatgpt код құралы
// @name:kl               ChatGPT-kode-mik atortoq
// @name:km               ឧបករណ៍កូដជជែកកំសាន្ត
// @name:kn               ಚಾಟ್ಜಿಪಿಟಿ ಕೋಡ್ ಸಾಧನ
// @name:ko               chatgpt 코드 도구
// @name:kr               Kakkadi Kakkadibe ChatGPTbe
// @name:ku               Amûra Koda Chatgpt
// @name:kv               ЧатГПТ код инструмент .
// @name:ky               CHATGPT коду куралы
// @name:la               Chatgpt codice instrumentum
// @name:lb               Chatgpt Code Tool
// @name:lg               Ekintu ekikozesebwa mu kukola koodi ekya CHATGPT .
// @name:ln               ChatGPT Esaleli ya code .
// @name:lo               ເຄື່ອງມືລະຫັດ ChatGPT
// @name:lt               „ChatGpt“ kodo įrankis
// @name:lv               Chatgpt koda rīks
// @name:mg               Fitaovana kaody Chatgpt
// @name:mh               Kōttōpar eo an chat .
// @name:mi               Tool CASTGPT
// @name:mk               Алатка за код CHATGPT
// @name:ml               ചാറ്റ്ഗ്പ്പ്റ്റ് കോഡ് ഉപകരണം
// @name:mn               Chatgpt кодын хэрэгсэл
// @name:mo               Instrument de cod ChatGPT
// @name:mr               CHATGPT कोड साधन
// @name:ms               Alat kod chatgpt
// @name:mt               Għodda tal-kodiċi chatgpt
// @name:my               chatgpt ကုဒ် tool ကို
// @name:nb               Chatgpt kodeverktøy
// @name:ne               च्याट कोड उपकरण उपकरण
// @name:nl               Chatgpt -codetool
// @name:nr               • Ubufakazi .
// @name:ny               Chida cha ChatGTPT Code
// @name:oc               Herramienta de Código de ChatGPT
// @name:om               Meeshaa Koodii Chatgpt .
// @name:or               ଚାଟ୍ ଆଗାପ୍ କୋଡ୍ ଟୁଲ୍ |
// @name:os               ЧатГПТ-ы кодæй фæрæз
// @name:pa               ਚੱਟਗੈਪਟ ਕੋਡ ਟੂਲ
// @name:pl               Narzędzie kodu chatgpt
// @name:ps               د چیټس کوډ وسیله
// @name:pt               Ferramenta de código chatgpt
// @name:pt-BR            Ferramenta de código chatgpt
// @name:pt-PT            Ferramenta de código chatgpt
// @name:qu               Chatgpt Code Herramienta .
// @name:rn               Igikoresho ca ChatGPT
// @name:ro               Instrument de cod ChatGPT
// @name:ru               Инструмент CATGPT CODE
// @name:rw               Igikoresho cya Clitgpt
// @name:sa               गपशप कोड उपकरण 1 .
// @name:sd               چيٽپيٽ ڪوڊ جو اوزار
// @name:se               ChatGPT-kodafierpmádat
// @name:sg               Outil ti kode ti ChatGPT
// @name:sh               ЦхатГПТ Цоде Алат
// @name:si               චැට් කේත මෙවලම
// @name:sk               Nástroj chatgpt kódu
// @name:sl               Orodje za kodo chatgpt
// @name:sm               Talatalanoaga o le chatgpt
// @name:sn               Chatgpt code chishandiso
// @name:so               Qalabka Xeerka Chatggpt
// @name:sq               Mjeti i kodit chatgpt
// @name:sr               ЦхатГПТ Цоде Алат
// @name:ss               Lithuluzi Lekhodi Le chatGPT
// @name:st               Sesebelisoa sa Khoebo sa moqoqo
// @name:su               Alat ChatGPT
// @name:sv               Chatgpt -kodverktyg
// @name:sw               Chombo cha msimbo wa Chatgpt
// @name:ta               சாட்ஜிப்ட் குறியீடு கருவி
// @name:te               చాట్‌గ్ప్ట్ కోడ్ సాధనం
// @name:tg               Асбоби рамзи Chatgpt
// @name:th               เครื่องมือรหัส chatgpt
// @name:ti               CHATGPT ኮድ መሳርሒ
// @name:tk               Söhp nusgasy kod guraly
// @name:tl               Tool ng code ng chatgpt
// @name:tn               Sediriswa sa Khoutu ya ChatGPT
// @name:to               Me’angaue ’o e Kouti ChatGPT
// @name:tr               Chatgpt Kod Aracı
// @name:ts               Xitirhisiwa xa Khodi ya ChatGPT .
// @name:tt               Чатгпт коды коралы
// @name:tw               ChatGPT koodu adwinnade .
// @name:ty               Te rave’a no te ChatGPT
// @name:ug               Commppt Commport قورالى
// @name:uk               Інструмент коду чатгпта
// @name:ur               چیٹ جی پی ٹی کوڈ ٹول
// @name:uz               Chatgpt kodi vositasi
// @name:ve               Tshishumiswa tsha Khoudu ya ChatGPT
// @name:vi               Công cụ mã Chatgpt
// @name:wo               ChatGPT
// @name:xh               Isixhobo sekhowudi yeChygpp
// @name:yi               טשאַטגפּט קאָד געצייַג
// @name:yo               Ọpa Chargpt koodu
// @name:zh               ChatGPT代码工具
// @name:zh-CN            ChatGPT代码工具
// @name:zh-HK            ChatGPT代碼工具
// @name:zh-MO            ChatGPT代碼工具
// @name:zh-MY            ChatGPT代码工具
// @name:zh-SG            ChatGPT代码工具
// @name:zh-TW            ChatGPT代碼工具
// @description           Adds functionality to ChatGPT code blocks, including options to save or copy code snippets.
// @description:aa        ossotinah tuxxiq ChatGPT koox alif, doorit edde anuk daanissaah, koppi koox snippet.
// @description:ab        ChatGPT акод аблокқәа рҿы афункционалтәра ацҵа, акод аԥҵәахақәа рыхьчара ма рықәҭыхра аопциа нарылаҵаны.
// @description:af        Voeg funksionaliteit by ChatGPT -kodeblokke, insluitend die opsie om kode -brokkies te stoor of te kopieer.
// @description:ak        Fa dwumadie ka ChatGPT koodu blocks ho, a option a wode bɛkora anaa wode bɛ copy code snippets ka ho.
// @description:am        የኮድ ኮድን ማቆሚያዎችን የማስቀመጥ ወይም የመቅዳት አማራጭን ጨምሮ የውይይት ኮድ ብሎኮች ተግባሮችን ያክሉ.
// @description:ar        أضف وظيفة إلى كتل رمز الدردشة ، بما في ذلك خيار حفظ أو نسخ قصاصات الرمز.
// @description:as        ChatGPT ক’ড ব্লকসমূহত কাৰ্য্যকৰীতা যোগ কৰক, ক’ড স্নিপেটসমূহ সংৰক্ষণ বা কপি কৰাৰ বিকল্প অন্তৰ্ভুক্ত কৰি।
// @description:av        Добавить функциональность к кода ChatGPT, включая опцию, чтобы сохранить или копирования кодов код.
// @description:ay        ChatGPT código bloques ukar funcionalidad ukar yapxataña, ukampirus opción de importación de códigos de código ukar imañataki jan ukax copiañataki.
// @description:az        Kod parçalarını saxlamaq və ya kopyalamaq üçün seçim daxil olmaqla ChatGpt Kod Bloklarına funksionallıq əlavə edin.
// @description:ba        Өҫтәү функциональ ChatGPT код блоктары, шул иҫәптән вариант һаҡлау йәки күсермәһе код фрагменттары.
// @description:be        Дадайце функцыянальнасць у блокі кода CHATGPT, уключаючы магчымасць захавання або капіявання фрагментаў кода.
// @description:bg        Добавете функционалност към кодовите блокове за чатгпт, включително опцията за запазване или копиране на фрагменти от код.
// @description:bh        CHATGPT कोड ब्लॉक में कार्यक्षमता जोड़ीं, जवना में कोड स्निपेट के सेव भा कॉपी करे के विकल्प भी शामिल बा।
// @description:bm        Aw bɛ baarakɛcogo dɔ fara ChatGPT code blocks kan, o la, a bɛ se ka kɛ ko a bɛ se ka kode yɔrɔw mara walima k’u kopi kɛ.
// @description:bn        কোড স্নিপেটগুলি সংরক্ষণ বা অনুলিপি করার বিকল্প সহ চ্যাটজিপিটি কোড ব্লকগুলিতে কার্যকারিতা যুক্ত করুন।
// @description:bo        ChatGPT ཨང་རྟགས་བཀག་སྡོམ་ལ་ལས་འགན་ཁ་སྣོན་བྱེད། དེའི་ནང་ཨང་རྟགས་ཆ་ཤས་གསོག་འཇོག་ཡང་ན་འདྲ་བཤུས་བྱེད་པའི་གདམ་ཁ་ཡོད།
// @description:br        Ouzhpennit arc’hwelioù e bloc’hoù kod ChatGPT, en o zouez an dibab enrollañ pe kopiañ tammoù kod.
// @description:bs        Dodajte funkcionalnost na champgpt kodni blokovi, uključujući opciju za spremanje ili kopiranje isjepanja kodova.
// @description:ca        Afegiu la funcionalitat als blocs de codi Chatgpt, inclosa l’opció de desar o copiar fragments de codi.
// @description:ce        ChatGPT кодан блокашна функционал тӀетоха, цу юкъахь опци а ю ларъян я копировать ян кодан кийсакаш.
// @description:ceb       Idugang ang pag-andar sa mga block sa chatgpt code, lakip ang kapilian nga makatipig o magkopya sa mga code snippet.
// @description:ch        Adda’ i funsion-ña gi i ChatGT cock blocks, kontodu i option para u na’setbe pat u na’setbe pat u na’setbe i snippets kopia.
// @description:ckb       زیادکردنی کارایی بۆ بلۆکی کۆدی ChatGPT، لەوانەش بژاردەی پاشەکەوتکردن یان کۆپیکردنی پارچە کۆدەکان.
// @description:co        Aghjunghjite a funziunalità à i blocchi di u Codice di ChatGpt, cumprese l’opzione per salvà o copià i pezzi di codice.
// @description:cs        Přidejte funkčnost do bloků ChatGPT kódu, včetně možnosti uložení nebo kopírování úryvků kódu.
// @description:cv        ChatGPT код блокĕсене функционал хушăр, çав шутра код спискĕсене упрама е копилеме опци.
// @description:cy        Ychwanegwch ymarferoldeb at flociau cod ChatGPT, gan gynnwys yr opsiwn i arbed neu gopïo pytiau cod.
// @description:da        Tilføj funktionalitet til ChatGPT -kodeblokke, herunder muligheden for at gemme eller kopiere kodestykker.
// @description:de        Fügen Sie den ChatGPT -Codeblöcken Funktionen hinzu, einschließlich der Option zum Speichern oder Kopieren von Code -Snippets.
// @description:dv        CHATGPT ކޯޑް ބްލޮކްތަކަށް ފަންކްޝަނަލިޓީ އިތުރުކޮށް، ކޯޑް ސްނިޕެޓްތައް ސޭވް ނުވަތަ ކޮޕީ ކުރުމުގެ އިޚްތިޔާރު ހިމެނޭ ގޮތަށް.
// @description:dz        གསང་གྲངས་ཕྲ་རིང་ཚུ་ སྲུང་བཞག་ཡང་ན་ འདྲ་བཤུས་རྐྱབ་ནིའི་གདམ་ཁ་ཚུ་རྩིས་ཏེ་ ཅཱཊི་ཇི་པི་ཊི་ཨང་རྟགས་བཀག་ཆ་ཚུ་ལུ་ ལས་འགན་ཁ་སྐོང་རྐྱབས།
// @description:ee        Tsɔ dɔwɔwɔ kpe ɖe Chatgpt code blocks ŋu, si me tiatia si nye be nàdzra code snippets ɖo alo awɔ eƒe kɔpi hã le.
// @description:el        Προσθέστε τη λειτουργικότητα σε μπλοκ κώδικα CHATGPT, συμπεριλαμβανομένης της επιλογής για αποθήκευση ή αντιγραφή αποσπάσματα κώδικα.
// @description:en        Add functionality to ChatGPT code blocks, including the option to save or copy code snippets.
// @description:en-GB     Add functionality to ChatGPT code blocks, including the option to save or copy code snippets.
// @description:eo        Aldonu funkciojn al ChatGPT -kodblokoj, inkluzive de la opcio por konservi aŭ kopii kodajn fragmentojn.
// @description:es        Agregue la funcionalidad a los bloques de código CHATGPT, incluida la opción de guardar o copiar fragmentos de código.
// @description:es-419    Agregue la funcionalidad a los bloques de código CHATGPT, incluida la opción de guardar o copiar fragmentos de código.
// @description:et        Lisage Funktsionaalsus CHATGPT koodiplokkidele, sealhulgas suvand koodilõikude salvestamiseks või kopeerimiseks.
// @description:eu        Gehitu funtzionalitatea ChatGtp kodea blokeetara, besteak beste, kode zatiak gordetzeko edo kopiatzeko aukera.
// @description:fa        عملکرد را به بلوک های کد Chatgpt اضافه کنید ، از جمله گزینه ذخیره یا کپی کردن قطعه کد.
// @description:ff        Ɓeydu heen golle e bolokaaji kode ChatGPT, ina heen cuɓal ngam hisnude walla koppirde snippets.
// @description:fi        Lisää toiminnot chatgpt -koodilohkoihin, mukaan lukien vaihtoehto tallentaa tai kopioida koodinpätkiä.
// @description:fil       Magdagdag ng pag -andar sa mga bloke ng code ng CHATGPT, kabilang ang pagpipilian upang i -save o kopyahin ang mga snippet ng code.
// @description:fj        Addtine cakacaka me baleta na ivolatara ni curucuru, oka kina na digidigi me vakabula se lavelavetaki ni lavelave ni lavelavetaki.
// @description:fo        Legg funktionalitet til ChatGPT kodublokkarnar, herundir møguleikan at goyma ella kopiera kodubrot.
// @description:fr        Ajoutez des fonctionnalités aux blocs de code ChatGPT, y compris l’option pour enregistrer ou copier des extraits de code.
// @description:fr-CA     Ajoutez des fonctionnalités aux blocs de code ChatGPT, y compris l’option pour enregistrer ou copier des extraits de code.
// @description:fy        Foegje funksjonaliteit ta oan ChatgPPP-koadeblokken, ynklusyf de opsje om koade-snippets te bewarjen of te kopiearjen.
// @description:ga        Cuir feidhmiúlacht le bloic chóid ChatGpt, lena n -áirítear an rogha chun cód a shábháil nó a chóipeáil.
// @description:gd        Cuir comas-gnìomh airson blocaichean còd cabadaich, a ’toirt a-steach roghainn a bhith a’ sàbhaladh no co-leth a dhèanamh de shrippets còd.
// @description:gl        Engade a funcionalidade aos bloques de código SHATGPT, incluída a opción de gardar ou copiar fragmentos de código.
// @description:gn        Emoĩ tembiaporã umi bloque código CHATGPT-pe, oikehápe opción oñongatu térã okopia hag̃ua umi kódigo ryru.
// @description:gsw-berne Add functionality to ChatGPT code blocks, including the option to save or copy code snippets.
// @description:gu        CHATGPT કોડ બ્લોક્સમાં વિધેય ઉમેરો, જેમાં કોડ સ્નિપેટ્સને સાચવવા અથવા ક copy પિ કરવાના વિકલ્પનો સમાવેશ થાય છે.
// @description:gv        Cur rish y ghraih rish blockyn code ChatGPT, goaill stiagh y roshtyn dy sparrey ny copy.
// @description:ha        Azfeshiara aikin don toshe Tubalan lambar code, ciki har da zaɓi don ajiyewa ko kwafin kwafin kwafi.
// @description:he        הוסף פונקציונליות לחסימות קוד ChatGpt, כולל האפשרות לשמור או להעתיק קטעי קוד.
// @description:hi        CHATGPT कोड ब्लॉक में कार्यक्षमता जोड़ें, जिसमें कोड स्निपेट को सहेजने या कॉपी करने का विकल्प शामिल है।
// @description:hmn       Ntxiv kev ua haujlwm rau kev sib tham cov kab chaws, suav nrog kev xaiv txuag lossis theej lej code.
// @description:hr        Dodajte funkcionalnost blokovima chatgpt kodova, uključujući opciju za spremanje ili kopiranje koda isječaka.
// @description:ht        Ajoute fonctionnalités nan blòk kòd ChATGPT, ki gen ladan opsyon a pou konsève pou oswa kopi koupe kòd.
// @description:hu        Adja hozzá a funkcionalitást a chatgpt kódblokkokhoz, beleértve a kód kivonatok mentésének vagy másolásának lehetőségét.
// @description:hy        Ֆունկցիոնալություն Ավելացնել Chatgpt Code Blocks- ին, ներառյալ `կոդերի կտրելու կամ պատճենելու տարբերակը:
// @description:id        Tambahkan fungsionalitas ke blok kode chatgpt, termasuk opsi untuk menyimpan atau menyalin cuplikan kode.
// @description:ig        Tinye arụmọrụ na koodu Coloncto Code, gụnyere nhọrọ ịchekwa ma ọ bụ detuo Snippets Koodu.
// @description:is        Bættu virkni við ChatGPT kóðablokkir, þar með talið möguleikann á að vista eða afrita kóða bút.
// @description:it        Aggiungi funzionalità ai blocchi di codice CHATGPT, inclusa l’opzione per salvare o copiare i frammenti di codice.
// @description:iu        ᐃᓚᓕᐅᑎᓗᒋᑦ ᐊᐅᓚᓂᖏᑦ ChatGPT ᓇᓗᓇᐃᒃᑯᑕᐃᑦ, ᐱᖃᓯᐅᑎᓪᓗᒍ ᓇᓕᕌᕈᑎᖓ ᓴᓂᕐᕙᐃᓂᕐᒧᑦ ᐅᕝᕙᓘᓐᓃᑦ ᐊᔾᔨᓕᐅᕆᓂᕐᒧᑦ ᓇᓗᓇᐃᒃᑯᑕᕐᓂᒃ.
// @description:ja        コードスニペットを保存またはコピーするオプションを含む、CHATGPTコードブロックに機能を追加します。
// @description:jv        Tambah fungsi kanggo Blok kode ChatGPT, kalebu pilihan kanggo nyimpen utawa nyalin potongan kode.
// @description:ka        დაამატეთ ფუნქციონირება ChatGpt კოდის ბლოკებში, მათ შორის, კოდის ნაწლავის შენახვის ან კოპირების ვარიანტის ჩათვლით.
// @description:kg        Yika bisalu na ba bloque ya kode ya ChatGPT, na kati na yau nzila ya kubumba to kusala kopi ya bitini ya kode.
// @description:kk        Chatgpt код блоктарына функционалдылықты, соның ішінде код үзінділерін сақтау немесе көшіру опциясы.
// @description:kl        ChatGPT-kodeblokkinut funktionalitetimik ilanngukkit, ilaatigut kode-mik snippetit allattornissaannut imaluunniit kopiernissaannut periarfissaq.
// @description:km        បន្ថែមមុខងារទៅនឹងប្លុក CHATGPT កូដរួមទាំងជម្រើសក្នុងការរក្សាទុកឬថតចំលងអត្ថបទខ្លីៗ។
// @description:kn        ಕೋಡ್ ತುಣುಕುಗಳನ್ನು ಉಳಿಸುವ ಅಥವಾ ನಕಲಿಸುವ ಆಯ್ಕೆ ಸೇರಿದಂತೆ ಚಾಟ್‌ಜಿಪಿಟಿ ಕೋಡ್ ಬ್ಲಾಕ್‌ಗಳಿಗೆ ಕ್ರಿಯಾತ್ಮಕತೆಯನ್ನು ಸೇರಿಸಿ.
// @description:ko        코드 스 니펫을 저장하거나 복사하는 옵션을 포함하여 ChatGpt 코드 블록에 기능을 추가하십시오.
// @description:kr        Faidatə ChatGPT code blocks ro, surodən karno code snippets gənatə au ruwotəye mbeji.
// @description:ku        Fonksiyonê li blokên kodên chatgpt zêde bikin, di nav de vebijarkek ji bo hilanîn an kopîkirina kodên kodê.
// @description:kv        Содты функциональность ChatGPT кодъяс блокъяс дорӧ, сы лыдын вариант, медым видзны либӧ копируйтны код юкӧнъяс.
// @description:ky        Чаткапт кодунун блокторуна, анын ичинде кодду үнөмдөө же көчүрүү опциясын кошуңуз.
// @description:la        Addere functionality ad chatgpt codice caudices, comprehendo ad optionem servare vel exemplum codice Snippets.
// @description:lb        Füügt Funktionalitéit un ChatGptpt Code Blocks, dorënner d’Méiglechkeet fir d’Optioun ze späicheren oder ze kopéieren.
// @description:lg        Okwongerako emirimu ku CHATGPT code blocks, omuli n’enkola y’okutereka oba okukoppa ebitundu bya koodi.
// @description:ln        Bakisa fonctionnalité na ba blocs ya code ChatGPT, na kati na yango option ya kobomba to kosala copie ya ba fragments ya code.
// @description:lo        ເພີ່ມການທໍາງານຂອງລະຫັດ Chatgpt, ລວມທັງຕົວເລືອກທີ່ຈະບັນທຶກຫຼືສໍາເນົາ snippets code.
// @description:lt        Pridėkite „ChatGpt“ kodo blokų funkcijas, įskaitant parinktį išsaugoti ar nukopijuoti kodo fragmentus.
// @description:lv        Pievienojiet funkcionalitāti CatGpt kodu blokiem, ieskaitot iespēju saglabāt vai kopēt koda fragmentus.
// @description:mg        Ampio ny fiasa amin’ny sakana Chatgpt Colic, ao anatin’izany ny safidy hanavotana na handika snippets code.
// @description:mh        Kobaik jerbal ko ñan bōbrae ko an ChatGPT, ekoba kālet eo ñan kōjparok ak copy in kōmeļeļe ko.
// @description:mi        Tāpirihia te mahinga ki nga Chesgpt Code Poraka, tae atu ki te whiringa ki te penapena, ki te kape ranei i nga tohu waehere waehere.
// @description:mk        Додадете функционалност во блок -блокови со код CHATGPT, вклучувајќи ја и опцијата за зачувување или копирање на код.
// @description:ml        കോഡ് സ്നിപ്പെറ്റുകൾ സംരക്ഷിക്കാനുള്ള ഓപ്ഷൻ ഉൾപ്പെടെ ചാറ്റ്ഗ്പ്റ്റ് കോഡ് ബ്ലോക്കുകളിൽ പ്രവർത്തനം ചേർക്കുക.
// @description:mn        Clatgpt Codal Blocks-д функцийг нэмж, CLIPS COLDER-ийг хадгалах эсвэл хуулах сонголтыг хадгалах сонголтыг оруулаарай.
// @description:mo        Adăugați funcționalitate la blocurile de cod ChatGPT, inclusiv opțiunea de a salva sau copia fragmentele de cod.
// @description:mr        कोड स्निपेट्स जतन किंवा कॉपी करण्याचा पर्याय यासह चॅटजीपीटी कोड ब्लॉक्समध्ये कार्यक्षमता जोडा.
// @description:ms        Tambah fungsi ke blok kod ChATGPT, termasuk pilihan untuk menyimpan atau menyalin coretan kod.
// @description:mt        Żid il-funzjonalità mal-blokki tal-kodiċi chatgpt, inkluża l-għażla li ssalva jew tikkopja snippets tal-kodiċi.
// @description:my        Complets Code Save Save သို့မဟုတ်ကူးယူရန် Option အပါအ 0 င် chatgpt code လုပ်ကွက်များသို့ chatgptged code လုပ်ကွက်များသို့ထည့်ပါ။
// @description:nb        Legg til funksjonalitet i ChatGPT -kodeblokker, inkludert alternativet for å lagre eller kopiere kodebiter.
// @description:ne        च्याट कोड ब्लकहरूमा कार्यक्षमता थप्नुहोस्, बचत गर्न वा प्रतिलिपि स्निपेटहरू बचत गर्न वा प्रतिलिपि गर्न विकल्प सहित।
// @description:nl        Functionaliteit toevoegen aan chatgpt -codeblokken, inclusief de optie om codefragmenten op te slaan of te kopiëren.
// @description:nr        I-Asssssssssssssssssss 10.
// @description:ny        Onjezani magwiridwe a magwiridwe a Code Ladicts, kuphatikizapo njira yosungira kapena kukopera manambala.
// @description:oc        Apondre la foncionalitat als blòcs de còde ChatGPT, inclusent l’opcion d’enregistrar o copiar de fragments de còde.
// @description:om        Functionality tti uggura koodii CHATGPT, filannoo cuquliisa koodii qusachuu ykn waraabuu dabalatee.
// @description:or        କୋଡ୍ ସ୍ନିପେଟଗୁଡିକ ସେଭ୍ କିମ୍ବା କପି କରିବାର ବିକଳ୍ପ ସହିତ କାର୍ଯ୍ୟକାରିତା ଆଡ୍ ମିଡିଆ ଯୋଡନ୍ତୁ |
// @description:os        ChatGPT-ы код блоктæм æфтауын функционал, уыцы нымæцы опци, цæмæй æрæмбырд кæной кæнæ копир кæной коды скъуыддзæгтæ.
// @description:pa        ਚੈਟਗੈਪਟ ਕੋਡ ਬਲਾਕਾਂ ਵਿੱਚ ਕਾਰਜਸ਼ੀਲਤਾ ਸ਼ਾਮਲ ਕਰੋ, ਸਮੇਤ ਕੋਡ ਸਨਿੱਪਟ ਨੂੰ ਸੇਵ ਜਾਂ ਕਾਪੀ ਕਰਨ ਦਾ ਵਿਕਲਪ ਸ਼ਾਮਲ ਕਰੋ.
// @description:pl        Dodaj funkcjonalność do bloków kodów chatgpt, w tym opcję zapisywania lub kopiowania fragmentów kodu.
// @description:ps        د چالګ کوډ بلاک بلاکونو کې فعالیت اضافه کړئ، پشمول د کوډ خوندي کولو یا کاپي کولو اختیار.
// @description:pt        Adicione a funcionalidade aos blocos de código ChatGPT, incluindo a opção de salvar ou copiar trechos de código.
// @description:pt-BR     Adicione a funcionalidade aos blocos de código ChatGPT, incluindo a opção de salvar ou copiar trechos de código.
// @description:pt-PT     Adicione a funcionalidade aos blocos de código ChatGPT, incluindo a opção de salvar ou copiar trechos de código.
// @description:qu        ChatGPT codigo bloques kaqman ruwanakuna yapay, chaymanta akllana waqaychay utaq copia codigo fragmentokuna.
// @description:rn        Wongereko ibikorwa ku mabara y’amakode ya ChatGPT, harimwo n’uburyo bwo kubika canke gukopa amakode.
// @description:ro        Adăugați funcționalitate la blocurile de cod ChatGPT, inclusiv opțiunea de a salva sau copia fragmentele de cod.
// @description:ru        Добавьте функциональность в кодовые блоки CHATGPT, включая опцию для сохранения или копирования фрагментов кода.
// @description:rw        Ongeraho imikorere yo kuganira kode, harimo amahitamo yo kuzigama cyangwa gukoporora kode.
// @description:sa        chatgpt कोड ब्लॉक्स् इत्यत्र कार्यक्षमतां योजयन्तु, यत्र कोडस्निपेट् रक्षितुं वा प्रतिलिपिं कर्तुं वा विकल्पः अपि अस्ति ।
// @description:sd        چيٽنگ ڪوڊ بلاڪ کي شامل ڪريو، ڪوڊ کي محفوظ ڪرڻ يا نقل ڪرڻ لاء آپشن شامل ڪرڻ يا نقل ڪرڻ لاء.
// @description:se        Lasit funkšuvnna ChatGPT-kodalohkuide, earret eará vejolašvuođa vurket dahje kopieret koda čuoggáid.
// @description:sg        A yeke wara na yâ ti a-bloc ti kode ti ChatGPT, so na popo ni a yeke wara option ti bata wala ti copié akete kete kode.
// @description:sh        Додајте функционалност ЦхатГПТ кодном блоковима, укључујући опцију за сачување или копирање исјечака кода.
// @description:si        ස්නිපෙට් සුරැකීමට හෝ පිටපත් කිරීමේ විකල්පය ඇතුළුව චැට් කේත කේත කුට්ටි වලට ක්රියාකාරීත්වය එක් කරන්න.
// @description:sk        Pridajte funkcie do blokov kódu Chatgpt, vrátane možnosti na uloženie alebo kopírovanie útržkov kódu.
// @description:sl        Dodajte funkcionalnost v kodne bloke chatgpt, vključno z možnostjo shranjevanja ali kopiranja odrezkov kode.
// @description:sm        Faʻaopopo le aoga i le talatalanoa o poloka poloka, aofia ai le filifiliga e sefe pe kopiina code snippets.
// @description:sn        Wedzera kushanda kune chatgpt code mabhuru, kusanganisira sarudzo yekuchengetedza kana kutevedzera kodhi snippets.
// @description:so        Ku dar waxqabadka Sharciga CHATGPPT SEACHSPTS Blocks, oo ay ku jiraan ikhtiyaarka si loo badbaadiyo ama koobi koobiga koodhka sirta ah.
// @description:sq        Shtoni funksionalitetin në blloqet e kodit chatgpt, duke përfshirë opsionin për të ruajtur ose kopjuar copëzat e kodit.
// @description:sr        Додајте функционалност ЦхатГПТ кодном блоковима, укључујући опцију за сачување или копирање исјечака кода.
// @description:ss        Ngeta kusebenta kumabhulokhi ekhodi ye-ChatGPT, kufaka ekhatsi inketho yekonga noma yekukopa tincenye tekhodi.
// @description:st        Kenya ts’ebetso ea ho qosa li-block tsa Polelo, ho kenyelletsa khetho ea ho boloka kapa ho kopitsa khoutu ea khoutu.
// @description:su        Tambahkeun fungsionalitas blok blok captcr ste, kalebet pilihan pikeun ngahémat atanapi nyalin kodeu kodeu kode.
// @description:sv        Lägg till funktionalitet i chatgpt -kodblock, inklusive alternativet att spara eller kopiera kodavsnitt.
// @description:sw        Ongeza utendaji kwa vizuizi vya msimbo wa Chatgpt, pamoja na chaguo la kuokoa au kunakili snippets za nambari.
// @description:ta        குறியீடு துணுக்குகளைச் சேமிக்க அல்லது நகலெடுக்க விருப்பம் உட்பட சாட்ஜிப்ட் குறியீடு தொகுதிகளுக்கு செயல்பாட்டைச் சேர்க்கவும்.
// @description:te        కోడ్ స్నిప్పెట్లను సేవ్ చేయడానికి లేదా కాపీ చేసే ఎంపికతో సహా Chatgpt కోడ్ బ్లాక్‌లకు కార్యాచరణను జోడించండి.
// @description:tg        Функсияро ба блокҳои кодекси Chatgpt илова кунед, аз ҷумла опсия барои сарфа ё нусхабардории коди.
// @description:th        เพิ่มฟังก์ชันการทำงานในบล็อกรหัส chatgpt รวมถึงตัวเลือกในการบันทึกหรือคัดลอกตัวอย่างโค้ด
// @description:ti        ኣብ CHATGPT ኮድ ብሎክስ ተግባር ምውሳኽ፣ እንተላይ ናይ ንምዕቃብ ወይ ንኮድ ኮድ ዝኸውን ኣማራጺ።
// @description:tk        SIRTPETLERI-NETI ulanyp ýa-da göçürmek mümkinçiligini goşmak bilen "Chatdpt" kod bloklaryna funksiýa goşmak mümkinçiligini goşuň.
// @description:tl        Magdagdag ng pag -andar sa mga bloke ng code ng CHATGPT, kabilang ang pagpipilian upang i -save o kopyahin ang mga snippet ng code.
// @description:tn        Tsenya tiriso mo dibolokong tsa khoutu ya ChatGPT, go akaretsa le tlhopho ya go boloka kgotsa go kopolola ditsopolwa tsa khoutu.
// @description:to        Tānaki atu ’a e ngaahi poloka ’o e ChatGPT code, kau ai ’a e fili ke fakahaofi pe hiki tatau ’a e ngaahi konga ’o e code.
// @description:tr        Kodu snippet’lerini kaydetme veya kopyala seçeneği de dahil olmak üzere ChatGPT kod bloklarına işlevsellik ekleyin.
// @description:ts        Engetela ntirho eka swibokisana swa khodi ya ChatGPT, ku katsa na nhlawulo wo hlayisa kumbe ku kopa swiphemu swa khodi.
// @description:tt        Сниппетлар саклау яки күчерү вариантын шатгПТ коды блокларына функция өстәргә.
// @description:tw        Fa dwumadie ka ChatGPT koodu blocks ho, a option a wode bɛkora anaa wode bɛ copy code snippets ka ho.
// @description:ty        A tapiri i te mau rave’a no te tape’a e aore râ, te mau tapa’o papa’i i te mau rave’a ChatGPT.
// @description:ug        كود پارچىلىرىنى ساقلاش ياكى كۆچۈرۈش تالونىنى ئۆز ئىچىگە ئالغان Cyngpt كود بۆلەكلىرىنى ئۆز ئىچىگە ئالغان Cyngpt كود بۆلەكلىرىنى ئۆز ئىچىگە ئالغان ئىقتىدارنى قوشۇڭ.
// @description:uk        Додайте функціональність до блоків коду чатгпта, включаючи опцію збереження або копіювання фрагментів коду.
// @description:ur        چیٹ جی پی ٹی کوڈ بلاکس میں فعالیت شامل کریں ، بشمول کوڈ کے ٹکڑوں کو بچانے یا کاپی کرنے کا آپشن بھی شامل ہے۔
// @description:uz        ChatchPT kodi bloklariga funktsional imkoniyatlarni, shuningdek kodni saqlash yoki nusxalash va nusxa ko’chirish va nusxa ko’chirish va nusxa ko’chirish va nusxa ko’chirish va nusxa ko’chirish opsiyasi.
// @description:ve        Engedza mushumo kha dzibuloko dza khoudu dza ChatGPT, hu tshi katelwa na khetho ya u vhulunga kana u kopolola zwipiḓa zwa khoudu.
// @description:vi        Thêm chức năng vào các khối mã Chatgpt, bao gồm tùy chọn để lưu hoặc sao chép đoạn mã.
// @description:wo        Yokk fonctionnalité ci kode ChatGPPT, boole ci tànneef ngir denc wala kopie snippets kode.
// @description:xh        Yongeza ukusebenza kwi-Conggpt Codes, kubandakanya ukhetho lokugcina okanye ukukopa ii-snippets.
// @description:yi        לייג פאַנגקשאַנאַליטי צו טשאַטגפּט קאָד בלאַקס, אַרייַנגערעכנט די אָפּציע צו ראַטעווען אָדער קאָפּיע קאָד סניפּאַץ.
// @description:yo        Fi kun iṣẹda si awọn bulọọki koodu, pẹlu aṣayan lati ṣafipamọ tabi Daakọ awọn eeyan koodu.
// @description:zh        为 ChatGPT 代码块添加功能,包括保存或复制代码片段的选项。
// @description:zh-CN     为 ChatGPT 代码块添加功能,包括保存或复制代码片段的选项。
// @description:zh-HK     為 ChatGPT 代碼塊添加功能,包括保存或複制代碼片段的選項。
// @description:zh-MO     為 ChatGPT 代碼塊添加功能,包括保存或複制代碼片段的選項。
// @description:zh-MY     为 ChatGPT 代码块添加功能,包括保存或复制代码片段的选项。
// @description:zh-SG     为 ChatGPT 代码块添加功能,包括保存或复制代码片段的选项。
// @description:zh-TW     為 ChatGPT 代碼塊添加功能,包括保存或複制代碼片段的選項。
// @description:zu        Faka ukusebenza kumabhulokhi ekhodi ye-Chatgt, kufaka phakathi inketho yokusindisa noma ukukopisha ikhodi snippets.
// @author                CarpeNoctemXD,人民的勤务员 <[email protected]>
// @namespace             https://github.com/ChinaGodMan/UserScripts
// @supportURL            https://github.com/ChinaGodMan/UserScripts/issues
// @homepageURL           https://github.com/ChinaGodMan/UserScripts
// @license               MIT
// @match                 https://chatgpt.com/*
// @match                 https://chat.openai.com/*
// @icon                  https://raw.githubusercontent.com/ChinaGodMan/UserScriptsHistory/main/scriptsIcon/chatgpt-plus.png
// @compatible            chrome
// @compatible            firefox
// @compatible            edge
// @compatible            opera
// @compatible            safari
// @compatible            kiwi
// @compatible            qq
// @compatible            via
// @compatible            brave
// @version               2025.6.2.1
// ==/UserScript==
(function () {
    'use strict'

    // Function to get MIME type based on file extension
    const getMimeType = (filename) => {
        const ext = filename.split('.').pop()
        switch (ext) {
            case 'py': return 'text/x-python'
            case 'js': return 'application/javascript'
            case 'html': return 'text/html'
            case 'css': return 'text/css'
            case 'java': return 'text/x-java-source'
            case 'cs': return 'text/x-csharp'
            case 'cpp': return 'text/x-c++src'
            case 'json': return 'application/json'
            case 'rb': return 'text/x-ruby'
            case 'pl': return 'text/x-perl'
            case 'swift': return 'text/x-swift'
            case 'kt': return 'text/x-kotlin'
            case 'go': return 'text/x-go'
            case 'ts': return 'application/typescript'
            case 'dart': return 'application/dart'
            case 'sql': return 'application/sql'
            case 'sh': return 'application/x-shellscript'
            case 'ps1': return 'application/powershell'
            case 'xml': return 'application/xml'
            case 'yaml': return 'application/x-yaml'
            case 'toml': return 'application/toml'
            case 'ini': return 'text/plain'
            case 'csv': return 'text/csv'
            case 'md': return 'text/markdown'
            case 'xlsx': return 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
            case 'bat': return 'application/x-batch'
            default: return 'text/plain'
        }
    }

    // Function to determine file extension based on the code block's language
    const getFileExtension = (languageClass) => {
        if (!languageClass) return 'txt' // Default to .txt if no class is found

        if (languageClass.includes('language-python')) return 'py'
        if (languageClass.includes('language-javascript') || languageClass.includes('language-js')) return 'js'
        if (languageClass.includes('language-html')) return 'html'
        if (languageClass.includes('language-css')) return 'css'
        if (languageClass.includes('language-java')) return 'java'
        if (languageClass.includes('language-csharp')) return 'cs'
        if (languageClass.includes('language-cpp')) return 'cpp'
        if (languageClass.includes('language-json')) return 'json'
        if (languageClass.includes('language-ruby')) return 'rb'
        if (languageClass.includes('language-perl')) return 'pl'
        if (languageClass.includes('language-swift')) return 'swift'
        if (languageClass.includes('language-kotlin')) return 'kt'
        if (languageClass.includes('language-go')) return 'go'
        if (languageClass.includes('language-typescript')) return 'ts'
        if (languageClass.includes('language-dart')) return 'dart'
        if (languageClass.includes('language-sql')) return 'sql'
        if (languageClass.includes('language-shell') || languageClass.includes('language-bash') || languageClass.includes('language-sh')) return 'sh'
        if (languageClass.includes('language-powershell') || languageClass.includes('language-ps1')) return 'ps1'
        if (languageClass.includes('language-xml')) return 'xml'
        if (languageClass.includes('language-yaml')) return 'yaml'
        if (languageClass.includes('language-toml')) return 'toml'
        if (languageClass.includes('language-ini')) return 'ini'
        if (languageClass.includes('language-csv')) return 'csv'
        if (languageClass.includes('language-markdown') || languageClass.includes('language-md')) return 'md'
        if (languageClass.includes('language-xlsx')) return 'xlsx'
        if (languageClass.includes('language-bat') || languageClass.includes('language-batch')) return 'bat'

        return 'txt' // Default to .txt if no matching language is found
    }

    // Function to download the text as a file
    const downloadFile = (text, filename, button) => {
        const blob = new Blob([text], { type: getMimeType(filename) })
        const url = URL.createObjectURL(blob)
        const a = document.createElement('a')
        a.href = url
        a.download = filename
        document.body.appendChild(a)
        a.click()
        document.body.removeChild(a)
        URL.revokeObjectURL(url)
        setButtonState(button, 'working', 'download')
    }

    // Function to copy text to the clipboard
    const copyToClipboard = (text, button) => {
        navigator.clipboard.writeText(text).then(() => {
            setButtonState(button, 'working', 'copy')
        }).catch((err) => {
            console.error('Failed to copy code: ', err)
            setButtonState(button, 'error', 'copy')
        })
    }

    // Function to set the button state and color
    const setButtonState = (button, state, type) => {
        switch (state) {
            case 'working':
                button.textContent = type === 'download' ? 'Saving...' : 'Copied!'
                button.style.backgroundColor = 'green'
                break
            case 'error':
                button.textContent = type === 'download' ? 'Could not download' : 'Could not copy'
                button.style.backgroundColor = 'red'
                break
            case 'standby':
            default:
                button.textContent = button.dataset.defaultText || 'Unknown'
                button.style.backgroundColor = '#007bff' // Blue
                break
        }
        button.style.color = 'white'

        // Revert the button to standby after 5 seconds
        if (state === 'working' || state === 'error') {
            setTimeout(() => {
                setButtonState(button, 'standby', type)
            }, 5000) // 5 seconds
        }
    }

    // Function to add save and copy buttons to a code block
    const addButtonsToCodeBlock = (codeBlock) => {
        // Ensure existing buttons are not duplicated
        if (codeBlock.querySelector('.code-buttons-wrapper')) return

        const wrapper = document.createElement('div')
        wrapper.classList.add('code-buttons-wrapper')
        wrapper.style.position = 'relative'
        wrapper.style.display = 'flex'
        wrapper.style.justifyContent = 'flex-start'
        wrapper.style.gap = '8px'
        wrapper.style.marginTop = '8px'

        const saveButton = document.createElement('button')
        saveButton.textContent = 'Save Code'
        styleButton(saveButton)

        saveButton.addEventListener('click', (e) => {
            e.stopPropagation()
            const codeElement = codeBlock.querySelector('code')
            if (codeElement) {
                const text = codeElement.textContent
                const languageClass = codeElement.className
                const extension = getFileExtension(languageClass)
                downloadFile(text, `code.${extension}`, saveButton)
            }
        })

        const copyButton = document.createElement('button')
        copyButton.textContent = 'Copy Code'
        styleButton(copyButton)

        copyButton.addEventListener('click', (e) => {
            e.stopPropagation()
            const codeElement = codeBlock.querySelector('code')
            if (codeElement) {
                const text = codeElement.textContent
                copyToClipboard(text, copyButton)
            }
        })

        // Set default text for buttons
        saveButton.dataset.defaultText = 'Save Code'
        copyButton.dataset.defaultText = 'Copy Code'

        codeBlock.parentNode.insertBefore(wrapper, codeBlock.nextSibling)
        wrapper.appendChild(saveButton)
        wrapper.appendChild(copyButton)
    }

    // Function to style the buttons
    const styleButton = (button) => {
        Object.assign(button.style, {
            display: 'inline-block',
            padding: '8px',
            background: '#007bff', // Default standby color
            color: 'white',
            border: 'none',
            borderRadius: '4px',
            cursor: 'pointer',
            transition: 'background-color 0.3s ease'
        })

        button.addEventListener('mouseover', () => {
            if (button.textContent === 'Saving...' || button.textContent === 'Copied!' || button.textContent === 'Could not download' || button.textContent === 'Could not copy') {
                button.style.backgroundColor = button.textContent.includes('Could not') ? 'darkred' : 'darkgreen'
            } else {
                button.style.backgroundColor = '#0056b3' // Darker blue for standby
            }
        })

        button.addEventListener('mouseout', () => {
            if (button.textContent === 'Saving...' || button.textContent === 'Copied!' || button.textContent === 'Could not download' || button.textContent === 'Could not copy') {
                button.style.backgroundColor = button.textContent.includes('Could not') ? 'red' : 'green'
            } else {
                button.style.backgroundColor = '#007bff' // Default blue for standby
            }
        })
    }

    // Function to observe code blocks and add buttons
    const observeCodeBlocks = () => {
        const codeBlocks = document.querySelectorAll('pre:not(.processed)')
        codeBlocks.forEach(block => {
            addButtonsToCodeBlock(block)
            block.classList.add('processed')
        })
    }

    // Mutation observer to detect new code blocks added dynamically
    const observer = new MutationObserver(observeCodeBlocks)
    observer.observe(document.body, { childList: true, subtree: true })

    // Initial call to process existing code blocks
    observeCodeBlocks()

})()