Example #1
0
 def on_modified(self, view):
     if sublime.score_selector(view.scope_name(view.sel()[0].b),
                               'source.php') == 0:
         return
     editor = PhpCoder().editor(view)
     doComplete = False
     line = editor.before()
     if len(line) == 0:
         return
     if re.match(r'.*[,\(]\s*$', line) or line[-1] == '$' or re.match(
             r'.*new [a-zA-Z0-9_]*$', line) or re.match(
                 r'(^|\s+)[a-zA-Z]+$', line):
         doComplete = True
     else:
         expr = editor.expr()
         if expr and expr['prefix'][:2] in ['::', '->']:
             doComplete = True
     if doComplete:
         view.run_command(
             'auto_complete', {
                 'disable_auto_insert': True,
                 'api_completions_only': False,
                 'next_completion_if_showing': False,
                 'auto_complete_commit_on_tab': True,
             })
Example #2
0
 def on_query_completions(self, view, prefix, locations):
     if sublime.score_selector(view.scope_name(view.sel()[0].b), 'source.php') == 0:
         return
     editor = PhpCoder().editor(view)
     resolver = phpcoder.resolver.Resolver(editor)
     line = editor.before()
     if re.match(r'.*[,\(]\s*$', line):
         return self._completeParams(editor, resolver)
     if re.match(r'.*new [a-zA-Z0-9_]*$', line):
         return self._completeNew(view)
     if line[-1] == '$':
         return editor.findLocals()
     expr = editor.expr()
     if expr:
         return self._completeExpr(expr, editor, resolver)
     return []
Example #3
0
 def on_query_completions(self, view, prefix, locations):
     if sublime.score_selector(view.scope_name(view.sel()[0].b),
                               'source.php') == 0:
         return
     editor = PhpCoder().editor(view)
     resolver = phpcoder.resolver.Resolver(editor)
     line = editor.before()
     if re.match(r'.*[,\(]\s*$', line):
         return self._completeParams(editor, resolver)
     if re.match(r'.*new [a-zA-Z0-9_]*$', line):
         return self._completeNew(view)
     if line[-1] == '$':
         return editor.findLocals()
     expr = editor.expr()
     if expr:
         return self._completeExpr(expr, editor, resolver)
     return []
Example #4
0
 def on_modified(self, view):
     if sublime.score_selector(view.scope_name(view.sel()[0].b), 'source.php') == 0:
         return
     editor = PhpCoder().editor(view)
     doComplete = False
     line = editor.before()
     if len(line) == 0:
         return
     if re.match(r'.*[,\(]\s*$', line) or line[-1] == '$' or re.match(r'.*new [a-zA-Z0-9_]*$', line) or re.match(r'(^|\s+)[a-zA-Z]+$', line):
         doComplete = True
     else:
         expr = editor.expr()
         if expr and expr['prefix'][:2] in ['::', '->']:
             doComplete = True
     if doComplete:
         view.run_command('auto_complete', {
             'disable_auto_insert': True,
             'api_completions_only': False,
             'next_completion_if_showing': False,
             'auto_complete_commit_on_tab': True,
         })