emacs - A rather naff limitation of ropemacs encountered with multiple name bindings -


i getting disappointing completion , go-to-definition results ropemacs in places use multiple name-bindings same object.

considering contrived , stylistically challenged example code below, know why rope not presenting completions or go-to-definition results?

project code sample:

from package import bigobjectwithlotsofmethods  class global:     variable = none  big = bigobjectwithlotsofmethods() global.variable = big 

emacs behaviour in question:

when enter:

big.  

then type m-/, list of candidate method names expected. hurray rope!

yet on other hand when enter:

global.variable. 

for example, , type m-/ following in emacs minibuffer:

completions global.variable.: [no match] 

furthermore, please imagine fire() method of bigobjectwithlotsofmethods typing c-c g on code global.variable.fire() not take me definition of fire() expected rather outputs following in emacs minibuffer:

cannot find definition!  

since global.variable represents name binding bigobjectwithlotsofmethods instance surprised rope not doing intelligent inferring definition knows big.

the question:

why such apparently trivial level of support code introspection in presence of multiple name binding not working under rope? missing fundamental in rope project configuration addresses example?

any gratefully received.

one imagine because introducing 1 level of indirection, rope no longer smart.

note haven't played rope in while because found getting in way more helped. bit slow. using m-/ combination of pyflakes/flymake instead on emacs. (one downside m-/ being have type method out first time). of course if rope started giving more bang , costing less buck, might tempted revisit it.

i wonder if py-dev, pycharm engines smart enough handle that.


Comments

Popular posts from this blog

android - Spacing between the stars of a rating bar? -

html - Instapaper-like algorithm -

c# - How to execute a particular part of code asynchronously in a class -