From 134d8eb601776eb881ecb9bcbe966dba3cf61a2b Mon Sep 17 00:00:00 2001 From: quincy2112 Date: Mon, 22 Feb 2021 23:06:38 -0500 Subject: [PATCH] Updated argcomplete activation. Now automatically runs in setup.py --- setup.py | 15 ++++++++++++++- .../plugnparse/activate-argcomplete.sh | 0 2 files changed, 14 insertions(+), 1 deletion(-) rename activate-argcomplete.sh => src/plugnparse/activate-argcomplete.sh (100%) diff --git a/setup.py b/setup.py index 57a1a3d..1de9016 100644 --- a/setup.py +++ b/setup.py @@ -8,6 +8,7 @@ Learn more under: https://pyscaffold.org/ """ import sys +import os from pkg_resources import VersionConflict, require from setuptools import setup @@ -18,6 +19,18 @@ print("Error: version of setuptools is too old (<38.3)!") sys.exit(1) +argcomplete_activation_script = f"{os.environ['VIRTUAL_ENV']}/lib/python{sys.version_info[0]}.{sys.version_info[1]}/site-packages/plugnparse/activate-argcomplete.sh" +venv_activate = os.environ['VIRTUAL_ENV'] + '/bin/activate' + +argcomplete_activation_call = f"\n\n# activates f0cal namespace tab completion \nsource {argcomplete_activation_script}" + +with open(venv_activate, 'r') as f: + if f.read().find(argcomplete_activation_call) == -1: + with open(venv_activate, 'a') as g: + g.write(argcomplete_activation_call) + if __name__ == "__main__": - setup(use_pyscaffold=True) + setup(use_pyscaffold=True, + scripts=['src/plugnparse/activate-argcomplete.sh'] + ) diff --git a/activate-argcomplete.sh b/src/plugnparse/activate-argcomplete.sh similarity index 100% rename from activate-argcomplete.sh rename to src/plugnparse/activate-argcomplete.sh