98_help.pm - Falsche Modul-Info

Begonnen von Benni, 19 Januar 2019, 06:54:35

Vorheriges Thema - Nächstes Thema

Benni

Hallo Udo,

bei der Umstellung auf das neue Weather-Modul von Boris und Leon ist mir aufgefallen, dass help dafür eine Falsche Modul-Info ausgibt:

nach Eingabe von help weather erhalte ich folgende Modul-Info:

Zitat
Module: 46_TRX_WEATHER.pm Maintainer: KernSani Forum: RFXTRX

In der MAINTAINER.txt ist für das Weather-Modul allerdings folgendes eingetragen:

Zitat
FHEM/59_Weather.pm           neubert              Unterstuetzende Dienste/Wettermodule

Ohne es geprüft zu haben, gehe ich mal davon aus, dass bei der Auswertung der maintainer die regex ungünstig gewählt ist, so dass eben das 46-er Modul als erstes erfasst wird.

Edit: Ich habe nun doch geprüft und wenn ich in cref_findInfo die Zeile


$found = ($l =~ m/_$mod/i);


die regex wie folgt anpasse


$found = ($l =~ m/.*\/\d{2}_$mod/i);


erhalte ich das gewünschte Ergebnis.

Allerdings weiß ich jetzt nicht, ob evtl. noch andere Zeilen aus der maintainer relevant sind, die nicht dem Modul-Nummern-Schema entsprechen.

Gruß Benni.

betateilchen

Das Problem hab ich in 98_help.pm auch bei anderen Modulen, die "ähnliche" Namen haben.

Die Überarbeitung des help Moduls steht ohnenhin auf der ToDo Liste, allerdings stehen da vorher noch zwei andere Aufgaben mit höherer Priorität.
Zumindest die device specific help wird in Weather devces ja korrekt angezeigt.

Das Problem ist eben, dass help quasi nur die "Zweitverwendung" von vorhandenen Daten und Informationen ist und weder die Maintainer.txt noch die commandref Texte darauf optimiert sind, von help verwendet zu werden. help muss mit dem Auskommen, was schon vorhanden ist und daraus das Beste machen  8)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

#2
Deine vorgeschlagene regexp verbessert zwar die Situation, löst aber auch das Problem nicht vollständig. Auch damit wird nur das erste Auftreten der regexp gesucht wird und es gibt durchaus mehrere Module, die zu einer vorgeschlagenen regexp passen. (Beispiel: help stackable)

Und die Erweiterung der regexp  auf .pm am Ende verursacht wieder andere Probleme, das hatte ich früher schonmal eingebaut. (kann aber grade nicht mehr sagen, welche Probleme dann auftraten)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Benni

Zitat von: betateilchen am 19 Januar 2019, 10:51:19
Deine vorgeschlagene regexp verbessert zwar die Situation, löst aber auch das Problem nicht vollständig.

Nun, eine Verbesserung ist ja schon mal etwas ;)

Dass sich das Problem mit den vorhandenen Gegebenheiten nicht ohne weiteres vollständig lösen lässt war mir schon klar.