You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

201 line
4.3 KiB

  1. function cleartext()
  2. {
  3. var t = document.getElementById("thetext");
  4. t.value = '';
  5. updatetextlength();
  6. updatewords();
  7. }
  8. function selectall() {
  9. var t = document.getElementById("thetext");
  10. t.focus();
  11. t.select();
  12. }
  13. function updatetextlength()
  14. {
  15. var t = document.getElementById("thetext");
  16. var c = document.getElementById("characters");
  17. c.value = t.value.length+' lettres';
  18. }
  19. function updatewords()
  20. {
  21. var t = document.getElementById("thetext");
  22. var char_count = t.value.length;
  23. var fullStr = t.value + " ";
  24. var initial_whitespace_rExp = /^[^A-Za-z0-9]+/gi;
  25. var left_trimmedStr = fullStr.replace(initial_whitespace_rExp, "");
  26. var non_alphanumerics_rExp = rExp = /[^A-Za-z0-9]+/gi;
  27. var cleanedStr = left_trimmedStr.replace(non_alphanumerics_rExp, " ");
  28. var splitString = cleanedStr.split(" ");
  29. var word_count = splitString.length -1;
  30. var w = document.getElementById("words");
  31. w.value = word_count+' mots';
  32. }
  33. function updatecounts()
  34. {
  35. updatetextlength();
  36. updatewords();
  37. }
  38. function uppercase()
  39. {
  40. var t = document.getElementById("thetext");
  41. t.value = t.value.toUpperCase();
  42. }
  43. function lowercase()
  44. {
  45. var t = document.getElementById("thetext");
  46. t.value = t.value.toLowerCase();
  47. }
  48. function capitalizewords()
  49. {
  50. var t = document.getElementById("thetext");
  51. t.value = (t.value + '').replace(/^(.)|\s(.)/g, function ($1) {
  52. return $1.toUpperCase(); });
  53. }
  54. function capitalizesentences()
  55. {
  56. var t = document.getElementById("thetext");
  57. var tarray = t.value.split(".");
  58. var tstr = '';
  59. for(i=0; i<tarray.length; i++)
  60. {
  61. tarray[i] = ltrim(tarray[i], ' ');
  62. tstr = tstr + tarray[i].substring(0,1).toUpperCase() + tarray[i].slice(1).toLowerCase();
  63. if(i < (tarray.length - 1))tstr = tstr + '. ';
  64. }
  65. t.value = tstr;
  66. tarray = t.value.split("?");
  67. tstr = '';
  68. for(i=0; i<tarray.length; i++)
  69. {
  70. tarray[i] = ltrim(tarray[i], ' ');
  71. tstr = tstr + tarray[i].substring(0,1).toUpperCase() + tarray[i].slice(1);
  72. if(i < (tarray.length - 1))tstr = tstr + '? ';
  73. }
  74. t.value = tstr;
  75. tarray = t.value.split("!");
  76. tstr = '';
  77. for(i=0; i<tarray.length; i++)
  78. {
  79. tarray[i] = ltrim(tarray[i], ' ');
  80. tstr = tstr + tarray[i].substring(0,1).toUpperCase() + tarray[i].slice(1);
  81. if(i < (tarray.length - 1))tstr = tstr + '! ';
  82. }
  83. t.value = tstr;
  84. }
  85. function replacetext()
  86. {
  87. var t = document.getElementById("thetext");
  88. var from = document.getElementById("from");
  89. var to = document.getElementById("to");
  90. var cs = document.getElementById("cs");
  91. var scope;
  92. var ff = from.value.replace("%N", "\n");
  93. var tt = to.value.replace("%N", "\n");
  94. if(cs.checked)scope = 'g';
  95. else scope = 'gi';
  96. var temp = t.value;
  97. temp = temp.replace(new RegExp(ff, scope), tt);
  98. t.value = temp;
  99. from.value = '';
  100. to.value = '';
  101. updatecounts();
  102. }
  103. function addtext()
  104. {
  105. var t = document.getElementById("thetext");
  106. var a = document.getElementById("add");
  107. var p = document.getElementById("addpos");
  108. var temp = t.value;
  109. var tstr = '';
  110. var tarray = t.value.split("\n");
  111. if(p.value == 'start')
  112. {
  113. for(i=0; i<tarray.length; i++)
  114. {
  115. insert = a.value.replace("%L", i+1);
  116. insert = insert.replace("%N", "\n");
  117. tstr = tstr+insert+tarray[i];
  118. if(i < (tarray.length - 1))tstr = tstr+"\n";
  119. }
  120. t.value = tstr;
  121. }
  122. else
  123. {
  124. for(i=0; i<tarray.length; i++)
  125. {
  126. insert = a.value.replace("%L", i+1);
  127. insert = insert.replace("%N", "\n");
  128. tstr = tstr+tarray[i]+insert;
  129. if(i < (tarray.length - 1))tstr = tstr+"\n";
  130. }
  131. t.value = tstr;
  132. }
  133. a.value = '';
  134. updatecounts();
  135. }
  136. function ltrim(str, chars)
  137. {
  138. chars = chars || "\\s";
  139. return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
  140. }
  141. function rtrim(str, chars)
  142. {
  143. chars = chars || "\\s";
  144. return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
  145. }
  146. function trimtext()
  147. {
  148. var t = document.getElementById("thetext");
  149. var n = document.getElementById("trimnumber");
  150. var p = document.getElementById("trimpos");
  151. var tarray = t.value.split("\n");
  152. var i;
  153. var tstr = '';
  154. if(p.value == 'first')
  155. {
  156. for(i=0; i<tarray.length; i++)tstr = tstr+tarray[i].substr(n.value)+"\n";
  157. tstr = rtrim(tstr);
  158. }
  159. else
  160. {
  161. for(i=0; i<tarray.length; i++)
  162. {
  163. tlen = tarray[i].length;
  164. tpos = tlen - n.value;
  165. tstr = tstr+tarray[i].substr(0, tpos)+"\n";
  166. }
  167. tstr = rtrim(tstr);
  168. }
  169. t.value = tstr;
  170. updatecounts();
  171. }