Tassilo Philipp | dyncall.org dixit:

>So weit so gut - liege ich damit richtig, dass der Unterschied ist,
>dass pdksh *immer* ENV reinzieht, aber mksh nur im interaktiven Modus?

Sorry für die späte Antwort – aber ich habe gerade Sourcen und
Historiën gelesen und alles, und festgestellt, daß dem in der
Tat so ist. Das ist ein Bugfix, denn $ENV sollte in der Tat nur
bei interaktiven Shells gelesen werden, nicht z.B. beim Lauf von
make(1). Und mksh(1) dokumentiert:

     -i         Interactive shell. A shell that reads commands from standard
                input is "interactive" if this option is used or if both stan-
                dard input and standard error are attached to a tty(4). An in-

Kurzum: nein, Aliase gehen da nicht, außer der Befehl, den Du
in vim ausführst, ist z.B. „mksh -ic aliasname“. Mache ich in
jupp auch so, jetzt wo ich drüber nachdenke…

POSIX sagt dazu:

   The  shell  shall  read  its  input  in  terms  of  lines from a file, from 
a terminal in the case of an
   interactive  shell, or from a string in the case of [30]sh -c or 
[31]system(). The input lines can be of

Also vermutlich korrekt, daß -c nie interaktiv impliziert. Und:

   ENV
          This  variable,  when  and  only  when  an  interactive  shell  is 
invoked, shall be subjected to
          parameter  expansion  (see [66]Parameter Expansion) by the shell and 
the resulting value shall be
          used as a pathname of a file containing shell commands to execute in 
the current environment. The

Also auch korrekt, daß $ENV nur bei interaktiven Shells gerufen wird.

tl;dr: weder ein Bug in vim noch einer in mksh, wohl einer in pdksh.
Sorry für die Umstände.

Gruß
//mirabilos
-- 
“The final straw, to be honest, was probably my amazement at the volume of
petty, peevish whingeing certain of your peers are prone to dish out on
-devel, telling each other how to talk more like a pretty princess, as though
they were performing some kind of public service.” (someone to me, privately)

Reply via email to