[3.3] Typographische Anführungszeichen
-
- Mitglied
- Beiträge: 26
- Registriert: 02.08.2022 13:14
[3.3] Typographische Anführungszeichen
Gibt es eine Funktion oder Extension (ähnlich wie bei Wordpress), die normale Anführungszeichen automatisch zu typographisch korrekten machen?
Also das: "Hallo" sagte er
zu: „Hallo“ sagte er
Also das: "Hallo" sagte er
zu: „Hallo“ sagte er
-
- Mitglied
- Beiträge: 26
- Registriert: 02.08.2022 13:14
Re: [3.3] Typographische Anführungszeichen
Hat niemand eine Idee? Das muss doch auch noch andere betreffen, oder bin ich da zu pedantisch? 

Re: [3.3] Typographische Anführungszeichen
Hallo erstmal,
kann schonmal etwas dauern, bis dazu konkret was als Antwort kommt.
Das lässt sich auf Code-Ebene bestimmt leicht umsetzen.
Eine EXT wäre dazu m.E. fast zuviel...
Sollte bei der Ersetzung von z.B.
https://de.comp.lang.php.misc.narkive.c ... deln#post7
https://www.php-resource.de/forum/php-d ... post128004
kann schonmal etwas dauern, bis dazu konkret was als Antwort kommt.
Das lässt sich auf Code-Ebene bestimmt leicht umsetzen.
Eine EXT wäre dazu m.E. fast zuviel...
Sollte bei der Ersetzung von z.B.
post_text
dann ca. so funktionieren...https://de.comp.lang.php.misc.narkive.c ... deln#post7
Code: Alles auswählen
echo $text = '"Hallo", sagte er, "wie geht es Ihnen heute?"';
$text = preg_replace('#"(\w)#', "„\$1", $text);
$text = preg_replace('#([\w|.?! ])"#', "\$1“", $text);
echo "<br />", $text;
... oder auch so:/* Ausgabe:
* "Hallo", sagte er, "wie geht es Ihnen heute?"
* „Hallo“ , sagte er, „wie geht es Ihnen heute?“
*/
https://www.php-resource.de/forum/php-d ... post128004
Area51@4seven | Area51@4seven / Reloaded | Kein Support via PN
Club goin up, on a Tuesday...
Club goin up, on a Tuesday...
-
- Mitglied
- Beiträge: 26
- Registriert: 02.08.2022 13:14
Re: [3.3] Typographische Anführungszeichen
Danke für diese Idee. Auf PHP Ebene könnte ich das leicht schreiben, da kenne ich mich gut genug aus. Ich wüsste nur nicht, wo ich jetzt dieses PHP Schnipsel integrieren soll?
Re: [3.3] Typographische Anführungszeichen
Die
maßgeblich ist hier die Variable
Diese vor dem letztgenannten
Eventuell erstmal ein
und mal ein Live-Posting mit
...**oder davor:
wobei hierbei
Viel Glück
viewtopic.php
sollte dazu ausreichen, geht ja warscheinlich nur um die Darstellung im Post, also entweder hiervor**....Code: Alles auswählen
//
$post_row = array(
$message
.Diese vor dem letztgenannten
$post_row
array via preg_replace
o.ä. ändern.Eventuell erstmal ein
echo()
oder var_dump()
von $message
vor dem $post_row
arrayund mal ein Live-Posting mit
"irgendwas_in_anführungszeichen"
betrachten....**oder davor:
Code: Alles auswählen
$message = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, true);
$row['post_text']
relevant ist.Viel Glück
Area51@4seven | Area51@4seven / Reloaded | Kein Support via PN
Club goin up, on a Tuesday...
Club goin up, on a Tuesday...
-
- Mitglied
- Beiträge: 26
- Registriert: 02.08.2022 13:14
Re: [3.3] Typographische Anführungszeichen
Hey super, Danke. Da bastel ich jetzt mal ein wenig rum und denke, dass ich das hinkriege mit deinen Tips.
-
- Mitglied
- Beiträge: 26
- Registriert: 02.08.2022 13:14
Re: [3.3] Typographische Anführungszeichen
Ah, da funktioniert es nicht, weil da schon das komplette HTML geparst ist. Da wird dann alt="bla" zu alt=„bla“BNa hat geschrieben: 29.08.2022 12:54 ...**oder davor:wobei hierbeiCode: Alles auswählen
$message = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, true);
$row['post_text']
relevant ist.

Ich versuche es mal an der anderen Stelle...
Re: [3.3] Typographische Anführungszeichen
Achja, Du musst in der
direkt vor dem einleitenden " und nach dem ausleitenden " ausschließen.
Also außer Leerzeichen davor/danach sollte die regex das ausschließen.
regex
noch jegliches Zeichen direkt vor dem einleitenden " und nach dem ausleitenden " ausschließen.
Also außer Leerzeichen davor/danach sollte die regex das ausschließen.
Area51@4seven | Area51@4seven / Reloaded | Kein Support via PN
Club goin up, on a Tuesday...
Club goin up, on a Tuesday...
-
- Mitglied
- Beiträge: 26
- Registriert: 02.08.2022 13:14
Re: [3.3] Typographische Anführungszeichen
Perfekt! So funktioniert es. War ganz einfach:BNa hat geschrieben: 29.08.2022 12:54 Dieviewtopic.php
sollte dazu ausreichen, geht ja warscheinlich nur um die Darstellung im Post, also entweder hiervor**....
maßgeblich ist hier die VariableCode: Alles auswählen
// $post_row = array(
$message
.
Diese vor dem letztgenannten$post_row
array viapreg_replace
o.ä. ändern.
In
viewtopic.php
in Zeile 1764 einfach folgendes eingefügt:
Code: Alles auswählen
$rohtext = $row['post_text'];
$rohtext = preg_replace('#"(\w)#', "„\$1", $rohtext);
$rohtext = preg_replace('#([\w|.?! ])"#', "\$1“", $rohtext);
//$message = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, true);
$message = generate_text_for_display($rohtext, $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, true);
-
- Mitglied
- Beiträge: 26
- Registriert: 02.08.2022 13:14
Re: [3.3] Typographische Anführungszeichen
Zu früh gefreut 
Sobald eine Videoeinbettung drin ist, kommt ein Rendererfehler, denn dann wird die URL falsch ausgegeben:
Hier ist das Problem: VIMEO content0=„615376572“
Wie kann ich das preg_replace Statement so ändern, dass das " nur ersetzt wird, wenn davor ein Leerzeichen ist?

Sobald eine Videoeinbettung drin ist, kommt ein Rendererfehler, denn dann wird die URL falsch ausgegeben:
Code: Alles auswählen
<r>Vor einiger Zeit habe ich zusammen mit der renommierten Rohkost-Chefin Ute Ludwig ein sehr ausführliches Video zum <FADE><s>[fade]</s>gesündesten Frühstück der Welt<e>[/fade]</e></FADE> gemacht. Ich hoffe, dass es dir spannende Einblicke in diese Thematik gibt <E>:lecker:</E> <br/>
<E>:dirk:</E><br/>
<VIMEO content0=„615376572“><s>[vimeo]</s>https://vimeo.com/615376572<e>[/vimeo]</e></VIMEO></r><br />
Wie kann ich das preg_replace Statement so ändern, dass das " nur ersetzt wird, wenn davor ein Leerzeichen ist?