Advertisement
Guest User

Untitled

a guest
Dec 7th, 2013
664
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.16 KB | None | 0 0
  1. // ==UserScript==
  2. // @name Replace Text On Webpages
  3. // @namespace http://userscripts.org/users/23652
  4. // @description Replaces text on websites. Now supports wildcards in search queries. Won't replace text in certain tags like links and code blocks
  5. // @include http://*
  6. // @include https://*
  7. // @include file://*
  8. // @exclude http://userscripts.org/scripts/review/*
  9. // @copyright JoeSimmons
  10. // @version 1.0.53
  11. // @license http://creativecommons.org/licenses/by-nc-nd/3.0/us/
  12. // @downloadURL http://userscripts.org/scripts/source/41369.user.js
  13. // @updateURL http://userscripts.org/scripts/source/41369.meta.js
  14. // ==/UserScript==
  15. (function () {
  16. 'use strict';
  17.  
  18.  
  19. // Note: You can use \\* to match actual asterisks instead of using it as a wildcard!
  20. // The examples below show a wildcard in use and a regular asterisk replacement.
  21.  
  22.  
  23. var words = {
  24. ///////////////////////////////////////////////////////
  25.  
  26.  
  27. // Syntax: 'Search word' : 'Replace word',
  28. '全部文件' : 'Wszystkie pliki',
  29. '文件保险箱' : 'Zaszyfrowane',
  30. '分享的文件' : 'Udostępnione',
  31. '回收站' : 'Kosz',
  32. '文件共享群' : 'Grupy',
  33. '热门共享群' : 'Gorące grupy',
  34. '上传' : 'Wgraj',
  35. '返回' : 'Wróć',
  36. '新建文件夹' : 'Nowy Folder',
  37. '离线下载' : 'Pobierz',
  38. '下载' : 'Pobierz plik',
  39. '删除' : 'Usuń',
  40. '分享' : 'Udostępnij',
  41. '更多' : 'Więcej',
  42. '重命名' : 'Zmień nazwę',
  43. '移动' : 'Przenieś',
  44. '文件时光机' : 'Kontrola wersji',
  45. '转入Zaszyfrowane' : 'Zaszyfruj',
  46. 'Udostępnij文件' : 'Udostępnij',
  47. '排序' : 'Sortuj wg',
  48. '名称' : 'Nazwa',
  49. '大小' : 'Rozmiar',
  50. '最近Wgraj' : 'Najnowsze',
  51. '修改日期' : 'Modyfikacja',
  52. '每日抽奖' : 'Loteria',
  53. '简单了解一下' : 'Szybki przegląd',
  54. '免费扩容' : 'Zgarnij dodatkowe TB',
  55. '退出' : 'Wyloguj',
  56. '查看Udostępnij链接' : 'Wyszukaj udostępnione pliki',
  57. '取消Udostępnij' : 'Wycofaj udostępnianie',
  58. '链接已复制到剪贴板' : 'Odnośnik został skopiowany do schowka',
  59. '刷新' : 'Odśwież',
  60. '将文件拖放至此可以上传' : 'Przenieś i upuść tutaj pliki',
  61. '账号安全中心' : 'Ustawienia',
  62. '云盘消息' : 'Powiadomienia',
  63. '云盘等级' : 'Poziom dysku',
  64. '扩容记录' : 'Historia',
  65. '购买空间' : 'Kup przestrzeń',
  66. '空间升级卡' : 'Kody',
  67. '邀请好友' : 'Zaproś',
  68. '意见反馈' : 'Dyskusja',
  69. '帮助中心' : 'Support',
  70. '全部消息' : 'Wszystkie',
  71. '标记为已读' : 'Oznacz jako przeczytane',
  72. 'Usuń所选' : 'Usuń zaznaczone',
  73. '级' : ' poziom',
  74. '云盘总空间' : 'Całkowita powierzchnia',
  75. '可用空间' : ' dostępna powierzchnia :',
  76. '上次登录时间' : 'Ostatnie logowanie: ',
  77. '更改资料' : 'Edytuj profil',
  78. '修改密码' : 'Zmień hasło',
  79. '密码安全' : 'Bezpieczeństwo konta',
  80. '帐号安全中心' : 'Centrum Bezpieczeństwa Konta',
  81. '立即设置' : 'Ustaw hasło',
  82. '什么是云盘安全密码?' : 'Czym jest hasło zabezpieczające chmurę?',
  83. '云盘安全密码' : 'Hasło zabezpieczające',
  84. '未设置' : 'Nie ustawiono',
  85. '绑定手机' : 'Powiązany telefon',
  86. '未绑定' : 'Brak ograniczeń',
  87. '(Powiązany telefon后,您可以使用手机号登录或找回密码)' : ' t',
  88. '暂无' : 'Nie',
  89. '立即绑定' : 'Powiąż',
  90. '立即验证' : 'Sprawdź teraz',
  91. '密保邮箱' : 'Weryfikacja adresu e-mail',
  92. '未验证' : 'Niezweryfikowano',
  93. '(设置Weryfikacja adresu e-mail后,您可以使用Weryfikacja adresu e-mail找回密码)' : ' ',
  94. '消息内容' : 'Treść powiadomienia',
  95. '消息时间' : 'Czas otrzymania',
  96. '今日任务' : 'Zadania',
  97. '可获经验值' : 'Doświadczenie',
  98. '每日上限次数' : 'Dziennie',
  99. '次' : ' raz',
  100. '完成状态' : 'Postęp',
  101. '通过电脑客户端登录' : 'Zaloguj się poprzez klienta PC',
  102. '通过Przenieś端登录(手机或iPad)' : 'Zaloguj się poprzez klienta mobilnego',
  103. '通过网页版登录' : 'Zaloguj się poprzez przeglądarkę',
  104. '成功Wgraj文件' : 'Pomyślnie wgraj pliki',
  105. '我的等 poziom' : 'Mój poziom',
  106. '等 poziom规则' : 'Zasady',
  107. '等 poziom' : 'Aktualny poziom',
  108. '经验值' : 'Doświadczenie',
  109. '(查看Zasady)' : 'Sprawdź zasady',
  110. '今日还可再获取' : 'Dziś uzyskałeś: ',
  111. '离任务上限还有' : ' ',
  112. '1 raz(10Doświadczenie)' : 'Zdobyto 10 punktów',
  113. '完成任务(获20Doświadczenie)' : 'Wykonaj zadanie by uzyskać 20 punktów',
  114. '空间已用' : 'Zajęta przestrzeń',
  115. '完成任务(获5Doświadczenie)' : 'Wykonaj zadanie by uzyskać 5 punktów',
  116. '完成任务(获10Doświadczenie)' : 'Wykonaj zadanie by uzyskać 10 punktów',
  117. '1 raz(5Doświadczenie)' : 'Zdobyto 5 punktów',
  118. '1 raz(20Doświadczenie)' : 'Zdobyto 20 punktów',
  119. 'Więcej任务,敬请期待……' : 'Wkrótce będzie więcej zadań...',
  120. '成功Udostępnij' : 'Pomyślne udostępnienia',
  121. 'Loteria额外增加经验' : 'Loteria - dodatkowe doświadczenie',
  122. 'PC打开云盘目录' : 'Otwarty folder w chmurze',
  123. '距离下一' : 'Dystans - ',
  124. 'poziom还需' : 'wymagana ilość ',
  125. '未领取' : ' zebrano',
  126. '今日还有' : ' Dziś ',
  127. '可做Zadania领取' : ' wykonaj pozostałe zadania.',
  128. '请输入Kody上的序列号' : 'Wprowadź numer seryjny zamówienia.',
  129. '立即升级空间' : 'Uaktualnij',
  130. '常见问题' : 'Najczęściej zadawane pytania',
  131. '暂无消息' : 'Brak wiadomości',
  132. '文件名' : 'Nazwa',
  133. '上传文件到360云盘' : 'Prześlij pliki na dysk w chmurze 360',
  134. '当前浏览器可升 poziom为“云加速Wgraj”,支持文件秒传、断点续传、大文件Wgraj' : 'Wgrywanie plików może obciążyć łącze, a także zająć czas. Pliki większe niż 360MB wgraj za pomocą ',
  135. '安装升 poziom控件' : 'klienta PC',
  136. '试试将电脑里的文件拖拽到此Wgraj' : 'Przeciągnij tutaj i upuść',
  137. '(您的浏览器支持此拖拽功能)' : '(Twoja przeglądarka nie obsługuje tej funkcji)',
  138. '网页版单文件最大支持360M' : 'Maksymalna waga jednego pliku wgrywanego to 360 MB.',
  139. '完成' : 'Gotowe',
  140. '安装PC客户端,上传5G超大文件' : 'Zainstaluj klienta PC by przesyłać duże pliki',
  141. '添加文件' : 'Dodaj plik',
  142. 'Dodaj plik夹' : 'Dodaj folder z plikami',
  143. '打包Pobierz plik' : 'Pobierz folder z plikami',
  144.  
  145. ///////////////////////////////////////////////////////
  146. '':''};
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158. //////////////////////////////////////////////////////////////////////////////
  159. // This is where the real code is
  160. // Don't edit below this
  161. //////////////////////////////////////////////////////////////////////////////
  162.  
  163. var regexs = [], replacements = [], word, text, texts, i;
  164. var tagsWhitelist = ['PRE', 'BLOCKQUOTE', 'CODE', 'INPUT', 'BUTTON', 'TEXTAREA'];
  165.  
  166. // prepareRegex by JoeSimmons
  167. // used to take a string and ready it for use in new RegExp()
  168. function prepareRegex(string) {
  169. return string.replace(/([\[\]\^\&\$\.\(\)\?\/\\\+\{\}\|])/g, '\\$1');
  170. }
  171.  
  172. // function to decide whether a parent tag will have its text replaced or not
  173. function isTagOk(tag) {
  174. return tagsWhitelist.indexOf(tag) === -1;
  175. }
  176.  
  177. // convert the 'words' JSON object to an Array
  178. for (word in words) {
  179. if ( word != '' && words.hasOwnProperty(word) ) {
  180. regexs.push(
  181. new RegExp(prepareRegex(word).replace(/\\?\*/g, function (fullMatch) {
  182. return fullMatch === '\\*' ? '*' : '[^ ]*';
  183. }), 'gi')
  184. );
  185.  
  186. replacements.push( words[word] );
  187. }
  188. }
  189.  
  190. // do the replacement
  191. texts = document.evaluate('//body//text()[ normalize-space(.) != "" ]', document, null, 6, null);
  192. for (i = 0; text = texts.snapshotItem(i); i += 1) {
  193. if ( isTagOk(text.parentNode.tagName) ) {
  194. regexs.forEach(function (value, index) {
  195. text.data = text.data.replace( value, replacements[index] );
  196. });
  197. }
  198. }
  199.  
  200. }());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement