Ich suche einen Editor mit dem ich
- Perl
- HTML
- JavaScript
- CSS
editieren kann. Der Editor sollte
- Quellcode farblich hervorheben
- Fehler (z.B. fehlende Ende-Tags) anzeigen
- eine Include Funktion (optimalerweise Parameterisiert) haben
Ich verwende mittlerweile sehr viele Include-Widgets (auch Include in Include) um den Änderungsaufwand so gering wie möglich zu halten. Ich habe allerdings den Eindruck, daß mein FTUI mit steigender Anzahl an Includes immer langsamer wird und zudem zu Fehler- oder wenigstens Warnmeldungen führt (longpoll "retry in 10 seconds" scheint in Zusammenhang mit dem Include-Widget zu stehen).
Der Editor sollte also die Includes in der fertigen HTML Datei auflösen.
Gibt es sowas ?
Meine beiden Liebsten ;)
https://code.visualstudio.com/
und
https://notepad-plus-plus.org/
Beiden kann man mit Plugins erweitern.
Ich arbeite da mit Kate (https://kate-editor.org/)
+1 für Notepad++ :D
Visual Studio Code ist mir eigentlich schon viel zu komplex.
NotePad++ nutze ich bereits, habe aber nirgends etwas zu Includes gefunden.
Kate muss ich mir noch ansehen.
Wie gesagt, am Wichtigsten ist mir die Möglichkeit Includes aufzulösen, also praktisch den HTML "Quellcode" (mit den Include Angaben) zu parsen und die Include Files (parameterisiert) einzubinden und so den endgültigen HTML Code (ohne Include Angaben) zu generieren.
Vielleicht erkläre ich es an einem Beispiel. Aktuell sieht es so aus:
<!DOCTYPE html>
<html>
<body>
<div class="page" id="pageDashboard">
<div class="status_home iconbig bottomright" data-type="include" data-url="_system/switchHomeStatus.inc" data-parameter='{"dataIcon":"fa-home","dataStatus":"Home","dataColor":"LimeGreen"}'></div>
<div class="status_bed iconbig bottomleft" data-type="include" data-url="_system/switchHomeStatus.inc" data-parameter='{"dataIcon":"fa-bed","dataStatus":"Bed","dataColor":"DarkOrange"}'></div>
<div class="status_away iconbig topright" data-type="include" data-url="_system/switchHomeStatus.inc" data-parameter='{"dataIcon":"fa-car","dataStatus":"Away","dataColor":"OrangeRed"}'></div>
<div class="status_holiday iconbig topleft" data-type="include" data-url="_system/switchHomeStatus.inc" data-parameter='{"dataIcon":"fa-suitcase","dataStatus":"Holiday","dataColor":"DodgerBlue"}'></div>
</div>
</body>
</html>
Wie man sieht gibt es hier 4 include Widgets, die vom Webserver verarbeitet werden. Ich suche eine Möglichkeit diese Includes inkl. Parametern aufzulösen und so eine HTML-Datei ohne data-type="include" zu bekommen. Hierzu müsste die Datei entsprechend geparsed werden. Die "Quelldatei" könnte z.B. so aussehen:
<!DOCTYPE html>
<html>
<body>
<div class="page" id="pageDashboard">
[INC _system/switchHomeStatus.inc PARM dataIcon="fa-home",dataStatus="Home",dataColor="LimeGreen"]
...
Auf diese Weise könnte man beliebige Teile im Quellcode einbinden (z.B. Gruppen von Spalten innerhalb einer Tabellenzeile). Mit dem Widget steht der HTML Code immer innerhalb eines <div> Blocks ...
Ein sehr fetter Editor waere Atom. Ich nehme den um Arduino Projekte zu kompilieren und flashen.
Dafür gibt es extrem viele AddOns.
Sicherheitsfreaks sollten den wohl lieber meiden.
Gesendet von meinem VTR-L09 mit Tapatalk
Für den Mac nehme ich Sublime Text.
https://www.sublimetext.com (https://www.sublimetext.com)
Für den Mac nehme ich BBEdit 8)
Zitat von: dt2510 am 06 Juni 2018, 11:00:37
....
Wie gesagt, am Wichtigsten ist mir die Möglichkeit Includes aufzulösen, also praktisch den HTML "Quellcode" (mit den Include Angaben) zu parsen und die Include Files (parameterisiert) einzubinden und so den endgültigen HTML Code (ohne Include Angaben) zu generieren.
....
Wie man sieht gibt es hier 4 include Widgets, die vom Webserver verarbeitet werden.
....
Ich suche eine Möglichkeit diese Includes inkl. Parametern aufzulösen und so eine HTML-Datei ohne data-type="include" zu bekommen. Hierzu müsste die Datei entsprechend geparsed werden. Die "Quelldatei" könnte z.B. so aussehen:
.....
Auf diese Weise könnte man beliebige Teile im Quellcode einbinden (z.B. Gruppen von Spalten innerhalb einer Tabellenzeile). Mit dem Widget steht der HTML Code immer innerhalb eines <div> Blocks ...
Das Include-Widget läuft auf dem Client per Java-Skript und nicht auf dem Webserver.
Der Editor müsste das Include-Widget von FTUI ausführen und den Quelltext auflösen. Ich glaube daher nicht, dass es einen Editor oder ein Plugin gibt, der diese Aufgabe bewerkstelligen kann. (Es sei denn, es wird ein eigenes Plugin programmiert).
Ich für meinen Teil nutze Notepad++ mit dem NppFTP-Plgin (für die Datenaustausch zwischen Windows und Rasperry via SSH).
Allerdings nutze ich das Include-Widget auch nicht. Eine Wiederverwendung habe ich mit PHP-Funktion realisiert, wird jetzt aber auch nicht sonderlich vom Editor unterstützt.
Zitat von: phil82 am 08 Juni 2018, 14:23:17
Das Include-Widget läuft auf dem Client per Java-Skript und nicht auf dem Webserver.
Der Editor müsste das Include-Widget von FTUI ausführen und den Quelltext auflösen. Ich glaube daher nicht, dass es einen Editor oder ein Plugin gibt, der diese Aufgabe bewerkstelligen kann. (Es sei denn, es wird ein eigenes Plugin programmiert).
Ich für meinen Teil nutze Notepad++ mit dem NppFTP-Plgin (für die Datenaustausch zwischen Windows und Rasperry via SSH).
Allerdings nutze ich das Include-Widget auch nicht. Eine Wiederverwendung habe ich mit PHP-Funktion realisiert, wird jetzt aber auch nicht sonderlich vom Editor unterstützt.
Du hast ja recht - das include Widget läuft auf dem Client !! Ich hatte schon überlegt selbst was zu Programmieren um die Includes aufzulösen, hatte aber nicht wirklich Lust zu.
Die Idee mit php hatte ich auch, bekomme es aber auf meinem nginx Reverse Proxy nicht zum Laufen ...
Zitat von: dt2510 am 08 Juni 2018, 15:51:10
Du hast ja recht - das include Widget läuft auf dem Client !! Ich hatte schon überlegt selbst was zu Programmieren um die Includes aufzulösen, hatte aber nicht wirklich Lust zu.
Die Idee mit php hatte ich auch, bekomme es aber auf meinem nginx Reverse Proxy nicht zum Laufen ...
Ich nutze Apache. Allerdings wird nur der FHEM-Teil per Reverse Proxy umgeleitet. Das TabletUI läuft direkt über Apache.