docs: def get_plugin_client_settings(self):
          settings = {}
          user_path = self.get_plugin_settings_path("User")
          def_path = self.get_plugin_settings_path("MavensMate")
  
          '''
              if the default path for settings is none, we're either dealing with a bad client setup or
              a new client like Atom.io. Let's load the settings from the default cache and optionally allow 
              them to pipe settings in via STDIN
          '''
          if def_path == None:
              if 'ATOM' in self.plugin_client:
                  file_name = 'atom'
              elif 'SUBLIME_TEXT' in self.plugin_client:
                  file_name = 'st3'
              elif 'BRACKETS' in self.plugin_client:
                  file_name = 'brackets'
              settings['default'] = util.parse_json_from_file(config.base_path + "/"+config.support_dir+"/config/"+file_name+".json")
  
              if config.plugin_client_settings != None:
                  settings['user'] = config.plugin_client_settings
          else:
              workspace = self.params.get('workspace', None)
              if self.project_name != None and workspace != None:
                  try:
                      settings['project'] = util.parse_json_from_file(os.path.join(workspace,self.project_name,self.project_name+'.sublime-settings'))
                  except:
                      debug('Project settings could not be loaded')
              if not user_path == None:
                  try:
                      settings['user'] = util.parse_json_from_file(user_path)
                  except:
                      debug('User settings could not be loaded')
              if not def_path == None:
                  try:
                      settings['default'] = util.parse_json_from_file(def_path)
                  except:
                      raise MMException('Could not load default MavensMate settings.')
          if settings == {}:
              raise MMException('Could not load MavensMate settings. Please ensure they contain valid JSON')
          return settings