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
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