// ==UserScript== // @name Export ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:af UITVOER ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:am ኤክስፖርት ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ar تصدير ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:as এক্সপোর্ট ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:az İXRAC ET ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:be ЭКСПАРТ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:bg ЕКСПОРТИРАНЕ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:bn এক্সপোর্ট ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:bs IZVEZI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ca EXPORTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:cs EXPORTOVAT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:da EKSPORTER ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:de EXPORTIEREN ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:dz ཕྱིར་འདྲེན། ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:el ΕΞΑΓΩΓΗ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:en EXPORT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:en-GB EXPORT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:en-US EXPORT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:eo EKSPORTI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:es EXPORTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:es-419 EXPORTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:es-US EXPORTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:et EKSPORDI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:eu ESPORTATU ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:fa خروجی ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:fi VIE ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:fil I-EXPORT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:fr EXPORTER ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:fr-CA EXPORTER ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ga EASPUITÁIL ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:gl EXPORTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:gn EXPORTA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:gu એક્સપોર્ટ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ha FITARWA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:hi एक्सपोर्ट ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:hr IZVEZI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:hu EXPORTÁLÁS ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:hy ԱՐՏԱՀԱՆԵԼ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:id EKSPOR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ig BUPỤ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:is ÚTFLYTJA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:it ESPORTA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:iw ייצוא ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ja エクスポート ChatGPT/Gemini/Grok/Claude チャット -> MD, JSON, CSV, TXT, HTML // @name:jv EKSPOR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ka ᲔᲥᲡᲞᲝᲠᲢᲘ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:kk ЭКСПОРТТАУ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:km នាំចេញ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:kn ರಫ್ತು ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ko 내보내기 ChatGPT/Gemini/Grok/Claude 채팅 -> MD, JSON, CSV, TXT, HTML // @name:ky ЭКСПОРТТОО ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:lo ສົ່ງອອກ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:lt EKSPORTUOTI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:lv EKSPORTĒT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:mg HONDRAINA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:mk ЕКСПОРТ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ml കയറ്റുമതി ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:mn ЭКСПОРТЛОХ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:mr निर्यात ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ms EKSPORT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:mt ESPORTA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:my ထုတ်ယူ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ne निर्यात ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:nl EXPORTEREN ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:no EKSPORTER ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:om ERGUU ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:or ଏକ୍ସପୋର୍ଟ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:pa ਨਿਰਯਾਤ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:pl EKSPORTUJ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ps صادرول ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:pt EXPORTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:pt-BR EXPORTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:pt-PT EXPORTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ro EXPORTĂ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ru ЭКСПОРТ ChatGPT/Gemini/Grok/Claude Чат -> MD, JSON, CSV, TXT, HTML // @name:rw KOHEREZA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:si අපනයනය ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:sk EXPORTOVAŤ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:sl IZVOZI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:sn TUMIRA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:so DHOOFI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:sq EKSPORTO ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:sr IZVEZI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:sr-Latn IZVEZI ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:st ROMELA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:sv EXPORTERA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:sw HAMISHA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ta ஏற்றுமதி ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:te ఎగుమతి ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:tg СОДИРОТ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:th ส่งออก ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ti ሰደድ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:tk EKSPORT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:tr DIŞA AKTAR ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ug چىقىرىش ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:uk ЕКСПОРТУВАТИ ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:ur برآمد ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:uz EKSPORT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:vi XUẤT ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:yo ṢE IṢIPO ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @name:zh-CN 导出 ChatGPT/Gemini/Grok/Claude 聊天记录 -> MD, JSON, CSV, TXT, HTML // @name:zh-HK 導出 ChatGPT/Gemini/Grok/Claude 聊天紀錄 -> MD, JSON, CSV, TXT, HTML // @name:zh-TW 導出 ChatGPT/Gemini/Grok/Claude 聊天紀錄 -> MD, JSON, CSV, TXT, HTML // @name:zu THUMELA ChatGPT/Gemini/Grok/Claude Chat -> MD, JSON, CSV, TXT, HTML // @description Export ChatGPT, Gemini, Grok, Claude conversations to Markdown, JSON, CSV, TXT, HTML // @description:af UITVOER ChatGPT, Gemini, Grok, Claude gesprekke na Markdown, JSON, CSV, TXT, HTML // @description:am ኤክስፖርት ChatGPT, Gemini, Grok, Claude ንግግሮች ወደ Markdown, JSON, CSV, TXT, HTML // @description:ar تصدير محادثات ChatGPT و Gemini و Grok و Claude إلى Markdown و JSON و CSV و TXT و HTML // @description:as এক্সপোর্ট ChatGPT, Gemini, Grok, Claude কথাবতৰা Markdown, JSON, CSV, TXT, HTML লৈ // @description:az ChatGPT, Gemini, Grok, Claude söhbətlərini Markdown, JSON, CSV, TXT, HTML olaraq ixrac edin // @description:be Экспарт размоў ChatGPT, Gemini, Grok, Claude у Markdown, JSON, CSV, TXT, HTML // @description:bg Експортирайте разговорите от ChatGPT, Gemini, Grok, Claude в Markdown, JSON, CSV, TXT, HTML // @description:bn এক্সপোর্ট ChatGPT, Gemini, Grok, Claude কথোপকথন Markdown, JSON, CSV, TXT, HTML-এ // @description:bs Izvezi ChatGPT, Gemini, Grok, Claude razgovore u Markdown, JSON, CSV, TXT, HTML // @description:ca Exporta les converses de ChatGPT, Gemini, Grok, Claude a Markdown, JSON, CSV, TXT, HTML // @description:cs Exportujte konverzace ChatGPT, Gemini, Grok, Claude do Markdown, JSON, CSV, TXT, HTML // @description:da Eksporter ChatGPT, Gemini, Grok, Claude samtaler til Markdown, JSON, CSV, TXT, HTML // @description:de Exportieren Sie ChatGPT-, Gemini-, Grok-, Claude-Unterhaltungen in Markdown, JSON, CSV, TXT, HTML // @description:dz ཕྱིར་འདྲེན། ChatGPT, Gemini, Grok, Claude ཁ་བརྡ་ Markdown, JSON, CSV, TXT, HTML ལུ། // @description:el Εξαγωγή συνομιλιών ChatGPT, Gemini, Grok, Claude σε Markdown, JSON, CSV, TXT, HTML // @description:en Export ChatGPT, Gemini, Grok, Claude conversations to Markdown, JSON, CSV, TXT, HTML // @description:en-GB Export ChatGPT, Gemini, Grok, Claude conversations to Markdown, JSON, CSV, TXT, HTML // @description:en-US Export ChatGPT, Gemini, Grok, Claude conversations to Markdown, JSON, CSV, TXT, HTML // @description:eo Eksportu konversaciojn de ChatGPT, Gemini, Grok, Claude al Markdown, JSON, CSV, TXT, HTML // @description:es Exporta conversaciones de ChatGPT, Gemini, Grok, Claude a Markdown, JSON, CSV, TXT, HTML // @description:es-419 Exporta conversaciones de ChatGPT, Gemini, Grok, Claude a Markdown, JSON, CSV, TXT, HTML // @description:es-US Exporta conversaciones de ChatGPT, Gemini, Grok, Claude a Markdown, JSON, CSV, TXT, HTML // @description:et Ekspordi ChatGPT, Gemini, Grok, Claude vestlused Markdowni, JSONi, CSV-sse, TXTi, HTMLi // @description:eu Esportatu ChatGPT, Gemini, Grok, Claude elkarrizketak Markdown, JSON, CSV, TXT, HTML formatuetara // @description:fa خروجی مکالمات ChatGPT، Gemini، Grok، Claude به Markdown، JSON، CSV، TXT، HTML // @description:fi Vie ChatGPT-, Gemini-, Grok-, Claude-keskustelut Markdown-, JSON-, CSV-, TXT- tai HTML-muotoon // @description:fil I-export ang mga pag-uusap sa ChatGPT, Gemini, Grok, Claude sa Markdown, JSON, CSV, TXT, HTML // @description:fr Exportez les conversations ChatGPT, Gemini, Grok, Claude en Markdown, JSON, CSV, TXT, HTML // @description:fr-CA Exportez les conversations ChatGPT, Gemini, Grok, Claude en Markdown, JSON, CSV, TXT, HTML // @description:ga Easpórtáil comhráite ChatGPT, Gemini, Grok, Claude go Markdown, JSON, CSV, TXT, HTML // @description:gl Exportar conversas de ChatGPT, Gemini, Grok, Claude a Markdown, JSON, CSV, TXT, HTML // @description:gn Exporta ñemongeta ChatGPT, Gemini, Grok, Claude Markdown, JSON, CSV, TXT, HTML-pe // @description:gu ChatGPT, Gemini, Grok, Claude વાતચીતોને Markdown, JSON, CSV, TXT, HTML માં એક્સપોર્ટ કરો // @description:ha Fitar da tattaunawar ChatGPT, Gemini, Grok, Claude zuwa Markdown, JSON, CSV, TXT, HTML // @description:hi ChatGPT, Gemini, Grok, Claude वार्तालापों को Markdown, JSON, CSV, TXT, HTML में एक्सपोर्ट करें // @description:hr Izvezi ChatGPT, Gemini, Grok, Claude razgovore u Markdown, JSON, CSV, TXT, HTML // @description:hu Exportálja a ChatGPT, Gemini, Grok, Claude beszélgetéseket Markdown, JSON, CSV, TXT, HTML formátumba // @description:hy Արտահանել ChatGPT, Gemini, Grok, Claude խոսակցությունները Markdown, JSON, CSV, TXT, HTML // @description:id Ekspor percakapan ChatGPT, Gemini, Grok, Claude ke Markdown, JSON, CSV, TXT, HTML // @description:ig Bupụ mkparịta ụka ChatGPT, Gemini, Grok, Claude na Markdown, JSON, CSV, TXT, HTML // @description:is Flytja út ChatGPT, Gemini, Grok, Claude samtöl í Markdown, JSON, CSV, TXT, HTML // @description:it Esporta le conversazioni di ChatGPT, Gemini, Grok, Claude in Markdown, JSON, CSV, TXT, HTML // @description:iw ייצוא שיחות ChatGPT, Gemini, Grok, Claude ל-Markdown, JSON, CSV, TXT, HTML // @description:ja ChatGPT、Gemini、Grok、Claudeの会話をMarkdown、JSON、CSV、TXT、HTMLにエクスポート // @description:jv Ekspor obrolan ChatGPT, Gemini, Grok, Claude menyang Markdown, JSON, CSV, TXT, HTML // @description:ka Ექსპორტი ChatGPT, Gemini, Grok, Claude საუბრების Markdown, JSON, CSV, TXT, HTML-ში // @description:kk ChatGPT, Gemini, Grok, Claude сұхбаттарын Markdown, JSON, CSV, TXT, HTML форматына экспорттау // @description:km នាំចេញការសន្ទនា ChatGPT, Gemini, Grok, Claude ទៅជា Markdown, JSON, CSV, TXT, HTML // @description:kn ChatGPT, Gemini, Grok, Claude ಸಂಭಾಷಣೆಗಳನ್ನು Markdown, JSON, CSV, TXT, HTML ಗೆ ರಫ್ತು ಮಾಡಿ // @description:ko ChatGPT, Gemini, Grok, Claude 대화를 Markdown, JSON, CSV, TXT, HTML로 내보내기 // @description:ky ChatGPT, Gemini, Grok, Claude баарлашууларын Markdown, JSON, CSV, TXT, HTMLге экспорттоо // @description:lo ສົ່ງອອກບົດສົນທະນາ ChatGPT, Gemini, Grok, Claude ເປັນ Markdown, JSON, CSV, TXT, HTML // @description:lt Eksportuokite ChatGPT, Gemini, Grok, Claude pokalbius į Markdown, JSON, CSV, TXT, HTML // @description:lv Eksportēt ChatGPT, Gemini, Grok, Claude sarunas uz Markdown, JSON, CSV, TXT, HTML // @description:mg Hondrana ny resaka ChatGPT, Gemini, Grok, Claude ho Markdown, JSON, CSV, TXT, HTML // @description:mk Експортирајте разговори од ChatGPT, Gemini, Grok, Claude во Markdown, JSON, CSV, TXT, HTML // @description:ml ChatGPT, Gemini, Grok, Claude സംഭാഷണങ്ങൾ Markdown, JSON, CSV, TXT, HTML എന്നിവയിലേക്ക് കയറ്റുമതി ചെയ്യുക // @description:mn ChatGPT, Gemini, Grok, Claude харилцан яриаг Markdown, JSON, CSV, TXT, HTML руу экспортлох // @description:mr ChatGPT, Gemini, Grok, Claude संभाषणे Markdown, JSON, CSV, TXT, HTML मध्ये निर्यात करा // @description:ms Eksport perbualan ChatGPT, Gemini, Grok, Claude ke Markdown, JSON, CSV, TXT, HTML // @description:mt Esporta konversazzjonijiet ChatGPT, Gemini, Grok, Claude għal Markdown, JSON, CSV, TXT, HTML // @description:my ChatGPT, Gemini, Grok, Claude စကားပြောများကို Markdown, JSON, CSV, TXT, HTML သို့ ထုတ်ယူပါ // @description:ne ChatGPT, Gemini, Grok, Claude कुराकानीहरूलाई Markdown, JSON, CSV, TXT, HTML मा निर्यात गर्नुहोस् // @description:nl Exporteer ChatGPT-, Gemini-, Grok-, Claude-gesprekken naar Markdown, JSON, CSV, TXT, HTML // @description:no Eksporter ChatGPT-, Gemini-, Grok-, Claude-samtaler til Markdown, JSON, CSV, TXT, HTML // @description:om Marii ChatGPT, Gemini, Grok, Claude gara Markdown, JSON, CSV, TXT, HTMLtti ergi // @description:or ChatGPT, Gemini, Grok, Claude କଥାବାର୍ତ୍ତାକୁ Markdown, JSON, CSV, TXT, HTML କୁ ଏକ୍ସପୋର୍ଟ କରନ୍ତୁ // @description:pa ChatGPT, Gemini, Grok, Claude ਗੱਲਬਾਤਾਂ ਨੂੰ Markdown, JSON, CSV, TXT, HTML ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ // @description:pl Eksportuj rozmowy ChatGPT, Gemini, Grok, Claude do Markdown, JSON, CSV, TXT, HTML // @description:ps د ChatGPT، Gemini، Grok، Claude خبرې اترې Markdown، JSON، CSV، TXT، HTML ته صادر کړئ // @description:pt Exportar conversas do ChatGPT, Gemini, Grok, Claude para Markdown, JSON, CSV, TXT, HTML // @description:pt-BR Exportar conversas do ChatGPT, Gemini, Grok, Claude para Markdown, JSON, CSV, TXT, HTML // @description:pt-PT Exportar conversas do ChatGPT, Gemini, Grok, Claude para Markdown, JSON, CSV, TXT, HTML // @description:ro Exportați conversațiile ChatGPT, Gemini, Grok, Claude în Markdown, JSON, CSV, TXT, HTML // @description:ru Экспорт разговоров ChatGPT, Gemini, Grok, Claude в форматы Markdown, JSON, CSV, TXT, HTML // @description:rw Kohereza ibiganiro bya ChatGPT, Gemini, Grok, Claude muri Markdown, JSON, CSV, TXT, HTML // @description:si ChatGPT, Gemini, Grok, Claude සංවාද Markdown, JSON, CSV, TXT, HTML වෙත අපනයනය කරන්න // @description:sk Exportujte konverzácie ChatGPT, Gemini, Grok, Claude do Markdown, JSON, CSV, TXT, HTML // @description:sl Izvozite pogovore ChatGPT, Gemini, Grok, Claude v Markdown, JSON, CSV, TXT, HTML // @description:sn Tumira hurukuro dzeChatGPT, Gemini, Grok, Claude kuMarkdown, JSON, CSV, TXT, HTML // @description:so U dhoofi wada-hadallada ChatGPT, Gemini, Grok, Claude qaabka Markdown, JSON, CSV, TXT, HTML // @description:sq Eksporto bisedat e ChatGPT, Gemini, Grok, Claude në Markdown, JSON, CSV, TXT, HTML // @description:sr Izvezi ChatGPT, Gemini, Grok, Claude razgovore u Markdown, JSON, CSV, TXT, HTML // @description:sr-Latn Izvezi ChatGPT, Gemini, Grok, Claude razgovore u Markdown, JSON, CSV, TXT, HTML // @description:st Romela lipuisano tsa ChatGPT, Gemini, Grok, Claude ho Markdown, JSON, CSV, TXT, HTML // @description:sv Exportera ChatGPT-, Gemini-, Grok-, Claude-konversationer till Markdown, JSON, CSV, TXT, HTML // @description:sw Hamisha mazungumzo ya ChatGPT, Gemini, Grok, Claude hadi Markdown, JSON, CSV, TXT, HTML // @description:ta ChatGPT, Gemini, Grok, Claude உரையாடல்களை Markdown, JSON, CSV, TXT, HTML ஆக ஏற்றுமதி செய் // @description:te ChatGPT, Gemini, Grok, Claude సంభాషణలను Markdown, JSON, CSV, TXT, HTMLకు ఎగుమతి చేయండి // @description:tg Муколамаҳои ChatGPT, Gemini, Grok, Claude-ро ба Markdown, JSON, CSV, TXT, HTML содирот кунед // @description:th ส่งออกบทสนทนา ChatGPT, Gemini, Grok, Claude เป็น Markdown, JSON, CSV, TXT, HTML // @description:ti ናይ ChatGPT, Gemini, Grok, Claude ዝርርባት ናብ Markdown, JSON, CSV, TXT, HTML ሰደድ // @description:tk ChatGPT, Gemini, Grok, Claude gepleşiklerini Markdown, JSON, CSV, TXT, HTML-a eksport ediň // @description:tr ChatGPT, Gemini, Grok, Claude konuşmalarını Markdown, JSON, CSV, TXT, HTML olarak dışa aktarın // @description:ug ChatGPT, Gemini, Grok, Claude سۆھبەتلىرىنى Markdown, JSON, CSV, TXT, HTML غا چىقىرىڭ // @description:uk Експортувати розмови ChatGPT, Gemini, Grok, Claude у формати Markdown, JSON, CSV, TXT, HTML // @description:ur ChatGPT، Gemini، Grok، Claude کی گفتگو کو Markdown، JSON، CSV، TXT، HTML میں برآمد کریں // @description:uz ChatGPT, Gemini, Grok, Claude suhbatlarini Markdown, JSON, CSV, TXT, HTML formatlariga eksport qilish // @description:vi Xuất các cuộc trò chuyện ChatGPT, Gemini, Grok, Claude sang Markdown, JSON, CSV, TXT, HTML // @description:yo Ṣe iṣipo awọn ibaraẹnisọrọ ChatGPT, Gemini, Grok, Claude si Markdown, JSON, CSV, TXT, HTML // @description:zh-CN 将 ChatGPT、Gemini、Grok、Claude 的聊天记录导出为 Markdown、JSON、CSV、TXT、HTML 格式。 // @description:zh-HK 將 ChatGPT、Gemini、Grok、Claude 的聊天紀錄導出為 Markdown、JSON、CSV、TXT、HTML 格式。 // @description:zh-TW 將 ChatGPT、Gemini、Grok、Claude 的聊天紀錄導出為 Markdown、JSON、CSV、TXT、HTML 格式。 // @description:zu Thumela izingxoxo ze-ChatGPT, Gemini, Grok, Claude ku-Markdown, JSON, CSV, TXT, HTML // @namespace AI_I18N_Final // @version 1.0.0 // @author Kairox // @include *://chatgpt.com/* // @include *://grok.com/* // @include *://gemini.google.com/* // @include *://claude.ai/* // @noframes // @license MIT // @run-at document-idle // @grant GM_addStyle // @grant GM_setValue // @grant GM_getValue // @downloadURL https://update.greasyfork.icu/scripts/573478/Export%20ChatGPTGeminiGrokClaude%20Chat%20-%3E%20MD%2C%20JSON%2C%20CSV%2C%20TXT%2C%20HTML.user.js // @updateURL https://update.greasyfork.icu/scripts/573478/Export%20ChatGPTGeminiGrokClaude%20Chat%20-%3E%20MD%2C%20JSON%2C%20CSV%2C%20TXT%2C%20HTML.meta.js // ==/UserScript== (function () { 'use strict'; const i18n = { "af": "UITVOER", "am": "ኤክስፖርት", "ar": "تصدير", "as": "এক্সপোর্ট", "az": "İXRAC ET", "be": "ЭКСПАРТ", "bg": "ЕКСПОРТИРАНЕ", "bn": "এক্সপোর্ট", "bs": "IZVEZI", "ca": "EXPORTAR", "cs": "EXPORTOVAT", "da": "EKSPORTER", "de": "EXPORTIEREN", "dz": "ཕྱིར་འདྲེན།", "el": "ΕΞΑΓΩΓΗ", "en": "EXPORT", "en-GB": "EXPORT", "en-US": "EXPORT", "eo": "EKSPORTI", "es": "EXPORTAR", "es-419": "EXPORTAR", "es-US": "EXPORTAR", "et": "EKSPORDI", "eu": "ESPORTATU", "fa": "خروجی", "fi": "VIE", "fil": "I-EXPORT", "fr": "EXPORTER", "fr-CA": "EXPORTER", "ga": "EASPUITÁIL", "gl": "EXPORTAR", "gn": "EXPORTA", "gu": "એક્સપોર્ટ", "ha": "FITARWA", "hi": "एक्सपोर्ट", "hr": "IZVEZI", "hu": "EXPORTÁLÁS", "hy": "ԱՐՏԱՀԱՆԵԼ", "id": "EKSPOR", "ig": "BUPỤ", "is": "ÚTFLYTJA", "it": "ESPORTA", "iw": "ייצוא", "ja": "エクスポート", "jv": "EKSPOR", "ka": "ᲔᲥᲡᲞᲝᲠᲢᲘ", "kk": "ЭКСПОРТТАУ", "km": "នាំចេញ", "kn": "ರಫ್ತು", "ko": "내보내기", "ky": "ЭКСПОРТТОО", "lo": "ສົ່ງອອກ", "lt": "EKSPORTUOTI", "lv": "EKSPORTĒT", "mg": "HONDRAINA", "mk": "ЕКСПОРТ", "ml": "കയറ്റുമതി", "mn": "ЭКСПОРТЛОХ", "mr": "निर्यात", "ms": "EKSPORT", "mt": "ESPORTA", "my": "ထုတ်ယူ", "ne": "निर्यात", "nl": "EXPORTEREN", "no": "EKSPORTER", "om": "ERGUU", "or": "ଏକ୍ସପୋର୍ଟ", "pa": "ਨਿਰਯਾਤ", "pl": "EKSPORTUJ", "ps": "صادرول", "pt": "EXPORTAR", "pt-BR": "EXPORTAR", "pt-PT": "EXPORTAR", "ro": "EXPORTĂ", "ru": "ЭКСПОРТ", "rw": "KOHEREZA", "si": "අපනයනය", "sk": "EXPORTOVAŤ", "sl": "IZVOZI", "sn": "TUMIRA", "so": "DHOOFI", "sq": "EKSPORTO", "sr": "IZVEZI", "sr-Latn": "IZVEZI", "st": "ROMELA", "sv": "EXPORTERA", "sw": "HAMISHA", "ta": "ஏற்றுமதி", "te": "ఎగుమతి", "tg": "СОДИРОТ", "th": "ส่งออก", "ti": "ሰደድ", "tk": "EKSPORT", "tr": "DIŞA AKTAR", "ug": "چىقىرىش", "uk": "ЕКСПОРТУВАТИ", "ur": "برآمد", "uz": "EKSPORT", "vi": "XUẤT", "yo": "ṢE IṢIPO", "zh-CN": "导出", "zh-HK": "導出", "zh-TW": "導出", "zu": "THUMELA" }; const sysLang = navigator.language || 'en'; const langKey = i18n[sysLang] ? sysLang : sysLang.split('-')[0]; const exportLabel = i18n[langKey] || i18n['en']; const CommonUtil = { createElement: function(tag, opts = {}) { const el = document.createElement(tag); if (opts.html) el.innerHTML = opts.html; if (opts.text) el.textContent = opts.text; if (opts.className) el.className = opts.className; if (opts.style) Object.assign(el.style, opts.style); if (opts.childrens) opts.childrens.forEach(c => el.appendChild(c)); return el; } }; const HtmlToMarkdown = { to: function(html, platform) { const parser = new DOMParser(); const doc = parser.parseFromString(html, "text/html"); const isChatGPT = platform === "chatGPT", isGemini = platform === "gemini", isGrok = platform === "grok", isClaude = platform === "claude"; if (!isGemini) doc.querySelectorAll("span.katex-html").forEach(el => el.remove()); doc.querySelectorAll("mrow").forEach(m => m.remove()); doc.querySelectorAll('annotation[encoding="application/x-tex"]').forEach(el => { if (el.closest(".katex-display")) el.replaceWith(`\n$$\n${el.textContent.trim()}\n$$\n`); else el.replaceWith(`$${el.textContent.trim()}$`); }); doc.querySelectorAll("strong, b").forEach(b => b.parentNode.replaceChild(document.createTextNode(`**${b.textContent}**`), b)); doc.querySelectorAll("em, i").forEach(i => i.parentNode.replaceChild(document.createTextNode(`*${i.textContent}*`), i)); doc.querySelectorAll("p code").forEach(c => c.parentNode.replaceChild(document.createTextNode(`\`${c.textContent}\``), c)); doc.querySelectorAll("a").forEach(a => a.parentNode.replaceChild(document.createTextNode(`[${a.textContent}](${a.href})`), a)); doc.querySelectorAll("img").forEach(img => img.parentNode.replaceChild(document.createTextNode(`![${img.alt}](${img.src})`), img)); if (isChatGPT) { doc.querySelectorAll("pre").forEach(pre => { const type = pre.querySelector("div > div:first-child")?.textContent || ""; const code = pre.querySelector("div > div:nth-child(3) > code")?.textContent || pre.textContent; pre.innerHTML = `\n\`\`\`${type}\n${code}\n\`\`\`\n`; }); } else if (isGrok) { doc.querySelectorAll("div.not-prose").forEach(div => { const type = div.querySelector("div > div > span")?.textContent || ""; const code = div.querySelector("div > div:nth-child(3) > code")?.textContent || div.textContent; div.innerHTML = `\n\`\`\`${type}\n${code}\n\`\`\`\n`; }); } else if (isGemini) { doc.querySelectorAll("code-block").forEach(div => { const type = div.querySelector("div > div > span")?.textContent || ""; const code = div.querySelector("div > div:nth-child(2) > div > pre")?.textContent || div.textContent; div.innerHTML = `\n\`\`\`${type}\n${code}\n\`\`\`\n`; }); } else if (isClaude) { doc.querySelectorAll("pre").forEach(pre => { const code = pre.querySelector("code"); const type = code ? Array.from(code.classList).find(c => c.startsWith('language-'))?.replace('language-', '') : ""; pre.innerHTML = `\n\`\`\`${type || ''}\n${code ? code.textContent : pre.textContent}\n\`\`\`\n`; }); } doc.querySelectorAll("ul").forEach(ul => { let m = ""; ul.querySelectorAll(":scope > li").forEach(li => m += `- ${li.textContent.trim()}\n`); ul.parentNode.replaceChild(document.createTextNode("\n" + m.trim()), ul); }); doc.querySelectorAll("ol").forEach(ol => { let m = ""; ol.querySelectorAll(":scope > li").forEach((li, idx) => m += `${idx + 1}. ${li.textContent.trim()}\n`); ol.parentNode.replaceChild(document.createTextNode("\n" + m.trim()), ol); }); for (let i = 1; i <= 6; i++) { doc.querySelectorAll(`h${i}`).forEach(h => h.parentNode.replaceChild(document.createTextNode(`\n${"#".repeat(i)} ${h.textContent}\n`), h)); } doc.querySelectorAll("p").forEach(p => p.parentNode.replaceChild(document.createTextNode("\n" + p.textContent + "\n"), p)); return doc.body.innerHTML.replace(/<[^>]*>/g, "").replace(/&/g, "&").trim(); } }; const Chat = { getElements: function() { const h = window.location.href, res = []; let p = "", t = document.title || "Export"; if (h.includes("chatgpt.com")) { p = "chatGPT"; t = document.querySelector("#history a[data-active]")?.textContent || t; res.push(...document.querySelectorAll("div[data-message-id]")); } else if (h.includes("grok.com")) { p = "grok"; res.push(...document.querySelectorAll("div.message-bubble")); } else if (h.includes("gemini.google.com")) { p = "gemini"; t = document.querySelector("conversations-list div.selected")?.textContent || t; const qs = document.querySelectorAll("user-query-content"), rs = document.querySelectorAll("model-response"); for (let i = 0; i < qs.length; i++) { res.push(qs[i]); if (rs[i]) res.push(rs[i]); } } else if (h.includes("claude.ai")) { p = "claude"; res.push(...document.querySelectorAll('[data-testid="user-message"], .font-claude-response')); } return { res, p, t: t.replace(/[\/\\\?\%\*\:\|"<>\.]/g, "_") }; }, export: function(fmt) { const { res, p, t } = this.getElements(); if (!res.length) return; let c = "", m = 'text/plain'; if (fmt === 'json') { c = JSON.stringify(res.reduce((a, x, i) => { if(i%2===0 && res[i+1]) a.push({q: HtmlToMarkdown.to(x.innerHTML,p), a: HtmlToMarkdown.to(res[i+1].innerHTML,p)}); return a; }, []), null, 2); m = 'application/json'; } else if (fmt === 'csv') { c = "Q,A\n" + res.reduce((a, x, i) => { if(i%2===0 && res[i+1]) a += `"${HtmlToMarkdown.to(x.innerHTML,p).replace(/"/g,'""')}","${HtmlToMarkdown.to(res[i+1].innerHTML,p).replace(/"/g,'""')}"\n`; return a; }, ""); m = 'text/csv'; } else if (fmt === 'html') { c = `${res.reduce((a, x, i) => { if(i%2===0 && res[i+1]) a += `
Q: ${x.innerHTML}
A: ${res[i+1].innerHTML}

`; return a; }, "")}`; m = 'text/html'; } else if (fmt === 'md') { c = res.reduce((a, x, i) => { if(i%2===0 && res[i+1]) a += `\n# Q:\n${HtmlToMarkdown.to(x.innerHTML,p)}\n\n# A:\n${HtmlToMarkdown.to(res[i+1].innerHTML,p)}\n\n---\n`; return a; }, ""); m = 'text/markdown'; } else { c = res.reduce((a, x, i) => { if(i%2===0 && res[i+1]) a += `\nQ:\n${x.textContent.trim()}\n\nA:\n${res[i+1].textContent.trim()}\n\n---\n`; return a; }, ""); } const b = new Blob([c.replace(/&/g, "&")], { type: m }); const u = URL.createObjectURL(b), a = document.createElement("a"); a.href = u; a.download = `${t}.${fmt}`; document.body.appendChild(a); a.click(); setTimeout(() => { document.body.removeChild(a); URL.revokeObjectURL(u); }, 0); } }; GM_addStyle(` .ai-export-drag-box { position: fixed; z-index: 2147483646; display: flex; flex-direction: column; align-items: center; justify-content: center; background: rgba(28,28,30,0.85); backdrop-filter: blur(12px); color: #fff; border-radius: 100px; box-shadow: 0 8px 32px rgba(0,0,0,0.2); cursor: move; user-select: none; border: 1px solid rgba(255,255,255,0.1); padding: 10px 20px; font-family: system-ui; font-size: 14px; font-weight: 600; transition: transform 0.2s ease, opacity 0.2s; white-space: nowrap; } .ai-export-drag-box:hover { transform: scale(1.05); } .ai-export-menu-panel { position: absolute; width: max-content; min-width: 150px; background: rgba(255,255,255,0.95); backdrop-filter: blur(20px); border-radius: 16px; padding: 6px; display: none; flex-direction: column; } .pos-bottom-right { bottom: calc(100% + 15px); right: 0; transform-origin: bottom right; animation: aiPopUp 0.3s cubic-bezier(0.16, 1, 0.3, 1); box-shadow: 0 -10px 50px rgba(0,0,0,0.2); } .pos-bottom-left { bottom: calc(100% + 15px); left: 0; transform-origin: bottom left; animation: aiPopUp 0.3s cubic-bezier(0.16, 1, 0.3, 1); box-shadow: 0 -10px 50px rgba(0,0,0,0.2); } .pos-top-right { top: calc(100% + 15px); right: 0; transform-origin: top right; animation: aiPopDown 0.3s cubic-bezier(0.16, 1, 0.3, 1); box-shadow: 0 10px 50px rgba(0,0,0,0.2); } .pos-top-left { top: calc(100% + 15px); left: 0; transform-origin: top left; animation: aiPopDown 0.3s cubic-bezier(0.16, 1, 0.3, 1); box-shadow: 0 10px 50px rgba(0,0,0,0.2); } @media (prefers-color-scheme: dark) { .ai-export-menu-panel { background: rgba(30,30,34,0.9); } .pos-bottom-right, .pos-bottom-left { box-shadow: 0 -10px 50px rgba(0,0,0,0.4), 0 0 0 1px rgba(255,255,255,0.1); } .pos-top-right, .pos-top-left { box-shadow: 0 10px 50px rgba(0,0,0,0.4), 0 0 0 1px rgba(255,255,255,0.1); } } @keyframes aiPopUp { 0% { opacity: 0; transform: scale(0.9) translateY(10px); } 100% { opacity: 1; transform: scale(1) translateY(0); } } @keyframes aiPopDown { 0% { opacity: 0; transform: scale(0.9) translateY(-10px); } 100% { opacity: 1; transform: scale(1) translateY(0); } } .ai-export-menu-item { display: flex; align-items: center; padding: 12px 14px; background: transparent; border: none; border-radius: 10px; text-align: left; cursor: pointer; color: #333; font-size: 13px; font-weight: 500; transition: 0.15s ease; width: 100%; white-space: nowrap; } @media (prefers-color-scheme: dark) { .ai-export-menu-item { color: #eee; } } .ai-export-menu-item:hover { background: rgba(16,163,127,0.15); color: #10a37f; } .ai-export-menu-item.clicked { transform: scale(0.92); background: rgba(16,163,127,0.3); opacity: 0.7; } `); function init() { if (document.querySelector('.ai-export-drag-box')) return; const box = CommonUtil.createElement("div", { className: "ai-export-drag-box" }); box.innerHTML = `
${exportLabel}
`; const menu = CommonUtil.createElement("div", { className: "ai-export-menu-panel" }); ['md', 'json', 'csv', 'txt', 'html'].forEach(ext => { const btn = CommonUtil.createElement("button", { className: "ai-export-menu-item", text: `${exportLabel} .${ext.toUpperCase()}` }); btn.onclick = (e) => { e.stopPropagation(); btn.classList.add('clicked'); setTimeout(() => { btn.classList.remove('clicked'); Chat.export(ext); menu.style.display = 'none'; }, 200); }; menu.appendChild(btn); }); box.appendChild(menu); document.body.appendChild(box); const sX = GM_getValue('x', window.innerWidth - 160), sY = GM_getValue('y', window.innerHeight - 100); box.style.left = Math.max(0, Math.min(sX, window.innerWidth - 120)) + 'px'; box.style.top = Math.max(0, Math.min(sY, window.innerHeight - 60)) + 'px'; let drag = false, moved = false, sX0, sY0, iL, iT; box.onmousedown = (e) => { drag = true; moved = false; sX0 = e.clientX; sY0 = e.clientY; iL = box.offsetLeft; iT = box.offsetTop; e.preventDefault(); }; document.onmousemove = (e) => { if (!drag) return; const dx = e.clientX - sX0, dy = e.clientY - sY0; if (Math.abs(dx) > 3 || Math.abs(dy) > 3) moved = true; box.style.left = (iL + dx) + 'px'; box.style.top = (iT + dy) + 'px'; }; document.onmouseup = () => { if (drag && moved) { GM_setValue('x', box.offsetLeft); GM_setValue('y', box.offsetTop); } drag = false; }; box.onclick = () => { if (!moved) { if (menu.style.display !== 'flex') { const rect = box.getBoundingClientRect(); const isBottom = rect.top > window.innerHeight / 2; const isRight = rect.left > window.innerWidth / 2; menu.className = 'ai-export-menu-panel'; if (isBottom && isRight) menu.classList.add('pos-bottom-right'); else if (isBottom && !isRight) menu.classList.add('pos-bottom-left'); else if (!isBottom && isRight) menu.classList.add('pos-top-right'); else if (!isBottom && !isRight) menu.classList.add('pos-top-left'); menu.style.display = 'flex'; } else { menu.style.display = 'none'; } } }; document.addEventListener("click", (e) => { if (!box.contains(e.target)) menu.style.display = 'none'; }); } if (typeof trustedTypes !== "undefined" && trustedTypes.defaultPolicy === null) { trustedTypes.createPolicy("default", { createHTML: s => s, createScriptURL: s => s, createScript: s => s }); } setTimeout(init, 1000); setInterval(init, 3000); })();