Example #1
0
	def _callback(self, idx):
		if idx == -1:
			return		
		func_info = self.func_list[idx]
		func_file = func_info[0]
		func_decl = func_info[2]
		cur_file_name = utils.file_name_by_fullname(self.view.file_name())

		file_text = self.view.substr(sublime.Region(0, self.view.size())).encode("cp1251")
		parse_result = blsparse.parse_text(file_text)
		uses_list = map(lambda it : it.strip().lower(), parse_result["Uses"])

		if (func_file not in uses_list) and (func_file != cur_file_name):
			func_decl += "{%s}" % func_file

		point = self.view.sel()[0].begin()
		self.view.insert(self.edit, point, func_decl)
Example #2
0
	def find_bls(self, cur_file_path, cur_file_text):
		"Вернет список всех bls файлов в проекте, которые экспортируют искомую функцию"
		path = PathResolver(cur_file_path).GetBlsDir()
		uses = utils.parse_bls(cur_file_text, 'uses')
		name = utils.file_name_by_fullname(cur_file_path)
		uses.append(name)
		
		bls_files = []
		for root, dirs, filenames in os.walk(path):
			for filename in fnmatch.filter(filenames, '*.bls'):
				name = utils.file_name_by_basename(filename)
				if name in uses:
					full_path = os.path.join(root, filename)
					exports = utils.parse_bls(open(full_path).read(), 'exports')
					if self.func in exports:
						bls_files.append(full_path)
		return bls_files
Example #3
0
	def set_compiled(self, path):
		name = utils.file_name_by_fullname(path)
		f = self.files[name]
		f.on_compiled()		
Example #4
0
	def __init__(self, full_path):	
		self.full_path = full_path
		self.name      = utils.file_name_by_fullname(full_path)
		self.md5       = ''
Example #5
0
	def run_check_bls(self, view):
		syntax = view.settings().get("syntax")
		if utils.file_name_by_fullname(syntax) != u"bls":
			return
		self.timer_edit.call(view)