Syntaxhighligher_XH

Third Party Plugins to CMSimple - how to install, use and create plugins

Moderator: Tata

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Syntaxhighligher_XH

Post by cmb » Mon Aug 14, 2017 4:18 pm

Hi everybody!

Syntaxhighligher_XH 1.0beta1 has just been released.

The new version fixes some bugs and contains some enhancements. Particularly, it is supposed to work with CMSimple_XH 1.7.0, TinyMCE 4 and current versions of CKEditor. For details refer to the changelog.

Please note that 1.0beta1 isn't what it should be; for instance, the TinyMCE 4 integration is rather poor, Syntaxhighlighter is still at 3.0.83, and there is no German localization (let alone a user manual). Sorry, but I can't invest more time currently, and 1.0beta1 is still a lot better (i.e. usable) than 1alpha1. So give it a try, report bugs and suggestions for improvements. I'll see what I can do.
Christoph M. Becker – Plugins for CMSimple_XH

manu
Posts: 1086
Joined: Wed Jun 04, 2008 12:05 pm
Location: St. Gallen - Schweiz
Contact:

Re: Syntaxhighligher_XH

Post by manu » Mon Aug 14, 2017 8:17 pm

very handy if you want to publish code samples. It's not a replacement for the code plugin (view/edit source code).
You do not even have to copy the tinymce plugin. Just set in your init_*.js:

Code: Select all

external_plugins: {'syntaxhl': "%CMSIMPLE_ROOT%plugins/syntaxhighlighter/editors/tinymce4/syntaxhl/plugin.min.js"}
(works on root installs, for subdir installs adapt the path accordingly).
EDIT: the newly invented

Code: Select all

%CMSIMPLE_ROOT%
makes it even easier. See above.
Last edited by manu on Tue Aug 15, 2017 7:53 am, edited 1 time in total.

mhz
Posts: 676
Joined: Tue Jun 25, 2013 8:46 pm
Location: Heusenstamm, Hessen
Contact:

Re: Syntaxhighligher_XH

Post by mhz » Tue Aug 15, 2017 4:44 am

Hallo zusammen,
irgendwie klappt das bei mir nicht.
Ich habe das Plugin Syntaxhighligher_XH in den Ordner 'plugins' kopiert.
Dann habe ich manus code in init_fontawesome.js beim Punkt external_plugins: {
unter den bestehenden Eintrag "fontawesome": "%CMSIMPLE_ROOT%plugins/fa/editors/tinymce4/fontawesome/plugin.min.js" hineinkopiert, denn fontawesome soll ja nicht ersetzt werden.
Daraufhin gibt es jetzt im Bearbeiten-Modus keinen Editor mehr.
Lösche ich die Zeile "fontawesome": "%CMSIMPLE_ROOT%plugins/fa/editors/tinymce4/fontawesome/plugin.min.js", dann gibt es die Fehlermeldung Failed to load plugin: fontawesome from url .
Michael Zajusch (mhz)-- Mein Tutorial für CMSimple_XH. Früher

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Syntaxhighligher_XH

Post by frase » Tue Aug 15, 2017 6:32 am

Syntaxhighligher_XH mit TinyMCE4 und FA-Plugin:

In "init_fontawesome.js" das Plugin einfügen (Komma nach FA!):

Code: Select all

external_plugins: {
    "fontawesome": "%CMSIMPLE_ROOT%plugins/fa/editors/tinymce4/fontawesome/plugin.min.js",
    "syntaxhl": "%CMSIMPLE_ROOT%plugins/syntaxhighlighter/editors/tinymce4/syntaxhl/plugin.min.js"
},
Dann noch das Icon in die Toolbar einfügen, z.B. in die 3. Zeile:

Code: Select all

toolbar3: "undo redo | link unlink anchor image media | hr nonbreaking removeformat visualblocks visualchars | forecolor backcolor | searchreplace | charmap fontawesome | syntaxhl",
Das funktioniert soweit (das Icon ist bunt).
Nur ein Problem:
Füge ich auf einer Seite highlited Code ein und speichere, dann wird der Speichern-Button im Tiny nicht ausgegraut.
Bei einem Seitenwechsel werde ich gefragt: "Diese Seite bittet Sie zu bestätigen, dass Sie die Seite verlassen möchten – Daten, die Sie eingegeben haben, werden unter Umständen nicht gespeichert."
Ich kann so oft speichern, wie ich will - das bleibt. Ignoriere ich diese Meldung, ist trotzdem alles in Ordnung.
Die Vorschau stimmt.
Kriegt der Tiny nicht mit, dass gespeichert wurde?

Nachtrag:
In der Hilfedatei wird beschrieben:
For TinyMCE4:
1. Copy plugins/syntaxhighlighter/editors/tinymce4/syntaxhl/ to plugins/tinymce4/tinymce/plugins/.
2. Edit your init_*.js: add the syntaxhl plugin to plugins and add the syntaxhl button to toolbarN wherever you prefer.
1. ist mit dem Code oben nicht nötig
2. "toolbarN" ist verwirrend - besser wohl toolbar(nth) oder toolbar(x) ...
Last edited by frase on Tue Aug 15, 2017 8:06 am, edited 1 time in total.

manu
Posts: 1086
Joined: Wed Jun 04, 2008 12:05 pm
Location: St. Gallen - Schweiz
Contact:

Re: Syntaxhighligher_XH

Post by manu » Tue Aug 15, 2017 7:58 am

frase wrote:Syntaxhighligher_XH mit TinyMCE4 und FA-Plugin:

In "init_fontawesome.js" das Plugin einfügen (Komma nach FA!):

Code: Select all

external_plugins: {
    "fontawesome": "%CMSIMPLE_ROOT%plugins/fa/editors/tinymce4/fontawesome/plugin.min.js",
    "syntaxhl": "%CMSIMPLE_ROOT%/plugins/syntaxhighlighter/editors/tinymce4/syntaxhl/plugin.min.js"
},
...
In %CMSIMPLE_ROOT% ist der trailing slash bereits enthalten,"plugins" braucht daher kein führenden slash.

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Syntaxhighligher_XH

Post by frase » Tue Aug 15, 2017 8:07 am

manu wrote:In %CMSIMPLE_ROOT% ist der trailing slash bereits enthalten,"plugins" braucht daher kein führenden slash.
Oh, danke. Tippfehler.
Habe ich oben korrigiert.

Was sagst du zu dem Speichern-Problem?

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Syntaxhighligher_XH

Post by cmb » Tue Aug 15, 2017 8:38 am

manu wrote:You do not even have to copy the tinymce plugin. Just set in your init_*.js:
Thanks. I've already forgotten about this possibility.
frase wrote:Füge ich auf einer Seite highlited Code ein und speichere, dann wird der Speichern-Button im Tiny nicht ausgegraut.
Kann ich nicht reproduzieren. Möglicherweise wird aber nach dem Speichern vom System HTML an den Editor übergeben, das dieser aus irgendeinem Grund gleich wieder bereinigt, also ändert. Da könntest Du mal den entsprechenden Quelltext der Seite mit dem vom Editor angezeigten HTML vergleichen. Ansonsten bitte auch mal in der JavaScript Konsole nachschauen, ob etwas gemeldet wird.
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Syntaxhighligher_XH

Post by frase » Tue Aug 15, 2017 9:07 am

cmb wrote:
frase wrote:Füge ich auf einer Seite highlited Code ein und speichere, dann wird der Speichern-Button im Tiny nicht ausgegraut.
Kann ich nicht reproduzieren. Möglicherweise wird aber nach dem Speichern vom System HTML an den Editor übergeben, das dieser aus irgendeinem Grund gleich wieder bereinigt, also ändert. Da könntest Du mal den entsprechenden Quelltext der Seite mit dem vom Editor angezeigten HTML vergleichen. Ansonsten bitte auch mal in der JavaScript Konsole nachschauen, ob etwas gemeldet wird.
Weder die Konsole, noch der Debug-Modus melden irgendwas.
Ich habe das Plugin jetzt auch mal nach der Methode aus der Hilfedatei eingebunden - gleiches Ergebnis.
Bei jedem Seitenwechsel werde ich gefragt, ob ich die Seite verlassen will.
Auch schon beim Aufruf der Seite (die einen Code enthält) ist der Speichern-Button nicht grau - wie bei anderen Seiten.

Ich teste mit XH 1.7 (unangetastet), PHP 5.6.x, Template fhs-simple. Keine weiteren Plugins.

Nachtag:
meine Systemprüfung meldet:
Prüfe, dass session.use_only_cookies deaktiviert ist … Warnung
Hat das damit zu tun?

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Syntaxhighligher_XH

Post by cmb » Tue Aug 15, 2017 9:20 am

frase wrote:Auch schon beim Aufruf der Seite (die einen Code enthält) ist der Speichern-Button nicht grau - wie bei anderen Seiten.
Von Seiten des syntaxhl Plugins ist dies wohl die einzige Stelle, die dieses Verhalten verursachen könnte. Kommentiere das mal aus, und probiere es noch mal. Allerdings wird das in der ausgelieferten plugin.min.js schwierig, da diese minifiziert ist. Ersetze sie daher zunächst durch diese.
frase wrote:Prüfe, dass session.use_only_cookies deaktiviert ist … Warnung
Hat das damit zu tun?
Sehr unwahrscheinlich. Das solltest du aber trotzdem ändern, falls die Seite öffentlich zugänglich ist.
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: Syntaxhighligher_XH

Post by frase » Tue Aug 15, 2017 9:42 am

cmb wrote:Ersetze sie daher zunächst durch diese.
Damit funktioniert es, wie gewollt.

EDIT:
Korrektur:
Es hat nur einmal richtig funktioniert (Firefox) - jetzt ist es wieder so, wie beschrieben :(

EDIT II:
Im Vivaldi (Chrome) tritt das Problem nicht auf !!!
Im IE11 auch nicht !!!

cmb wrote:
frase wrote:Prüfe, dass session.use_only_cookies deaktiviert ist … Warnung
Hat das damit zu tun?
Sehr unwahrscheinlich. Das solltest du aber trotzdem ändern, falls die Seite öffentlich zugänglich ist.
Das ist bei allen meinen Installationen so - mir ist noch kein Problem aufgefallen.
Ist das die Browsereinstellung "Cookies von Drittanbietern ..."?

Post Reply