Was ist neu

Userscript für Storylänge

Veteran
Seniors
Beitritt
14.09.2001
Beiträge
1.107
Zuletzt bearbeitet:

Userscript für Storylänge

(Beziehentlich http://www.wortkrieger.de/showthread.php?55130-L%E4nge-der-Geschichte-anzeigen)

Und zwar kann man folgenden Code in seine Tampermonkey-Erweiterung (vermutlich auch Greasemonkey) kopieren, um die Funktionialität zu bekommen. Vermutlich braucht man auch einen halbwegs modernen Browser dafür.
Da es schnell zusammengeklöppelt ist, rechne ich mit Feedback wie "Meine Festplatte ist formatiert worden", "Meine Peripheriegeräte sind verbrannt" oder Ähnlichem. Ich habe es jedoch nach bestem Wissen (kenne mich nicht mit Userscripts aus) und Gewissen erstellt.
Beim Kopieren aus dem Browser kommen ggf. Zeilenumbrüche hinzu, die das Script ruinieren können.

// ==UserScript==
// @name wortkrieger: Storylaenge
// @namespace Leifscripts
// @version 1.1
// @author Leif
// @match *.wortkrieger.de/showthread.php*
// @exclude /.*(www\.)?wortkrieger\.de/showthread\.php\?.*/page\d/
// @grant none
// ==/UserScript==

var contentElement = document.querySelector(".content");
var postrowElement = document.querySelector(".postrow");
var preparedText = contentElement.innerHTML.replace(/<[^>]+>/g, "").replace(/[\s\u00A0]+/g, " ");

var words = preparedText.split(" ").length;
var characters = preparedText.length;
var infotext = "Seiten (ca.): " + round(characters / 1800).toLocaleString() + "; Wortanzahl: " + words + "; " + " Zeichenanzahl: " + characters;

postrowElement.innerHTML = infotext + "<br />" + postrowElement.innerHTML;

function round(number)
{
return Math.round(number * 10) / 10;
}


Changelog
Version 0.2: Script wurde verfeinert, um die Wortanzahl präziser ermitteln zu können.
Version 1.0: Es wird beachtet, dass unter all den Browsern Firefox nicht die Eigenschaft innerText kennt. Die Zeichen pro Seite werden nun mit 1800 angenommen, da Leerraum zusammengeschrumpft wird. Die VG Wort nimmt 1500 an, weil dort mit Leerraum gerechnet wird. Siehe http://de.wikipedia.org/wiki/Normseite#Summenregelung.
Version 1.1: toLocaleString() wird verwendet, um den Dezimalbruch für die Seiten darzustellen, damit die Darstellung der aktuellen Kultur gemäß erfolgt.

 

Danke sehr. :) Wollte gerade noch die – vermutlich kürzere – JQuery-abhängige Version mitliefern, allerdings wird JQuery eh nicht im Header von Wortkrieger verlinkt, daher spar ichs mir. YUI, was stattdessen hier verwendet wird, kenn ich (noch) nicht, keine Ahnung ob es damit möglich wär.

 
Zuletzt bearbeitet:

jQuery wollte ich auch erst nehmen, aber moderne Browser unterstützen ja die essentielle Methode querySelector. Wo wir schon dabei sind: Seltsamerweise bekomme ich auf wortkrieger.de keine Fehlermeldungen und kann auch keine Ausgabe in die Konsole erzeugen. Woran liegt das?

Edit: Script wurde verfeinert, um die Wortanzahl präziser ermitteln zu können.

Edit2: Mittlerweile ist es Version 1.0. Es wird beachtet, dass unter all den Browsern Firefox nicht die Eigenschaft innerText kennt. Die Zeichen pro Seite werden nun mit 1800 angenommen, da Leerraum zusammengeschrumpft wird. Die VG Wort nimmt 1500 an, weil dort mit Leerraum gerechnet wird. Siehe http://de.wikipedia.org/wiki/Normseite#Summenregelung.

 

Letzte Empfehlungen

Neue Texte

Zurück
Anfang Bottom