[PATCH] Fancy rc startup style RFC
Eric Anderson
anderson at centtech.com
Tue Apr 18 20:35:58 UTC 2006
Gordon Bergling wrote:
> * Thus spake Eric Anderson (anderson at 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.
------------------------------------------------------------------------
More information about the freebsd-hackers
mailing list