Anfuehrungszeichen: 199 falsche Schlusszeichen im sichtbaren Text
Deutsch oeffnet mit „ und schliesst mit “. An 199 Stellen, die ein
Mensch liest, stand als Schlusszeichen ein GERADES " -- „Nächstes"
statt „Nächstes“. Auf sechzehn oeffentlichen Seiten, in vierzig
Dateien des Workspace und in zwoelf Servermodulen, die Texte
verschicken.
Auf dem Bildschirm sieht man den Unterschied sofort. Beim Schreiben
nicht: Das gerade " liegt auf der Tastatur, die anderen nicht.
WARUM EIN ERSTER ANLAUF ZURUECKGENOMMEN WURDE
Ein gerades " ist an vielen Stellen SYNTAX und kein Schriftzeichen --
Grenze einer Zeichenkette, Grenze eines HTML-Attributs, Zeichen in
einem regulaeren Ausdruck. Wer stumpf ersetzt, macht aus
„<a href="https://… ein kaputtes Attribut
/^["'„»\s]+|["'“«.\s]+$/ einen kaputten Ausdruck
"… nichts „mal " + "eben …" eine kaputte Zeichenkette
DIE UNTERSCHEIDUNG LAEUFT AN MERKMALEN, NICHT AN EINER LISTE
< > = dazwischen -> HTML-Marke oder Attribut
endet auf Leerzeichen -> die Zeichenkette hoert hier auf, der
Satz geht in der naechsten Zeile weiter.
Ein deutsches Schlusszeichen steht NIE
hinter einem Leerzeichen.
Rueckstrich mittendrin -> regulaerer Ausdruck
${ ohne } -> mitten in einem Ausdruck
Eine Liste erlaubter Ausnahmen waere die naechste, die niemand
pflegt. Zwoelf Stellen bleiben dadurch stehen, alle zwoelf einzeln
angesehen und alle zwoelf zu Recht -- dort steht das richtige
Schlusszeichen ohnehin weiter unten im Satz.
Fuenf davon waren allerdings ECHTE Fehler HINTER dem Link
(`…>HasiDog</a>".`) -- die erste Regel hatte nur das Attribut
gesehen, nicht den Satz danach. Gezielt nachgezogen.
Ein maskiertes `\"` in workspace-vorlagen.js (28 Hooks) wird zu “ --
ohne Rueckstrich, denn “ begrenzt nichts.
KOMMENTARE BLEIBEN, WIE SIE SIND. Dort liest es niemand ausser mir;
eine Wache, die auch Kosmetik anmahnt, wird weggeklickt. Beim ersten
Messen fielen ausserdem acht Stellen aus buehne.html faelschlich an,
weil `/* */` in HTML (in <style> und <script>) nicht ausgeblendet
war -- jetzt schon.
DIE WACHE DAZU
pruef-struktur prueft es ab sofort mit derselben Regel: 322 Dateien
mit sichtbarem Text, 0 Funde, und die zwoelf bewussten Ausnahmen
werden GEZAEHLT und genannt (erlaubt: 12). Eine Ausnahme, die niemand
sieht, waechst -- und irgendwann steht der echte Fall darin.
GEPRUEFT
pruef-struktur 59 -> 68 Pruefungen, 0 Fehler
node --check auf allen geaenderten JS-Dateien
nachgemessen: 199 geaendert, 12 mit Grund stehen geblieben
gruen geblieben: bewerbung-aufgaben 163, nachwuchs 262,
reaktion 421, support 63, content 45, terminregel 35, treff 85
Und nachgesehen, ob eine Pruefung noch die alte Schreibweise
ERWARTET: 13 Fundstellen, alle dreizehn nur Text in ihrer eigenen
Ausgabe, keine einzige ein Vergleich mit dem Seitentext.
GEGENPROBE: In reaktion.html ein Schlusszeichen zurueckgedreht ->
„workspace/reaktion.html:546 „Nächstes"", mit Datei und Zeile. Und
die Erkennung einzeln gegen HTML-Attribut, fortgesetzte
Zeichenkette, regulaeren Ausdruck und eingesetzten Wert geprueft.
Stempel gesetzt: workspace 670 Verweise in 45 Dateien, oeffentlich
554 in 48 Seiten.
Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
+10
-10
@@ -11,18 +11,18 @@
|
||||
<title>Dogfather Webdesign — individuelle Webseiten, persönlich umgesetzt</title>
|
||||
<meta name="description" content="Individuell gebaute Webseiten statt Baukasten: Onepager ab 300 €, professionelle Websites ab 500 €, Shops ab 1.000 €. Klare Preise, klare Zeitrahmen, eine feste Ansprechperson." />
|
||||
<meta name="robots" content="noindex, nofollow, noarchive" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/webdesign-32.png?v=202609301254" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/webdesign-32.png?v=202610010152" />
|
||||
<meta name="theme-color" content="#564e95" />
|
||||
<!-- Als App installierbar auf Handy und Computer. iOS ignoriert das
|
||||
Manifest für das Startbildschirm-Symbol vollständig und nimmt NUR
|
||||
apple-touch-icon — deshalb beides. -->
|
||||
<link rel="manifest" href="/webdesign/app.webmanifest" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/webdesign-180.png?v=202609301254" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/webdesign-180.png?v=202610010152" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=202609301254" />
|
||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=202609301254" />
|
||||
<link rel="stylesheet" href="/assets/css/main.css?v=202610010152" />
|
||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=202610010152" />
|
||||
<style>
|
||||
/* ---------- Nur auf der Startseite gebraucht ---------- */
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
Das Skript ganz unten blendet es nur ein, wenn man in dieser
|
||||
Browser-Sitzung gerade erst durch die Zugangswand gekommen ist. -->
|
||||
<div class="wd-intro" id="wd-intro" hidden>
|
||||
<img class="wd-intro-logo" src="/assets/img/logo-dogfather-transparent.png?v=202609301254" alt="" width="472" height="476" />
|
||||
<img class="wd-intro-logo" src="/assets/img/logo-dogfather-transparent.png?v=202610010152" alt="" width="472" height="476" />
|
||||
<p class="wd-intro-gruss" id="wd-intro-gruss">Willkommen</p>
|
||||
<p class="wd-intro-unter" data-i18n="intro_unter">Dogfather Webdesign — Vorabversion</p>
|
||||
<button type="button" class="wd-intro-skip" id="wd-intro-skip" data-i18n="intro_ueberspringen">Überspringen</button>
|
||||
@@ -263,7 +263,7 @@
|
||||
<div class="wd-grid wd-grid--2" style="margin-top:2.2rem">
|
||||
|
||||
<article class="wd-karte wd-projekt wd-auf">
|
||||
<img class="wd-projekt-bild" src="/assets/img/wd-projekt-universe.jpg?v=202609301254"
|
||||
<img class="wd-projekt-bild" src="/assets/img/wd-projekt-universe.jpg?v=202610010152"
|
||||
alt="Startseite von dogfather-universe.com" width="1200" height="750" loading="lazy" decoding="async"
|
||||
data-i18n-attr="alt:pf_universe_alt" />
|
||||
<div class="wd-projekt-text">
|
||||
@@ -289,7 +289,7 @@
|
||||
Hinweisbalken ganz oben wurde bewusst weggeschnitten — er
|
||||
gehört nicht in ein Portfolio. -->
|
||||
<article class="wd-karte wd-karte--lila wd-projekt wd-auf">
|
||||
<img class="wd-projekt-bild" src="/assets/img/wd-projekt-vandiy.jpg?v=202609301254"
|
||||
<img class="wd-projekt-bild" src="/assets/img/wd-projekt-vandiy.jpg?v=202610010152"
|
||||
alt="Startseite von vans-diy-bastelbedarf.com" width="1200" height="696" loading="lazy" decoding="async"
|
||||
data-i18n-attr="alt:pf_shop_alt" />
|
||||
<div class="wd-projekt-text">
|
||||
@@ -357,7 +357,7 @@
|
||||
<section class="wd-abschnitt wd-abschnitt--gehoben">
|
||||
<div class="wd-container">
|
||||
<div class="wd-portrait-grid">
|
||||
<img class="wd-portrait wd-auf" src="/assets/img/wd-dogfather-portrait.jpg?v=202609301254"
|
||||
<img class="wd-portrait wd-auf" src="/assets/img/wd-dogfather-portrait.jpg?v=202610010152"
|
||||
alt="Dogfather" width="900" height="1125" loading="lazy" decoding="async"
|
||||
data-i18n-attr="alt:wd_foto_alt" />
|
||||
<div>
|
||||
@@ -426,8 +426,8 @@
|
||||
|
||||
<div id="wd-fuss"></div>
|
||||
|
||||
<script src="/assets/js/i18n-wd-index.js?v=202609301254"></script>
|
||||
<script src="/assets/js/wd-core.js?v=202609301254"></script>
|
||||
<script src="/assets/js/i18n-wd-index.js?v=202610010152"></script>
|
||||
<script src="/assets/js/wd-core.js?v=202610010152"></script>
|
||||
<script>
|
||||
/* ---------------------------------------------------------------------
|
||||
Marken-Intro (Masterplan S.3, Schritt 02: "Nach erfolgreichem Code
|
||||
|
||||
Reference in New Issue
Block a user