Re: psychiatric help

Aaron Schrab <[email protected]> Tue, 7 Apr 2026 19:57:50 -0400
Newsgroups gmane.comp.shells.zsh.user
Message-ID <[email protected]>
At 11:18 -0700 05 Apr 2026, Ray Andrews <[email protected]> wrote:
>On 2026-04-05 10:39, Mark J. Reed wrote:
>>>
>>If its output is not going to a terminal, you get the "polite" 
>>behavior that outputs one filename per line. Any time you're doing 
>>`ls |` or `$(ls)` or `<(ls)`, the output is not going to a terminal, 
>>so you get the one-per-line behavior.
>So if 'ls' is called within a function that counts as 'not a 
>terminal'?  Man ... so easy to draw the wrong conclusion.  As above, I 
>thought it was the array causing that.

No. Unless the function definition directs the output elsewhere, the 
output of ls (or any other command) in a function goes wherever the 
output of the function goes.

If you're starting from a terminal there can be essentially unlimited 
levels of scripts or other commands, aliases, or functions between the 
terminal and the ls execution with the output still going to a terminal 
as long as nothing directed the output to go somewhere else.