On 6/9/2022 9:48 AM, Eli Zaretskii wrote: >> From: Jim Porter >> Date: Thu, 9 Jun 2022 08:55:36 -0700 >> >> Do the tests work if you replace "list" in those two functions with >> "listify"? (`eshell/listify' is a built-in Eshell alias function, which >> is the highest priority for Eshell commands, so it should always work.) > > If I make this replacement in 4 tests that use "list", then it doesn't > hang, but 2 tests fail: That makes sense. Those other tests that are now failing should stay unchanged. The difference is in the brace style of the commands. For `esh-var-test/interp-lisp-indices': the expansion is '$(list 1 2)', which means "evaluate '(list 1 2)' as a Lisp sexpr". This doesn't need to change. For `esh-var-test/interp-cmd-indices': the expansion is '${list 1 2}', which means "evaluate 'list 1 2' as a shell-like command". In this case, if there's an external program named 'list', it will call that; otherwise, it will call the Lisp function `list'. (If there were a Lisp function named `eshell/list', Eshell would always prefer that.) Here, we should use 'listify', since it's the preferred Eshell way to make a list using command-style syntax. Attached is a patch for this.