Где-то
тут у меня пробегало высказывание о
том, что до
сих пор я не нашел такой среды разработки
на Python, где бы в полном объеме работали
подсказки и автодополнение (calltips,
autocomplete for indirectly created objects). В том смысле,
что почти все IDE умеют давать подсказки
о методах класса, если объект класса
создан в текущем namespace. Но нет такой IDE,
которая могла бы дать такие подсказки,
если объект пришел в виде параметра
функции, к примеру. Для Javascript и PHP есть
способы разъяснить тип переменной в
теле комментария к функции. Для Python нету
такой возможности, в каком стиле не пиши
docstring.
Однако,
не все так плохо. Для пытливых умов нет
ничего невозможного :)
Рассказываю,
как научить autocomplete & calltips понимать
типы обьектов, созданных бог знает где.
Для
Komodo Edit можно использовать такой грязный
хак
def testFunc(lyrconf): if 0: lyrconf = layermeta.LayerInfo()
после чего для lyrconf начинают работать
подсказки.
Для
PyDev работает гораздо более приемлемый
хак
def testFunc(lyrconf): assert isinstance(lyrconf, layermeta.LayerInfo)
Заодно и проверка на корректность
параметра.
Информация
нагуглилась по запросам типа
«pydev|komodo
autocomplete object type tips in comments»
Комментариев нет:
Отправить комментарий