Re: A fix for the F3 /var/log bug...
- From: Alfie Costa <agcosta gmx net>
- To: mc-devel gnome org
- Subject: Re: A fix for the F3 /var/log bug...
- Date: Sun, 01 Jun 2003 01:12:32 -0400
On Thu, 29 May 2003 23:26, Oswald Buddenhagen wrote:
> x=QuousqueTandemAbutere
> echo ${x##Quousque}
/bin/sh on solaris 8: bad substitution
Thank you, kind SunOS user.
> In the meantime, for those who prefer the 'file -z' way, attached is
> the same patch, changed so it does it the 'file -z | grep' way.
> this solution is sort of ... stupid ... :]
Sort of, but I think mine would work "out of the box", or on install...
excepting those peculiar man pages that 'file' misidentifies. And it
should work for all distros, albeit inefficiently.
> as mc does not automatically call file -z (or uncompresses the file
> itself), i created the wrapper /usr/local/bin/file:
> ----------------------------
> #! /bin/sh
> /usr/bin/file -z "$@"
> echo "Warning: -z switch implicitly used"
> ----------------------------
This works for you, but how to package it? Suppose a user already has a
special /usr/local/bin/file -- then the 'mc' install script, (I think
that's how Debian does it...), would have to allow for that. (And so on
for how all the other distros do it.) Or suppose the '-z' bolixes up
some other script that calls 'file'. Maybe the .deb that installs
'file' would need to know about the wrapper too.
That is, a wrapper script for 'file' may be even less portable than '##'.
> type/^(ASCII )?troff.*gzip compressed
Ohhhh. Well, I didn't understand the what the 'type' keyword was for.
Thanks again...
As applied to my last 'file -z | grep' patch, using 'type' would at
least allow replacing the uncompressed man page logic with 'type/^(ASCII
)?troff', which is a partial improvement. (The redundant compressed man
page logic I'd leave be, rather than use an unportable 'file' wrapper,
though.)
How does this sound: somewhere in the 'mc' source it calls 'file' --
can't we just change that so it calls 'file -z' as needed? The logic
would go like:
1) let x = `file foo`
2) is foo compressed? Goto 4.
3) let x = `file -z foo`
4) return x
Assuming this didn't goof anything else in 'mc' -- don't see why it
should -- then all your 'type' code would work without a wrapper script.
[Date Prev][
Date Next] [Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]