Due to ambiguity with the Python ``dir`` builtin, to list the current
directory via the ``cmd.exe`` builtin you must explicitly request
the ``.``, like this:
..code-block:: xonshcon
>>> dir .
Volume in drive C is Windows
Volume Serial Number is 30E8-8B86
Directory of C:\Users\snail\xonsh
2015-05-12 03:04 <DIR> .
2015-05-12 03:04 <DIR> ..
2015-05-01 01:31 <DIR> xonsh
0 File(s) 0 bytes
3 Dir(s) 11,008,000,000 bytes free
Many people create a ``d`` alias for the ``dir`` command to save
typing and avoid the ambiguity altogether:
..code-block:: xonshcon
>>> aliases['d'] = ['cmd', '/c', 'dir']
You can add aliases to your ``~/.xonshrc`` to have it always
available when xonsh starts.
Unicode support for Windows
----------------------------
Python's utf-8 unicode is not compatible with the default shell 'cmd.exe' on Windows. The package ``win_unicode_console`` fixes this. Xonsh will use ``win_unicode_console`` if it is installed. This can be disabled/enabled with the ``$WIN_UNICODE_CONSOLE``` environment variable.
..note:: Even with unicode support enabled the symbols available will depend on the font used in cmd.exe.
The packages ``win_unicode_console`` can be installed using pip or conda.