Sublime Forum

CodeIntel ported from Open Komodo Editor

#181

In summary, it’s not perfect, but it’s better than not having it.

For instance, it chokes pretty hard on SQL Alchemy scoped_sessiosn and declarative_base(), and doesn’t seem to resepect the sqlalchemy package.

That said, it works pretty well for just about everything else.

As background, I’m running 32 python 2.7 (64 bit wasn’t playing nice with pyodbc)

Because of the inherent ‘gotchas’ with the plugin, it can seem as if it’s not functioning.

A quick way to check and see if it’s working is to create a new file with ‘python’ selected as the syntax.
Then, in the file, type “from” and hit space.
In the bottom gutter, if working, you should see modules being scanned.
After the modules finish scanning you should see a list of modules in a popup, you can import from.

As python’s a dynamic language, there will exists cases where the parser won’t be able to determine what type the object you’re working with is – in these cases you will not get autocomplete suggestions.

Finally, one additional sanity check I can recommend that gave me peace of mind was to cross-validate the auto-suggest in KomodoEdit. If the snippet you’re working with also fails in Komodo, there’s not much to be done from the plugin-side, as it references the Komodo library.

0 Likes

#182

Not working on Ubuntu with kernel 3.0.0-16 x64. Updating indexes process never ends =(

0 Likes

#183

Same here - the Ubuntu plus updating indexes thing, I mean. Sadcakes.

0 Likes

#184

FWIW, I was actually able to get it working using Ubuntu 11.10. A co-worker and I decided to beat our heads against it.

The issue, it seems, in my case, is that I had nothing in the config file. Dunno why it was blank, but there you go.

0 Likes

#185

First of all: great plugin! I’m looking for a replacement for Eclipse(which is way too bulky and buggy) and this plugin made Sublime a great candidate.

There is however one thing I’m missing: support for phpdoc tags. For example:

<?php
class Foo {
    /*
      * @return Bar a bar class
      */
     public function getBar() {
         $bar = new Bar();
         return $bar;
     }
}

class Bar {
     public function getHello() {
         return 'hello';
     }
}

$foo = new Foo();
echo $foo->getBar()->getHello(); // getHello doesn't easily autocomplete or jump to definition here, it does show eventually, but first all default PHP functions show
?>

Is there some way to fix this?

0 Likes

#186

I use the DocBlokr plugin for that, works great!

0 Likes

#187

Thanks for the tip, seems to do the trick at first sight. Will do a test soon with a bigger project to see if it works there :smile:

0 Likes

#188

[quote=“mpedrummer”]FWIW, I was actually able to get it working using Ubuntu 11.10. A co-worker and I decided to beat our heads against it.

The issue, it seems, in my case, is that I had nothing in the config file. Dunno why it was blank, but there you go.[/quote]

Can you be more specific? Which configuration file was empty? I can not get anything but the message of “Updating indexes for PHP… The first time this can take a while” and a 100% CPU (T_T)

0 Likes

#189

It’s the file referred to in the “Configuring” section here - github.com/Kronuz/SublimeCodeIntel

For me, it was ~/.codeintel/config - that file was empty. I just pasted the example from github in there, and it started working for me.

0 Likes

#190

[quote=“mpedrummer”]It’s the file referred to in the “Configuring” section here - github.com/Kronuz/SublimeCodeIntel

For me, it was ~/.codeintel/config - that file was empty. I just pasted the example from github in there, and it started working for me.[/quote]

You are a lucky man. I tried with the configuration file at ~/.codeintel/config, adde a config file at project .codeintel directory, to recompile plugin libraries … and nothing … just CPU at 100% and “Updating indexes for PHP…” message = (

0 Likes

#191

I’m waiting for it to break :smile:

My co-worker, who had initially gotten it to work in Ubuntu, has subsequently had it stop working. We haven’t been able to figure out why.

Oh, computers. You suck, and I love you.

0 Likes

#192

[quote=“mpedrummer”]I’m waiting for it to break :smile:

My co-worker, who had initially gotten it to work in Ubuntu, has subsequently had it stop working. We haven’t been able to figure out why.

Oh, computers. You suck, and I love you.[/quote]

Noooooooo!!! You are my only hope!!! :cry:

0 Likes

#193

OK, here’s a hint maybe - we got his working again, though it took deleting as much evidence that Sublime had ever existed as we could find :smile:

At some point, he had moved the directory that contained the executable into .config/sublime-text-2, which turned out to be a horrible idea.

After reinstalling, he ran the build.sh that comes with SublimeCodeIntel, and it works!

0 Likes

#194

Hello!

I’ve got some problem with this package.

What I’ve done:

  1. Installed the packages
  2. Created a new folder
  3. Created a new file test.rb
  4. Typed in some Ruby class
class Test
end
  1. Pressed super+j

In ~/.codeintel/codeintel.log I see

Updating indexes for 'Ruby'... The first time this can take a while. Doing CodeIntel for 'Ruby' (hold on)... eval 'Test' at test.rb#6 <Trigger 'ruby-defn-defn' at 37 (explicit)> Unexpected error with evaluator: 'Test' at test.rb#6 Traceback (most recent call last): File "/Users/andrew/Library/Application Support/Sublime Text 2/Packages/SublimeCodeIntel/libs/codeintel2/tree.py", line 328, in eval defns = self.eval_defns() File "/Users/andrew/Library/Application Support/Sublime Text 2/Packages/SublimeCodeIntel/libs/codeintel2/tree_ruby.py", line 293, in eval_defns self._base_scoperefs = self._calc_base_scoperefs(start_scoperef) File "/Users/andrew/Library/Application Support/Sublime Text 2/Packages/SublimeCodeIntel/libs/codeintel2/tree_ruby.py", line 305, in _calc_base_scoperefs scoperefs = [curr_scoperef, (self.built_in_blob, [])] File "/Users/andrew/Library/Application Support/Sublime Text 2/Packages/SublimeCodeIntel/libs/codeintel2/tree_ruby.py", line 965, in built_in_blob if isinstance(self.libs-1], StdLib): File "/Users/andrew/Library/Application Support/Sublime Text 2/Packages/SublimeCodeIntel/libs/codeintel2/tree_ruby.py", line 155, in libs self._libs = self.langintel.libs_from_buf(self.buf) File "/Users/andrew/Library/Application Support/Sublime Text 2/Packages/SublimeCodeIntel/libs/codeintel2/lang_ruby.py", line 323, in libs_from_buf libs = self._buf_indep_libs_from_env(env):] File "/Users/andrew/Library/Application Support/Sublime Text 2/Packages/SublimeCodeIntel/libs/codeintel2/lang_ruby.py", line 444, in _buf_indep_libs_from_env = self._ruby_info_from_ruby(ruby, env) File "/Users/andrew/Library/Application Support/Sublime Text 2/Packages/SublimeCodeIntel/libs/codeintel2/lang_ruby.py", line 355, in _ruby_info_from_ruby p = process.ProcessOpen(argv, env=env.get_all_envvars(), stdin=None) AttributeError: 'module' object has no attribute 'ProcessOpen' done eval: eval error

I’ve tried other languages (e. g. Python) but I got similar errors.

0 Likes

#195

We are working on v2.0 of SubimeCodeIntel, available at github.com/Kronuz/SublimeCodeIn … evelopment (development branch). This should fix many of the bugs that were there (making it slow and making CPU usage go crazy for too long)… please if anyone’s willing, I’d appreciate any feedback.

We need suggestions for proper and working key and mouse bindings for “jump to definition” (currently alt+click) and the autocomplete popup manual trigger. Any thought would be welcome.

0 Likes

#196

[quote=“Kronuz”]We are working on v2.0 of SubimeCodeIntel, available at github.com/Kronuz/SublimeCodeIn … evelopment (development branch). This should fix many of the bugs that were there (making it slow and making CPU usage go crazy for too long)… please if anyone’s willing, I’d appreciate any feedback.

We need suggestions for proper and working key and mouse bindings for “jump to definition” (currently alt+click) and the autocomplete popup manual trigger. Any thought would be welcome.[/quote]

that’s a REAL good news!!!

0 Likes

#197

Indeed!!

0 Likes

#198

Awesome! Looking forward to it. Thanks!

0 Likes

#199

The development version does not work on my computer (Ubuntu Linux 12.04 kernel 3.2.0-26-generic x86_64).

I’ve done this:

When I try to go to the definition of an element with CTRL+SUPER+ALT+UP nothing happens. Neither pressing SHIFT+CTRL+SPACE to autocomplete.

I tried recompiling libraries at ~/.config/sublime-text-2/Packages/SublimeCodeIntel/src/ but nothing new happens.

The file ~/.codeintel/codeintel.log:

Starting logging SublimeCodeIntel rev GIT-unknown (1341919357) on Wed Jul 11 09:06:22 2012
==========================================================================================
+ Info: Invalid language: Plain text. Available: JavaScript, Mason, XBL, XUL, RHTML, SCSS, Python, HTML, Ruby, Python3, XML, XSLT, Django, HTML5, Perl, CSS, PHP, Less, Smarty, Node.js, Tcl, TemplateToolkit, Twig
+ Info: processing `PHP': please wait...
Updating indexes for 'PHP'... The first time this can take a while.
+ Info: processing `PHP': please wait...
Doing CodeIntel for 'PHP' (hold on)...
unknown UDL-based XML completion: <built-in function id>
done eval: error
Done 'PHP' CodeIntel! Full CodeIntel took 24ms
Updating indexes for 'PHP'... The first time this can take a while.
Doing CodeIntel for 'PHP' (hold on)...
unknown UDL-based XML completion: <built-in function id>
done eval: error
Done 'PHP' CodeIntel! Full CodeIntel took 32ms
0 Likes

#200

I’m in the same situation as xavi above. I installed via git, but the result is the same.

0 Likes