FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Ellert am 08 Dezember 2015, 19:40:14

Titel: DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 08 Dezember 2015, 19:40:14
Die aktuelle Version gibt es im FHEMwiki: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen (https://wiki.fhem.de/wiki/DOIF/Tipps_zur_leichteren_Bedienung), danke OliWee

Ich habe ein paar Hinweise gesammelt, die den Umgang mit dem DOIF erleichtern können. Nichts Neues, aber vielleicht hilft es dem Einen oder Anderen.
Es gibt bestimmt noch Ergänzungen, die pflege ich hier im 1. Beitrag ein.

Verwenden des DEF-Editors zum Erstellen und Bearbeiten des DOIF
Zuerst eine minimale Definition in der Eingabezeile der WEB-Oberfläche erstellen define <DOIF Name> DOIF ([<Name eines triggernden Gerätes>]) danach die Eingabetaste drücken, dann öffnet sich die Geräteübersicht (DeviceOverview), dort den DEF-Editor öffnen (auf DEF klicken) und die Definition weiter bearbeiten und strukturieren (http://fhem.de/commandref_DE.html#DOIF_Lesbarkeit_der_Definitionen).

Einschalten von Syntaxhervorhebung, Zeilenumbruch, Suchen und Ersetzen, Klammerprüfung uvm.

attr <WEBname> JavaScripts codemirror/fhem_codemirror.js
attr <WEBname> codemirrorParam { "lineWrapping":true }


Länge der Eingabezeile (Befehlszeile) ändern
Per Attribut die Länge der Eingabezeile ändern. (https://forum.fhem.de/index.php/topic,58747.msg501352.html#msg501352)

attr <WEBname> mainInputLength 80


Eingabefeld für bestimmte Attribute vergrößern, z.B. für das Attribut "state", um bequem Berechnungen zu erstellen.
attr <DOIF Name> widgetOverride state:textField-long

Größe des Editorfensters ändern
Wem das Editorfenster zu zu groß oder zu klein ist, kann die Höhe optimieren mit
attr <WEBname> codemirrorParam { ..., "height":"auto" }

Weitere einstellbare Parameter für codemirror siehe auch:
Codemirror Bedienung und Einstellungen (https://wiki.fhem.de/wiki/Konfiguration#Syntaxhervorhebung)

Direkter Aufruf der deutschsprachigen Hilfe in der "Device specific help" und direkter Zugriff auf die deutschsprachige Befehlsreferenz im Hauptmenü.
attr global language DE

Tools und Hinweise zur Fehlersuche
Tools, Fehlersuche - qualifizierte Angaben, Verhaltensanalyse (https://forum.fhem.de/index.php/topic,58237.msg496560.html#msg496560)

Geräte aus einem regulären Ausdruck in "Probably associated with" anzeigen
Geräte, die im DOIF über einen regulären Ausdruck angesprochen werden, tauchen in der Liste von "Probably associated with" nicht auf.

Die Geräte werden aufgeführt, wenn sie in der Definition des DOIF als Kommentar mit vollständigem Namen aufgezählt werden.

Beispiel:
(["^GERAET(1|2)$:"]) ## GERAET1 GERAET2
   (set ...)


Import von Code Snippets
Code Snippets können über Raw definition importiert werden, siehe Import von Code Snippets (https://wiki.fhem.de/wiki/DOIF/Import_von_Code_Snippets)
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: rapster am 08 Dezember 2015, 20:15:13
Zitat von: Ellert am 08 Dezember 2015, 19:40:14
Größe des Editorfensters ändern
Wem das Editorfenster zu zu groß oder zu klein ist, kann die Höhe in der Datei fhem/www/codemirror/codemirror.css anpassen. Der Wert hinter "height:" müsste geändert werden.
.CodeMirror{font-family:monospace;height:300px;color:#000} ...
Diese Änderung wird durch ein Update von codemirror.css überschrieben. Das Setzen des Attributs attr WEB codemirrorParam { ..., "height":500px } funktioniert bei mir leider nicht.

zu codemirror siehe auch:
http://www.fhemwiki.de/wiki/Konfiguration#Integrierter_Editor (http://www.fhemwiki.de/wiki/Konfiguration#Integrierter_Editor)

bzgl. der größe des Editorfensters kommst in kürze ein Update damit das über das codemirrorParam Attribut für DEF und die Attribute gesteuert werden kann.
Ist zwar hier lokal bei mir schon aktiv aber noch nicht ganz reif, denke nächste Woche wirds bei mir weng ruhiger...

Gruß
  Claudiu
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 15 Januar 2016, 10:54:06
Eine kleine Ergänzung: Das globale Attribut "language" wirkt sich leider nicht auf den Menüeintrag "Commandref" aus.
Es wird trotz language=DE nicht die deutschsprachige Commandref_DE angezeigt.

Mit einem selbst erstellten Menüeintrag kann man sich behelfen.

attr <Name der FHEMWEB-Instanz> menuEntries Befehlsreferenz,/fhem/docs/commandref_DE.html

Nicht mehr relevant.
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: abc2006 am 21 Januar 2016, 11:48:25
Zitatattr WEB codemirrorParam { ..., "height":500px }

funktioniert bei mir leider auch nicht ..

Grüße
Stephan
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Esteban am 09 März 2016, 01:56:35
Danke für die Tipps! :)
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: raimundl am 09 März 2016, 14:15:57
Danke für die Tipps!

Gibt es auch eine Einstellung für schwarze (dunkle) Schrift auf weissen (hellen) Hintergrund?

Bei mir umgekehrt und für mich etwas schwer zu lesen.

LG
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 09 März 2016, 15:42:55
Zitat von: raimundl am 09 März 2016, 14:15:57
Danke für die Tipps!

Gibt es auch eine Einstellung für schwarze (dunkle) Schrift auf weissen (hellen) Hintergrund?

Bei mir umgekehrt und für mich etwas schwer zu lesen.

LG

Das könntest Du wahrscheinlich über die Datei codemirror.css anpassen, wo genau müsstest Du selbst probieren.
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: raimundl am 09 März 2016, 16:37:36
Danke,

Datei jedoch für try and error zu umfangreich und mein Wissen zu gering.

LG
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Per am 10 April 2016, 22:18:57
Leider bereitet das neue $SELF Probleme beim Zählen der Klammern.
Hat jemand dafür eine Lösung?
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 02 Juni 2016, 10:01:52
Seit einiger Zeit kann die Höhe des Editorfensters per Parameter festgelegt werden, und vieles mehr, dank rapster.

siehe: Konfiguration des Editors (http://www.fhemwiki.de/wiki/Konfiguration#Syntaxhervorhebung)
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 02 September 2016, 04:55:28
Ein extra Menüeintrag für den direkten Zugriff auf die deutschsprachige Befehlsreferenz im Hauptmenue kann entfallen, das wird jetzt auch über das globale Attribut "language DE" gesteuert.
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 30 September 2016, 12:41:47
Ergänzung im ersten Beitrag:

Tools und Hinweise zur Fehlersuche
Tools, Fehlersuche - qualifizierte Angaben, Verhaltensanalyse (https://forum.fhem.de/index.php/topic,58237.msg496560.html#msg496560)
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 09 Oktober 2016, 19:53:16
Ergänzung:

Länge der Eingabezeile ändern
Per JavaScript die Länge der Eingabezeile ändern. (https://forum.fhem.de/index.php/topic,58747.msg501352.html#msg501352)
Das Script ist im 1. Beitrag angehängt.
Wird jetzt per Attribut eingestellt, z.B.
attr WEB mainInputLength 80

Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: raimundl am 11 Oktober 2016, 17:14:14
Hallo!

Habe schon vor einiger Zeit versucht die Darstellung des Editors von dunklen Hintergrund auf hellen zu ändern, damals vergeblich. Aufgrund der obigen Informationen habe ich bei den Parametern einfach "theme":"whiteboard" eingegeben und siehe da - es hat funktioniert.

Danke und LG
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Nordmann am 17 Oktober 2016, 18:45:12
Direkter Aufruf der deutschsprachigen Hilfe in der "Device specific help" und direkter Zugriff auf die deutschsprachige Befehlsreferenz im Hauptmenü.
attr global language DE

Wenn ich die englisch sprachige Hilfe "umschalte", habe ich eine Überlagerung der duetschen und englisch sprachigen Hilfe.
Siehe Bild.
Das kann ich doch sicherlich "abschalten" :-)

Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 17 Oktober 2016, 20:32:20
Das hat nichts mit dem Attribut zu tun, ist hier auch so: http://fhem.de/commandref.html
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Nordmann am 17 Oktober 2016, 20:53:57
OK, aber wie bekomme ich diese "Doppeldarstellung" wieder weg, nachdem ich das Attribut gesetzt habe?
Es war ja voerher nicht so.

Danke für Eure Hilfe  ;D
Titel: Antw:DOIF: Tips leichtere Bedienung Syntaxhervorhebung Klammerprüfung Suchen&Ersetzen
Beitrag von: Ellert am 27 Oktober 2016, 12:40:49
Geräte aus einem regulären Ausdruck in "Probably associated with" anzeigen
Geräte, die im DOIF über einen regulären Ausdruck angesprochen werden, tauchen in der Liste von "Probably associated with" nicht auf.

Die Geräte werden aufgeführt, wenn sie in der Definition des DOIF als Kommentar mit vollständigem Namen aufgezählt werden.

Beispiel:
(["^GERAET(1|2)$:"]) ## GERAET1 GERAET2
   (set ...)