Ubuntu 8.04 and Python Editors

So I updated one of my laptops to Ubuntu 8.04 pretty much as soon as it was available. I’ve been using my MacBook Pro laptop for everything for probably over a year now, because I grew tired of the hobby that *is* running Linux on a laptop and getting everything to work. I’ll note that I *do* run Linux on every server I maintain that I can think of :)

The first test for this laptop was wireless. I bought this laptop (Lenovo T61) specifically because it got rave reviews for its Linux compatibility. I was careful to order the laptop with the proper video and wireless chipsets that had the best support. However, 2 things annoyed me so much that I went back to the MacBook for everything:

  1. Wireless hung, and hung often, and in a way that it was unrecoverable.
  2. Lenovo put the Escape key in the worst place they could possibly put it, especially for a Vim user. Changing the key mapping caused issues with other apps, and configuring the key mapping inside .vimrc doesn’t help on the 30 other servers I use it on (ssh’d in from this laptop) :-/

Really, it was the wireless that did it. I work 100% remotely on everything I do. So, 8.04 seems to have fixed the wireless issues. The next thing I wanted to do was check out all of the Python IDE/editors I couldn’t use on the Mac (or, not easily). So I used Synaptic Package Manager to install all of the ones I could find. I’m sorry to say that I personally had Problems with most of them:

  • DrPython launched fine, but using the file browser to open a file resulted in…. a no-op. I’m sorry, but an editor needs to be able to open a file.
  • PyPE failed to launch altogether! It looks like it’s going to open, it spins for 5-10 seconds, and then just disappears. No window is ever shown, but a tab does appear in the bar on the bottom of the screen.
  • Pida allows you to choose an external editor, so I chose Vim, and that kinda worked, but I really just want the key bindings, not the whole editor, and there’s no option to use some default built-in editor that has code folding and autocompletion and stuff. It appeared to me to be so close to gvim that I decided to skip it. I tried to stick around and give it a chance by reading the docs, but alas, the only thing under “Help” is “About”. Seems there are still a number of open source developers more concerned with getting credit than getting users.
  • Stani’s Python Editor looked pretty nice, but I couldn’t find any easy way to change the syntax coloring, and while there is a manual, you have to donate to get your hands on it. This is nonsense. If you want to sell some kind of advanced documentation, fine, but you can’t expect me to donate to a project that I don’t even know if I want to use yet! “Please pay me so that you can see if this product fits your needs”…. it just doesn’t work that way. What you’ve done is given me a product that is complex enough that you pretty much need a manual just to get started, and then deprived me of that. Why not just give me the manual and a 30 day trial, after which I have to donate? I’d have no problem doing that if I planned on keeping it around. In fact, that’s how plenty of Mac applications work. I’ll pay for software that does what I need, but this game that’s being played is just offensive.
  • Eclipse with PyDev, I can use this, but I don’t like it a whole lot. The good news is that there’s an SVN plugin (subclipse), and a plugin for vi keybindings if I want to pay for it (it’s only $20 – not bad if you use it a lot). The interface is a little clunky to me, and there’s no easy “change your syntax color scheme to this” type functionality. If you want a dark background and light colored text, you actually have to go to one place to change the background color, the color of the line numbering area, etc., and then go to another place to change the colors associated with the different elements of your particular language. That’s annoying for two reasons: first, it’ll take forever to get things the way I want, and second, if I installed this on another machine, I couldn’t just move over some kind of theme file and have my settings ready to go (as far as I know).

In the end, it looks like my three favorite editors are still Komodo Editor, JEdit, and Vim. What’s your favorite Python editor for Linux?

  • http://www.aleax.it Alex Martelli

    I’ve tried more editors than I can shake a stick at, and I keep going back to vim/gvim each and every time…

    Alex

  • Jonathan Billings

    > What’s your favorite Python editor for Linux?

    I know I’ll invoke the wrath of the vi/vim users, but my favorite editor is still emacs. My fingers learned the keybindings many years ago, and I can just move around (and move text around) a lot easier in it. Plus, it has fairly decent syntax highlighting and plugins for version control.

  • http://billmill.org Bill Mill

    gvim on Windows/Linux, MacVim on Mac. There is no alternative.

  • Chris

    I try not to use “Linux” all that much and try and stick to OpenBSD as it is less-bloated than most other OSs out there. Favorite editors would be vim and emacs for Python and everything else.

  • troelskn

    Not that I use it (I use Emacs), but the default text editor for Gnome (gEdit), is actually pretty decent. Plus, it’s extensible in Python.

  • manatlan

    Komodo ! open-komodo is GPL …
    it’s gecko/xul based (like firefox) ..

    It’s a lot lot lot better/powerful/configurable than pydev/eclipse … and little less ressource hog.

    ulipad, start to be very very well too … (for me, it miss shortcut configuration)

  • Oolis

    Not really a recommendation, but I discovered eric recently, which may or may not be more relevant for people using Qt, as I am. Looks nice but I haven’t used it much yet. Otherwise I tend to use Eclipse pydev mostly, and vim for quick edits (I kind of like the tab completion in pydev).

  • Alex

    I’m using Komodo Edit, and loving it.

  • Mathieu

    I’ve recently tried Emacs+Pymacs+ropmacs and I find it to be a decent solution, but I’m new to Emacs so I’m still missing some features.
    Before that I would just use Pydev in Eclipse.

  • http://the-gay-bar.com/ tante

    GVim/Vim is the best IMO.

    I’ve played around with every Editor under the sun but either they are slow and clunky as Eclipse or they lack features.

    I’ve used Komodo somewhat but it wasn’t good enough for me to pay for it and I had an evaluation license for WingIDE which was kinda neat I guess, but in the end I rely on vim: It’s everywhere I log in and works.

  • http://jetfar.com/ Rich

    vim on linux, vim on mac, fortunately I don’t have to write code on windows.

    Am sure a decent IDE will come along one day. I used to do a fair bit of Java using eclipse – it was pretty good at the task, but I really dislike pydev, especially on mac – it’s just so clunky.

  • http://www.giuliopetrucci.it Giulio

    Hi!

    My favourite editor for *everything* under *everything-else* is Vim! ;-)
    I use it under WinXP/Linux for C and Python! If I have to work with .NET (under Win) I use Visual Studio… but I think that’s not an interesting case!
    Anyway… Vim rulez (but I’d like to learn Emacs too)!

  • Ronny Pfannschmidt

    yup, the pida docs are a Problem.

    There are some plans to fix the documentation,
    we just lack time to do it.

    The lack of a internal Editor is intentional
    (we want to reuse existing tools),
    there is support for direct embedding of medit,
    as it’s usable as library.

    I’m sorry we left the impression of credit-leeches.

  • http://crossbrowsertesting.com Tony

    gvim. it is so common and just works. sometime idle.

  • tristan

    emacs all the way. i used to use pida+vim, i changed to emacs 3 months ago, and i don’t think i’ll ever go back.

  • http://pida.co.uk/ Ali

    “”"
    It appeared to me to be so close to gvim that I decided to skip it.
    “”"

    That’s because it is GVim. People love Vim, see the comments of this post. Vim-like key bindings are fine if you don’t use Vim seriously, eg don’t need plugins, syntax, scripts, etc etc. We aim to please all Vim users by porting their editor into an environment. Incidentally, we do the same for Emacs users.

    PIDA – ending the flamewar.

    “”"
    I tried to stick around and give it a chance by reading the docs, but alas, the only thing under “Help” is “About”. Seems there are still a number of open source developers more concerned with getting credit than getting users
    “”"

    That’s the default PyGTK About Dialog. Your statement is offensive and utterly untrue. We wrote PIDA to use it.

  • m0j0

    @PIDA folks:

    So far, at least two people have come here to defend Pida, presumably members of the Pida project. Now, I have no interest in Pida as a tool just because I want something more than it offers. However, I’m interested in open source projects generically, so I would suggest (in the interest of just trying to help) that some of the energy that is being used to round up the troops and come here to defend the project go into putting at least enough material into a “Help->Contents” to at least introduce people to the idea of Pida. Sometimes having a starting point is all you need to attract someone with a desire to improve the documentation. Before you know it, you have real-live, usable docs.

  • http://pida.co.uk/ Ali

    m0j0:

    No, that is incorrect. PIDA doesn’t need defending, it is a unique, niche, advanced IDE that is not for you and many others.

    Your claim that we want “credit” rather than “users” is still offensive and untrue. The point is we want neither, we just want to use PIDA. If other users want to use PIDA too, then great.

    We have a slowly evolving user manual that you can access online, perhaps if you had clicked the link in the About Dialog…

  • http://asenchi.com asenchi

    @Ali:

    I think there was a bit of sarcasm in the original posting, stop over reacting.

  • http://vinicius.oitobits.net Vinícius

    I like Gedit on steroids. Fast, clean and very useful.

  • http://www.bistr-o-mathik.org Florian

    I own a Lenovo Z61m which has the same ugly position of the Esc-key. Nevertheless I remapped CapsLock to Esc on all computers I’m working on, which is especially nice when using Vim. Simply put the following lines in your .Xmodmap and login again (or load the file using `xmodmap .Xmodmap`):
    —-8<—-8<—-8<—-8<—-8<—-8<—-8<—-8<—-8<—-8<—-
    ! make Caps_Lock behave as an additional escape
    remove Lock = Caps_Lock
    keycode 66 = Escape
    —-8<—-8<—-8<—-8<—-8<—-8<—-8<—-8<—-8<—-8<—-

  • http://pythonwise.blogspot.com Miki

    Vim and sometimes IDLE (for the REPL)

  • http://pida.co.uk/ Ali

    Asenchi:

    It was an offensive, ad hominem attack on me, and my integrity. I doubt I could overreact even if I wanted to. I would happily accept a retraction and an apology from the author. But I shan’t hold my breath.

  • http://www.phipster.com/ phipster

    1. Tried lots of editors, but I keep coming back to jEdit. I suppose it’s my Mac graphic designer roots, but I *like* using a mouse to select text, move stuff around, click on buttons, etc. I’ve used it for Python, Perl, HTML, XSLT, XML, CSS and even discovered yesterday that it does a decent job with Twiki markup! I gave emacs a fair run, until I discovered there’s no multiple undo (at least, I couldn’t figure out how to make it so). I periodically get fairly proficient with vi/vim when I do projects on *nix boxes. Currently I’m using Visual C++. None, however, match jEdit for overall flexibility – folding, markers, hypersearch, split panes, diffing, on and on. Kudos to the jEdit maintainers!

    2. My bottom line with Linux on my laptop? Windows Vista, despite its warts and annoyances, works better than Ubuntu. I’ve tried Ubuntu and Kubuntu variants 6.10 and 7.04 on my Compaq Presario C506ca lappy, with varying degrees of success. Wireless on the Broadcom chipset worked better with 6.10 (was that Fabulous Frappacino?!) than 7.04 (Gutsy), but Vista just connects and works without hassles. Printing to my Canon MP530 was easier to set up with 7.10 than 6.04. Rails performance was much better on Ubuntu than the preinstalled Windows Vista, HOWEVER, I resorted to Vista because it just worked better overall. I’m hesitant to go through the month-long exercise of installing and fiddling with the latest Ubuntu, just to find it’s no better than the last one. Oh well.

  • http://haineault.com h3

    I tried some and didn’t have the troubles you had, but frankly they all sucks.. I keep coming back to vim/gvim.

  • t61p-fedora-user

    I’ve been running fedora 8 on my thinkpad t61p (virtually same as your t61) with no problems… It uses wireless all the time without a hiccup (I chose the intel abgn wireless option, if that makes any difference). I am also an extensive vim user and I don’t understand what you mean by the escape key on the lenovo laptops being in an awkward position; upper left corner of the keyboard, as in virtually all other keyboards…. It’s a little small iirc, but I guess I never thought of it as an annoyance (I’ve been using thinkpads for a long long time)

    As for editting… I use vim for anything involving < 5 files, but when I’m working on a large source tree, an IDE is just so much easier to use compared to vim+ctags+bunch of other hacks… my IDE of choice is Eclipse (but I work in java :P)

  • Tim

    Yet another person who occasionally wanders off, suspecting I must be missing something, but just keeps coming back to the simplicity and speed of vim on all platforms.

  • http://www.goldb.org Corey Goldberg

    I use SciTE on both windows and linux.
    It is a lightweight editor like VIM with syntax highlighting and integrated console.

  • Matt

    I love WingIDE. It’s not Free or free, but it’s very good, has extremely responsive support and great features.

    http://www.wingware.com/

    I use vim for everything else, but for python programming and debugging, I need more. I need a text editor that understands my code, helps me find imports, auto-loads the docstrings when I autocomplete.

    Vim is a better text editor, but for development, there’s a lot more than editing text. The tradeoff works for me.

    I like a graphical multi-threaded debugger, too.

  • Bill

    I use vim and Komodo in XP, Vista, and Ubuntu. Works the same in all three places.

  • http://gedmin.as Marius Gedminas

    vim.

    The Esc key position on ThinkPads is unfortunate, yes, especially for vim users. After a while you get used to it.

  • http://blog.elzapp.com elzapp

    I have an X61, the escape key are also located unconfortably, I have however remapped F1 and Escape. I haven’t experienced any troubles with that. My wireless was also unstable in 7.10, but with 8.04, which I’ve been running since about two weeks before has been working flawlessly with wireless.

    As my Python editor, I use OpenKomodo, on both Mac OSX and Ubuntu.

    And another thing with Ubuntu 8.04; Firefox is driving me mad. It’s a beta, and is supposed to be a beta. It’s not stable at all. I feel that anyone that are not experiencing problems with their iwlwifi-cards, should wait with the upgrade to 8.04 until FF 3.0 is out

  • Michael Shepanski

    Have you tried WingIDE yet? I just switched to that from Komodo. I found it to be a little more customizable than Komodo, and I like the OS integration. Like all IDEs I tried it has its few minor downfalls.

  • yzzy

    I use TextMate on Mac OS X, on linux i use vim

  • chris

    Geany is not too bad either. Fairly lightweight (not quite as light as vim though :) ), but has ctag-like language support, and looks ok on both linux and windows.

  • http://here.the.ycros.be Ycros

    I’m a long time Vim user, and I’ve recently been using Emacs and sometimes Komodo (all for different languages), though I still use Vim for a quick edit here and there (that and Vim/VI are generally installed on all servers).

    Two weeks ago I began a trial of Wing IDE and I love it. It’s easy to change to a black background, you can switch to a VI ‘Personality’ which makes the editing modal and changes the keybindings, and the debugging and autocompletion features are the best I’ve come across (autocomplete for dynamic languages is hard!). It also shows you syntax errors on the fly, and integrates with PyLint.

    I think I’m going to be buying it when my trial runs out.

  • chombee

    I find I’ve stuck with a new(ish) and little-known GTK editor called Scribes, “the little text editor that could.” It has a really nice set of features, very thoughtfully chosen and implemented: automatic saving, auto-comple suggestions, automatic text replacements, snippets.

    It is (for now, hopefully) missing a few features. Themes, and and the kind of auto-complete suggestions that allow you to discover methods that you haven’t used before. (Scribes gets its auto-complete suggestions from words you’ve typed to it before). For quick test and discovery, I use the iPython shell with scribes.

  • http://grahamtx.net/greg/ Greg Graham

    I use vim on Ubuntu and Windows. I first learned vi in 1984, and I’ve always liked it. When vim became available on Windows I was very happy. I’ve had periods where I’ve used Emacs, but I have not been tempted that direction for a couple of years now because I’ve become spoiled with font smoothing, which I can’t get to work on Emacs.

  • http://jeremycantrell.com JMC

    i’m sorry, but NO editor, save maybe emacs, can touch Vim in the editing department. i challenge anyone to disprove this.

  • Pingback: Ubuntu or Debian for programmers? (+ rant) | keyongtech