Bluefish, for all your web dev needs
Developers are rather picky about the editors they use, and open source developers more so than most. There’s a bit of elitism amongst the community â€“ if you don’t use vim or Emacs then you’re just not hard-core enough. I’m happy to concede that I’m not hard-core at all, and I like my development environment to be a happy place with lots of buttons and arrow key support. So I recently took Bluefish out for a spin â€“ a very happy development environment perfect for web development.
The first thing I noticed about Bluefish was the layout â€“ they’ve managed to squeeze a lot into a very small space. Below the normal menus and buttons is a tabbed menu system for quickly adding anything from tables to forms to div tags with CSS styles. If you’ve typed out one table structure, you’ve typed them all â€“ rather click on a button and get the basic outline typed for you.
Below that is an even better menu for hard-core code snippets and nifty scripts. Throw in a whole PHP/Html calendar with one click, or convert all tabs to spaces in the document. It’s also got a clever way of building PHP-enabled forms. This section is completely customisable, so throw your own scripts in here under the custom menu.
On the left is a tabbed bar with a very nice file browser, a document reference that plugs in to documentation on your machine (I find the CSS and PHP reference invaluable), and a bookmark tab for quickly jumping around multiple files. The latter is quite an original implementation â€“ most IDEs limit you to bookmarks within one file, and you have to remember the bookmark number.
Finally on to the editor itself. I had to fiddle to get it working and looking good. I’m not sure what resolution you’re meant to be using, but the amount of text displayed in the editor window left a lot to be desired. I could only see 27 lines of code, but dropping the font size down did the trick. That’s the price for all the other features on the screen I guess.
Another annoying default was that the tab key actually inserted tab breaks rather than spaces. This is a serious no-no for any developer worth his salt. Fortunately the folk at Bluefish have the tabs as spaces option right at the top of the preferences dialogue.
All lines are numbered, and code highlighting is pretty clear and good. Some editors have trouble spanning multiple inverted commas or heavy mixing of PHP, scripts and HTML. Bluefish takes even the most complex in its stride. It does sometimes loose the highlighting â€“ a common problem amongst these kinds of IDEs â€“ but hitting F5 sorts it out and refreshes the highlighting.
My one serious gripe about Bluefish is its cursor movement. I’m pretty used to using ctrl-arrow keys for fast navigation, which Bluefish supports, but it seems to have its own ideas about where to jump to, especially if spanning more than one line. It’s probably more of a problem with what I’m used to than any kind of bug, but it was annoying.
The hot-keys are also a bit odd, breaking from traditional hot-keys in many places. Ctrl-G to repeat a search was not very obvious to me. There’s no hot-key to increase or decrease tab size, and the feature also seems to do too much, changing the tab size on a whole bunch of code instead of just highlighted code.
The Bluefish developers claim that Bluefish uses less than half of similar editors, Quanta Plus and Screem, on start-up. They also say that Bluefish is capable of easily opening over 500 documents, and has been tested up to 3 500 documents open at the same time. I’ll take their word for it. Other cool features claimed that I haven’t tested is support for remote file systems through Gnome’s virtual file system, allowing you to work on a remote site locally.
Overall, Bluefish is a very competent and stable IDE, and more than sufficient for any web developer, from beginner to advanced. Most of my problems had more to do with what I’m used to than a problem with Bluefish itself.