Sujet : Re: [ksh93u+m] Interactive subshell expansion disfunctional
De : janis_papanagnou+ng (at) *nospam* hotmail.com (Janis Papanagnou)
Groupes : comp.unix.shellDate : 22. Jun 2024, 13:15:19
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <v56f8o$3offl$1@dont-email.me>
References : 1 2 3
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
On 22.06.2024 04:10, Janis Papanagnou wrote:
On 22.06.2024 01:14, Martijn Dekker wrote:
Op 21-05-2024 om 17:57 schreef Janis Papanagnou:
I recently replaced all original ksh93u+ by ksh93u+m, and meanwhile
noticed quite some deficiencies, things that worked in original ksh
but not any more in ksh93u+m.
>
I would of course be very interested in learning what deficiencies
(other than the below) you've been observing.
Unfortunately I haven't kept track. It's just that I noticed that
a couple things that worked before do not any more. Partly because
they were probably anyway only considered experimental, partly it
were features that I'd suspect are not commonly used.
Off the top of my head one was the support of ksh's alarm timers,
and another thing was in context of discipline functions used on
shell variables. (In the latter case I have no certainty whether
it's a shell issue or whether I should have done this differently.
An example for the above mentioned effect shows up like that...
$ pushftp
pushftp: LINES.set: line 44: .kosta.rows=24: no parent
pushftp: COLUMNS.set: line 45: .kosta.cols=79: no parent
pushftp: line 11: 1: pushftp file ftp-path [ domain ]
where pushftp is an 'expect' wrapper script
file=${1:?"${usage}"}
path=${2:?"${usage%/}"}
domain=${3:-"some-domain"}
path=${domain}/${path}
expect <<EOT
...
EOT
and the "kosta" code contains
function LINES.set { .kosta.rows=${.sh.value} ; .kosta.update ;}
function COLUMNS.set { .kosta.cols=${.sh.value} ;}
function PS1.get { .kosta.compose ;}
namespace kosta
{
...
}
and it's activated by sourcing it from ~/.kshrc
I can't tell whether I have missed something with discipline functs
on built-in variables, how I used the namespaces, or something like
that. (My tries to fix that in my program logic all failed.) Though
the above "no parent" error messages did not show up with ksh93u+.
And it can now be observed in various _script interaction_ contexts.
Janis