Commandbar mit Historie und Syntax Highlighting im Lesemodus

Begonnen von FHEMAN, 12 März 2017, 23:41:44

Vorheriges Thema - Nächstes Thema

FHEMAN

Zitat von: mtk am 20 Dezember 2021, 14:18:06
Hallo zusammen,
ich habe das script bei mir wie oben beschrieben installiert, aber bei mir kommt überhaupt nichts in der FHEM commandline. Keine Reaktion auf Pfeiltaste bis auf Browservervollständigung, aber keine echte command history und es tauchen auch keine icons auf.
Ich habe das letzte Skript im Feed benutzt.
Hi Michael,
das erste und letzte Script im Thread sind gleich.
Kannst Du mal schauen, wenn du mit F12 die Devtools im Browser öffnest, ob in der Console ein Logeintrag in der Art "storageKeyinputHistory.cmd" erscheint?
Falls nicht, wird das Script gar nicht erst korrekt geladen (was ich vermute).
Testweise könntest Du das Script auch einmal an die letzte Stelle im JavaScripts WEB Attribut setzen, so dass es zuletzt geladen wird - oder hausautomatisierung temporär entfernen, wie Rampler vorgeschlagen hat.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

FHEMAN

Ich habe mal noch eine alternative Installationsmethode hinzugefügt, um das Thema SSH und Berechtigungen zu umgehen.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

Benni

Zitat von: FHEMAN am 21 Dezember 2021, 16:49:57
Ich habe mal noch eine alternative Installationsmethode hinzugefügt, um das Thema SSH und Berechtigungen zu umgehen.

Diese 2. Installationsvariante ist übrigens nicht ganz ungefährlich!

Ich habe mir so auch schon Dateien "zerschossen", weil ich dann aus Unachtsamkeit und Gewohnheit letztendlich doch auf den "Save"-Button geklickt habe und nicht auf "Save as".

Aber deshalb macht man ja auch Backups ;)

gb#


FHEMAN

Hi Benni, da stimme ich dir zu, das ist mir auch mal passiert.
Daher der Hinweis bei Schritt 3, den Inhalt in eine separate Textdatei zu kopieren, falls man was falsch macht beim Speichern.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

FHEMAN

Ich habe das Code Highlighting von Codemirror im Lesemodus aktiviert. Es störte mich, dass Notifies und DOIFs nicht leserlich waren und man immer in den Bearbeitungsmodus wechseln musste. Codemirror muss dazu installiert sein.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

swsmily

Zitat von: FHEMAN am 21 Mai 2023, 02:43:54Ich habe das Code Highlighting von Codemirror im Lesemodus aktiviert. Es störte mich, dass Notifies und DOIFs nicht leserlich waren und man immer in den Bearbeitungsmodus wechseln musste. Codemirror muss dazu installiert sein.

Muss man dazu etwas extra einstellen? Oder ist es morgen per Update enthalten? Habe gerade eben ein Update gemacht, aber DOIFs bleiben grau.

FHEMAN

Zur Installation musst die Script Datei aus dem ersten Post verlinken. Dort ist auch beschrieben, wie. Am besten Variante 1 wählen.
Codemirror hast du schon installiert? Ich werde es auch nochmal verlinken.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

Invers

Schade, dass man sich für eine Variante entscheiden muss. Ich hätte lieber alles zusammen in einer Datei. Wird es eine Zusammenführung geben?
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

JoWiemann

Hallo,

im Script wird auf folgenden Pfad verwiesen:

<img src='/fhem/images/fhemSVG/Wunderlist.svg' width='19' height='19' onclick='showStorageElements();' style='cursor:pointer' alt='Historie l&ouml;schen' title='Historie l&ouml;schen'/></td>");

Ist in der Standard-Installation nicht /fhem/www/images/fhemSVG/Wunderlist.svg üblich?

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

FHEMAN

Zitat von: Invers am 22 Mai 2023, 06:33:39Schade, dass man sich für eine Variante entscheiden muss. Ich hätte lieber alles zusammen in einer Datei. Wird es eine Zusammenführung geben?
Doch, in der zweiten, neueren Version ist beides zusammengefasst.
Ich habe die alte Version nur parallel noch belassen, falls jemand Codemirror nicht nutzt.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

JoWiemann

#55
Zitat von: FHEMAN am 21 Mai 2023, 02:43:54Ich habe das Code Highlighting von Codemirror im Lesemodus aktiviert. Es störte mich, dass Notifies und DOIFs nicht leserlich waren und man immer in den Bearbeitungsmodus wechseln musste. Codemirror muss dazu installiert sein.

Es gibt, jedenfalls bei mir unter Edge, einen kleinen Schönheitsfehler. Ist im Attribut codemirrorParam "fullScreen":true gesetzt, wird das Def über den Bildschirm gelegt. Vielleicht kannst Du ja den Parameter temporär auf false setzen.

Mit "pcm.setOption("fullScreen", false);" ist mein Problem behoben.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

JoWiemann

Hallo,

einen Vorschlag noch.

Wenn Du die Funktion startCodemirrorReadonly() wie folgt ergänzt:

function startCodemirrorReadonly() {
...
codeTextarea.replaceWith('<textarea>' + codeTextarea.html() + '</textarea>');
AddCodeMirror($("#disp textarea"), function(pcm) {
//cm = pcm;
pcm.setOption("readOnly", true);
pcm.setOption("lineNumbers", false);
pcm.setOption("cursorBlinkRate", -1);

//<--- Ergaenzung --->

pcm.setOption("fullScreen", false);

var userAttr = scriptAttribute("jquery-input-history.js");
for(var a in userAttr)
pcm.setOption(a, userAttr[a]);

//<--- Ende Ergaenzung --->

$(".CodeMirror").css("backgroundColor", "transparent");
codeDisp.css("visibility", "visible");
});
}
}


dann werden die Parameter aus dem Attribut: jquery-input-historyParam übernommen. (Syntax wie codemirrorParam).

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

swsmily

Zitat von: FHEMAN am 21 Mai 2023, 23:55:04Zur Installation musst die Script Datei aus dem ersten Post verlinken. Dort ist auch beschrieben, wie. Am besten Variante 1 wählen.
Codemirror hast du schon installiert? Ich werde es auch nochmal verlinken.

Danke, die erste Seite hatte ich gar nicht im Blick. Hab nun die Javascript-Datei kopiert und im WEB-Device eingetragen und es funktioniert. Super!

FHEMAN

Zitat von: JoWiemann am 22 Mai 2023, 15:17:42Hallo,

einen Vorschlag noch.

Wenn Du die Funktion startCodemirrorReadonly() wie folgt ergänzt:

dann werden die Parameter aus dem Attribut: jquery-input-historyParam übernommen. (Syntax wie codemirrorParam).

Grüße Jörg

Hallo Jörg, das ist eine gute Idee. Danke für den Vorschlag samt Lösung! Ich habe es mit eingebaut. Ebenso den Vollbildfix.

Gruß
Ronny
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

swsmily

#59
Ich habe gerade die aktuellste Version nochmal runtergeladen und in FHEM kopiert. Mir ist nun aufgefallen, dass bei anderen Devices als DOIF oder Notify das DEF im Lesemodus leer bleibt. Ebenso geht die History Funktion in der Leiste in FHEM oben nicht mehr. Bisher konnte ich z.b. "up" eingeben und es wurde alle was ich mal eingegeben hatte vorgeschlagen, also "update check, uptime, update" usw...


EDIT: Gerade gemerkt, dass ich attr WEB JavaScripts input/jquery-input-history.js oder mit pgm2 vorher  nie drin hatte.

Dennoch wurde mir im Firefox immer die letzten Befehle angezeigt.