Bluefish was started by Olivier Sessink, Chris Mazuc and Neil Millar in 1998 all being frustrated by the lack of decent web development editors for Linux. It's editor design with syntax scanning was inspired by NEdit which was available for Linux at the time, but the user interface was inspired by Homesite which was only available for Windows. It was shortly called Thtml editor and Prosite and shortly after the name Bluefish was chosen after a logo was proposed by Neil Millar. Since version 1.0, the original logo was replaced with a new, more polished one. Gradually the editor because more generic supporting most popular programming languages and adding many standard IDE features.
Because Robin Millar (who worked for the Open Source Technology Group) was an enthousiast Bluefish user it became one of the first projects on Sourceforce. More facilities where provided by heavy users such as the mailinglist at ems.ru (archive), the download site at bennewitz.com and hosting at openoffice.nl. In 2000 the mailinglist eventually also moved to sourceforge. Bug tracking was originally at gnome bugzilla. When gnome moved to git the bugtracking moved also to sourceforge.
The 1.0 branch was started in 2005. The 1.0 released even featured on slashdot which was a big thing at the time. The 2.0 branch was started in 2010 and featured a completely new designed syntax scanning engine and was ported to gtk-2. The 2.2 branch was released in 2011 and was the first release to support gtk-3, but gtk-2 is still supported.
Bluefish 2.2.18 has much better CSS language support. The color editor now also supports hsl() and rgb() style colors. This Bluefish release also shows colors by just hovering the mouse over a color code. This version does also support the feature to dynamically change a shortcut key by hovering the mouse over a menu item and pressing a new shortcut key again. This feature was present in all gtk2 applications and has not been working for bluefish gtk3 builds until now. For Windows users the build has some important fixes, most important it can start external commands again such as preview in browser. This release removes the infobrowser from the build since it no longer compiles with new libxml versions. This plugin was already deprecated and disabled by default for years.
Bluefish 2.2.17 is a maintenance release that has only code cleanup fixes to comply better with modern compiler standards. It furthermore has fixes for a 64bit Windows build of Bluefish with Msys2. So there finally is an up to date Bluefish installer for windows again!
The windows build has a few remaining issues that need to be solved. The biggest issue is that starting external commands from within Bluefish does not yet work (such as a preview in browser, an external filter or just your favourite CI/CD pipeline). The other big issues is the character map plugin that is not yet included in the installer. If you want to help to improve Bluefish on windows, contact me at olivier(at)bluefish.openoffice.nl or join the community mailinglist.
Bluefish is 25 years old! Somewhere in 1999 the initial codebase that was called THTML and ProSite was renamed to "Bluefish".
Bluefish 2.2.16 is mostly a maintenance release, with new features for the bookmarks function. Bookmarks can now be generated from external commands such as ctags. The 2.2.16 code has a lot of small fixes and improvements for Mac OSX. The old built-in javascript beautifier has been removed, Bluefish now uses the jsbeautify from your system (if available). The word-wrap function has been fixed.
Bluefish 2.2.15 is a minor maintenance release. It has one new feature: it can highlight the indenting level with a vertical line, which is very useful during python programming and helps with a lot more programming languages. The 2.2.15 release fixes zencoding for python releases newer than 3.12. It adds a retry button when opening files from a remote location. It has a tiny performance improvement when scrolling. It fixes a bug in the bookmarks function and the visible indenting function that potentially could lead to a crash. The perl syntax detection has been greatly improved, and YAML syntax detection has been added. The code has several fixes to make it compile on modern Mac OSX releases and to make it compile with the clang compiler.
Bluefish 2.2.14 fixes three bugs that in certain situations could lead to a segfault. One bug when deleting backup files on close. The second bug when closing some of the dialogs in a flatpak distributed version of bluefish. The third bug when the CSS language file was loaded on a 32bit system. It furthermore fixes zencoding functionality with python3. It also adds an option to store the scope of the search dialog to the session or project (this was removed in 2.2.12 because of a bug-report). It furthermore improves the speed of the bookmarks code. The build infrastructure was also slightly modernised, intltool is no longer used. Bluefish now also has an official Flatpak package, available via Flathub.
Bluefish 2.2.13 is a very minor maintenance release, except for the CSS syntax support which is greatly improved. Next to that it improves a few user interface parts, and fixes some very minor bugs. It also has some minor improvements for the syntax highlighting in a few other languages, most notably python.
A nice article on hostingadvice.com about Bluefish being a powerful open source code editor.
Bluefish 2.2.11 is a minor maintenance release and minor feature release. The only exception to that is the python 3 compatibility which is a major change. If you compile Bluefish with python 3, you might experience new bugs. There are various minor changes as well. Double click selection has been improved (for example selecting a function name that has underscores), and is now configurable per language. Bluefish now has a feature to fill a line with spaces up to a mouse click, so you can start typing in any position on the screen (with a fixed width font). A crash when running very large replace actions on disk on many files has been fixed. Search and replace now ignores backup files by default. Cursor highlighting and line highlighting have been fixed for a rare bug. A small new feature has been added, to insert output from an external command in the current cursor position. Many language files have seen updates, most notably CSS, Python and HTML. A data loss bug - when an unknown encoding was selected - was fixed, the fallback is now to save as UTF-8. A bug when saving with unknown characters in the filename has also been fixed. Printing has been improved such as printing in landscape. Some small tweaks to the UI have been implemented. For example you can now search in files in the filebrowser (right click a directory). Search results can now be shown in the output pane. The current identifier can be selected using <shift><control><i>. Last there various fixes when Bluefish is run on top of Wayland.
The introduction of OSX High Sierra caused some incompatibilities. A new package is ready, based on the current development code base. It is available from https://www.bennewitz.com/bluefish/stable/binaries/macosx/Bluefish-2.2.10-2.dmg.
Bluefish 2.2.10 is a maintenance release. Various language files have been improved, most notably languages that include CSS. There are also various fixes for newer gtk versions and for gtk on wayland (which is now the default on Fedora Linux). A new feature in the 2.2.10 release is the possibility to import/export syntax color styles, included are styles for a light and a dark theme. Last there have been fixes for a few rare crashes.
Bluefish 2.2.9 is a maintenance release that most importantly fixes incompatibility with Gtk 3.20. Next to that some small dialogs have been improved, and some user interface parts have been polished.
Bluefish 2.2.8 is a bugfix release with some small improvements and more polishing on existing features. It fixes a few serious but rarely occurring bugs. Options defined in the language definition files are now translated. Various default settings have been improved, most notably the command to launch Firefox for preview. The looks on newer gtk versions have been restored. CSS can now be compressed and decompressed. The installers for Windows and OSX have improvements, and there have been some OSX and Windows specific fixes. Character encoding detection has been improved. Auto-completion for HTML attributes has been improved. The SASS style language has been added.
Bluefish 2.2.7 is mostly a bug fix release. It fixes rare crashes in the autocompletion, the filebrowser, the htmlbar plugin preferences, in file-load-cancel, and fixes a rare case of broken syntax highlighting after multiple search/replace actions. It furthermore displays better error/warning output when parsing language files. It also finally fixes javascript regex syntax highlighting. The loading of files with corrupt encoding or non-printable characters (such as binary files) has been improved, and project loading over sftp has been improved. Various HTML5 tags have been added, and HTML5 is the default now for php, cfml and other languages that can include html syntax. Saving and loading of UTF-16 encoded files was broken and has been fixed. Various languages have better syntax support, such as javascript, css, html, pascal/deplhi, and html has improved autocompletion. On OSX the charmap plugin is finally included, the keys for tab switching no longer confict with some keyboard layouts, and behavior at shutdown was improved. The upload/download feature has a new option to ignore backup files. The home/end keys now work better on wrapped tekst. And finally the search and replace dialog correctly shows the number of results when searching in files on disk.
Bluefish 2.2.6 is mostly a bug fix release. This release fixes a critical bug (segfault) in filebrowser that could be triggered if the root directory was set as basedir. It also has a fix for a specific CSS-in-HTML-tag highlighting issue that broke HTML highlighting. The filter code furthermore caused a segfault if the command did not exist. The Windows version finally supports open in running process. Next to these bugs many small issues have been resolved. Development checks are now only enabled if Bluefish is compiled from svn, not if compiled from tarball. Various language files have small improvements, most notably C, Javascript and CSS. Several translations have been updated. A corner case for a new document from a template that does not exist was fixed. The "open" submenu now opens SVG files from the filebrowser instead of inserting an image tag. The included cssmin and jsbeatify have been updated. A syntax scanning issue when replacing large chunks of text was fixed, he "Report bug" link was broken, a new "conditional" option to the language file that makes re-using certain blocks of language files easier was added, and error reporting in outputbox was improved. On OSX filebrowser icons and the "open file" dialog size have been improved.
Bluefish 2.2.5 is a minor bug fix release but has also quite some new features. The syntax scanning engine is faster after small changes to the text. The filebrowser is also much faster with less memory usage, with various fixes and new features. Projects now store the active document and active line numbers. Indenting is improved in auto-completion and the smart indenting. Bookmarks and paste special also have been improved. On OSX there are many improvements, such as Mavericks support, Retina display support, working system hotkeys, native input methods (Japanese, Chinese, etc.), opening files from the finder and Widget bindings on MacOSX are moved to Cmd+C|V|X|A and working. Furthermore almost all syntax highlighting has been improved, most notable jquery in javascript, HTML5, and HTML5 in PHP files. There are also many bug fixes, such as in wrap text on right margin, in the replace engine, the jsmin licence, the split lines feature, the auto-recovery and many obscure bugs. Last bluefish now has an appdata file.