[PATCH] - 98_help.pm - Ersetzen von <a href="#..."> durch Link auf commandref

Begonnen von Markus Bloch, 04 November 2015, 23:11:32

Vorheriges Thema - Nächstes Thema

Markus Bloch

Hallo betateilchen,

anbei ein Patch für 98_help.pm welches alle Links im Output von <a href="#...."> nach bspw. <a target="_blank" href="/fhem/commandref.html#..." ändert. Dadurch sind alle Verweise auf z.B. readingsFn, do_not_notify, disable, ... wieder intakt und werden in einem neuen Tab/Fenster geöffnet.

Getestet mit Chrome/Firefox/Edge.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

betateilchen

Hallo Markus,

das halte ich an dieser Stelle nicht für sinnvoll. Die devicespezifische Hilfe wird direkt aus dem Modul gelesen und angezeigt. Die Idee dahinter war eine "schnelle Hilfe" bereitzustellen, an dieser Stelle sucht man meist die Anzeige einer korrekten Syntax für das define oder eine Liste von Attributen. Die Erweiterung von help war nie als vollständiger Ersatz der gesamten commandref konzipiert.

Dein vorgeschlagenes Ersetzen der Links führt zu Problemen, wenn es beispielsweise auf dem System überhaupt keine commandref gibt. Wenn schon, müsste man an dieser Stelle nach extern verlinken und die commandref auf fhem.de verwenden. Aber ehrlich gesagt fände ich das auch unschön.

Wer tiefergehende Informationen zu einem Modul braucht, hat ja immer noch die Möglichkeit, direkt in die commandref (online) zu gehen, dort sollten die Links alle funktionieren.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Vielleicht können wir das ja so lösen:


  • prüfen, ob im globalen attribute excludefromupdate commandref steht
  • wenn ja: ersetze die Links durch externe Links http://fhem.de/commandref...
  • wenn nein: ersetze die Links durch lokale Links /fhem/commandref....

Das wäre eine Lösung, mit der ich mich durchaus anfreunden kann.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Markus Bloch

Hallo betateilchen,

das wäre toll.

Jetzt habe ich gerade einen ellenlangen Beitrag verfasst, in der ich als Konsequenz das gleiche vorschlagen wollte und dann hast du in der Zwischenzeit das selbe vorgeschlagen :-D

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Markus Bloch

Mir ist auch aufgefallen, dass man anstatt $FW_ME/docs/commandref.... doch eher docs/commandref... verwenden sollte, falls man FHEM durch Apache Rewrite-Rules und ProxyPass Schweinereien umbiegt.

Kann ich aber gerade nicht testen, da ich auf Arbeit bin.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

betateilchen

Zitat von: Markus Bloch am 06 November 2015, 11:16:55

Kann ich aber gerade nicht testen, da ich auf Arbeit bin.


lass Dir Zeit, bei Deinen vorgeschlagenen Patch um, dann schau ich mir das gerne nochmal an.

Viele Grüße
Udo
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Markus Bloch

Hi Udo,

anbei der überarbeitete Patch, wie du ihn vorgeschlagen hast. Ich habe noch die <a> Ersetzungen für telnet geändert, da ich beim testen meines Patches unter anderem über <a>-Tags gestolpert bin, die über 2 Zeilen definiert waren:

<a
href="#...>


Daher habe ich deine Ersetzungsregeln mit \s+ ergänzt um solche Links ebenfalls zu erwischen.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Markus Bloch

Vielen Dank.

Ich habe noch einen CHANGED Eintrag spendiert.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Markus Bloch

Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

betateilchen

Schau ich mir gerne an, wenn ich aus dem Urlaub zurück bin (bin grade am Packen).

Wenn Du sicher bist, dass es funktioniert, kannst Du die 98_help.pm im Rahmen von Amtshilfe gerne selbst einchecken.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Markus Bloch

Das lass ich mir natürlich nicht 2 mal sagen.

Checke ich nachher ein.

Vielen Dank und einen schönen Urlaub wünsch ich Dir.

Gruß

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)