Neuigkeiten:

moziloCMS verwendet Cookies. Wenn Sie auf unserer Seite weitersurfen, stimmen Sie der Cookie-Nutzung zu Datenschutzerklärung
moziloCMS Layouts
moziloCMS Plugins

Hauptmenü

Syntax-Highlighting mit "HighLighter"

Begonnen von azett, 11. Oktober 2010, 16:21:50

« vorheriges - nächstes »

HPdesigner

Nice, jetzt funktionierts! Vielen Dank!
Soll ich das Plugin für 2.0 hochladen?
Check my website devmount.de
and find me on Twitter, Medium, GitHub, StackOverflow, Codepen and Slack

Rainer

moziloCMS über Facebook bekannt machen
•• moziloCMS auf GitHub
••• Nichts ist einfacher, als das, was uns fremd ist, zu verachten.
•••• Mein moziloCMS

HPdesigner

Ich habs hochgeladen.

Na hätte ja sein können, dass noch Ideen oder Einwände kommen... ;)
Check my website devmount.de
and find me on Twitter, Medium, GitHub, StackOverflow, Codepen and Slack

Rainer

Wer weiß, die kommen ja vielleicht immer noch  :D
moziloCMS über Facebook bekannt machen
•• moziloCMS auf GitHub
••• Nichts ist einfacher, als das, was uns fremd ist, zu verachten.
•••• Mein moziloCMS

blacknight

super Plugin  :D

ich hatte nur noch ein kleines Problem und zwar wenn ich folgendes darstellen möchte:
<div class="menu">{CSSDropDownMenu}</div>
In der Inhaltsseite steht:
{HighLighter|html5|
  <div class="menu">^{CSSDropDownMenu^}</div> 
}


in der fertigen Seite wird jedoch nicht {CSSDropDownMenu} ausgegeben sondern durch das Plugin mit dem entsprechenden HTML Code ersetzt.

Ich hab dann im HighLighter Plugin die Zeile
$code = str_replace(array('-html_br~','-html_nbsp~'), array('', ' '), $code);
ersetzt durch:
$code = str_replace(array('-html_br~','-html_nbsp~','{','}'), array('', ' ','^{','^}'), $code);
und die Zeile
return $geshi->parse_code();
durch
return $specialchars->encodeProtectedChr($geshi->parse_code());
Damit bleibt das ^ erhalten und es wird {CSSDropDownMenu} ausgegeben.
Hat, soweit ich das testen konnte, auch keine negativen Auswirkungen. Wenn keine Einwände hat, könntest du das ja vielleicht noch ändern ;)

stefanbe

Ich würde es so ändern

Suchen
return $geshi->parse_code();
Ersetzen
$search = array("{","}","|","[","]");
$replace = array("{","}","|","[","]");
return str_replace($search,$replace,$geshi->parse_code());


damit GeSHi nicht die Geschützen Zeichen mitbeckomt.
Da die ja eigendlich zum Hervor zu hebenen Code gehören und nur vor mozilo Geschützt werden müssen.

lg stefanbe

HPdesigner

Hab Stefans Variante implementiert und hochgeladen, danke für das gute Feedback!

lg, HPdesigner
Check my website devmount.de
and find me on Twitter, Medium, GitHub, StackOverflow, Codepen and Slack

stromflo

#22
Guten Abend zusammen,

möchte meine bestehende Webseite (Dokuwiki )zukünftig durch eine moziloCMS Seite ersetzen.
Allerdings kommt dort auch reichlich Quellcode vor. Wollte einen Quellcode, der in C geschrieben ist nun mit dem Plugin darstellen. Allerdings wird die Darstellung bereits nach dem ersten } beendet. Im Quellcode kommt auch | vor.

Gibt es da eine Lösung?

Gruß Flo

HPdesigner

#23
Ich fürchte alle {, }, [, ] und | musst du mit ^ escapen... Ich hab das mit "Alle suchen und ersetzen" in meinem Texteditor gemacht.

— Andreas

PS: An dieser Stelle an die Entwickler: Es wäre super, wenn es eine Art Block-Escapen gäbe! Sodass man mozilo sagt, in diesem Block nicht auf Syntax prüfen, um nicht alle Sonderzeichen einzeln escapen zu müssen...
Check my website devmount.de
and find me on Twitter, Medium, GitHub, StackOverflow, Codepen and Slack

stromflo

Danke für die Rückmeldung.
Hatte ich auch schon vermutet, dass ich da nicht herum komme....
Dein Ansatz/Vorschlag hört sich natürlich super an und wäre schön, wenn dies irgendwann umgesetzt wird.

Gruß Flo

HPdesigner

Falls du Sublime Text nutzt (für mich der beste Code-Editor überhaupt, um mal etwas Werbung einzuschieben ;) ) oder einen anderen Texteditor, der reguläre Ausdrücke nutzt, kannst du einfach nach folgendem Ausdruck suchen (STRG+H):

[{}|\[\]]

Dann setzt Sublime dir vor jedes der mozilo Sonderzeichen einen Cursor und du brauchst nur noch das Hochdach einfügen. Ein hoch auf Multicursor!

— Andreas
Check my website devmount.de
and find me on Twitter, Medium, GitHub, StackOverflow, Codepen and Slack

stefanbe


HPdesigner

Multicursor? Ja, Regex? Nein... ;)

— Andreas
Check my website devmount.de
and find me on Twitter, Medium, GitHub, StackOverflow, Codepen and Slack

stromflo

#28
Also das Suchen/Ersetzen hat im mozilo Editor super geklappt!
Außerdem habe ich das Aussehen der Codebox noch im style.css hinterlegt.


.highlighter_plugin{
  background-color: #EEEEEE; 
  border: 1px solid black;
}


Ein Problem macht mir die Ganze Darstellung jetzt noch in der mobilen Ansicht.
Der Text geht über den Rand vom Design und auch über den Rahmen der Codebox hinaus...
Mal überlegen wie ich das in Griff bekomme... Es stellt sich die natürlich die Frage wie ich auf Mobilgeräten überhaupt eine sinnvolle Darstellung hinbekomme?

Gruß Flo

edit:
overflow: auto;  gefällt mir fast noch am besten :)

.highlighter_plugin{
  background-color: #EEEEEE; 
  border: 1px solid black;
  padding: 2px;
  overflow: auto;
}


Im mobilen Design nehme ich dann die Schriftgröße noch etwas runter...