37 order to identify the connection |
38 order to identify the connection |
38 @type str |
39 @type str |
39 @param projectPath path to the project |
40 @param projectPath path to the project |
40 @type str |
41 @type str |
41 """ |
42 """ |
42 super(CodeAssistClient, self).__init__(host, port, idString) |
43 super().__init__(host, port, idString) |
43 |
44 |
44 self.__methodMapping = { |
45 self.__methodMapping = { |
45 "getConfig": self.__getConfig, |
46 "getConfig": self.__getConfig, |
46 "configChanged": self.__configChanged, |
47 "configChanged": self.__configChanged, |
47 "closeProject": self.__closeProject, |
48 "closeProject": self.__closeProject, |
138 source = params["Source"] |
139 source = params["Source"] |
139 offset = params["Offset"] |
140 offset = params["Offset"] |
140 maxfixes = params["MaxFixes"] |
141 maxfixes = params["MaxFixes"] |
141 |
142 |
142 self.__project.prefs.set("python_path", params["SysPath"]) |
143 self.__project.prefs.set("python_path", params["SysPath"]) |
143 if filename: |
144 resource = ( |
144 resource = rope.base.libutils.path_to_resource( |
145 rope.base.libutils.path_to_resource(self.__project, filename) |
145 self.__project, filename) |
146 if filename else |
146 else: |
147 None |
147 resource = None |
148 ) |
148 |
149 |
149 errorDict = {} |
150 errorDict = {} |
150 completions = [] |
151 completions = [] |
151 |
152 |
152 try: |
153 try: |
185 source = params["Source"] |
186 source = params["Source"] |
186 offset = params["Offset"] |
187 offset = params["Offset"] |
187 maxfixes = params["MaxFixes"] |
188 maxfixes = params["MaxFixes"] |
188 |
189 |
189 self.__project.prefs.set("python_path", params["SysPath"]) |
190 self.__project.prefs.set("python_path", params["SysPath"]) |
190 if filename: |
191 resource = ( |
191 resource = rope.base.libutils.path_to_resource( |
192 rope.base.libutils.path_to_resource(self.__project, filename) |
192 self.__project, filename) |
193 if filename else |
193 else: |
194 None |
194 resource = None |
195 ) |
195 |
196 |
196 errorDict = {} |
197 errorDict = {} |
197 calltips = [] |
198 calltips = [] |
198 |
199 |
199 try: |
200 try: |
222 filename = params["FileName"] |
223 filename = params["FileName"] |
223 source = params["Source"] |
224 source = params["Source"] |
224 offset = params["Offset"] |
225 offset = params["Offset"] |
225 maxfixes = params["MaxFixes"] |
226 maxfixes = params["MaxFixes"] |
226 |
227 |
227 if not self.__id == CodeAssistClient.IdProject: |
228 if self.__id != CodeAssistClient.IdProject: |
228 self.__project.prefs.set("python_path", params["SysPath"]) |
229 self.__project.prefs.set("python_path", params["SysPath"]) |
229 if filename: |
230 resource = ( |
230 resource = rope.base.libutils.path_to_resource( |
231 rope.base.libutils.path_to_resource(self.__project, filename) |
231 self.__project, filename) |
232 if filename else |
232 else: |
233 None |
233 resource = None |
234 ) |
234 |
235 |
235 errorDict = {} |
236 errorDict = {} |
236 documentation = "" |
237 documentation = "" |
237 cts = None |
238 cts = None |
238 |
239 |
239 try: |
240 with contextlib.suppress(Exception): |
240 cts = rope.contrib.codeassist.get_calltip( |
241 cts = rope.contrib.codeassist.get_calltip( |
241 self.__project, source, offset, resource, maxfixes=maxfixes, |
242 self.__project, source, offset, resource, maxfixes=maxfixes, |
242 remove_self=True) |
243 remove_self=True) |
243 except Exception: # secok |
|
244 pass |
|
245 |
244 |
246 if cts is not None: |
245 if cts is not None: |
247 while '..' in cts: |
246 while '..' in cts: |
248 cts = cts.replace('..', '.') |
247 cts = cts.replace('..', '.') |
249 if '(.)' in cts: |
248 if '(.)' in cts: |
389 filename = params["FileName"] |
388 filename = params["FileName"] |
390 offset = params["Offset"] |
389 offset = params["Offset"] |
391 source = params["Source"] |
390 source = params["Source"] |
392 |
391 |
393 self.__project.prefs.set("python_path", params["SysPath"]) |
392 self.__project.prefs.set("python_path", params["SysPath"]) |
394 if filename: |
393 resource = ( |
395 resource = rope.base.libutils.path_to_resource( |
394 rope.base.libutils.path_to_resource(self.__project, filename) |
396 self.__project, filename) |
395 if filename else |
397 else: |
396 None |
398 resource = None |
397 ) |
399 |
398 |
400 errorDict = {} |
399 errorDict = {} |
401 result = {} |
400 result = {} |
402 |
401 |
403 import rope.contrib.findit |
402 import rope.contrib.findit |
426 @type dict |
425 @type dict |
427 """ |
426 """ |
428 filename = params["FileName"] |
427 filename = params["FileName"] |
429 oldSource = params["OldSource"] |
428 oldSource = params["OldSource"] |
430 |
429 |
431 try: |
430 with contextlib.suppress(Exception): |
432 rope.base.libutils.report_change( |
431 rope.base.libutils.report_change( |
433 self.__project, filename, oldSource) |
432 self.__project, filename, oldSource) |
434 except Exception: # secok |
|
435 # simply ignore it |
|
436 pass |
|
437 |
433 |
438 |
434 |
439 if __name__ == '__main__': |
435 if __name__ == '__main__': |
440 if len(sys.argv) != 5: |
436 if len(sys.argv) != 5: |
441 print('Host, port, id and project path parameters are missing. Abort.') |
437 print('Host, port, id and project path parameters are missing. Abort.') |