Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I\'ve been quite happy with my purchase of Sublime Text 3 for developing and, ei

ID: 661721 • Letter: I

Question

I've been quite happy with my purchase of Sublime Text 3 for developing and, either natively or through extensions, this piece of software covered almost all of my needs.

The one thing I found myself wanting for, however, was a way to do refactorings, for example through PyRope or better. There is already a PyRope extension for ST3, but it doesn't actually use the refactoring backend. The ST2 version does have this support, but it is not robust at all and often fails without a clear error message.

What I'm looking for:

I don't want to learn vim or emacs just to refactor code

Explanation / Answer

You could try Wing IDE, which has refactoring operations for renaming, moving, extracting code to a function or method, and introducing variables. It is a whole IDE but starts quickly, is very configurable (e.g., you can hide things you're not interested in), and reloads code from disk automatically, so you could use it side by side with another editor.

You do need to make sure Wing (and I think any refactoring tool) knows what the Python Path is, if your code is not all in the same directory. Otherwise it cannot know for sure which module an import refers to and thus may miss uses of a symbol you are changing. This may not be relevant in your source base, but is still worth being aware of.

To address your other requirements: Wing has various keyboard personalities and doesn't require you know emacs or vim. It comes as a .deb (and in other forms) but isn't in the Ubuntu repository and your refactoring engine isn't available as a ST3 plugin (sorry!).

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote