--- takahashi.xul 2006/06/10 08:35:37 6 +++ takahashi.xul 2006/06/10 15:31:05 12 @@ -737,7 +737,7 @@ var linksRegExp = this.makePhraseRegExp('^([^%O]+)?%O%O(([^|]+)?\\||)([^%C]+)%C%C', ''); - var wikiRegExp = this.makePhraseRegExp('^([^%O]+)?%O([0-9]*)([#!])?([:\/\*_])([^%C]+)[:\/\*_]%C', ''); + var wikiRegExp = this.makePhraseRegExp('^([^%O]+)?%O([0-9]*)([#!])?([:\/\*_-])([^%C]+)[:\/\*_-]%C', ''); var montaRegExp = this.makePhraseRegExp('^([^%O]+)?%O([^%C]+)%C', ''); @@ -894,6 +894,8 @@ style += '; font-style: italic;'; } else if (RegExp.$4 == '_') { style += '; text-decoration: underline;'; + } else if (RegExp.$4 == '-') { + style += '; text-decoration: line-through;'; } fragment.lastChild.lastChild.setAttribute('style', style); if (RegExp.$3 == '!') fragment.lastChild.lastChild.setAttribute('class', 'em-text'); @@ -1006,7 +1008,7 @@ if (this.dataPath != file) { var path = this.dataPath; var request = new XMLHttpRequest(); - request.open('GET', path); + request.open('GET', path + '?rand=' + Math.random() ); request.onload = function() { Presentation.textbox.value = request.responseText; Presentation.data = Presentation.textbox.value; @@ -1058,8 +1060,6 @@ }, insert : function(aType) { - var scrollTop = this.textbox.scrollTop; -// alert(this.textbox.scrollTop); switch (aType) { case 'page': @@ -1094,15 +1094,23 @@ default: return; } - this.textbox.scrollTop = scrollTop; this.onEdit(); }, insertTextFor : function(aString, aNode, aPosOffset) { var pos = aNode.selectionStart; + var sel_len = aNode.selectionEnd - aNode.selectionStart; var value = aNode.value; - aNode.value = [value.substring(0, pos), aString, value.substring(pos, value.length)].join(''); - aNode.selectionEnd = aNode.selectionStart = pos + (aPosOffset || 0); + if (! aPosOffset) aPosOffset = 0; + aNode.value = [ + value.substring(0, pos), + aString.substring(0,aPosOffset), + value.substring(pos, pos + sel_len), + aString.substring(aPosOffset, aString.length), + value.substring(pos + sel_len, value.length) + ].join(''); + aNode.selectionStart = pos + (aPosOffset || 0); + aNode.selectionEnd = aNode.selectionStart + sel_len; },