Argcomplete support to tab completion of python and xonsh scripts in xonsh shell.
BSD-2-CLAUSE License
xpip install xontrib-argcomplete
echo 'xontrib load argcomplete' >> ~/.xonshrc
# Reload xonsh
First of all you need to add the argcomplete support to your script:
PYTHON_ARGCOMPLETE_OK
marker should be found in the first 10 lines of the file (example)..completer
was set for add_argument
(example).argcomplete.autocomplete(parser)
added before parser.parse_args()
(example).Example for proto.py
sample:
xpip install xontrib-argcomplete
xontrib load argcomplete
cd /tmp && git clone https://github.com/anki-code/xontrib-argcomplete
cd xontrib-argcomplete/tests
python proto.py <Tab> # Suggestions: --help --proto -h
./proto.py --proto tt<Tab> # Suggestions: http https
./proto.xsh --proto tt<Tab> # Suggestions: http https
./proto --proto tt<Tab> # Suggestions: http https
$PATH.append($PWD)
proto --proto tt<Tab> # Suggestions: http https
The argcomplete xonsh completer will be activated with this cases:
python script.py <Tab>
./script.py <Tab>
./path/script.py <Tab>
xonsh script.xsh <Tab>
./script.xsh <Tab>
./path/script.xsh <Tab>
# scripts without extension should have "env python" or "env xonsh" or path to python/xonsh in the shebang
./script <Tab>
script <Tab> # script should be found in $PATH
Windows is not supported. PRs are welcome!
$XONTRIB_ARGCOMPLETE_DEBUG = True
.