Bluefish HTML Editor

One fish, two fish, red fish, Bluefish HTML editor (Review)

by John Facey

Virtually unheard of 6 years ago, HTML editors have become an almost “must have” for most business desktops. If you don’t have a stand-alone HTML editor, then I guarantee that at the very least, you have an application that can export a document to HTML, regardless of the operating system you use. Windows users have been pampered with many powerful tools for editing and creating HTML such as CoffeeCup, Hot Dog Pro, and FrontPage just to name a few. So where are their Linux counterparts?

As long as I have been using Linux, I haven’t been able to find many HTML editors. In fact most of the hardcore Linux users that I know open up vi or emacs and start writing their code. For myself, memorizing HTML tags and writing them totally by hand is a little bit too intense. On the other hand, I’ve used some “WYSIWYG” editors that have lots of bells and whistles and work great, but they also like to code their way, which isn’t always the way I want. That was the quandary I found myself in, until I stumbled upon Bluefish.

Bluefish is a remarkable HTML editor for GNU/Linux that allows pages to be created quickly and easily, and always gives the user access to the code directly. It requires GTK 1.2.x and the lmlib library (for the image dialogs to work properly). The latest release of Bluefish is version 0.6 and includes some great features.

Like a Mercedes 600, it has everything

Bluefish uses a combination of toolbars with a configurable tab-based dialog for its interface. On the top of the interface Bluefish has what I refer to as the standard program interface. The standard program interface usually consists of drop down menus at the very top of the Bluefish window and toolbar buttons just below for the most common file and edit tasks like “New”,”Open”, “Save”,”Save As”,”Cut”, “Copy”, etc. The top toolbar also contains a powerful search and replace feature and spell checker. Below the primary toolbar are tabs that when selected, will change the associated buttons below the tabs. The first tab labeled “Quickbar” contains the most commonly used features. These include basic HTML formatting commands like Bold, Italics, Underline, Strikethrough, and positioning commands like Break, Paragraph, and Center as shown in Figure A. These features can also be accessed from the drop down menus at the top of the window.

Many of the features in Bluefish use popup dialog boxes to help insert code. For example, when selecting the “Image” button a dialog box appears (provided you have the lmlib library installed). The Image dialog, shown in Figure B, will allow you to browse for the image you wish to place in your HTML and will let you modify variables for the HTML code it will create. Once you browse and select an image file, the width and height will automatically be filled in. You can then enter alignment, vertical or horizontal spacing, and fill in the alternate text for the image before you press the OK button to insert the HTML code into your page.

When you select a tab on the menu, it reveals a new set of toolbar buttons below the tab to give you access to features specific to that category. Experienced coders will appreciate the time saved by these dialogs when creating complex tables, forms, and framesets. The dialog options for creating form elements in particular were very well thought out. To a new user who has never created HTML pages before, getting a page created with forms is a simple task with Bluefish. Some of the other tabs include CSS, Javascript, and WML, which give you quick access to some of these programming tools. The last tab of the interface labeled “Other” (shown in Figure C) will please the more advanced coder, especially if you use server scripting languages. The Other tab contains a complete reference list of Server Side Includes (SSI), RXML, PHP3 and PHP4 functions, all available through simple dialog boxes. The Other tab also has an image map reference button (which I use a lot), a color picker for creating color hex codes, and a quick meta tag generator.

If you’re a first time HTML coder, you might not need to reference these tags. For the experienced coder, these features can be a time saving boon, giving you access to a reference library of valid programming functions without having to thumb through a reference book. That’s why Bluefish is great for all skill levels.

Below the toolbar features you’ll find the main text editing window and the file browser window, which is new with the latest release of Bluefish 0.6.


In addition to a plethora of time saving features, the Bluefish interface is completely customizable. The toolbars and tabs at the top of the interface are tear away so that you can place them anywhere on your desktop while you work. The editing window features syntax highlighting that is fully configurable. Under the Options menu at the the top of the interface, you’ll find the Preferences dialog box shown in Figure D. From this dialog box, you can configure all aspects of the Bluefish HTML editor, including what HTML or XHTML code specifications you’ll allow in your pages. This is an excellent feature for enforcing code across a group or project.

Also on the Options menu, you’ll find the selection “Lists” for configuring external programs to work with Bluefish. The most obvious example of this is Weblint, which is accessed through the “External” drop down menu by default. Weblint is a Perl script that checks your documents for breaks in HTML syntax. It’s very helpful for making sure you write good code, but you have to install Weblint separately. You can get Weblint here. Using Weblint as your example, it’s easy to add other external programs to work with Bluefish.

A suggested external

Do you write code as part of a team,or write HTML on several platforms? If you do, you might find that you have a peculiar problem using Bluefish. If you suddenly find that cut and paste isn’t working in Bluefish, chances are, the file you’re editing has been opened and changed by someone on a Windows platform. DOS line feeds cause this problem, and this can be fixed easily by adding the dos2unix filter to your External Filters menu. First, get the dos2unix program from your favorite software archive (rpms are available from and install it. Once installed, open Bluefish and select “External filters” from the Lists item on the Options menu. This will open the dialog box shown in Figure E. In this dialog box, type the name of the program that will appear on your External Filters menu in the space provided. Then in the command window, type the path to the filter program. Once you complete this process, push the Add button to add the new filter to your menu system. If you ever have problems with cut and paste not working, just run the dos2unix filter on the file while open in Bluefish, and cut and paste should work just fine.


The Bluefish HTML editor is an excellent example of of how good open source programs can be. It is feature rich, with lots of time saving tools for experienced coders and friendly enough for newbies to be productive in little or no time. With the recent release of 0.6, Bluefish is showing that as it matures, it is getting even better. If you’re looking for a full featured HTML editor for GNU/Linux and appreciate a well conceived GUI, then Bluefish is what you’re looking for. Packaged binaries and source can be downloaded from the Bluefish web site, so go get your copy today!


One response to “Bluefish HTML Editor

  1. adidas originals

    September 22, 2015 at 4:07 am

    Real nice ! Many thanks !


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 )

Google photo

You are commenting using your Google 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

%d bloggers like this: