Im redaktionellen Umfeld ist für die Redakteure die Zahl der Zeichen wichtiger als die Zahl der Wörter.
Leider bietet der RTE von Typo3 die Anzeige der Zeichen im Text nicht an.
Als schnelle, sicher nicht saubere, Lösung kann man direkt die updateWordCount-Funktion in der htmlarea.js-Datei ändern/anpassen:
updateWordCount: function() { var charCount = 0; if (this.getEditor().getMode() == 'wysiwyg') { // Get the html content var text = this.getEditor().getHTML(); if (!Ext.isEmpty(text)) { // Jeden Absatz mitzählen text = text.replace(/<p>/g,'X'); // alle anderen Tags ausblenden text = text.replace(HTMLArea.RE_htmlTag, ''); // Leerzeichen mitzählen text = text.replace(/ /g, 'L'); // alle anderen Leerzeichen nicht mitzählen text = text.replace(/\s/g, ''); text = text.replace(/ | /gi, ''); charCount = text.length; } } // Update the word count of the status bar this.statusBarWordCount.dom.innerHTML = charCount ? ( charCount + ' Zeichen') : ' '; },
Diese direkte Änderung ist nicht der saubere Weg, da er beim Update des Plugins überschrieben wird. Auf die Schnelle war es aber nun mal die schnelle Lösung.
Gruß
Ralf
Ein interessanter Ansatz, nachdem ich mich auch vor einiger Zeit mit diesem Thema beschäftigt habe. Nur der Sinn der Zeile
text = text.replace(//g,’X‘);
ist mir ehrlich gesagt nicht ganz klar…
Die < p >-Tags ersetze ich, damit jeder Paragraph (also Absatz) auch einmal mitgezählt wird.
Das muss man jetzt sicher nicht zwingend so machen, aber wenn ich es nicht mache, dann kommt bei
< p >1< /p >< p >2< /p >
nur zwei Zeichen herum. Man könnte das allerdings auch als vier Zeichen interpretieren und daher zähle ich die Absätze einmal mit. Gleiches könnte man auch noch mit anderen absatzbildenden Elementen (< li >, …) machen.
Allerdings halte ich das auch nicht für so wahnsinnig spielentscheidend, es geht ja lediglich darum, dem Redakteur einen Anhaltspunkt für die Länge seines Textes zu geben.