Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Tab complete file paths containing spaces #121

Closed
wants to merge 16 commits into
from
Commits on Jul 4, 2014
  1. Improve tab completion for files with spaces.

    georgebrock committed Feb 12, 2014
    This involved some parser changes to accept escaped characters in non-quoted
    arguments.
    
    The tab completion isn't perfect: When the argument is prefixed with a
    single quote, the completed version will still get escaped, but shouldn't be
    because of the hard quotes.
  2. For single quoted paths, don't escape spaces.

    George Brocklehurst and Zamith committed with georgebrock Mar 4, 2014
  3. Don't escape spaces in double-quoted arguments.

    George Brocklehurst and Zamith committed with georgebrock Mar 4, 2014
  4. Memoize quoted method.

    George Brocklehurst and Zamith committed with georgebrock Mar 4, 2014
    This will be called N+1 times for N paths.
  5. Move integration spec to unit level.

    George Brocklehurst and Zamith committed with georgebrock Mar 4, 2014
  6. Shorten long lines (a little)

    George Brocklehurst and Zamith committed with georgebrock Mar 4, 2014
    Hound is probably still going to hate this. Sorry, hound.
  7. Improve naming.

    georgebrock committed Mar 19, 2014
  8. Improve spec descriptions.

    georgebrock committed Mar 19, 2014
  9. No suffix on quoted head completions.

    georgebrock committed Mar 21, 2014
    When completing a quoted head (e.g. `checkout "mas\t`) the resulting
    completion shouldn't have a space suffix (`checkout "master"` not `checkout
    "master "`)
    
    This has the nice side effect of removing some repeated conditionals from
    PathCompleter class.
  10. Wrap long line.

    georgebrock committed Apr 2, 2014
  11. Fix escaping on multiple spaces.

    georgebrock committed Apr 2, 2014
    This uses a regular expression look ahead to avoid escaping a space at the
    end of the completion. The final space is there to separate this argument
    from the next argument, it's not part of the argument itself.