Toolchain used for Pyherc

Over the years, I have tried out various tools and settled down for a set that seems to work pretty well for me. I do try out new ones now and then and take in use what I find useful.

  • IDE that I use is emacs and it’s pretty central on what I do currently. It took quite a bit to get used to, but after learning the basics, I have really grown into it. Extensible system means that I can customize it to my liking.
  • Since I code mostly with Hy (embedded lisp inside of Python), hy-mode is useful. That gives me syntax high-lighting and indentation rules.
  • I wouldn’t want to deal with all those parentheses without ParEdit, which makes editing s-expressions a breeze.
  • Since I’m using git as a version control system, I’m also using magit package to do the day to day work with repository from inside emacs. Code is hosted at github.
  • Latests additions to emacs are helm and helm-projectile. Helm helps me to complete when I’m looking for something (file, buffer) in emacs and helm-projectile helps managing files in a project.
  • For testing I use nose. Very easy and fast to use framework, that I have been using for years. And running tests from emacs, I use nose package.
  • I have a small amount of specifications written in BDD-style, that I run with behave. Other testing related tools include PyHamcrest and mockito-python.
  • On a rare occasion that I need to do something relating to graphics, I use GIMP. It has all the features I need (and then some).

So my workflow is pretty emacs-centric. I have used Eric previously, until ran into trouble with an upgrade and had to find something else. Especially happy I was with the rope integration, that allowed me to refactor Python code easily. Geany was another IDE I used and was happy with, before switching to emacs. I probably forgot some tools, but in case I remember them, I’ll add them here later.


  • For various documents, I use Sphinx. It uses reStructuredText as mark up language and generates nice looking html-pages (among other formats). Extensible plugin architecture means there are additional tools available for example for running tests for the documentation being created.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s