home *** CD-ROM | disk | FTP | other *** search
/ PC World 2008 September / PCWorld_2008-09_cd.bin / komunikace / kmeleon / K-Meleon1.1.3en-US.exe / macros / encoding.kmm < prev    next >
Text File  |  2007-05-04  |  11KB  |  198 lines

  1. # K-Meleon Macros (http://kmeleon.sourceforge.net/wiki/index.php?id=MacroLanguage)
  2.  
  3. # ---------- Character Encoding / Characterset Detection -----------------------------------------------------------
  4. #
  5. # Dependencies    : main.kmm
  6. # Resources    : -
  7. # Preferences    : kmeleon.plugins.macros.encoding.cache.size
  8. #          kmeleon.plugins.macros.encoding.cache.charset[0-<size-1>].id
  9. #          kmeleon.plugins.macros.encoding.cache.charset[0-<size-1>].name
  10. #
  11. # ------------------------------------------------------------------------------------------------------------------
  12.  
  13. Encoding_AutoDetect{
  14. menuchecked=(getpref(STRING,"intl.charset.detector")==$ARG);
  15. setpref(STRING,"intl.charset.detector",$ARG); forcecharset();
  16. }
  17. Encoding_ForceCharset{
  18. menuchecked=($CHARSET==substr($ARG,index($ARG,";")+1));
  19. $_chr=substr($ARG,index($ARG,";")+1);
  20. $_lbl=substr($ARG,0,index($ARG,";"));
  21. $_lbl==""?0:&_Encoding_CacheCheck; forcecharset($_chr);
  22. }
  23.  
  24. # ----- PRIVATE
  25.  
  26. $_Encoding_CachePref=$macroPrefBranch."encoding.cache.size";
  27. $_Encoding_CacheMenu=true;
  28.  
  29. _Encoding_CacheCheck{
  30. $_in=false; $_y=getpref(INT,$_Encoding_CachePref); while($_y>0) &_Encoding_CacheCheckLoop;
  31. $_in?0:&_Encoding_CacheUpdate;
  32. }
  33. _Encoding_CacheCheckLoop{
  34. $_y=$_y-1; $_in=(getpref(STRING,$macroPrefBranch."encoding.cache.charset".$_y.".id")==$_chr); $_in?$_y=0:0;
  35. }
  36.  
  37. _Encoding_CacheUpdate{
  38. # delete current menu items:
  39. $_Encoding_CacheMenu=false; &_Encoding_BuildMenuCache;
  40. # update prefs:
  41. $_x=getpref(INT,$_Encoding_CachePref); while($_x>1) &_Encoding_ShiftUp;
  42. setpref(STRING,$macroPrefBranch."encoding.cache.charset0.id",$_chr);
  43. setpref(STRING,$macroPrefBranch."encoding.cache.charset0.name",$_lbl);
  44. # add new menu items:
  45. $_Encoding_CacheMenu=true; &_Encoding_BuildMenuCache;
  46. }
  47. _Encoding_ShiftUp{
  48. $_x=$_x-1; $__y=$_x-1;
  49. setpref(STRING,$macroPrefBranch."encoding.cache.charset".$_x.".id",getpref(STRING,$macroPrefBranch."encoding.cache.charset".$__y.".id"));
  50. setpref(STRING,$macroPrefBranch."encoding.cache.charset".$_x.".name",getpref(STRING,$macroPrefBranch."encoding.cache.charset".$__y.".name"));
  51. }
  52.  
  53. _Encoding_SetDefaults{
  54. getpref(INT,$_Encoding_CachePref)==0?setpref(INT,$_Encoding_CachePref,5):0;
  55. }
  56. $OnStartup=$OnStartup."_Encoding_SetDefaults;";
  57.  
  58. _Encoding_BuildMenu{
  59. # view menu
  60. $__e="En&coding"; $__a="&Auto Detect";
  61. setmenu(PageDisplay,popup,$__e);
  62. setmenu($__e,popup,$__a); $__m="Encoding_AutoDetect(";
  63. setmenu($__a,macro,"(O&ff)",$__m.")");
  64. setmenu($__a,macro,"Uni&versal",$__m."universal_charset_detector)");
  65. setmenu($__a,macro,"Ch&inese",$__m."zh_parallel_state_machine)");
  66. setmenu($__a,macro,"J&apanese",$__m."ja_parallel_state_machine)");
  67. setmenu($__a,macro,"K&orean",$__m."ko_parallel_state_machine)");
  68. setmenu($__a,macro,"&East Asian",$__m."cjk_parallel_state_machine)");
  69. setmenu($__a,macro,"Ru&ssian",$__m."ruprob)");
  70. setmenu($__a,macro,"U&krainian",$__m."ukprob)");
  71. $__m="Encoding_ForceCharset(";
  72. $__a="&More Encodings"; setmenu($__e,popup,$__a);
  73. $__b="&West European"; setmenu($__a,popup,$__b);  &_Encoding_BuildMenuMore1;
  74. $__b="E&ast European"; setmenu($__a,popup,$__b);  &_Encoding_BuildMenuMore2;
  75. $__b="&East Asian"; setmenu($__a,popup,$__b);  &_Encoding_BuildMenuMore3;
  76. $__b="&SE And SW Asian"; setmenu($__a,popup,$__b);  &_Encoding_BuildMenuMore4;
  77. $__b="&Middle Eastern"; setmenu($__a,popup,$__b);  &_Encoding_BuildMenuMore5;
  78. $__b="&Unicode"; setmenu($__a,popup,$__b);  &_Encoding_BuildMenuMore6;
  79. &_Encoding_BuildMenuCache;
  80. setmenu($__e,separator,-1);
  81. # static:
  82. $__i="&Western (ISO-8859-1)"; setmenu($__e,macro,$__i,$__m.";iso-8859-1)");
  83. $__i="We&stern (Windows-1252)"; setmenu($__e,macro,$__i,$__m.";windows-1252)");
  84. setmenu($__e,separator,-1);
  85. # static:
  86. $__i="&Unicode (UTF-8)"; setmenu($__e,macro,$__i,$__m.";utf-8)");
  87. $__i="U&nicode (UTF-16)"; setmenu($__e,macro,$__i,$__m.";utf-16)");
  88. }
  89. _Encoding_BuildMenuMore1{
  90. # static:
  91. $__i="&Western (ISO-8859-1)"; setmenu($__b,macro,$__i,$__m.";iso-8859-1)");
  92. $__i="Western (ISO-8859-15)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-15)");
  93. $__i="Western (IBM-850)"; setmenu($__b,macro,$__i,$__m.$__i.";ibm850)");
  94. $__i="Western (MacRoman)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-roman)");
  95. # static:
  96. $__i="We&stern (Windows-1252)"; setmenu($__b,macro,$__i,$__m.";windows-1252)");
  97. $__i="Celtic (ISO-8859-14)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-14)");
  98. $__i="Greek (ISO-8859-7)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-7)");
  99. $__i="Greek (MacGreek)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-greek)");
  100. $__i="Greek (Windows-1253)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-1253)");
  101. $__i="Icelandic (MacIcelandic)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-icelandic)");
  102. $__i="Nordic (ISO-8859-10)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-10)");
  103. $__i="South European (ISO-8859-3)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-3)");
  104. }
  105. _Encoding_BuildMenuMore2{
  106. $__i="Baltic (ISO-8859-4)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-4)");
  107. $__i="Baltic (ISO-8859-13)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-13)");
  108. $__i="Baltic (Windows-1257)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-1257)");
  109. $__i="Central European (IBM-852)"; setmenu($__b,macro,$__i,$__m.$__i.";ibm852)");
  110. $__i="Central European (ISO-8859-2)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-2)");
  111. $__i="Central European (MacCE)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-ce)");
  112. $__i="Central European (Windows-1250)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-1250)");
  113. $__i="Croatian (MacCroatian)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-croatian)");
  114. $__i="Cyrillic (IBM-855)"; setmenu($__b,macro,$__i,$__m.$__i.";ibm855)");
  115. $__i="Cyrillic (ISO-8859-5)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-5)");
  116. $__i="Cyrillic (ISO-IR-111)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-ir-111)");
  117. $__i="Cyrillic (KOI8-R)"; setmenu($__b,macro,$__i,$__m.$__i.";koi8-r)");
  118. $__i="Cyrillic (MacCyrillic)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-cyrillic)");
  119. $__i="Cyrillic (Windows-1251)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-1251)");
  120. $__i="Cyrillic/Russian (CP-866)"; setmenu($__b,macro,$__i,$__m.$__i.";ibm866)");
  121. $__i="Cyrillic/Ukrainian (KOI8-U)"; setmenu($__b,macro,$__i,$__m.$__i.";koi8-u)");
  122. $__i="Cyrillic/Ukrainian (MacUkrainian)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-ukrainian)");
  123. $__i="Romanian (ISO-8859-16)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-16)");
  124. $__i="Romanian (MacRomanian)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-romanian)");
  125. }
  126. _Encoding_BuildMenuMore3{
  127. $__i="Chinese Simplified (GB2312)"; setmenu($__b,macro,$__i,$__m.$__i.";gb2312)");
  128. $__i="Chinese Simplified (GBK)"; setmenu($__b,macro,$__i,$__m.$__i.";x-gbk)");
  129. $__i="Chinese Simplified (GB18030)"; setmenu($__b,macro,$__i,$__m.$__i.";gb18030)");
  130. $__i="Chinese Simplified (HZ)"; setmenu($__b,macro,$__i,$__m.$__i.";hz-gb-2312)");
  131. $__i="Chinese Simplified (ISO-2022-CN)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-2022-cn)");
  132. $__i="Chinese Traditional (Big5)"; setmenu($__b,macro,$__i,$__m.$__i.";big5)");
  133. $__i="Chinese Traditional (Big5-HKSCS)"; setmenu($__b,macro,$__i,$__m.$__i.";big5-hkscs)");
  134. $__i="Chinese Traditional (EUC-TW)"; setmenu($__b,macro,$__i,$__m.$__i.";x-euc-tw)");
  135. $__i="Japanese (EUC-JP)"; setmenu($__b,macro,$__i,$__m.$__i.";euc-jp)");
  136. $__i="Japanese (ISO-2022-JP)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-2022-jp)");
  137. $__i="Japanese (Shift_JIS)"; setmenu($__b,macro,$__i,$__m.$__i.";shift_jis)");
  138. $__i="Korean (EUC-KR)"; setmenu($__b,macro,$__i,$__m.$__i.";euc-kr)");
  139. $__i="Korean (UHC)"; setmenu($__b,macro,$__i,$__m.$__i.";x-windows-949)");
  140. $__i="Korean (JOHAB)"; setmenu($__b,macro,$__i,$__m.$__i.";x-johab)");
  141. $__i="Korean (ISO-2022-KR)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-2022-kr)");
  142. }
  143. _Encoding_BuildMenuMore4{
  144. $__i="Armenian (ARMSCII-8)"; setmenu($__b,macro,$__i,$__m.$__i.";armscii-8)");
  145. $__i="Georgian (GEOSTD8)"; setmenu($__b,macro,$__i,$__m.$__i.";geostd8)");
  146. $__i="Thai (TIS-620)"; setmenu($__b,macro,$__i,$__m.$__i.";tis-620)");
  147. $__i="Thai (ISO-8859-11)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-11)");
  148. $__i="Thai (Windows-874)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-874)");
  149. $__i="Turkish (IBM-857)"; setmenu($__b,macro,$__i,$__m.$__i.";ibm857)");
  150. $__i="Turkish (ISO-8859-9)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-9)");
  151. $__i="Turkish (MacTurkish)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-turkish)");
  152. $__i="Turkish (Windows-1254)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-1254)");
  153. $__i="Vietnamese (TCVN)"; setmenu($__b,macro,$__i,$__m.$__i.";x-viet-tcvn5712)");
  154. $__i="Vietnamese (VISCII)"; setmenu($__b,macro,$__i,$__m.$__i.";viscii)");
  155. $__i="Vietnamese (VPS)"; setmenu($__b,macro,$__i,$__m.$__i.";x-viet-vps)");
  156. $__i="Vietnamese (Windows-1258)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-1258)");
  157. $__i="Hindi (MacDevanagari)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-devanagari)");
  158. $__i="Gujarati (MacGujarati)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-gujarati)");
  159. $__i="Gurmukhi (MacGurmukhi)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-gurmukhi)");
  160. }
  161. _Encoding_BuildMenuMore5{
  162. $__i="Arabic (ISO-8859-6)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-6)");
  163. $__i="Arabic (Windows-1256)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-1256)");
  164. $__i="Arabic (IBM-864)"; setmenu($__b,macro,$__i,$__m.$__i.";ibm864)");
  165. $__i="Arabic (MacArabic)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-arabic)");
  166. $__i="Farsi (MacFarsi)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-farsi)");
  167. $__i="Hebrew (ISO-8859-8-I)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-8-i)");
  168. $__i="Hebrew (Windows-1255)"; setmenu($__b,macro,$__i,$__m.$__i.";windows-1255)");
  169. $__i="Hebrew Visual (ISO-8859-8)"; setmenu($__b,macro,$__i,$__m.$__i.";iso-8859-8)");
  170. $__i="Hebrew (IBM-862)"; setmenu($__b,macro,$__i,$__m.$__i.";ibm862)");
  171. $__i="Hebrew (MacHebrew)"; setmenu($__b,macro,$__i,$__m.$__i.";x-mac-hebrew)");
  172. }
  173. _Encoding_BuildMenuMore6{
  174. # static:
  175. $__i="&Unicode (UTF-8)"; setmenu($__b,macro,$__i,$__m.";utf-8)");
  176. # static:
  177. $__i="U&nicode (UTF-16)"; setmenu($__b,macro,$__i,$__m.";utf-16)");
  178. $__i="Unicode (UTF-16 Little Endian)"; setmenu($__b,macro,$__i,$__m.$__i.";utf-16le)");
  179. $__i="Unicode (UTF-16 Big Endian)"; setmenu($__b,macro,$__i,$__m.$__i.";utf-16be)");
  180. $__i="Unicode (UTF-32 Little Endian)"; setmenu($__b,macro,$__i,$__m.$__i.";utf-32le)");
  181. $__i="Unicode (UTF-32 Big Endian)"; setmenu($__b,macro,$__i,$__m.$__i.";utf-32be)");
  182. $__i="Unicode (UTF-7)"; setmenu($__b,macro,$__i,$__m.$__i.";utf-7)");
  183. }
  184. _Encoding_BuildMenuCache{
  185. $_c=_Encoding_Cache;
  186. setmenu("En&coding",inline,$_c);
  187. $__t=getpref(INT,$_Encoding_CachePref); $_k=0; while($_k<$__t) &_Encoding_BuildMenuCacheLoop;
  188. rebuildmenu($_c);
  189. }
  190. _Encoding_BuildMenuCacheLoop{
  191. $__l=getpref(STRING,$macroPrefBranch."encoding.cache.charset".$_k.".name");
  192. setmenu($_c,macro,$_Encoding_CacheMenu==true?$__l:"","Encoding_ForceCharset(;".getpref(STRING,$macroPrefBranch."encoding.cache.charset".$_k.".id").")",$_k);
  193. $_k=$_k+1;
  194. }
  195. $OnInit=$OnInit."_Encoding_BuildMenu;";
  196.  
  197. # ------------------------------------------------------------------------------------------------------------------
  198. $macroModules=$macroModules."Encoding;";