def LoadNew(self, fileOrView):
     if(fileOrView == None):
         return None
     if(not hasattr(self,'orgPaths') or self.orgPaths == None):
         self.orgPaths = sets.Get("orgDirs",None)
     filename = self.FilenameFromFileOrView(fileOrView)
     if(util.isPotentialOrgFile(filename)):
         file = FileInfo(filename, loader.load(filename), self.orgPaths)
         self.AddFileInfo(file)
         return file
     elif(util.isView(fileOrView) and util.isOrgSyntax(fileOrView)):
         bufferContents = fileOrView.substr(sublime.Region(0, fileOrView.size()))
         file = FileInfo(filename if filename else util.getKey(fileOrView), loader.loads(bufferContents), self.orgPaths)
         self.AddFileInfo(file)
         return file
     else:
         log.debug("File is not an org file, not loading into the database: " + str(filename))
         return None
Beispiel #2
0
 def FindInfo(self, fileOrView):
     try:
         if (not fileOrView):
             return None
         key = util.getKey(fileOrView).lower()
         if (key and key in self.files):
             f = self.files[key]
         else:
             f = self.LoadNew(fileOrView)
         if (f and util.isView(fileOrView)):
             f.ReloadIfChanged(fileOrView, self)
         return f
     except:
         try:
             #log.debug("Trying to load file anew")
             f = self.LoadNew(fileOrView)
             if (type(fileOrView) is sublime.View):
                 f.ReloadIfChanged(fileOrView, self)
             return f
         except:
             log.warning("FAILED PARSING: \n  %s", traceback.format_exc())
             return None