On Thu, Jan 30, 2025 at 14:10:33 +0100, to...@tuxteam.de wrote:
> Try prefixing the thing with the builtin `function':
> 
>   function w3m() ...

That would still leave the alias in place, though.  So, both the alias
and the function would be defined.  The alias will win out, I believe,
if you actually try to run w3m at that point.

You need to unalias w3m first.  That's the real answer here.

Also, just as a tangent, "function" is a bash extension that came from
ksh.  In ksh, there are two different ways to define a function:
"foo()" and "function foo".  They have different semantics; one is not
a synonym for the other.  Combining them, as in "function foo()", is
not allowed.

POSIX sh only defines "foo()".

"function foo()" is therefore purely a bash extension.

Reply via email to