Bluefish is a
free and open-source software
Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
advanced text editor with a variety of tools for programming and website development. It supports coding languages including
HTML
The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
,
XHTML
Extensible HyperText Markup Language (XHTML) is part of the family of XML markup languages. It mirrors or extends versions of the widely used HyperText Markup Language (HTML), the language in which Web pages are formulated.
While HTML, prior ...
,
CSS
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML (including XML dialects such as SVG, MathML or XHTML). CSS is a cornerstone t ...
,
XML
Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. ...
,
PHP
PHP is a General-purpose programming language, general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementati ...
,
C,
C++,
JavaScript
JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
,
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
,
Go,
Vala
Vala or VALA may refer to:
Religion and mythology
* Vala (Vedic), a demon or a stone cavern in the Hindu scriptures
* Völva, also spelled Vala, a priestess in Norse mythology and Norse paganism
Fiction
* Vala (Middle-earth), an angelic being in ...
,
Ada
Ada may refer to:
Places
Africa
* Ada Foah, a town in Ghana
* Ada (Ghana parliament constituency)
* Ada, Osun, a town in Nigeria
Asia
* Ada, Urmia, a village in West Azerbaijan Province, Iran
* Ada, Karaman, a village in Karaman Province, Tu ...
,
D,
SQL,
Perl
Perl is a family of two High-level programming language, high-level, General-purpose programming language, general-purpose, Interpreter (computing), interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it ...
,
ColdFusion
Adobe ColdFusion is a commercial rapid web-application development computing platform created by J. J. Allaire in 1995. (The programming language used with that platform is also commonly called ColdFusion, though is more accurately known as ...
,
JSP,
Python,
Ruby
A ruby is a pinkish red to blood-red colored gemstone, a variety of the mineral corundum (aluminium oxide). Ruby is one of the most popular traditional jewelry gems and is very durable. Other varieties of gem-quality corundum are called sapp ...
, and
shell
Shell may refer to:
Architecture and design
* Shell (structure), a thin structure
** Concrete shell, a thin shell of concrete, usually with no interior columns or exterior buttresses
** Thin-shell structure
Science Biology
* Seashell, a hard o ...
. It is available for many platforms, including
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
,
macOS
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
and
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
,
Bluefish installation instructions
/ref> and can be used via integration with GNOME or run as a stand-alone application. Designed as a compromise between plain text editors and full programming IDEs, Bluefish is lightweight, fast and easy to learn, while providing many IDE features. It has been translated into 17 languages.
Features
Bluefish's wizards can be used to assist in task completion. Its other features include syntax highlighting
Syntax highlighting is a feature of text editors that are used for programming, scripting, or markup languages, such as HTML. The feature displays text, especially source code, in different colours and fonts according to the category of terms. ...
, auto-completion
Autocomplete, or word completion, is a feature in which an application predicts the rest of a word a user is typing. In Android and iOS smartphones, this is called predictive text. In graphical user interfaces, users can typically press the tab ...
, code folding
Code or text folding, or less commonly holophrasting, is a feature of some graphical user interfaces that allows the user to selectively hide ("fold") or display ("unfold") parts of a document. This allows the user to manage large amounts of tex ...
, auto-recovery, upload/download functionality, a code-aware spell-checker, a Unicode character browser, code navigation, and bookmarks. It has a multiple document interface
A multiple-document interface (MDI) is a graphical user interface in which multiple windows reside under a single parent window. Such systems often allow child windows to embed other windows inside them as well, creating complex nested hierarchie ...
that can quickly load codebases or websites, and it has many tools search-and-replace tools that can be used with scripts and regular expressions. It can store the current states of projects to reopen them in that state. Zencoding/emmet is supported for web development.
Bluefish is extensible via plugins and scripts. Many scripts come preconfigured, including statical code analysis, and syntax and markup checks for many different markup and programming languages.
History
Bluefish was started by Chris Mazuc and Olivier Sessink in 1997 to facilitate web development professionals on Linux desktop platforms. Its development has been continued by a changing group of professional web developers under project organizer Olivier Sessink. It was originally called Thtml editor, which was considered too cryptic; then Prosite, which was abandoned to avoid clashes with web-development companies already using that name. The name Bluefish was chosen after a logo (a child's drawing of a blue fish) was proposed on its mailing list. Since version 1.0, the original logo was replaced with a new, more polished one.
Source code and development
Bluefish is written in C and uses the cross-platform GTK
GTK (formerly GIMP ToolKit and GTK+) is a free and open-source cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both free and prop ...
library for its GUI widget
A graphical widget (also graphical control element or control) in a graphical user interface is an element of interaction, such as a button or a scroll bar. Controls are software components that a computer user interacts with through di ...
s. Markup and programming language support is defined in XML files. Bluefish has a plugin API in C, but it has been used mainly to separate non-maintained parts (such as the infobrowser-plugin) from maintained parts. A few Python plugins exist as well, but they need a C plugin to interact with the main program. Bluefish also supports very loosely coupled plugins: external scripts that read standard input
In computer programming, standard streams are interconnected input and output communication channels between a computer program and its environment when it begins execution. The three input/output (I/O) connections are called standard input (stdin ...
and return their results via standard output
In computer programming, standard streams are interconnected input and output communication channels between a computer program and its environment when it begins execution. The three input/output (I/O) connections are called standard input (stdin ...
can be configured by the user in the preferences panel. It uses autoconf/automake to configure and set up its build environment. Both llvm
LLVM is a set of compiler and toolchain technologies that can be used to develop a front end for any programming language and a back end for any instruction set architecture. LLVM is designed around a language-independent intermediate repre ...
and GCC can be used to compile Bluefish. On Windows, MinGW is used to build the binaries.
Reception
A Softpedia
Softpedia is a software and tech news website based in Romania. It indexes, reviews and hosts various downloadable software and reports news on technology and science topics.
Website
Softpedia hosts reviews written by its staff—each review in ...
review found the software powerful, feature-rich and easy to use.
See also
* Comparison of HTML editors
The following tables compare general and technical information for a number of HTML editors.
Please see the individual products' articles for further information, comparison of text editors
This article provides basic comparisons for notable te ...
* List of HTML editors
* List of PHP editors
* List of text editors
The following is a list of notable text editors.
Graphical and text user interface
The following editors can either be used with a graphical user interface or a text user interface.
Graphical user interface
Text user interface
Sys ...
References
External links
*
*
Bluefish: The Definitive Guide
Interview with main developer Olivier Sessink
{{FLOSS
Free integrated development environments
HTML editors
Free HTML editors
Web development software
Linux integrated development environments
Linux text editors
Software using the GPL license
Text editors that use GTK
MacOS text editors