Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Autocomplete in the shell using curses; very similar to Github's 't' feature
Python Makefile Shell

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
completeme Don't use ls-tree. Just use ls-files, which'll take into account loca…
tests Adding test for common_suffix.
.gitignore Ignoring more build artifacts.
MANIFEST.in Make sure that the config is included in our MANIFEST.in.
Makefile Don't double print the server response when we make release.
README.rst
VERSION New email address.
check_build.sh Adding basic Makefile.
requirements.txt Adding the beginnings of a unit test suite.
run_local.py Adding script to run completeme in a dev environment since the script…
setup.py New email address.
setup_completeme_key_binding.sh Don't clobber TMPFILE.

README.rst

completeme

TL;DR

Linux:

  • $ sudo pip install completeme
  • $ echo "source `which setup_completeme_key_binding.sh`" >> ~/.bashrc
  • $ source ~/.bashrc

OS X:

  • $ brew install bash # see note below about OS X and bash 4
  • $ sudo pip install completeme # no need for 'sudo' if you installed python with brew, as well!
  • $ echo "source `which setup_completeme_key_binding.sh`" >> ~/.profile
  • $ source ~/.profile

Windows:

Description

completeme is a python script to auto-complete filenames in a given directory, much like Github's 't' keyboard shortcut or Command-T in TextMate or SublimeText. When you've settled on the file you'd like to edit, press "Enter" to open it with whatever's in your $EDITOR variable or press "Tab" to drop that filename at the end of your current command!

To change your search directory, simply prefix your query. That is, start your string with "../" to search your current working directory's parent or "/tmp/" to search "/tmp/". Note that the trailing slash is what triggers the directory change. If your current search directory is a git repository, this will respect your .gitignore.

Make sure to add "source `which setup_completeme_key_binding.sh`" to your .bashrc to enable Ctrl+t support!

Configuration

completeme comes with (wherever-pip-installs-the-completeme-python-package)/completeme.json, which you can use to, well, configure your completeme experience.

  • include_directories (default=true) indicates whether we should also display directories (not just files).
  • find_hidden_directories (default=false) indicates whether we should search inside dot directories (assuming we didn't find a git repository). These are things like .config/, .vim/, etc.
  • find_hidden_files (default=false) indicates whether we should find files that start with a dot (assuming we didn't find a git repository). These are things like .emacs, .xinitrc, .DS_Store, etc.

Known Issues

Mac OS X ships with bash 3.2, which doesn't use the READLINE_LINE or READLINE_POINT variables. Unless you upgrade, you won't be able to use the tab-functionality to drop the filename back into the prompt! To upgrade:

  • brew install bash
  • Add /usr/local/bin/bash to /etc/shells
  • chsh -s /usr/local/bin/bash

License

This software is licensed under the WtHYWv2 (Whatever the Hell You Want, v2). Please throw some credit around if it's deserved.

Thanks

Thank you to all who have contributed ideas and feedback. Special thanks to those listed below!

Something went wrong with that request. Please try again.