      def __init__(self, parent):
          logger.debug("Initializing %s", self.__class__.__name__)
          super().__init__(parent, tearoff=0)
          self.root = parent.root
          self.configs = self.scan_for_plugin_configs()
          self.build()
          logger.debug("Initialized %s", self.__class__.__name__)
  
      def scan_for_plugin_configs(self):
          """ Scan for config.ini file locations """
 
</s> remove     def scan_for_plugin_configs(self):
        """ Scan for config.ini file locations """
        global _CONFIGS, _CONFIG_FILES  # pylint:disable=global-statement
        root_path = os.path.abspath(os.path.dirname(sys.argv[0]))
        plugins_path = os.path.join(root_path, "plugins")
        logger.debug("Scanning path: '%s'", plugins_path)
        configs = dict()
        for dirpath, _, filenames in os.walk(plugins_path):
            if "_config.py" in filenames:
                plugin_type = os.path.split(dirpath)[-1]
                config = self.load_config(plugin_type)
                configs[plugin_type] = config
        logger.debug("Configs loaded: %s", sorted(list(configs.keys())))
        keys = list(configs.keys())
        for key in ("extract", "train", "convert"):
            if key in keys:
                _CONFIG_FILES.append(keys.pop(keys.index(key)))
        _CONFIG_FILES.extend([key for key in sorted(keys)])
        _CONFIGS = configs
        return configs

    @staticmethod
    def load_config(plugin_type):
        """ Load the config to generate config file if it doesn't exist and get filename """
        # Load config to generate default if doesn't exist
        mod = ".".join(("plugins", plugin_type, "_config"))
        module = import_module(mod)
        config = module.Config(None)
        logger.debug("Found '%s' config at '%s'", plugin_type, config.configfile)
        return config

 </s> add  </s> remove         self.tk_var = self.get_tk_var(track_modified)
 </s> add         self.tk_var = self.get_tk_var(initial_value, track_modified) </s> remove         self._page_frame.pack(fill=tk.BOTH, expand=True)
        self.title("{} Plugins".format(self._name.title()))
 </s> add         select = name if name else self._tree.get_children()[0]
        self._tree.selection_set(select)
        self._tree.focus(select)
        self._select_item(0)

        self.title("Congigure Settings") </s> remove     def __init__(self, name, configuration):
        logger.debug("Initializing %s: (name: %s, configuration: %s)",
                     self.__class__.__name__, name, configuration)
 </s> add     def __init__(self, name, configurations):
        logger.debug("Initializing %s: (name: %s, configurations: %s)",
                     self.__class__.__name__, name, configurations)
      def __init__(self, parent):
          logger.debug("Initializing %s", self.__class__.__name__)
          super().__init__(parent, tearoff=0)
          self.root = parent.root

          self.build()
          logger.debug("Initialized %s", self.__class__.__name__)
  
      def scan_for_plugin_configs(self):
          """ Scan for config.ini file locations """
keep keep keep keep replace keep keep keep keep keep
 GUI: Consolidate settings to single menu 
lib/gui/menu.py