// ==UserScript==
// @name 外语终结者
// @name:af Vreemde taalterminator
// @name:am የውጭ ቋንቋ ተርሚተር
// @name:ar المنهي اللغة الأجنبية
// @name:az Xarici dil terminatoru
// @name:be Тэрмінатар замежнай мовы
// @name:bem Ulupili lwa ku calo cimbi
// @name:bg Терминатор на чужд език
// @name:bn বিদেশী ভাষা টার্মিনেটর
// @name:bo ཕྱི་སྐད་ཀྱི་གཏན་འབེབས།
// @name:bs Terminator stranog jezika
// @name:ca Terminator de la llengua estrangera
// @name:ceb Terminator sa Langyaw nga Langyaw
// @name:ckb زمانی بیانی تێرمیناتۆر
// @name:cs Terminátor cizího jazyka
// @name:cy Terminator Ieithoedd Tramor
// @name:da Fremmedsprog Terminator
// @name:de Fremdsprachterminator
// @name:dv ބޭރު ބަހުގެ ޓާމިނޭޓަރ
// @name:dz ཕྱིའི་སྐད་ཡིག
// @name:el Τερματοφύλακας ξένων γλωσσών
// @name:en Foreign Language Terminator
// @name:eo Fremdlingva Terminatoro
// @name:es Terminador de idiomas extranjeros
// @name:et Võõrkeelne terminaator
// @name:eu Atzerriko hizkuntza terminatzailea
// @name:fa ترمن کننده زبان خارجی
// @name:fi Vieraskielen terminaattori
// @name:fo Útlendskur málsmíðari .
// @name:fr Terminateur en langue étrangère
// @name:gd Termintor cànan cèin
// @name:gl Terminador de linguas estranxeiras
// @name:gu વિદેશી ભાષા સમાપ્તિ
// @name:haw ʻO ka’ōlelo’ōlelo haole
// @name:he שליחות קטלנית בשפה זרה
// @name:hi विदेशी भाषा टर्मिनेटर
// @name:hr Terminator
// @name:ht Terminator lang etranje
// @name:hu Idegen nyelvi terminátor
// @name:hy Օտար լեզուների տերմինատոր
// @name:id Terminator Bahasa Asing
// @name:is Erlend tungumál
// @name:it Terminator in lingua straniera
// @name:ja 外国語ターミネーター
// @name:ka უცხო ენების ტერმინატორი
// @name:kk Шетел тілінің терминаторы
// @name:km ស្ថានីយភាសាបរទេស
// @name:kn ವಿದೇಶಿ ಭಾಷೆಯ ಟರ್ಮಿನೇಟರ್
// @name:ko 외국어 터미네이터
// @name:ku Termînatorê Zimanê biyanî
// @name:ky Чет тилин терминатор
// @name:la Aliena Lingua Terminator
// @name:lb Auslännesch Sproochminator
// @name:lo ປາຍພາສາຕ່າງປະເທດ
// @name:lt Užsienio kalbos terminatorius
// @name:lv Svešvalodas terminators
// @name:mg Terminator fiteny vahiny
// @name:mi Te Whakamutunga Reo Takiwa
// @name:mk Терминатор на странски јазик
// @name:ml വിദേശ ഭാഷാ ടെർമിനേറ്റർ
// @name:mn Гадаад хэлний терминатор
// @name:ms Terminator Bahasa Asing
// @name:mt Terminatur tal-lingwa barranija
// @name:my နိုင်ငံခြားဘာသာစကား Terminator
// @name:ne विदेशी भाषा टर्मिनटर
// @name:nl Foreign Language Terminator
// @name:no Fremmedspråklige terminator
// @name:ny Chilankhulo Chakunja
// @name:pa ਵਿਦੇਸ਼ੀ ਭਾਸ਼ਾ ਦੇ ਟਰਮੀਨੇਟਰ
// @name:pap Terminador di Idioma Stranhero
// @name:pl Terminator języka obcego
// @name:ps د بهرنۍ ژبې ټرمینټر
// @name:pt Terminador de língua estrangeira
// @name:ro Terminator de limbi străine
// @name:ru Терминатор иностранного языка
// @name:rw Ururimi rw’amahanga
// @name:sg Terminator ti yanga ti kodoro wande
// @name:si විදේශ භාෂා ටර්මිනේටරය
// @name:sk Terminátor cudzieho jazyka
// @name:sl Terminator tujega jezika
// @name:sm Fafo eseese gagana
// @name:sn Kunze Kwemutauro Terminator
// @name:so Xaraashka luqadda ajnabiga ah
// @name:sr Терминатор страних језика
// @name:sv Främmande språkterminator
// @name:sw Termiler ya Lugha ya Kigeni
// @name:ta வெளிநாட்டு மொழி டெர்மினேட்டர்
// @name:te విదేశీ భాషా టెర్మినేటర్
// @name:tg Таменятори забони хориҷӣ
// @name:th Terminator ภาษาต่างประเทศ
// @name:ti ናይ ወጻኢ ቋንቋ ተርሚነተር
// @name:tk Daşary ýurtdaky dil terminatoriýasy
// @name:tn Selekane sa Puo ya Dinaga di Sele
// @name:to Ko e Fakaʻauha ʻo e Lea Fakavahaʻapuleʻangá
// @name:tpi Foren Lanwis Temineta
// @name:tr Yabancı Dil Terminatörü
// @name:uk Термінатор іноземної мови
// @name:ur غیر ملکی زبان ٹرمینیٹر
// @name:uz Chet tili terminatori
// @name:vi Terminator ngoại ngữ
// @name:xh Isiphenyi seLwimi seLizwe
// @name:yi פרעמד שפּראַך טערמינאַטאָר
// @name:zh 外语终结者
// @name:zh-CN 外语终结者
// @name:zh-HK 外語終結者
// @name:zh-MO 外語終結者
// @name:zh-MY 外语终结者
// @name:zh-SG 外语终结者
// @name:zh-TW 外語終結者
// @name:zu Isikhungo solimi lwakwamanye amazwe
// @description 识别非中文字符,如果长度大于5且翻译文本中不含中文,则翻译并且替换原始文本到中文
// @description:af Identifiseer nie-Chinese karakters. As die lengte groter is as 5 en die vertaalde teks nie Chinees bevat nie, dan vertaal en vervang die oorspronklike teks aan Chinees.
// @description:am የቻይናውያን ያልሆኑ ቁምፊዎችን መለየት. ርዝመቱ ከ 5 የሚበልጠው እና የተተረጎመው ጽሑፍ ቻይንኛ ከሌለ, የመጀመሪያውን ጽሑፍ ወደ ቻይንኛ ይተርጉሙ.
// @description:ar تحديد الشخصيات غير الصينية. إذا كان الطول أكبر من 5 ولم يحتوي النص المترجم على الصينية ، فترجم واستبدال النص الأصلي إلى الصينية.
// @description:az Çin olmayan simvolları müəyyənləşdirin. Uzunluq 5-dən çoxdursa və tərcümə edilmiş mətnin Çinli yoxdursa, orijinal mətni Çin dilinə tərcümə edin və dəyişdirin.
// @description:be Вызначце некітайскіх персанажаў. Калі даўжыня перавышае 5, а перакладзены тэкст не ўтрымлівае кітайскай, то перакладзе і заменіце арыгінальны тэкст на кітайскую мову.
// @description:bem Ishibeni ifishibilo ifishili fya Kufwaya. Nga ca kuti ubutali bwacila pali 5 kabili amashiwi yapilibulwa tayakwata abaChina, lyene pilibula no kubwesha amashiwi ya kubalilapo aya ku China.
// @description:bg Определете некитайските знаци. Ако дължината е по -голяма от 5 и преведеният текст не съдържа китайски, тогава преведете и заменете оригиналния текст на китайски.
// @description:bn চিনা অ-অক্ষর চিহ্নিত করুন। যদি দৈর্ঘ্য 5 এর চেয়ে বেশি হয় এবং অনুবাদ করা পাঠ্যটিতে চীনা না থাকে তবে মূল পাঠ্যটি চীনা ভাষায় অনুবাদ করুন এবং প্রতিস্থাপন করুন।
// @description:bo རྒྱ་ཡིག་མ་ཡིན་པའི་ཡིག་འབྲུ་ངོས་འཛིན། གལ་ཏེ་རིང་ཚད་དེ་5ལས་ཆེ་བ་དང་བསྒྱུར་བའི་ཡིག་ཆ་དེའི་ནང་རྒྱ་ཡིག་མེད་ན།
// @description:bs Identificirati ne-kineske znakove. Ako je dužina veća od 5, a prevedeni tekst ne sadrži kineski, a zatim prevodite i zamijenite izvorni tekst na kineski.
// @description:ca Identifiqueu caràcters no xinesos. Si la longitud és superior a 5 i el text traduït no conté xinès, traduïu i substituïu el text original al xinès.
// @description:ceb Ilha ang mga karakter nga dili-Chinese. Kung ang gitas-on labaw sa 5 ug ang gihubad nga teksto wala maglangkob sa mga Intsik, unya paghubad ug pag-ilis sa orihinal nga teksto sa Intsik.
// @description:ckb کارەکتەرە غەیرە چینییەکان بناسە. ئەگەر درێژییەکەی لە ٥ زیاتر بێت و دەقی وەرگێڕدراو چینی تێدا نەبێت، ئەوا دەقی ڕەسەنی وەرگێڕان و گۆڕینی بۆ زمانی چینی.
// @description:cs Identifikujte nečínské znaky. Pokud je délka větší než 5 a přeložený text neobsahuje čínštinu, přeložte a vyměňte původní text na čínštinu.
// @description:cy Nodi cymeriadau nad ydynt yn Tsieineaidd. Os yw’r hyd yn fwy na 5 ac nad yw’r testun wedi’i gyfieithu yn cynnwys Tsieinëeg, yna cyfieithwch a disodli’r testun gwreiddiol i Tsieinëeg.
// @description:da Identificer ikke-kinesiske karakterer. Hvis længden er større end 5, og den oversatte tekst ikke indeholder kinesisk, skal du oversætte og udskifte den originale tekst til kinesisk.
// @description:de Identifizieren Sie nicht chinesische Charaktere. Wenn die Länge größer als 5 ist und der übersetzte Text kein Chinesen enthält, übersetzen und ersetzen Sie den Originaltext in Chinesisch.
// @description:dv ޗައިނާ ނޫން އަކުރުތައް ދެނެގަތުން. ދިގުމިން 5 އަށްވުރެ ބޮޑުވެ، ތަރުޖަމާކޮށްފައިވާ ލިޔުމުގައި ޗައިނީސް ނުހިމެނޭނަމަ، އޭރުން އަސްލު ލިޔުން ޗައިނީޒް އަށް ތަރުޖަމާކޮށް ބަދަލުކޮށްލާށެވެ.
// @description:dz རྒྱ་ནག་མིན་པའི་ཡིག་འབྲུ་ཚུ་ངོས་འཛིན་འབད། རིང་ཚད་འདི་ ༥ ལས་སྦོམ་དང་ སྐད་སྒྱུར་འབད་ཡོད་པའི་ཚིག་ཡིག་ནང་རྒྱ་ཡིག་མེད་པ་ཅིན་ དེ་ལས་ ཚིག་ཡིག་ངོ་མ་འདི་ རྒྱ་ནག་ལུ་སྐད་སྒྱུར་འབད་དེ་ ཚབ་བཙུགས་དགོ།
// @description:el Προσδιορίστε τους μη κινέζους χαρακτήρες. Εάν το μήκος είναι μεγαλύτερο από 5 και το μεταφρασμένο κείμενο δεν περιέχει κινέζικα, τότε μεταφράζει και αντικαταστήστε το αρχικό κείμενο στους Κινέζους.
// @description:en Identify non-Chinese characters. If the length is greater than 5 and the translated text does not contain Chinese, then translate and replace the original text to Chinese.
// @description:eo Identigu ne-ĉinajn signojn. Se la longo estas pli granda ol 5 kaj la tradukita teksto ne enhavas ĉinan, tiam traduki kaj anstataŭigi la originalan tekston al la ĉina.
// @description:es Identificar personajes no chinos. Si la longitud es mayor que 5 y el texto traducido no contiene chino, traduzca y reemplace el texto original al chino.
// @description:et Tuvastage mitte-Hiina tähemärgid. Kui pikkus on suurem kui 5 ja tõlgitud tekst ei sisalda hiina keelt, siis tõlkige ja asendage algtekst hiina keeles.
// @description:eu Identifikatu txinatar ez diren karaktereak. Luzera 5 baino handiagoa bada eta itzulitako testuak ez du txinatarrerik, eta ondoren jatorrizko testua txinerara itzuli eta ordezkatu.
// @description:fa شخصیت های غیر چینی را شناسایی کنید. اگر طول بیشتر از 5 باشد و متن ترجمه شده حاوی چینی نباشد ، متن اصلی را به چینی ترجمه و جایگزین کنید.
// @description:fi Tunnista ei-kiinalaiset merkit. Jos pituus on suurempi kuin 5 ja käännetty teksti ei sisällä kiinaa, käännä ja korvaa alkuperäinen teksti kiinaksi.
// @description:fo Greina ikki-kinesiskar persónar. Um longdin er størri enn 5 og týddi teksturin ikki inniheldur kinesiskt, so týðir og skift upprunatekstin út til kinesarar.
// @description:fr Identifiez les caractères non chinois. Si la longueur est supérieure à 5 et que le texte traduit ne contient pas de chinois, traduisez et remplacez le texte d’origine en chinois.
// @description:gd Comharraich caractaran neo-Sìneach. Ma tha an fhad as motha na 5 agus chan eil Sìneach eadar-theangaichte ann an teacsa eadar-theangaichte, agus an uairsin eadar-theangachadh agus cuir an teacsa tùsail a-steach agus cuir an teacsa tùsail a dh ’ionnsaigh Sìneach.
// @description:gl Identificar personaxes non chineses. Se a lonxitude é superior a 5 e o texto traducido non contén chinés, logo traduce e substitúe o texto orixinal ao chinés.
// @description:gu બિન-ચાઇનીઝ અક્ષરો ઓળખો. જો લંબાઈ 5 કરતા વધારે હોય અને અનુવાદિત ટેક્સ્ટમાં ચાઇનીઝ શામેલ નથી, તો પછી મૂળ લખાણને ચાઇનીઝમાં ભાષાંતર કરો અને બદલો.
// @description:haw E hoʻomaopopo i nā hualoaʻaʻole. Ināʻoi aku ka lōʻihi o ka lōʻihi ma mua o 5 aʻaʻole i loaʻa kaʻatikala i unuhiʻia, a laila unuhi a hoʻololi i ka’ōlelo mua i ka Kina.
// @description:he זהה דמויות שאינן סיניות. אם האורך גדול מ- 5 והטקסט המתורגם אינו מכיל סיני, אז תרגם והחליף את הטקסט המקורי לסינית.
// @description:hi गैर-चीनी वर्णों की पहचान करें। यदि लंबाई 5 से अधिक है और अनुवादित पाठ में चीनी नहीं है, तो मूल पाठ को चीनी में अनुवाद और बदलें।
// @description:hr Identificirajte ne-kineske znakove. Ako je duljina veća od 5, a prevedeni tekst ne sadrži kineski, zatim prevedite i zamijenite izvorni tekst na kineski.
// @description:ht Idantifye karaktè ki pa Chinwa. Si longè a pi gran pase 5 ak tèks la tradui pa gen Chinwa, Lè sa a, tradui ak ranplase tèks orijinal la nan Chinwa.
// @description:hu Azonosítsa a nem kínai karaktereket. Ha a hossz nagyobb, mint 5, és a lefordított szöveg nem tartalmaz kínaiul, akkor fordítsa le és cserélje ki az eredeti szöveget kínaira.
// @description:hy Բացահայտեք ոչ չինական նիշերը: Եթե երկարությունը 5-ից ավելին է, իսկ թարգմանված տեքստը չի պարունակում չինական, ապա թարգմանեք եւ բնօրինակ տեքստը փոխարինեք չինարեն:
// @description:id Identifikasi karakter non-Cina. Jika panjangnya lebih besar dari 5 dan teks yang diterjemahkan tidak mengandung bahasa Mandarin, maka terjemahkan dan ganti teks asli ke Cina.
// @description:is Þekkja stafir sem ekki eru kínverskar. Ef lengdin er meiri en 5 og þýddi textinn inniheldur ekki kínversku, þá þýða og skipta um frumtexta fyrir kínversku.
// @description:it Identifica i personaggi non cinesi. Se la lunghezza è maggiore di 5 e il testo tradotto non contiene cinese, quindi tradurre e sostituire il testo originale in cinese.
// @description:ja 中国人以外のキャラクターを特定します。長さが5を超え、翻訳されたテキストに中国語が含まれていない場合は、元のテキストを中国語に翻訳して置き換えます。
// @description:ka იდენტიფიცირება არა ჩინური პერსონაჟები. თუ სიგრძე 5 -ზე მეტია და თარგმნილი ტექსტი არ შეიცავს ჩინურს, მაშინ თარგმნეთ და შეცვალეთ ორიგინალი ტექსტი ჩინურად.
// @description:kk Қытай емес таңбаларды анықтаңыз. Егер ұзындығы 5-тен үлкен болса және аударылған мәтінде қытай болмаса, түпнұсқалық мәтінді қытай тіліне аударыңыз және ауыстырыңыз.
// @description:km កំណត់អត្តសញ្ញាណអក្សរមិនមែនចិន។ ប្រសិនបើប្រវែងធំជាង 5 ហើយអត្ថបទដែលបានបកប្រែមិនមានជនជាតិចិនទេបន្ទាប់មកបកប្រែហើយជំនួសអត្ថបទដើមទៅចិន។
// @description:kn ಚೀನೀ ಅಲ್ಲದ ಅಕ್ಷರಗಳನ್ನು ಗುರುತಿಸಿ. ಉದ್ದವು 5 ಕ್ಕಿಂತ ಹೆಚ್ಚಿದ್ದರೆ ಮತ್ತು ಅನುವಾದಿತ ಪಠ್ಯವು ಚೈನೀಸ್ ಅನ್ನು ಹೊಂದಿರದಿದ್ದರೆ, ಮೂಲ ಪಠ್ಯವನ್ನು ಅನುವಾದಿಸಿ ಮತ್ತು ಬದಲಾಯಿಸಿ.
// @description:ko 비 중국어 캐릭터를 식별하십시오. 길이가 5보다 크고 번역 된 텍스트에 중국어가 포함되지 않으면 원본 텍스트를 중국어로 번역하고 교체하십시오.
// @description:ku Tîpên ne-Chineseînî nas bikin. Heke dirêjahî ji 5 mezintir e û nivîsa wergerandî çînî nîne, wê hingê nivîsa orjînal ji Chineseînî wergerîne.
// @description:ky Кытайдан эмес белгилерди аныктоо. Эгерде узундугу 5тен чоң болсо жана которулган текст кытайча жок болсо, анда которуп, баштапкы текстти кытайга алмаштырыңыз.
// @description:la Identify non-Seres ingenia. Si longitudo est maior quam V et translata illud non habet Sinica, tunc translate et reponere originale illud ad Chinese.
// @description:lb Identifizéieren net-chinesesch Zeechen. Wann d’Längt méi grouss ass wéi 5 an den iwwerdriwwenen Text enthält net Chinesesch, dann iwwersetzt an ersetzt den originale Text op Chinesesch.
// @description:lo ລະບຸຕົວອັກສອນທີ່ບໍ່ແມ່ນຈີນ. ຖ້າຄວາມຍາວສູງກວ່າ 5 ແລະຕົວຫນັງສືທີ່ແປບໍ່ມີພາສາຈີນ, ຈາກນັ້ນແປແລະປ່ຽນແທນຂໍ້ຄວາມເດີມເປັນພາສາຈີນ.
// @description:lt Nustatykite ne Kinijos simbolius. Jei ilgis yra didesnis nei 5, o išverstame tekste nėra kinų kalbos, tada išverskite ir pakeiskite originalų tekstą kinų kalba.
// @description:lv Identificēt rakstzīmes, kas nav ķīnieši. Ja garums ir lielāks par 5 un tulkotajā tekstā nav ķīniešu, tad tulkojiet un nomainiet oriģinālo tekstu ķīniešu valodā.
// @description:mg Fantaro ireo toetran’ny tsy shinoa. Raha ny halavany dia lehibe noho ny 5 ary ny lahatsoratra nadika dia tsy misy sinoa, dia adika sy hanolo ny lahatsoratra tany am-boalohany amin’ny sinoa.
// @description:mi Tautuhia nga tohu kore-Hainamana. Mena he nui ake te roa o te 5 me te kuputuhi whakamaori kaore i te Hainamana, katahi ka whakamaori me te whakakapi i te tuhinga taketake ki te Hainamana.
// @description:mk Идентификувајте не-кинески знаци. Ако должината е поголема од 5 и преведениот текст не содржи кинески, тогаш преведете го и заменете го оригиналниот текст на кинески.
// @description:ml ചൈനീസ് ഇതര പ്രതീകങ്ങൾ തിരിച്ചറിയുക. ദൈർഘ്യം 5 നേക്കാൾ വലുതാണെങ്കിൽ, വിവർത്തനം ചെയ്ത വാചകത്തിന് ചൈനീസ് അടങ്ങിയിട്ടില്ലെങ്കിൽ, തുടർന്ന് വിവർത്തനം ചെയ്ത് യഥാർത്ഥ വാചകം ചൈനീസ് ഭാഷയിലേക്ക് വിവർത്തനം ചെയ്യുക.
// @description:mn Хятад бус тэмдэгтүүдийг тодорхойлох. Хэрэв урт нь 5-аас их байвал орчуулсан текст нь хятад хэлийг агуулаагүй бол эх текстийг хятад хэлээр хятадаар орчуулж, сольж, сольж, сольж, эх текстийг Хятад руу орчуулж, сольж, сольж, солино.
// @description:ms Kenal pasti watak bukan Cina. Jika panjangnya lebih besar daripada 5 dan teks yang diterjemahkan tidak mengandungi bahasa Cina, kemudian menterjemahkan dan menggantikan teks asal kepada Cina.
// @description:mt Identifika karattri mhux Ċiniżi. Jekk it-tul huwa akbar minn 5 u t-test tradott ma fihx Ċiniż, imbagħad jittraduċi u ibdel it-test oriġinali għaċ-Ċiniż.
// @description:my တရုတ်မဟုတ်သောစာလုံးများကိုခွဲခြားသတ်မှတ်ပါ။ အကယ်. အရှည်သည် 5 ထက်ကြီးပြီးဘာသာပြန်ထားသောစာသားတွင်တရုတ်မပါ 0 င်ပါ။ ထို့နောက်မူရင်းစာသားကိုတရုတ်သို့ဘာသာပြန်။ အစားထိုးလိုက်ပါ။
// @description:ne गैर-चिनियाँ पात्रहरू पहिचान गर्नुहोस्। यदि लम्बाई and र अनुवादित पदभन्दा बढी हुन्छ भने चिनियाँ हुँदैन, त्यसपछि अनुवाद र मूल पाठलाई चिनियाँमा बदल्नुहोस्।
// @description:nl Identificeer niet-Chinese karakters. Als de lengte groter is dan 5 en de vertaalde tekst geen Chinees bevat, vertaal en vervangt u de originele tekst naar Chinees.
// @description:no Identifiser ikke-kinesiske tegn. Hvis lengden er større enn 5 og den oversatte teksten ikke inneholder kinesisk, kan du oversette og erstatte originalteksten til kinesisk.
// @description:ny Dziwani zilembo zosadziwika. Ngati kutalika kuli wamkulu kuposa 5 ndipo mawu omasuliridwa alibe Chitchaina, ndiye kutanthauzira ndikusintha zolemba zoyambirira ku China.
// @description:pa ਗੈਰ ਚੀਨੀ ਅੱਖਰਾਂ ਦੀ ਪਛਾਣ ਕਰੋ. ਜੇ ਲੰਬਾਈ 5 ਤੋਂ ਵੱਧ ਹੈ ਅਤੇ ਅਨੁਵਾਦਿਤ ਕੀਤੇ ਟੈਕਸਟ ਵਿੱਚ ਚੀਨੀ ਸ਼ਾਮਲ ਨਹੀਂ ਹਨ, ਤਾਂ ਅਸਲ ਪਾਠ ਨੂੰ ਚੀਨੀ ਵਿੱਚ ਬਦਲੋ.
// @description:pap Identifiká karakternan no-chineso. Si e largura ta mas grandi ku 5 i e teksto tradusí no ta kontené Chines, anto tradusí i remplasá e teksto original na chines.
// @description:pl Zidentyfikuj postacie nie-chińskie. Jeśli długość jest większa niż 5, a przetłumaczony tekst nie zawiera chińskiego, tłumacz i zastąp oryginalny tekst na chiński.
// @description:ps غیر چینایی حروف وپیژنئ. که چیرې اوږدوالی له 5 څخه لوی وي او وژونکي متن چینایی نه لري، نو بیا اصلي متن چینایانو ته وژباړئ.
// @description:pt Identifique caracteres não chineses. Se o comprimento for maior que 5 e o texto traduzido não contiver chinês, traduza e substitua o texto original para os chineses.
// @description:ro Identificați caracterele non-chineze. Dacă lungimea este mai mare de 5 și textul tradus nu conține chineză, atunci traduceți și înlocuiți textul original în chineză.
// @description:ru Определить некитайские персонажи. Если длина больше 5, а переведенный текст не содержит китайцев, переводите и замените исходный текст на китайский.
// @description:rw Menya inyuguti zitari Abashinwa. Niba uburebure burenze 5 kandi inyandiko yahinduwe ntabwo irimo Abashinwa, hanyuma uhindure kandi usimbuze inyandiko yumwimerere kubashinwa.
// @description:sg Fa azo so ayeke azo ti Chine pëpe. Tongana yongo ni ayeke kota ahon 5 na mbeti so a kiri pekoni ayeke na yanga ti Chinois pëpe, na pekoni kiri peko ti atënë ti tongo nda ni na yanga ti Chinois.
// @description:si චීන නොවන අක්ෂර හඳුනා ගන්න. දිග 5 ට වඩා වැඩි නම් සහ පරිවර්තනය කළ පා text යේ චීන අඩංගු නොවේ, පසුව මුල් පිටපත චීන වෙත පරිවර්තනය කර ප්රතිස්ථාපනය කරන්න.
// @description:sk Identifikujte nekominské znaky. Ak je dĺžka väčšia ako 5 a preložený text neobsahuje čínštinu, potom preložte a nahradí pôvodný text do čínštiny.
// @description:sl Prepoznajte ne-kitajske znake. Če je dolžina večja od 5 in prevedeno besedilo ne vsebuje kitajske, nato prevedete in zamenjajte izvirno besedilo v kitajsko.
// @description:sm Faailoa ni tagata Saina-Saina. Afai o le umi e sili atu nai lo le 5 ma o le faʻaliliuga o tusitusiga e le o iai Saina, ona faʻaliliu lea ma sui le uluaʻi tusitusiga i le Saina.
// @description:sn Ziva vasiri-Chinese mavara. Kana urefu hwakakura kupfuura mashanu uye mavara akashandurwa haana chiChinese, wobva wadudzira uye kutsiva zvinyorwa zvekutanga kuChinese.
// @description:so Aqoonso jilayaasha aan Shiinaha ahayn. Haddii dhererka uu ka weyn yahay 5 oo qoraalka la tarjumay kuma jiro Shiinaha, ka dibna tarjunto oo ku beddelo qoraalka asalka ah ee Shiinaha.
// @description:sr Идентификовати не-кинеске знакове. Ако је дужина већа од 5, а преведени текст не садржи кинески, а затим преведите и замените оригинални текст на кинески.
// @description:sv Identifiera icke-kinesiska karaktärer. Om längden är större än 5 och den översatta texten inte innehåller kinesiska, översätta och ersätta och ersätta originaltexten till kinesiska.
// @description:sw Tambua herufi zisizo za Wachina. Ikiwa urefu ni mkubwa kuliko 5 na maandishi yaliyotafsiri hayana Kichina, basi tafsiri na ubadilishe maandishi ya asili kwa Wachina.
// @description:ta சீன அல்லாத எழுத்துக்களை அடையாளம் காணவும். நீளம் 5 ஐ விட அதிகமாக இருந்தால், மொழிபெயர்க்கப்பட்ட உரையில் சீனர்கள் இல்லை என்றால், அசல் உரையை சீன மொழியில் மொழிபெயர்த்து மாற்றவும்.
// @description:te చైనీస్ కాని అక్షరాలను గుర్తించండి. పొడవు 5 కన్నా ఎక్కువ మరియు అనువదించబడిన వచనంలో చైనీస్ లేకపోతే, అప్పుడు అసలు వచనాన్ని చైనీయులకు అనువదించండి మరియు భర్తీ చేయండి.
// @description:tg Аломатҳои ғайридавлиро муайян кунед. Агар дарозии дароз аз 5 бошад ва матни тарҷумашуда Чинро дар бар гирад, пас тарҷума ва иваз кардани матни аслӣ ба чинӣ.
// @description:th ระบุอักขระที่ไม่ใช่ภาษาจีน หากความยาวมากกว่า 5 และข้อความที่แปลไม่มีภาษาจีนให้แปลและแทนที่ข้อความต้นฉบับเป็นภาษาจีน
// @description:ti ቻይናውያን ዘይኮኑ ፊደላት ምልላይ። እቲ ንውሓት ካብ 5 ንላዕሊ እንተኾይኑን እቲ ዝተተርጎመ ጽሑፍ ቻይናዊ እንተዘይሓዚኡን፡ ሽዑ ነቲ መበቆላዊ ጽሑፍ ናብ ቻይናዊ ተርጒምካ ተኪእዎ።
// @description:tk Hytaý däl nyşanlary kesgitläň. Uzynlygy 5-den uly bolsa we terjime edilen tekstde hytaý dilini öz içine almasa, asyl teksti hytaý diline terjime ediň we çalyşyň.
// @description:tn Supa baanelwa ba e seng ba China. Fa boleele bo le bogolo go feta 5 mme mokwalo o o ranotsweng ga o na Setšhaena, ra fetolela le go emisetsa mokwalo wa ntlhantlha kwa Setšhaeneng.
// @description:to Fakaʻilongaʻi ʻa e ngaahi ʻulungaanga ʻikai faka-Siaina. Kapau ’oku lahi ange ’a e loloa ’i he 5 pea ’oku ’ikai ke ’i ai ’a e lea faka-Siaina ’a e tohi kuo liliu, pea liliu pea fetongi ’a e ’uluaki tohi ki he lea faka-Siaina.
// @description:tpi Luksave long ol manmeri i no bilong Saina. Sapos longpela bilong en i winim 5-pela na teks ol i tanim i no gat tok Saina, orait tanim na senisim as teks i go long tok Saina.
// @description:tr Çinli olmayan karakterleri tanımlayın. Uzunluk 5’ten büyükse ve çevrilmiş metin Çince içermiyorsa, orijinal metni çevirin ve değiştirin.
// @description:uk Визначте некитайські символи. Якщо довжина перевищує 5, а перекладений текст не містить китайців, то перекладіть та замініть оригінальний текст на китайську.
// @description:ur غیر چینی حروف کی شناخت کریں۔ اگر لمبائی 5 سے زیادہ ہے اور ترجمہ شدہ متن میں چینی نہیں ہے تو ، پھر اصل متن کو چینی میں ترجمہ اور تبدیل کریں۔
// @description:uz Xitoylik bo’lmagan belgilarni aniqlang. Agar uzunligi 5 dan katta bo’lsa va tarjima qilingan matnda xitoy tilida emas, keyin asl matnni xitoy tiliga almashtiring va almashtiring.
// @description:vi Xác định các ký tự không phải người Trung Quốc. Nếu độ dài lớn hơn 5 và văn bản dịch không chứa tiếng Trung, thì hãy dịch và thay thế văn bản gốc sang tiếng Trung.
// @description:xh Chonga oonobumba abangasesikolweni. Ukuba ubude bungaphezulu kwe-5 kunye nesicatshulwa esiguquliweyo asinayo i-chinese, emva koko siguqulele size sibuyise isicatshulwa sokuqala kwi-chinese.
// @description:yi ידענטיפיצירן ניט-כינעזיש אותיות. אויב די לענג איז גרעסער ווי 5 און די איבערגעזעצט טעקסט כּולל ניט כינעזיש, איבערזעצן און פאַרבייַטן די אָריגינעל טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש טעקסט צו כינעזיש.
// @description:zh 识别非中文字符,如果长度大于5且翻译文本中不含中文,则翻译并且替换原始文本到中文
// @description:zh-CN 识别非中文字符,如果长度大于5且翻译文本中不含中文,则翻译并且替换原始文本到中文
// @description:zh-HK 識別非中文字符,如果長度大於5且翻譯文本中不含中文,則翻譯並且替換原始文本到中文
// @description:zh-MO 識別非中文字符,如果長度大於5且翻譯文本中不含中文,則翻譯並且替換原始文本到中文
// @description:zh-MY 识别非中文字符,如果长度大于5且翻译文本中不含中文,则翻译并且替换原始文本到中文
// @description:zh-SG 识别非中文字符,如果长度大于5且翻译文本中不含中文,则翻译并且替换原始文本到中文
// @description:zh-TW 識別非中文字符,如果長度大於5且翻譯文本中不含中文,則翻譯並且替換原始文本到中文
// @description:zu Khomba izinhlamvu ezingezona amaShayina. Uma ubude bukhulu kuno-5 futhi umbhalo ohunyushiwe awuqukethe isiShayina, bese uhumusha bese ubuyisela umbhalo wokuqala ku-Chinese.
// @namespace https://github.com/ChinaGodMan/UserScripts
// @version 1.4.0.0
// @license MIT
// @author 人民的勤务员 <[email protected]>
// @match *://*/*
// @grant GM_xmlhttpRequest
// @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAzFBMVEUAAADqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTInqTIn////yp7387vL2zdjvka7uian99ff30dv52eH++Pr64ujwnLXtgKPyrL/rVY32yNT1xtPrXpHrWY764ef99/j++vvqUIr65Or53+bwm7TugqTtfKHteqD1wc/88fT2ytX76Oz41N30u8vxpLvzscPsapdcPEFQAAAAHXRSTlMA2JQoSQiLNvfnfz8Q8My5sW/fX1ROGr+hmCAbpYFuRDsAAAOsSURBVHja7dtrU9pAFMbxVYvi/X7vWQLBEA0QInewivX7f6dqu7OHsJDNMrN7pmN+L8U2/4aHRNrCFlzt/7Br54CtVLq82QX7jrZ3lh/+1PrRseGSKX6cgUvXdyxtGxw7vEid/mNwb4+hE6BwSnT+0b44/j4QORPXhA2gssm+nAOZ8h2eABrbjLEdILRL9xLAF8IRkMCrURkonbAtILVRBOQLmNSED9CwFFDlQgU0ioBvHOB7KWEwHcZOA2pc0X2rEQWgZEQcwLuznnnAR2XRgAtV5SEMWCGIjQNq3ID+F/Vj4gAe9IgD+Iw6oDtyEBD7KcPpC0eJ/QBVL2pwyXcYgMZ1+V1vJAEwbsgVdNYK8KqCx4VBVejmCYBIdg7XCghWX4rruQJ6colTmgCY4m9FEzDkQkgU4Ms5FQFFQBFQBKwVED4KAy60xReGjXwBI08YOL4dq4qAbxTQrgsBTUDzWT40IQmIuNQmCQi5VO+sGTB5WORxIVQegrQnPued4C+pfvE5ifuADk4QZ+gyIOIpbecBIU957jgNwAniDF0G4ARR4jQAJ4gmTgMirmg5DQjl+F7l1bDpMAAn2Ipwhg4DcIJPcQNn6CygKQ8aAlQ1MzQLwB8y3nNNsDL/dLRd/bMdTrDxNbx+1gwtBKT+zMr5UNgIaOEE4VM8twiFjYDm4gFxhmNQ6QMGnjAClGuCkfKUrBXgccFfZ4KQmmHPZoB6FVzysrQdoE4wPcPEfkBHHuylIvVxhtYDIp6pZT0g5JnqTcsBI65RsRzQ4hqJpQCcoM7ENACf1UfQqnCtlnFAoLmQKrG6GZoGTOULu6e/CuZQMQ0Y4s0l/wQfqovkOgamAXFX3l3GunfEGVt/wBkaBsAbPn/ZBZWs0+zjDE0DfC41oowd4G33ednQXnGGhgGQcPTSHvop8fIbseo3nh/TgFGXr1ZbfiNWxThD0wCY5QnACYagUH42NAvoBVkB6gR1W2qbBkDc1wRoJogzxO8wCoA40AQoE9TM0DQAerPuigD1HbH+XpnoA1SjJCugk+f9D0aODQKQ/9ZdEqCdIBrhDI0CUGc4DUIvxReXek94xYFlvMvqiy/8f/+rVioCioAiwEJACUhdk33IBj9mcwOULhi7BELlA8ZKh0DnhH3aAxL4ebsDulNwwv46BSLlLfbPMdA4ZcLBGVD4yaStXXDvuMTQ/RG4dlti80qb4NThOVu043CK5c0rhjDh1s0UNvbw8ErD+famXXsX92zeHzuqGriI4sATAAAAAElFTkSuQmCC
// @iconbak https://immersive-translate.owenyoung.com/favicon.png
// @grant GM_getValue
// @grant GM_addStyle
// @grant GM_setValue
// @grant GM_registerMenuCommand
// @connect translate.googleapis.com
// @supportURL https://github.com/ChinaGodMan/UserScripts/issues
// @homepageURL https://github.com/ChinaGodMan/UserScripts
// ==/UserScript==
//https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=zh-CN&dj=1&dt=t&dt=rm&q=你好
(function () {
'use strict'
// 添加一个对象来跟踪已经翻译过的节点
var translatedNodes = {}
var skipClasses = GM_getValue('skipClasses') || ['prettyprint', 'linenums', 'lang-js']
// 创建一个 MutationObserver 实例
var observer = new MutationObserver(function (mutationsList) {
// 遍历每一个发生变化的 mutation
for (var mutation of mutationsList) {
// 检查是否有子节点被添加到文档中
//if (mutation.type === 'childList') {
// 遍历新增加的节点
mutation.addedNodes.forEach(function (addedNode) {
// 如果新增节点是元素节点,可以递归扫描子节点以查找文本内容
if (addedNode.nodeType === Node.ELEMENT_NODE) {
if (!isInsidePreCode(addedNode)) {
scanTextNodes(addedNode)
}
// scanTextNodes(addedNode);
// console.log("New element node added:", addedNode.nodeName);
}
})
// }
}
})
function isInsidePreCode(node) {
while (node) {
if (node.matches && node.matches('pre')) {
return true
}
node = node.parentElement
}
return false
}
// 配置 MutationObserver 监听的目标节点和观察的属性
var config = { childList: true, subtree: true }
// 开始监听文档的变化
observer.observe(document.body, config)
// 添加或移除翻译功能
function toggleTranslation() {
var currentSite = window.location.hostname
var enabledSites = GM_getValue('enabledSites') || []
if (enabledSites.includes(currentSite)) {
enabledSites = enabledSites.filter(function (site) {
return site !== currentSite
})
GM_setValue('enabledSites', enabledSites)
Toast('已移出翻译!', 3000, 'rgba(0, 128, 0, 0.7)', '#fff')
location.reload()
} else {
enabledSites.push(currentSite)
GM_setValue('enabledSites', enabledSites)
Toast('已添加翻译!', 3000, 'rgba(0, 128, 0, 0.7)', '#fff')
location.reload()
}
}
function shouldSkipElement(element) {
// 跳过类名包含 "prettyprint"、"linenums" 和 "lang-js" 的元素
if (element.classList.contains('prettyprint') ||
element.classList.contains('linenums') ||
element.classList.contains('lang-js')) {
return true
}
// 还可以根据其他需要跳过的条件进行判断
return false
}
// 编辑生效站点列表
function editSites() {
// 检查是否已经存在编辑窗口
if (document.getElementById('editorContainer')) {
return
}
var enabledSites = GM_getValue('enabledSites') || []
var siteList = enabledSites.join('\n')
var editorWindow = document.createElement('div')
editorWindow.innerHTML = `
<div id="editorContainer" style="position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); background: white; padding: 20px; border: 1px solid #ccc; border-radius: 5px; z-index: 9999;">
<textarea id="siteList" style="width: 300px; height: 200px; margin-bottom: 10px;">${siteList}</textarea><br>
<button id="saveButton" style="padding: 5px 10px; background: #007bff; color: #fff; border: none; border-radius: 3px; cursor: pointer;">保存</button>
<button id="cancelButton" style="margin-left: 10px; padding: 5px 10px; background: #ccc; color: #333; border: none; border-radius: 3px; cursor: pointer;">取消</button>
</div>
<div id="overlay" style="position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); z-index: 999;"></div>
`
document.body.appendChild(editorWindow)
var saveButton = document.getElementById('saveButton')
var cancelButton = document.getElementById('cancelButton')
var siteListTextarea = document.getElementById('siteList')
var overlay = document.getElementById('overlay')
saveButton.addEventListener('click', function () {
var editedSites = siteListTextarea.value.split('\n').map(function (site) {
return site.trim()
}).filter(Boolean)
GM_setValue('enabledSites', editedSites)
Toast('已保存生效站点列表!', 3000, 'rgba(0, 128, 0, 0.7)', '#fff')
document.body.removeChild(editorWindow)
document.body.removeChild(overlay)
})
cancelButton.addEventListener('click', function () {
document.body.removeChild(editorWindow)
document.body.removeChild(overlay)
})
}
// 注册油猴菜单命令
GM_registerMenuCommand(isCurrentSiteEnabled() ? '移出翻译' : '添加翻译', toggleTranslation)
GM_registerMenuCommand('编辑生效站点', editSites)
// GM_registerMenuCommand('开启/关闭高亮和删除功能', toggleMouseListeners)
// 递归遍历给定节点及其后代(深度优先搜索)
function scanTextNodes(node) {
if (!node.parentNode || !document.body.contains(node)) {
return
}
switch (node.nodeType) {
case Node.ELEMENT_NODE:
if (node.tagName.toLowerCase() === 'script' || node.isContentEditable) {
return
}
if (shouldSkipElement(node)) {
return
}
if (shouldTranslateNode(node)) { // 检查是否应该翻译该节点
node.childNodes.forEach(scanTextNodes)
}
break
case Node.TEXT_NODE:
var text = node.nodeValue.trim()
if (!containsChinese(text) && text.length > 5 && isCurrentSiteEnabled() && shouldTranslateNode(node.parentNode)) {
translateText(node, text)
}
break
}
}
// 检查当前站点是否在生效站点列表中
function isCurrentSiteEnabled() {
var currentSite = window.location.hostname
var enabledSites = GM_getValue('enabledSites') || []
return enabledSites.includes(currentSite)
}
// 检查字符串是否含中文或者片假字
function containsChinese(str) {
// 日文片假字范围:\u3040-\u30FF\uFF66-\uFF9F
var katakanaRegex = /[\u3040-\u30FF\uFF66-\uFF9F]/
if (katakanaRegex.test(str)) {
return false // 如果包含日文片假字,则返回 false
}
// 中文字符范围:\u4E00-\u9FA5
var chineseRegex = /[\u4E00-\u9FA5]/
return chineseRegex.test(str) // 返回是否包含中文字符
}
// 检查字符串是否含有数字
function containsNumbers(str) {
return /^[a-z\u4E00-\u9FA5\s]+$/i.test(str)
}
// 检查字符串是否为网址
function isURL(str) {
return /((https?:\/\/|www\.)[\x21-\x7e]+[\w/=]|\w([\w.\-])+@\w[\w.\-]+\.(com|cn|org|net|info|tv|cc|gov|edu)|(\w[\w.\-]+\.(com|cn|org|net|info|tv|cc|gov|edu))(\/[\x21-\x7e]*[\w/])?|ed2k:\/\/[\x21-\x7e]+\|\/|thunder:\/\/[\x21-\x7e]+=)/i.test(str)
}
// 检查是否应该翻译该节点
function shouldTranslateNode(node) {
// 检查是否已经翻译过该节点
return !translatedNodes[node.textContent]
}
// 翻译文本
function translateText(node, text) {
// 检查是否已经翻译过该节点
if (translatedNodes[node.textContent]) {
return
}
var api = 'https://translate.googleapis.com/translate_a/single'
var params = {
client: 'gtx',
dt: 't',
sl: 'auto',
tl: 'zh-CN',
q: text
}
GM_xmlhttpRequest({
method: 'GET',
url: api + buildQueryString(params),
onload: function (response) {
try {
var data = JSON.parse(response.responseText.replace('\'', '\u2019'))
var translatedText = data[0].reduce((acc, item) => acc + item[0], '')
showTranslation(node, text, translatedText)
// 标记该节点已经翻译过
translatedNodes[node.textContent] = true
} catch (error) {
console.error('翻译失败:', error)
}
},
onerror: function (response) {
console.error('请求翻译失败:', response.statusText)
}
})
}
// 构建查询字符串
function buildQueryString(params) {
return '?' + Object.keys(params).map(function (key) {
return encodeURIComponent(key) + '=' + encodeURIComponent(params[key])
}).join('&')
}
// 显示翻译
// 显示翻译
function showTranslation(node, originalText, translatedText) {
// 创建 <ruby> 元素和 <rt> 元素
var rubyElement = document.createElement('ruby') // 创建包含音标的元素
var rtElement = document.createElement('rt') // 创建音标元素
// 设置音标元素的文本内容
rtElement.textContent = translatedText
// 设置音标元素的字体大小
rtElement.style.fontSize = 'smaller'
// 设置音标元素的文本左对齐
rtElement.style.textAlign = 'left'
rtElement.style.color = 'red' // 设置音标元素的颜色
// 将音标元素添加到包含音标的元素中
rubyElement.appendChild(rtElement)
// 在中文翻译节点之后插入包含音标的元素
//node.parentNode.insertBefore(rubyElement, node.nextSibling);
// 将原始的非中文字符串替换为翻译后的文本
node.textContent = translatedText // 替换原始的非中文字符串
}
// 主函数
function main() {
// 在页面加载时进行一次扫描
scanTextNodes(document.body)
}
// 启动脚本
main()
// 弹出提示信息
function Toast(msg, duration, backgroundColor, textColor) {
duration = isNaN(duration) ? 3000 : duration
backgroundColor = backgroundColor || 'rgba(0, 0, 0, 0.7)'
textColor = textColor || 'rgb(255, 255, 255)'
var m = document.createElement('div')
m.innerHTML = msg
m.style.cssText = 'max-width:60%;min-width: 150px;padding:0 14px;height: 40px;color: ' + textColor + ';line-height: 40px;text-align: center;border-radius: 12px;position: fixed;top: 95%;left: 50%;transform: translate(-50%, -50%);z-index: 2147483647;background: ' + backgroundColor + ';font-size: 16px;'
document.body.appendChild(m)
setTimeout(function () {
var d = 0.5
m.style.transition = '-webkit-transform ' + d + 's ease-in, opacity ' + d + 's ease-in'
m.style.opacity = '0'
setTimeout(function () {
document.body.removeChild(m)
}, d * 1000)
}, duration)
}
})()