Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Apr 2006 15:35:34 -0500
From:      Eric Anderson <anderson@centtech.com>
To:        Gordon Bergling <gbergling@0xfce3.net>
Cc:        cokane@cokane.org, freebsd-hackers@freebsd.org
Subject:   Re: [PATCH] Fancy rc startup style RFC
Message-ID:  <44454D96.3030004@centtech.com>
In-Reply-To: <20060418203333.GA19094@central.0xfce3.net>
References:  <444515C8.3030406@centtech.com> <20060418165709.GA17705@central.0xfce3.net> <44452532.40703@centtech.com> <20060418.114933.69380798.imp@bsdimp.com> <346a80220604181102v3597a1edp3e05fa663b87e15c@mail.gmail.com> <20060418193018.GB694@turion.vk2pj.dyndns.org> <444545D3.5010405@centtech.com> <20060418203333.GA19094@central.0xfce3.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Gordon Bergling wrote:
> * Thus spake Eric Anderson (anderson@centtech.com):
>> Peter Jeremy wrote:
>>> On Tue, 2006-Apr-18 14:02:07 -0400, Coleman Kane wrote:
>>> A few comments on the shellscript:
>>>
>>>> +			rcargsize=`echo $rc_arg`
>>>> +			rcargsize=${#rcargsize}
>>> Try			rcargsize=$((${#rc_arg} + 1))
>>>
>>>> -				    return 1
>>>> +				    (echo_fancy "FAILED" `expr 10 + 
>>>> $rcargsize - 1`) && return 1
>>> Try				    echo_fancy "FAILED" $((10 + $rcargsize - 
>>> 1)) && return 1
>>>
>>>> +echo_fancy () {
>>> ...
>>>> +	namesize=`echo -n $name`
>>>> +	namesize=${#namesize}
>>> or	namesize=${#name}
>>>
>>>> +	padding=""
>>>> +	paddingsize=$(($columns - 15 - $2 - $namesize))
>>>> +	until [ 0 = ${paddingsize} ]; do
>>>> +		padding=" $padding"
>>>> +		paddingsize=$(($paddingsize - 1))
>>>> +	done
>>> This particular block of code appears unnecessary (since $padding is 
>>> unused).
>> I must be missing something, because I'm pretty sure it's used.. What 
>> did I miss?
>>
>>
>>
>>>> +			paddingsize=$((60 - $namesize - $rc_argsize))
>>>> +			until [ 0 = ${paddingsize} ]; do
>>>> +		  		padding=" $padding"
>>>> +		  		paddingsize=$(($paddingsize - 1))
>>>> +			done
>>> For safety, the conditions should probably be [ 0 -ge ${paddingsize} ]
>>> I don't see any alternative to the until loop.  If efficiency turns out
>>> to be a real issue then you could try doing the expansion in multiple
>>> goes.  Eg:
>>>
>>> 			until [ 8 -gt ${paddingsize} ]; do
>>> 		  		padding="        $padding"
>>> 		  		paddingsize=$(($paddingsize - 8))
>>> 			done
>>> 			until [ 0 -ge ${paddingsize} ]; do
>>> 		  		padding=" $padding"
>>> 		  		paddingsize=$(($paddingsize - 1))
>>> 			done
>> Thanks for the hints.  I was testing the same changes to the 
>> namesize/etc as you suggested, and it does work and is more readable and 
>> more efficient.
>>
>> I've included your suggestions and put the latest changes here:
>>
>> http://www.googlebit.com/freebsd/patches/rc_fancy.patch-3
> 
> Patch -3 is working good here. :)
> 
> best regards,
> 
> 	Gordon
> 
> PS: next try... fancy_color_rc="YES" ;)

If I could figure out how to make sh do colors, I'd do it. :)

Thanks for testing!

Eric





-- 
------------------------------------------------------------------------
Eric Anderson        Sr. Systems Administrator        Centaur Technology
Anything that works is better than anything that doesn't.
------------------------------------------------------------------------



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44454D96.3030004>