Wednesday, October 16, 2013

Kate's python plugins really needs some package love!

I have been trying out Kate's Pate or Kate's Python Plugins on various Linux distributions and my finding is this. Most of them don't work right out of the box. Pate used to be an external plugin that you had to install into Kate but now is part of Kate's default plugins.

This is kind of a shame to me as when the plugins, work right, they are really great and of all I have seen has got great potential. The problem here is that none of them work right out of the box. I only managed to install and get one installation right on an OpenSuSE box.

Try to follow along the origin story of pate (if you can!)

The plugins that can be used in KDE 3 can be found here: http://paul.giannaros.org/pate/. The latest and greatest, which means that can be used with KDE 4 can be found here: https://github.com/pag/pate, but then from the looks of it the last change in that repo is quite sometime ago. It says that the project was passed down to kate-editor about 6 months ago.  Well increasing the count of developers from one to twelve is always a good thing. This to me is a positive development for Kate's future.

My advise is either you try the source or stick with your distro's package management. Try not to mix the two unless your day has really been slow and you are desperate for some time tinkering around with package resolutions on your box. The plugins themselves has a feeling of still being under heavy development, which is not evident from the two links above. Rather what I found that was nearer to the true source is here: http://kate-editor.org/get-it/. I think that absorbing the python plugins to be the default set of plugins that comes with Kate is a good move and ensures the future of the plugins, just that we need some good packages to ensure that the plugins themselves are showcased and represented correctly to users. Of the two packages I tried: LinuxMint and Sabayon, both were missing dependencies which I have already reported it. On my trusty Sabayon Pate would not even load because of mismatch of versions of somekind related to sip. 


The allure for me for considering Kate for an IDE is that it already comes with KDE, which I use from time to time so there is no additional bloat to put on top of KDE which is is nice so I hope that they get this right. The list of features to come with Kate that I use daily are:

  1. Linting (pep8, pyflakes and pylint). Here I wished that I got a list of clickable pep violations rather than a pop up window that would disappear with time. A bit clunky but at least it's there without me having to do some extra tinkering. 
  2. Project (svn and git integration but with some manual tinkering. Coult not get this to work though)
  3. A basic Python console. This comes as a "pop up" window. If it was integrated or inline it would have been superb but then having a console itself is great. 
  4. Snippet support and easy creation of snippet.
  5. Some great code editing functionality such as code navigation and their likes.  
  6. Vi-mode keymap.
Another one thing that I felt wanting since I have been too spoilt by PyCharm and Sublime is the all powerful alt-p in Sublime and the ctrl-alt-a in PyCharm. Wished that there was such a thing in Kate. Would have really cut short the time trying to explore around in the GUI which is actually quite a substantial time since it has grown by leaps and bounds. I had a good time looking for some configuration items and hunting around on the UI's menu system really made me hanker for PyCharm's and Sublime's superb all seeing-eye key.

Just as an update, I managed to get the full version working on Mint 15 but I had to use backports. I was happy to get it working so that at least I would be using and judging the plugins itself instead of judging the installation and configuration of the plugins. There are a few things apparent when I was using Kate for my daily editing jobs. One looking for stuff without the all seeing eye is a chore. The other is, the fact that I got to play around with external tools for viewing repository history and checking in is a definite pain and a minus against it. Well, you can look at it two ways. One way is Kate is a really good editor and the other it is really not as accomplished as an "Integrated" Development Environment for Python. It's all really there, just that probably some more thought has got to be put in to redesign some of the screens to change the workflows to be less clunky.

References:

Bug Report Sabayon: http://bugs.sabayon.org/show_bug.cgi?id=4447
Linux Mint bug report: https://bugs.launchpad.net/linuxmint/+bug/1239506

4 comments:

toddrjen said...

For someone not familiar with sublime or PyCharm, what do those shortcuts do? I can't seem to find them online.

Low Kian Seong said...

clt-alt-a searches through all of the menu items and functionality of PyCharm so that you can find any function or menu item or configuration item within it fast, similarly with Sublime's alt-p

toddrjen said...

Have you checked the kate console? You get it with ctrl+f7 by default on my system, and gives you quick access to the entire kate scripting API (including things not found in any menu). I am not sure it is exactly what you want but it is pretty powerful.

Low Kian Seong said...

Ah! Mine is tied to F7. Not exactly it but it's a great start!