Я был очень доволен покупкой Sublime Text 3 для разработки, и, либо изначально, либо через расширения, это программное обеспечение покрывало почти все мои потребности.
Однако единственное, чего я хотел, — это способ проведения рефакторинга, например, с помощью PyRope или лучше. Расширение PyRope для ST3 уже существует , но на самом деле оно не использует механизм рефакторинга. В версии ST2 эта поддержка есть, но она совсем не надежна и часто дает сбой без четкого сообщения об ошибке.
Что я ищу:
vim
или emacs
просто рефакторить код — если плагин не настолько прост, что вы можете объяснить, как его использовать, в тексте вашего ответа. Извиняюсь..deb
пакетами.Нецели:
Это даже не обязательно должен быть текстовый редактор. Даже такой программы будет достаточно:
py-refactor extract-function myNewFunction \
--from mycode.py:42:60 \
--dry-run
Примечание . Я соучредитель Wingware, создателя Wing IDE для Python.
Вы можете попробовать Wing IDE , в которой есть операции рефакторинга для переименования, перемещения, извлечения кода в функцию или метод и введения переменных. Это целая IDE, но она запускается быстро, ее очень легко настраивать (например, вы можете скрыть то, что вам не интересно) и она автоматически перезагружает код с диска, чтобы вы могли использовать ее вместе с другим редактором.
Вам нужно убедиться, что Wing (и я думаю, что любой инструмент рефакторинга) знает, что такое путь Python, если ваш код не находится в одном каталоге. В противном случае он не может точно знать, к какому модулю относится импорт, и, таким образом, может пропустить использование символа, который вы изменяете. Это может быть неуместно в вашей исходной базе, но все же стоит знать об этом.
Чтобы удовлетворить ваши другие требования: Wing имеет различные особенности клавиатуры и не требует, чтобы вы знали emacs или vim. Он поставляется в формате .deb (и в других формах), но его нет в репозитории Ubuntu, и ваш механизм рефакторинга недоступен в виде плагина ST3 (извините!).
Кадры Кэтрин Уайт
бадп
Кадры Кэтрин Уайт
бадп
nano
: P), но я никогда раньше не имел дело с плагином .