mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-02-01 01:09:47 +00:00
10_ZWave.pm: add Multiline Help parser (Forum #60456)
git-svn-id: https://svn.fhem.de/fhem/trunk@12536 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
d34f28f8f1
commit
07a257f765
@ -2400,6 +2400,7 @@ ZWave_configParseModel($;$)
|
||||
}
|
||||
}
|
||||
|
||||
my $partial="";
|
||||
while($gz->gzreadline($line)) {
|
||||
last if($line =~ m+^\s*</Product>+);
|
||||
if($line =~ m/^\s*<CommandClass.*id="([^"]*)"(.*)$/) {
|
||||
@ -2427,7 +2428,22 @@ ZWave_configParseModel($;$)
|
||||
$hash{$cmdName} = \%h;
|
||||
}
|
||||
|
||||
$hash{$cmdName}{Help} .= "$1<br>" if($line =~ m+^\s*<Help>(.*)</Help>$+);
|
||||
if($line =~ m,<Help>, && $line !~ m,</Help>,) { # Multiline Help
|
||||
$partial = $line;
|
||||
next;
|
||||
}
|
||||
if($partial) {
|
||||
if($line =~ m,</Help>,) {
|
||||
$line = $partial.$line;
|
||||
$line =~ s/[\r\n]//gs;
|
||||
$partial = "";
|
||||
} else {
|
||||
$partial .= $line;
|
||||
next;
|
||||
}
|
||||
}
|
||||
$hash{$cmdName}{Help} .= "$1<br>" if($line =~ m+<Help>(.*)</Help>+s);
|
||||
|
||||
if($line =~ m/^\s*<Item/) {
|
||||
my $label = $1 if($line =~ m/label="([^"]*)"/i);
|
||||
my $value = $1 if($line =~ m/value="([^"]*)"/i);
|
||||
|
Loading…
Reference in New Issue
Block a user