Как решить проблемы с просмотром кода на языке python и с кодом завершения в vim?

Я работаю над большим проектом python, используя vim с tagexplorer, pythoncomplete и ctags. Функциональные возможности просмотра кода и кода, основанные на тегах, не работают так, как они должны, к сожалению, потому что ctags не связывает экземпляры с типами.

Гипотетические сценарии:

  • Auto Complete: vim не будет автоматически завершить метод on() в myCar.ignition().on(), потому что ctags не знает, что ignition() возвращает TypeIgnition.
  • Просмотр кода: vim не будет просматривать TypeCar, когда я нажимаю myCar, но вместо этого представляет мне несколько совпадений определений, неправильные совпадения или отсутствие совпадений, потому что ctags не возвращает и не связывает экземпляры с типами.

Проблема, похоже, связана с тем, что python является динамически типизированным языком. Ни один из сценариев не представляет проблемы иначе. Есть ли эффективная альтернатива кодовому просмотру и расширению кода на основе тегов и плагин IDE или vim, который хорошо его реализует?

Примечание: Пожалуйста, проголосуйте "повторно открыть". Решения этой проблемы ценны для сообщества. Вопрос изначально был сформулирован очень смутно, что уже не так.

Ответ 1

Коммерческая IDE для python like wing (www.wingware.com) и pycharm (www.jetbrains.com/pycharm) лучше решать большинство проблем с завершением кода. Конечно, они не являются бесплатными. Я сам, когда использование eclipse с плагином pydev не получило удовлетворительных результатов.