[3.3] Typographische Anführungszeichen

Du suchst eine bestimmte Extension, weißt aber nicht genau wo bzw. ob sie überhaupt existiert? Du kannst hier die von dir gewünschte/gesuchte Extension beschreiben ...
Falls ein Extension-Autor eine der Anfragen hier aufnimmt, um eine neue Extension zu entwickeln, geht's in Extensions in Entwicklung weiter.
liesenfeld
Mitglied
Beiträge: 26
Registriert: 02.08.2022 13:14

[3.3] Typographische Anführungszeichen

Beitrag von liesenfeld »

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
Verschoben von Support-Forum nach Extension Suche/Anfrage am 25.08.2022 11:25 durch Dr.Death

liesenfeld
Mitglied
Beiträge: 26
Registriert: 02.08.2022 13:14

Re: [3.3] Typographische Anführungszeichen

Beitrag von liesenfeld »

Hat niemand eine Idee? Das muss doch auch noch andere betreffen, oder bin ich da zu pedantisch? :cry:
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: [3.3] Typographische Anführungszeichen

Beitrag von BNa »

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. 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;
/* Ausgabe:
* "Hallo", sagte er, "wie geht es Ihnen heute?"
* „Hallo“ , sagte er, „wie geht es Ihnen heute?“
*/
... oder auch so:
https://www.php-resource.de/forum/php-d ... post128004
liesenfeld
Mitglied
Beiträge: 26
Registriert: 02.08.2022 13:14

Re: [3.3] Typographische Anführungszeichen

Beitrag von liesenfeld »

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?
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: [3.3] Typographische Anführungszeichen

Beitrag von BNa »

Die viewtopic.php sollte dazu ausreichen, geht ja warscheinlich nur um die Darstellung im Post, also entweder hiervor**....

Code: Alles auswählen

	//
	$post_row = array(
maßgeblich ist hier die Variable $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 array
und 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);
wobei hierbei $row['post_text'] relevant ist.

Viel Glück
liesenfeld
Mitglied
Beiträge: 26
Registriert: 02.08.2022 13:14

Re: [3.3] Typographische Anführungszeichen

Beitrag von liesenfeld »

Hey super, Danke. Da bastel ich jetzt mal ein wenig rum und denke, dass ich das hinkriege mit deinen Tips.
liesenfeld
Mitglied
Beiträge: 26
Registriert: 02.08.2022 13:14

Re: [3.3] Typographische Anführungszeichen

Beitrag von liesenfeld »

BNa hat geschrieben: 29.08.2022 12:54 ...**oder davor:

Code: Alles auswählen

	$message = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, true);
wobei hierbei $row['post_text'] relevant ist.
Ah, da funktioniert es nicht, weil da schon das komplette HTML geparst ist. Da wird dann alt="bla" zu alt=„bla“ :grin:
Ich versuche es mal an der anderen Stelle...
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: [3.3] Typographische Anführungszeichen

Beitrag von BNa »

Achja, Du musst in der 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.
liesenfeld
Mitglied
Beiträge: 26
Registriert: 02.08.2022 13:14

Re: [3.3] Typographische Anführungszeichen

Beitrag von liesenfeld »

BNa hat geschrieben: 29.08.2022 12:54 Die viewtopic.php sollte dazu ausreichen, geht ja warscheinlich nur um die Darstellung im Post, also entweder hiervor**....

Code: Alles auswählen

	//
	$post_row = array(
maßgeblich ist hier die Variable $message.
Diese vor dem letztgenannten $post_row array via preg_replace o.ä. ändern.
Perfekt! So funktioniert es. War ganz einfach:

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);
liesenfeld
Mitglied
Beiträge: 26
Registriert: 02.08.2022 13:14

Re: [3.3] Typographische Anführungszeichen

Beitrag von liesenfeld »

Zu früh gefreut :-(
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 />
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?
Antworten

Zurück zu „Extension Suche/Anfrage“