interner Editor mit Syntaxhervorhebung (fhem_codemirror.js) funktioniert nicht

Begonnen von TeleDet, 12 Mai 2018, 15:39:31

Vorheriges Thema - Nächstes Thema

TeleDet

Hallo an alle FHEM-User,

ich habe seit kurzem ein Problem beim Bearbeiten meiner cfg-Dateien mit dem internen Editor (,,Edit files" im FHEM-Web). Syntax-Highlighting und Config-Änderung sind mittels

attr WEB JavaScripts codemirror/fhem_codemirror.js
attr WEB editConfig 1


eingestellt.

Der Fehler tritt nicht immer auf und betrifft scheinbar nur den aktuellen Browser Mozilla Firefox V.60.0 (64bit)
Siehe auch meine Screenshots.


Die zu bearbeitende cfg-Datei (z.Bsp. fhem.cfg) wird entweder richtig im Editor-Fenster angezeigt oder es erscheint ein fast leeres Editor-Fenster wo auf der rechten Seite die Zahlen 1-3 untereinander angezeigt werden. Durch mehrmaliges öffnen einer cfg-Datei wird sie meist ,,richtig" angezeigt. Dies ist aber eher sporadisch und nicht nachvollziehbar.
Ein Test mit Microsoft Edge hat keine Probleme gezeigt! D.h. vermute ich ein Browser-Problem!
Hat jemand von Euch ähnliche Erscheinungen oder Erfahrungen? Wenn ja mit welcher Browserversion?

Meine codemirror/fhem_codemirror.js und fhemweb.js sind aktuell.
Browser-Cache, History etc. wurden gelöscht und FHEM-Web mit STRG + Shift +R ,,hart" neu im Browser geladen ohne Änderung des Verhaltens.

Gruß TeleDet

frank

Zitates erscheint ein fast leeres Editor-Fenster wo auf der rechten Seite die Zahlen 1-3 untereinander angezeigt
ich erkenne dort die zeilennummern 1-36.
der bildausschnitt (x-pos) ist demnach falsch/bleibt unbeachtet.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

TeleDet

Frank,

da könntest du Recht haben  ::) ... die Frage ist warum macht Firefox dies mal so und mal wieder richtig?
Wie gesagt, wenn es falsch dargestellt wird und man öffnet die entsprechende Datei nochmals (ggf. mehrmals
nacheinander) wird sie irgendwann auch mal richtig dargestellt.

Daraus ergibt sich dann die Frage: Ist das ein Bug nur in Mozilla und wenn ja lässt sich der abstellen oder ggf. in der
fhem_codemirror.js umgehen?  ::)  ::)

Gruß TeleDet

Nachtrag: Klickt man mit der rechten Maustaste in das Editor-Fenster und und lässt die Seite neu laden siehe Bild (analog
funktioniert auch STRG+R) wird der Quelltext im Editor auch sofort richtig dargestellt.

rudolfkoenig


TeleDet

Hmmm  ::) ... dann liegt es wohl an meiner Installation !? Komisch nur, dass sich Firefox vor kurzem geupdatet hat
und ich solche Verhaltensweisen vorher nicht hatte.  ::)

Danke trotzdem für deinen Test und die Info Rudolf

Gruß Detlef

ComputerZOO

Moinsen,
ich habe manchmal das selbe Problem bei Safari auf'm iPad.
Seite neu laden, wieder auf DEF klicken und schon wird es richtig dargestellt.

Norge

Hallo TeleDet,

habe seit dem Update von Firefox auf die Version 60.0 ebenfalls das von Dir beschriebene Problem. Auch mit deaktivierten Addons trat das Problem noch auf.
Insofern hatte ich dann ein Downgrade auf v59.0.2 durchgeführt und es lief wieder problemlos.

Der beschriebene Workaround mit mehrfachen Reload funktioniert nur bedingt.

Gruß
Norge
FHEM  5.8 DEV auf Raspberry Pi 3; CULv3-868; HM-LC-BL1-FM,HM-LC-SW2-FM,HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-RHS,HM-SEC-SCo

TeleDet

Danke Norge für Deine Info !

Ich habe in den letzten Tagen immer mal wieder versucht den Fehler bei mir zu finden, ohne wirklichen Erfolg.
Es scheint das Mozila am Firefox 60 irgendetwas geändert hat (vermutlich in Bezug auf JavaScript) was zu diesem
verhalten führt. Auch bei mir führten die Test's mit deaktivieren/aktivieren (in diversen Kombinationen) der Addons
zu keinem Erfolg.  ::) :-\

Ich warte jetzt mal auf das nächste Update von Firefox und dann werden wir sehen.

Gruß Detlef

Ellert

Seit FF Version 60.0.1 (32-Bit) beobachte ich das Verhalten auch.

Codemirror wird beim Aufruf von 99_myUtils.pm einmal korrekt angezeigt. Beim nächsten Aufruf bleibt das Fenster schwarz ohne Inhalt.

Nach löschen des Browsercache funktioniert Codemirror einmal wieder nach einem Seitenreload.

ThoTo

Hänge mich mal dazu, ich konnte dieses Verhalten mit aktueller FF Version ebenso beobachten.

LG Thomas
KNX | MQTT | Docker | Sonos | FHEMapp

"Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher." (Albert Einstein)

TeleDet

Schön, das es nicht nur mir so geht  :) ... schlecht, das es das Problem überhaupt gibt  ::)

Der interner Editor mit Syntaxhervorhebung ist wohl eine Implementierung von https://codemirror.net/ !?
Man muss mal schauen, ob da ähnliche Probleme bekannt sind und es ggf. Abhilfe gibt.
Da ich definitiv glaube, das der Fehler nicht im FHEM zu suchen ist!

Ansonsten, wie oben gesagt, eventuell erst mal das nächste Update von FF abwarten!  ::)

Gruß TeleDet

Ellert

Als Workaround, könnte man das AddOn Clear Cache installieren. Cache löschen und Reload per Click.

Oder FF ESR installieren, dann gibt es auch Sicherheitsupdates für die ältere Version.

TeleDet

Also bei mir funktioniert der Workaround den ich beschrieben hatte:

ZitatNachtrag: Klickt man mit der rechten Maustaste in das Editor-Fenster und und lässt die Seite neu laden siehe Bild (analog
funktioniert auch STRG+R) wird der Quelltext im Editor auch sofort richtig dargestellt.

recht gut und zuverlässig.

Den Cache löschen wäre sicher auch eine Möglichkeit nur denke ich, es liegt
nicht am Cache sondern am Ladeverhalten der Seite (mit JavaScript). Der Reload,
ob mit gelöschten Cache oder ohne, bewirkt das korrekte ausführen/interpretieren
des eigentlichen JavaScript's welches die Seite (Editor-Fenster) generiert. 

Gruß TeleDet


Ellert

Bei ein Paar Zeilen habe ich keine Probleme mit dem Codemirror und bei 2000 Zeilen in 99_myUtils.pm klappt es mit dem Reload nicht, da muss bei mir der Cache gelöscht werden.

TeleDet

 ::) Okay ... das hatte ich jetzt noch nicht getestet bzw war mir das nicht aufgefallen da ich nur meine cfg Dateien bearbeitet hatte.

Gruß TeleDet