Autor Thema: Javascript Editor einbinden  (Gelesen 41497 mal)

Offline papa

  • Developer
  • Full Member
  • ****
  • Beiträge: 313
Javascript Editor einbinden
« am: 18 Februar 2014, 20:30:04 »
Um das Arbeiten in der .cfg vollständig abzulösen, sollte der DEF-Editor durch einen "echten" Code-Editor ausgetauscht werden. Wenn man mehr als ein oder zwei Zeilen schreibt, ist Syntax-Highlighting und Klammernmatching schon sehr hilfreich.

Könnte man vielleicht so was wie hier

http://codemirror.net/

in das Webinterface einbinden ?
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3325
    • tech_LogBuch
Antw:Javascript Editor einbinden
« Antwort #1 am: 18 Februar 2014, 21:40:05 »
Möglicherweise ein nettes Feature, jedoch gehört (IMHO) alles, was länger als 1 Zeile ist, in ein PM-Modul (Z.B. 99_myUtils.pm)
Cubietruck, HM (HMLAN/HM-CFG-USB/HM-LC-Bl1PBU-FM/HM-LC-Sw1PBU-FM/HM-LC-Dim1TPBU-FM/HM-LC-SW1-PL2/HM-SEC-RHS/HM-PB-2-WM55/HM-PB-6-WM55/HM-Sen-MDIR-O/HM-CC-RT-DN/HM-TC-IT-WM-W-EU/HB-UW-Sen-THPL-I/...), 1wire, Firmata, MySensors,..

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 12775
  • Probleme sind auch keine Lösung.
Antw:Javascript Editor einbinden
« Antwort #2 am: 19 Februar 2014, 09:01:02 »
Könnte man vielleicht so was wie hier
...
in das Webinterface einbinden ?

bitteschön :)

(http://up.picr.de/17410546ic.png)

3 Zeilen zusätzliches Coding und 1 Zeile Codingänderung (die textarea hat bisher keine Id) in der 01_FHEMWEB.pm


FW_pO      "<textarea id=\"val.${cmd}$name\" name=\"val.${cmd}$name\" ".
                "cols=\"$ncols\" rows=\"10\">$val</textarea>";
  FW_pO     "<br>" . FW_submit("cmd.${cmd}$name", "$cmd $name");
  FW_pO   "</form></div>";
 
FW_pO "<link rel=\"stylesheet\" href=\"$FW_ME/pgm2/codemirror.css\">";
FW_pO "<script type=\"text/javascript\" src=\"$FW_ME/pgm2/codemirror.js\"></script>";
FW_pO "<script>var editor = CodeMirror.fromTextArea(document.getElementById(\"val.${cmd}$name\"), {lineNumbers: true,matchBrackets: true});</script>";


Entscheiden und Umsetzen müssen das aber andere. Speziell beim DEF-Editor finde ich das aber sehr fraglich.
Und ich hab mich noch nicht mit den Lizenzbedingungen für codemirror beschäftigt.

« Letzte Änderung: 19 Februar 2014, 09:06:11 von betateilchen »
Aus technischen Gründen befindet sich die Signatur auf der Rückseite dieses Beitrages.

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 12775
  • Probleme sind auch keine Lösung.
Antw:Javascript Editor einbinden
« Antwort #3 am: 19 Februar 2014, 09:02:32 »
Möglicherweise ein nettes Feature, jedoch gehört (IMHO) alles, was länger als 1 Zeile ist, in ein PM-Modul (Z.B. 99_myUtils.pm)

*unterschreib*
Aus technischen Gründen befindet sich die Signatur auf der Rückseite dieses Beitrages.

Offline chris1284

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3192
Antw:Javascript Editor einbinden
« Antwort #4 am: 19 Februar 2014, 09:10:45 »
Zitat von: hexenmeister
Möglicherweise ein nettes Feature, jedoch gehört (IMHO) alles, was länger als 1 Zeile ist, in ein PM-Modul (Z.B. 99_myUtils.pm)

Eine Zeile ist naja, sehr ungenau. Ich bekomme eine menge Code in eine Zeile wenn ich das will. Und auch eine kurze Zeile kann zb.: auf Grund vieler Klammern sehr unübersichtlich sein.
Zitat von: papa
...Syntax-Highlighting und Klammernmatching schon sehr hilfreich

Da genau das schon recht viele Fehler aus macht denke ich wäre es sehr hilfreich.
« Letzte Änderung: 19 Februar 2014, 09:12:17 von chris1284 »
#HP Proliant MicroServer Gen8: FHEM, SAMBA, PLEX
#CCU2 + HMLAN: Heizung, Schalter, Sensoren, Remotes
#nanoCUL868: lacrossmode für Außensensor
#culCUBE868,signalduino,nanoCUL433: die lauschen nur

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3325
    • tech_LogBuch
Antw:Javascript Editor einbinden
« Antwort #5 am: 19 Februar 2014, 09:36:22 »
Klar, bekommt man viel in eine Zeile rein. Aber ist hier jemand damit nicht einverstanden, dass man genau das nicht tun soll?
Cubietruck, HM (HMLAN/HM-CFG-USB/HM-LC-Bl1PBU-FM/HM-LC-Sw1PBU-FM/HM-LC-Dim1TPBU-FM/HM-LC-SW1-PL2/HM-SEC-RHS/HM-PB-2-WM55/HM-PB-6-WM55/HM-Sen-MDIR-O/HM-CC-RT-DN/HM-TC-IT-WM-W-EU/HB-UW-Sen-THPL-I/...), 1wire, Firmata, MySensors,..

Offline papa

  • Developer
  • Full Member
  • ****
  • Beiträge: 313
Antw:Javascript Editor einbinden
« Antwort #6 am: 19 Februar 2014, 10:05:47 »
bitteschön :)

3 Zeilen zusätzliches Coding und 1 Zeile Codingänderung (die textarea hat bisher keine Id) in der 01_FHEMWEB.pm

...

Entscheiden und Umsetzen müssen das aber andere. Speziell beim DEF-Editor finde ich das aber sehr fraglich.
Und ich hab mich noch nicht mit den Lizenzbedingungen für codemirror beschäftigt.

Das sieht ja wirklich gut aus - und der Änderungsaufwand hält sich ja auch in Grenzen. Also die Lizenz sollte kein Problem sein. Ist die MIT-Lizenz - das kann man verwenden wie man will.

Wenn ich den Code hier auslagere, dann habe ich nur eine Console zur Verfügung. Mit dem vi macht das Schreiben aber auch keinen Spass.  :(

Außerdem denke ich, dass gerade "normale" User auch keinen geeigneten Editor mit Perl-Syntax-Highlighting auf ihrem System haben. Diese haben also im 99_MyUtils.pm das selbe Problem.
« Letzte Änderung: 19 Februar 2014, 10:07:19 von papa »
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 12775
  • Probleme sind auch keine Lösung.
Antw:Javascript Editor einbinden
« Antwort #7 am: 19 Februar 2014, 10:57:00 »
Außerdem denke ich, dass gerade "normale" User auch keinen geeigneten Editor mit Perl-Syntax-Highlighting auf ihrem System haben. Diese haben also im 99_MyUtils.pm das selbe Problem.

(http://up.picr.de/17411404pj.png)

(http://up.picr.de/17411419iy.png)

*duck-und-weg*
« Letzte Änderung: 19 Februar 2014, 10:58:47 von betateilchen »
Aus technischen Gründen befindet sich die Signatur auf der Rückseite dieses Beitrages.

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3325
    • tech_LogBuch
Antw:Javascript Editor einbinden
« Antwort #8 am: 19 Februar 2014, 11:26:47 »
Betateilchen: +1
Cubietruck, HM (HMLAN/HM-CFG-USB/HM-LC-Bl1PBU-FM/HM-LC-Sw1PBU-FM/HM-LC-Dim1TPBU-FM/HM-LC-SW1-PL2/HM-SEC-RHS/HM-PB-2-WM55/HM-PB-6-WM55/HM-Sen-MDIR-O/HM-CC-RT-DN/HM-TC-IT-WM-W-EU/HB-UW-Sen-THPL-I/...), 1wire, Firmata, MySensors,..

Offline herrmannj

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 3823
Antw:Javascript Editor einbinden
« Antwort #9 am: 19 Februar 2014, 11:47:32 »
bin auch dafür. +1 & würde mir das auch bei einigen attribut Zeilen wünschen.

saubere Arbeit!

vg
Jörg
« Letzte Änderung: 19 Februar 2014, 12:02:06 von herrmannj »
smartVisu mit fronthem, einiges an HM, RFXTRX, Oregon, CUL, Homeeasy, ganz viele LED + Diverse

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 12775
  • Probleme sind auch keine Lösung.
Antw:Javascript Editor einbinden
« Antwort #10 am: 19 Februar 2014, 11:53:21 »
und es funktioniert DOCH auch im DEF-Editor  8)

(http://up.picr.de/17411844ak.png)

obwohl es da noch irgendwo einen Haken gibt, den ich noch nicht durchschaut habe (die visibility des Editor-Fensters)
Aus technischen Gründen befindet sich die Signatur auf der Rückseite dieses Beitrages.

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 12775
  • Probleme sind auch keine Lösung.
Antw:Javascript Editor einbinden
« Antwort #11 am: 19 Februar 2014, 12:27:45 »
würde mir das auch bei einigen attribut Zeilen wünschen.

sehr knifflig, weil dieses Texteingabefeld an vielen Stellen eingesetzt wird.
Aus technischen Gründen befindet sich die Signatur auf der Rückseite dieses Beitrages.

Offline herrmannj

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 3823
Antw:Javascript Editor einbinden
« Antwort #12 am: 19 Februar 2014, 12:44:31 »
naja, "muss" ja auch nicht. Für die def und die 99.. pm wäre das ja schon mal super. Ich muss gestehen das ich das oft dort per ctrl/c raus kopiere , mit gedit bearbeite und dann zurück kopiere. I

nsofern, keep it simple, das ist schon so gut.

Was mit aufgefallen ist: in Deinem ersten Screenshot scheinen Zeilennummern drin gewesen zu sein, bei den pics weiter unten sehe ich die nicht mehr. Für die 99...pm wären Zeilennummern imho schon wichtig   

Danke und Grüße
Jörg
smartVisu mit fronthem, einiges an HM, RFXTRX, Oregon, CUL, Homeeasy, ganz viele LED + Diverse

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 12775
  • Probleme sind auch keine Lösung.
Antw:Javascript Editor einbinden
« Antwort #13 am: 19 Februar 2014, 13:20:47 »
:P

(http://up.picr.de/17412431xv.jpg)
« Letzte Änderung: 19 Februar 2014, 13:24:25 von betateilchen »
Aus technischen Gründen befindet sich die Signatur auf der Rückseite dieses Beitrages.

Offline papa

  • Developer
  • Full Member
  • ****
  • Beiträge: 313
Antw:Javascript Editor einbinden
« Antwort #14 am: 19 Februar 2014, 14:21:57 »
Sehr cool  8)

Ich hätte da auch gleich noch ne Idee. Der Editor kann Autocompletion. Damit könnte man doch bestimmt die FHEM-Funktionen und bereits definierten Devices gleich als Hilfe anbieten.

Ich habe das Gefühl .... das wird ein Fass ohne Boden ....
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

 

decade-submarginal