Note this is mostly to discuss as if I understood one of your message on
Twitter, this was not possible without fuzzy completion.
I tried with just this patch and that works great.
Note that unlike IPython that right now does :
~/<tab> -> /Full/Path/to/user/home
But with this patch this just complete things correctly without
expanding the tab. And I think not expanding the tab is actually better.
Anyway, open that to better understand the why you were waiting for
fuzzy completion.
On Python 3.5+, we can make use of scandir that not only list the
content of the directory as an iterator but caches some infomations (for
example, `is_dir()`; this avoid extra stats call to the underlying
filesytem and can be – according to pep 471 – 2x to 20 time faster
especially on NFS filesystem where stats call is expensive.
From a quick this is the only place where scandir would make sens, as
most other places only require the name.
Fixes 1381