From 3c5a11e50fe966f6195ab6d8ffaec88a1f3ee85e Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Thu, 9 Oct 2014 05:18:47 +0000 Subject: [PATCH] ZWave.pm: Explain shortened config values (Forum #27455) git-svn-id: https://svn.fhem.de/fhem/trunk@6717 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/10_ZWave.pm | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/fhem/FHEM/10_ZWave.pm b/fhem/FHEM/10_ZWave.pm index 877bfacff..a0b3fdab3 100755 --- a/fhem/FHEM/10_ZWave.pm +++ b/fhem/FHEM/10_ZWave.pm @@ -681,16 +681,19 @@ ZWave_mfsParse($$$$) } sub -ZWave_cleanString($) +ZWave_cleanString($$) { - my ($c) = @_; + my ($c, $postfix) = @_; $c =~ s/[.,].*$//g; $c =~ s/[^A-Z]+(.)/uc($1)/gei; $c =~ s/[^A-Z]//i; + my $shortened=0; while(length($c) > 32) { # might be endless loop $c =~ s/[A-Z][^A-Z]*$//; + $shortened++; } - return $c; + $c .= $postfix if($shortened); + return ($c, $shortened);; } ################################### @@ -727,15 +730,20 @@ ZWave_configParseModel($) $h{index} = $1 if($line =~ m/index="([^"]*)"/i); # 1, 2, etc $h{read_only} = $1 if($line =~ m/read_only="([^"]*)"/i); # true,false $h{write_only} = $1 if($line =~ m/write_only="([^"]*)"/i); # true,false - $cmdName = "config".ZWave_cleanString($h{label}); + my ($cmd,$shortened) = ZWave_cleanString($h{label}, ""); + $cmdName = "config$cmd"; + $h{Help} = ""; + $h{Help} .= "Full text for $cmdName is $h{label}
" if($shortened); $hash{$cmdName} = \%h; } - $hash{$cmdName}{Help} = $1 if($line =~ m+^(.*)$+); + $hash{$cmdName}{Help} .= "$1
" if($line =~ m+^(.*)$+); if($line =~ m/^gzclose();