MyBB.de Forum

Normale Version: [G] [code]..[/code] bug
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Schon gemeldet, damals im beta board,... bei uns noch vorhanden:
Leerzeilen zwischen den Zeilenumbrüchen
siehe hier
Komischer Weise ist das hier nicht so:
Code:
Zeilenumbruch
erzeugt
Leerzeilen
im Fox
MyBB 1.2.1
zum Upgrade alle Dateien gelöscht; bis auf config.php und settings.php
Woran kanns liegen?
Gruß,
ribba
Kannst du bitte eine PHP-Datei mit dem folgenden Inhalt auf den Server kopieren, diese dann aufrufen, den Quelltext der Seite in eine Text-Datei packen und hier anhängen? Werde das Ganze dann weitergeben.
PHP-Code:
<?php
phpinfo
();
?>
hier isse...
ich hoffe, ich habe alles richtig gemacht..
Danke für die Hilfe,
Gruß,
ribba
edit: attachment gelöscht
Entferne bitte mal das white-space: pre; aus dem CSS-Code.
Vielen Dank,
da habe ich gestern Nacht nicht mehr dran gedacht, dass wir damals mal diese Zeile im Extra CSS (wegen des "schiefen" codes) eingefügt haben.
-> unsere Schuld, nicht die des MyBB!
Super, meine Güte, fanstastisch.
Gruß,
ribba
*duck*
äh, ok, durch das Entfernen des pre haben wir nun keine doppelten Leerzeilen mehr...
...aber nun wird nicht mehr eingerückt...(in allen der mir zur Verfügung stehenden Browser)
sorry Embarrassed
test bei uns
und hier:
Code:
test
    eintab
        zweitab
            dreitab
einleerzeichen
  zweileerzeichen
Gruß,
ribba
Ich hatte gerade ne Konferenz mit einem Kumpel, dem ich das prob geschildert habe.
Da ich von meiner Warte aus nicht viel damit anfangen kann, zitiere ich ihn mal:
Zitat:Code text muß grundsätzlich in einem <pre> </pre> (oder span bzw. div mit style = "white-space: pre;") Block ausgegeben werden. Eine Ersetzung von Leerzeichen und Zeilenumbrüchen im Codetext durch &nbsp; und "<br />\n" darf nicht durchgeführt werden.
Gruß,
ribba
Versuche mal bitte folgendes: Öffne die Datei inc/class_parser.php und suche nach:
PHP-Code:
    function mycode_parse_code($code)
    {
        global 
$lang;
        
$code trim($code);
        
$code preg_replace('#\$([0-9])#''\\\$\\1'$code);
        return 
"</p>\n<div class=\"code_header\">".$lang->code."\n</div><div class=\"code_body\"><div dir=\"ltr\"><code>".$code."</code></div></div>\n<p>\n";
    } 
Ersetzen durch:
PHP-Code:
    function mycode_parse_code($code)
    {
        global 
$lang;
        
$code trim($code);
        
$code preg_replace('#\$([0-9])#''\\\$\\1'$code);
        
$code str_replace("<br>""\r\n"$code);
        return 
"</p>\n<div class=\"code_header\">".$lang->code."\n</div><div class=\"code_body\"><div dir=\"ltr\"><code><pre>".$code."</pre></code></div></div>\n<p>\n";
    } 
Gerade gemacht, war eh am Basteln am Forum,
Jo, Danke, jetzt gehen Tabs wieder, nun haben wir allerdings wieder doppelte
Zeilenabstände. Rolleyes
(das pre im extra css habe ich auch nicht wieder reingetan, nur Deine letzten Anweisungen befolgt..)
hier
Sorry,
Gruß,
ribba
Meine Junx haben an dem Vorschlag ein wenig rumgedoktert.
Sie meinten, es wäre ein dirty Lösung, naja, schau mal selber:
PHP-Code:
       function mycode_parse_code($code)
        {
                global $lang;
                $code trim($code);
                $code preg_replace('#\$([0-9])#''\\\$\\1'$code);
                #$code = str_replace("<br>", "", $code);
            
$code str_replace("\n""<br>"$code);
                return "</p>\n<div class=\"code_header\">".$lang->code."\n</div><div class=\"code_body\"><div dir=\"ltr\"><code><pre>".$code."</pre></code></div></div>\n<p>\n";
        
es funzt, so wies sollte.
Gruß,
ribba