CP Code - Syntax Highlighting PHP

Hier bekommst Du deutschsprachigen Support. Keine Fehlermeldungen oder Erweiterungswünsche bitte!
Post Reply
phalancs
Posts: 792
Joined: Thu 19. Feb 2004, 05:09
Location: Germany

CP Code - Syntax Highlighting PHP

Post by phalancs »

Hat jemand schonmal versucht, Syntax Highlighting für PHP mit dem CP Code zu realisieren?

Es gibt ja zwei Funktionen von PHP für die Darstellung, hat sich jemand damit schonmal genauer auseinandergesetzt? Der Code müsste dabei in eine Variable kommen und dann an die Funktion übergeben werden. Leider muss man dann ja darauf achten, dass nicht noch zusätzliche ' " ' auftauchen. Ich möchte aber meine Codes nicht noch umständlich nachbearbeiten.

GIbts nicht ne einfachere CSS Lösung?

Danke!
2008

phalancs
Posts: 792
Joined: Thu 19. Feb 2004, 05:09
Location: Germany

Re: CP Code - Syntax Highlighting PHP

Post by phalancs »

2008

User avatar
update
Moderator
Posts: 6417
Joined: Mon 10. Jan 2005, 17:29
Location: germany / outdoor

Re: CP Code - Syntax Highlighting PHP

Post by update »

Und wie genau hast Du's gemacht?
It's mostly all about maintaining two or three customer's sites Still supporter for the band Mykket Morton. Visit Mykket Morton on FB. Listen Mykket Morton and live videos on youtube.
Now building a venue for young artists to get wet on stage, rehearsal rooms, a studio, a guitar shop - yes I'm going to build some guitars.

User avatar
Oliver Georgi
Site Admin
Posts: 9649
Joined: Fri 3. Oct 2003, 22:22
Location: Moscow, Russia
Contact:

Re: CP Code - Syntax Highlighting PHP

Post by Oliver Georgi »

Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон

User avatar
update
Moderator
Posts: 6417
Joined: Mon 10. Jan 2005, 17:29
Location: germany / outdoor

Re: CP Code - Syntax Highlighting PHP

Post by update »

Holla die Waldfee :)
Ochottochottochott wird mir schwindelich ;)
It's mostly all about maintaining two or three customer's sites Still supporter for the band Mykket Morton. Visit Mykket Morton on FB. Listen Mykket Morton and live videos on youtube.
Now building a venue for young artists to get wet on stage, rehearsal rooms, a studio, a guitar shop - yes I'm going to build some guitars.

User avatar
update
Moderator
Posts: 6417
Joined: Mon 10. Jan 2005, 17:29
Location: germany / outdoor

Re: CP Code - Syntax Highlighting PHP

Post by update »

...und danke! :D
It's mostly all about maintaining two or three customer's sites Still supporter for the band Mykket Morton. Visit Mykket Morton on FB. Listen Mykket Morton and live videos on youtube.
Now building a venue for young artists to get wet on stage, rehearsal rooms, a studio, a guitar shop - yes I'm going to build some guitars.

phalancs
Posts: 792
Joined: Thu 19. Feb 2004, 05:09
Location: Germany

Re: CP Code - Syntax Highlighting PHP

Post by phalancs »

Wow, jetzt ist mir Olli zuvorgekommen. Hatte grad auch son Package in der mache! Danke für die viele Berücksichtigung der Ideen momentan :D
2008

User avatar
juergen
Moderator
Posts: 4554
Joined: Mon 10. Jan 2005, 18:10
Location: Weinheim
Contact:

Re: CP Code - Syntax Highlighting PHP

Post by juergen »

Man traut sich ja schon nimmer aus dem Haus nur um nichts zu verpassen ;)

phalancs
Posts: 792
Joined: Thu 19. Feb 2004, 05:09
Location: Germany

Re: CP Code - Syntax Highlighting PHP

Post by phalancs »

OKay, also ich habe es nur über den HTML CP gemacht, da der CODE CP nach jeder Zeile ein "<br>" einfügt (ich glaube durch den nl2br Befehl). Dieses BR wird dann leider im Frontend dargestellt und macht den gehighlighteten Code kaputt.

Workaround ist wie gesagt, einfach die tmpl Datei in das template/inc_cntpart/html zu verschieden und den HTML CP zu verwenden.
Ach ja, wenn man PHP highlighten möchte, muss man statt brush: js brush: php schreiben (in der Template-Datei).
2008

User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Re: CP Code - Syntax Highlighting PHP

Post by flip-flop »

.... und

Code: Select all

<!-- JS: {TEMPLATE}lib/syntaxhighlighter/shBrushPhp.js -->
einsetzen.
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )

pepe
Posts: 3954
Joined: Mon 19. Jan 2004, 13:46

Re: CP Code - Syntax Highlighting PHP

Post by pepe »

Also... dieses blöde <br> was da im Code am Zeitenende automatisch generiert wird....
das sollte doch eigentlich nicht erscheinen, oder?


Bei der Gelegenheit gleich mal nachgefragt:

Eine Sache, die ich vom 1. Tag mit phpwcms an immer verflucht habe, dass im ContentPart Code grundsätzlich die phpwcms eigenen RTs "interpretiert" werden...

Die Rettung war meist ein zusätzliches Leerzeichen oder ein Workaround per {{SPACER:1x1}REPLACEMENT_TAG} ....
erheblicher Mehraufwand und beim Kopieren immer der Ärger, dass die Spacer-Grafik mit im Code hing, was manchen Anfänger beim "Abschreiben" vor unlösbare Probleme gestellt hat!

Genau in diesem ContenPart CODE aber, der zur Darstellung von Programm-Code gedacht ist, sollte doch genau das 1/1 ausgegeben werden, was ich eintrage und nicht "interpretiert"... sonst macht dieser CP doch wenig Sinn.

Oder hab ich was falsch verstanden?

User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Re: CP Code - Syntax Highlighting PHP

Post by flip-flop »

Ich finde das zwar auch nicht toll das diese Zeilenumbrüche eingemischt werden aber das kann ja mittlerweile mit einem CP Trigger recht einfach behoben werden.
Datei: template/inc_script/frontend_init/cp_trigg_code_no_br.php

Code: Select all

<?php
// -------------------------------------------------------------------------------------------
// obligate check for phpwcms constants
    if (!defined('PHPWCMS_ROOT')) {
        die("You Cannot Access This Script Directly, Have a Nice Day."); }
// -------------------------------------------------------------------------------------------
/**
 *********************************************************************************************
 * Simple Version 1.0
 * 10.02.12 KH: Delete all <br /> from source text in CP code
 *  
 * File: CP trigger in template/inc_script/frontend_init/cp_trigg_code_no_br.php 
 
 * TAG in template for processing:  [%NoBR%]
 **********************************************************************************************
*/

function TRIGG_CP_CODE_NO_BR_V1($text, & $data) {
 
	// Der richtige CP:  code (11) 
	// and Tag available?
 
	if	(	($data['acontent_type'] == 11) AND 				// cp code
			( strpos($text, '[%NoBR%]') !== FALSE) ) 	// TAG is set ?  // TAG vorhanden?
	{
//	 dumpVar($text);
		$text = str_replace('<br />', '', $text);
		$text = str_replace('[%NoBR%]', '', $text);
	
	}
		return $text;
}

register_cp_trigger('TRIGG_CP_CODE_NO_BR_V1');

?>
Irgendwo im Template zwischen <code>....</code> den TAG [%NoBR%] verstecken, damit der Trigger weiß dass er gemeint ist.
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )

pepe
Posts: 3954
Joined: Mon 19. Jan 2004, 13:46

Re: CP Code - Syntax Highlighting PHP

Post by pepe »

Danke, das umgeht den Fehler...
wenn auch eine "Lösung", die funktioniert, aber doch wohl am falschen Ende angepackt, oder?

Macht nix, besser als keine Lösung und deshalb nochmals, danke für das Script :D


Aber:
Werden damit nicht ALLE <br / rausgeworfen?
Auch die, die ich selber reingeschrieben habe, und die natürlich erscheinen sollen?

User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Re: CP Code - Syntax Highlighting PHP

Post by flip-flop »

Ne, die werde ja in Entities umgeschrieben und stehen nicht als <br /> im generierten Quelltext.

Test das mit dem Script, ändere

Code: Select all

//	 dumpVar($text);
nach

Code: Select all

	 dumpVar($text); 
Nun siehst du was vor dem Aufräumen passiert.
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )

pepe
Posts: 3954
Joined: Mon 19. Jan 2004, 13:46

Re: CP Code - Syntax Highlighting PHP

Post by pepe »

OK... ich hatte es in der Zwischenzeit einfach getestet und sehe... MEINE <br /> bleibem erhalten... so soll es ja auch sein.

( Eigentlich hatte ich auch nichts Anderes von dir erwartet :D )

Danke natürlich, für die Erklärung!

Post Reply