
On Thu, Feb 14, 2008 at 09:36:22AM -1000, lithis wrote:
On Thu, 2008/02/14 05:22:15 -0600, Spencer Janssen wrote:
Then there are two commands that appear as "touch foo bar" on screen,
Because the pop-up display is shown in columns, it would be obvious that “foo” “bar” and “foo bar” were distinct: foo bar foo bar
but will execute different things depending on whether the user used tab completion.
Escaping should still be performed in the command line itself; I’m just suggesting the the escaping happen after the pop-up list is displayed and before the text is added to the command line (instead of before the pop-up list is displayed). In the above example. selecting “foo bar” with tab would append “foo\ bar” to the command line.
Furthermore, I think it is pretty standard to display the escapes in this fashion (it is what bash and zsh do, at least).
When there are multiple matches in bash, pressing tab twice causes the possible matches to be printed one per line, without any escaping. bash escapes the filename only when matched text is added to the current command line.
Ah, I thought you meant that the escapes would also be removed from the command line, but you didn't. In that case, this seems fine.