<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def show_setup(self):
 """ Provide a helper script for the user to setup completion. """

        shell = os.getenv('SHELL')
        if not shell:
            raise SystemError("No $SHELL env var found")
        shell = os.path.basename(shell)
        if shell not in self.script_body:
            raise SystemError("Unsupported shell: %s" % shell)
        tplvars = {
            "prog": '-'.join(self.prog.split()[:-1]),
            "shell": shell,
            "name": self.name
        }
        print(self.trim(self.script_header % tplvars))
        print(self.trim(self.script_body[shell] % tplvars))
        print(self.trim(self.script_footer % tplvars))