xonsh / xonsh

:shell: Python-powered shell. Full-featured and cross-platform.
http://xon.sh
Other
8.45k stars 642 forks source link

Windows: a possible problem with 'dir' involving name confusion #2905

Open R0yco opened 6 years ago

R0yco commented 6 years ago

when I type 'dir' in xonsh, I get the following output: <function 'dir'> which refers to the builtin python function 'dir'.

when I type 'dir' with a command line argument, for example 'dir /home' , it executes the dir binary like in bash.

If I call dir as a function, dir(), I get the builtin function.

I think this might be confusing because it's about 2 totally different things that has the same name.

Maybe this is intentional, but personally I find this confusing. When you type 'dir', maybe the shell should prompt about this.

For community

⬇️ Please click the 👍 reaction instead of leaving a +1 or 👍 comment

melund commented 6 years ago

Hi @Royco1

This is small known annoyance on Windows. The filosofy in xonsh is that python always takes precedence, which is a little unfortunate with the dir command.

You can type dir . to get the right command. See

https://xon.sh/windows.html#name-space-conflicts

If you have good ideas for solving then a pull request is most welcome.

scopatz commented 6 years ago

I'd also love to have a posix-compliant ls command in xoreutils, so that we could use command commands anywhere.