What is Bluefish?

Bluefish is a powerful editor for experienced web designers and programmers based on the GTK2 GUI interface. Bluefish supports many programming and markup languages, but focuses on editing dynamic and interactive websites.

Bluefish is not a WYSIWYG[1] text editor. This is deliberate, allowing the programmer to stay in full control. To alleviate the editing process, a large number of features are at your disposal. For inserting markup and code, there are toolbars, dialogs, and predefined/user-customized menus. Syntax highlighting, advanced search/replace functionality, scalability and language function references make Bluefish a powerful tool for development.

History of Bluefish

left for someone else to write ;-) - christianalso left for someone else to write :o( - scott

Several years have passed since the first Bluefish release. Since that time, the fish has gained a reputation as an excellent editor, with qualities like stability, usability and numerous features. Also, Bluefish is small and needs only GTK2 to function, making it usable even on slow machines.

Main Features of Bluefish

This list will give you an overview of the most important or outstanding features found in Bluefish.

  • A What You Write Is What You Get interface
  • Multiple document interface, will easily open 500+ documents (tested 3500 with documents simultaneously).
  • Customizable syntax highlighting based on Perl compatible regular expressions, with subpattern support. Default patterns are included for
    • C
    • cfml
    • ColdFusion
    • Gettext po
    • HTML
    • Java
    • Pascal
    • Perl
    • PHP
    • Python
    • R
    • XML
  • Anti-aliased text window
  • Multiple encodings support, can convert between different character sets, supports multibyte characters, unicode, UTF8 etc.
  • Nice wizards for startup, tables, frames, and others
  • Dialogs for many HTML tags, with all their attributes
  • HTML toolbar and tearable menus
  • User-customizable toolbar for quick access to often used functions
  • Open files based on filename patterns and/or content
  • Fully featured image insert dialog
  • Thumbnail creation and automatically linking of the thumbnail with the original image
  • Multi thumbnail generation for easy creation of photo albums or screenshot pages
  • Line numbers along the document
  • A custom menu, specify your own tags or sets of code, and define your own dialogs
  • Custom search and replace pattern support for the Custom menu
  • Very powerful search and replace, allowing POSIX and Perl Compatible regular expressions and sub-pattern replacing
  • Excellent undo/redo functionality
  • Configurable recent documents and recent directories functionality
  • Translations in da fr es it hu pl no ru sv
  • User customizable integration with many programs, including weblint, tidy, make, javac etc.
  • XML based function reference. Currently, references are included for HTML and PHP. A GTK reference is available, and support for Perl and Python will be added. You may also create your own function reference. The XML format is described later in the manual.

As Bluefish is a part of a larger desktop enviroment, we've focused on making the GUI consistent with the Gnome HIG [2] . However, we prefer not following it in every detail, as some parts are intended for the end user , while Bluefish is for the programmer .

Some features from v0.7 (GTK1) are not yet implemented. The main missing piece is project management, which will be implemented before v1.0. If you depend on this feature, v0.7 may still be the version of choice.

How Stable is Bluefish?

Quite stable! The Bluefish developers aim to produce code that neither crashes nor leaks memory. Of course, that's not always easy to do. Leaks and crashes are often fixed in CVS as soon as they're discovered and hunted down. In addition to Bluefish's large userbase, the developers use Bluefish for their daily work. So, fixing bugs and preventing crashes is always a major priority. However, some nags still exist. One example being the issue of slightly sluggish copy/paste functions.

For an updated list of open bugs, please visit the todo-list on the Bluefish WiKi, at http://bfwiki.tellefsen.net/?pagename=ToDoList .

We appreciate any and all contributions! Please tell us if Bluefish crashes on you :-).

Contact Us

We, the Bluefish development team, welcome all comments, user requests, constructive criticisms, and contributions. Are you curious or seeking information regarding Bluefish? Would you like to contribute by translating Bluefish or its manual? Here are your options:

  • http://bluefish.openoffice.nl/ - The main website where you'll find news, updates and more information.
  • http://bfwiki.tellefsen.net/ - The Bluefish WiKi is the notebook for the developers, containing a lot of information. This includes, but is not limited to: updated project roadmaps, status of translations, feature requests, and open bugs.
  • You can subscribe to the Bluefish mailinglist by sending an email containing “ subscribe bluefish-dev ” to .
  • Do you want to help translate Bluefish? Please let us know by dropping an email to Walter Echarri , our friendly translation maintainer.
  • If you've got a general question, you can also drop an email to .


[1] What You See Is What You Get

[2] GNOME Human Interface Guidelines, accessible at http://developer.gnome.org/projects/gup/hig/