code: def do_show(self, args):
  		
  		self.print_line('')
  		if args.thing == 'modules':
  			self.print_line('Modules' + os.linesep + '=======')
  			headers = ('Name', 'Description')
  			rows = [(module.path, module.description) for module in self.frmwk.modules.values()]
  		else:
  			if self.frmwk.current_module and args.thing == 'options':
  				options = self.frmwk.current_module.options
  				self.print_line('Module Options' + os.linesep + '==============')
  			if self.frmwk.current_module and args.thing == 'advanced':
  				options = self.frmwk.current_module.advanced_options
  				self.print_line('Advanced Module Options' + os.linesep + '=======================')
  			elif self.frmwk.current_module is None and args.thing == 'options':
  				options = self.frmwk.options
  				self.print_line('Framework Options' + os.linesep + '=================')
  			elif self.frmwk.current_module is None and args.thing == 'advanced':
  				options = self.frmwk.advanced_options
  				self.print_line('Advanced Framework Options' + os.linesep + '==========================')
  			headers = ('Name', 'Value', 'Description')
  			raw_options = [options.get_option(name) for name in options]
  			rows = [(option.name, str(option.value), option.help) for option in raw_options]
  		rows = sorted(rows, key=lambda row: row[0])
  		self.print_line('')
  		self.frmwk.print_table(rows, headers=headers, line_prefix='  ')
  		self.print_line('')
  		return
docs: Valid parameters for the "show" command are: modules, options