Leafpad

Leafpad is a free and open-source graphical text editor for Linux, Berkeley Software Distribution (BSD), and Maemo that is similar to the Microsoft Windows program Notepad. Created with the focus of being a lightweight text editor with minimal dependencies, it is designed to be simple-to-use and easy-to-compile.

Leafpad has a small install size compared to other graphical text editors and has minimal features such as codeset options, undo/redo, and the ability to choose fonts. Leafpad is the default text editor for the LXDE lightweight desktop environment, and thus Leafpad is found on Linux distributions that use LXDE as their desktop environment such as Raspberry Pi OS, as well as on some embedded systems. The program has been forked into Mousepad and l3afpad, and parts of Leafpad's code have been used in other text editors. Leafpad is released under the GNU General Public License (GPL) version 2.

History
Leafpad was created by Tarot Osuji, who remains its only author and maintainer. The first published version of Leafpad was version 0.5.x in 2004. The first full release to the public was version 0.7.6 on November 11, 2004. Leafpad has not received an update since December 2010 with the release of version 0.8.18.1. Though it is part of the LXDE desktop package, it is not maintained by the LXDE development team.

When first released, Leafpad had no printing capabilities. This led to members of the Xfce team creating a fork of Leafpad called Mousepad, specifically to address the lack of printing support. The ability to print was later added to Leafpad in 2005, with further improvements to the printing capabilities in 2006 and 2007.

Language translations for Leafpad were provided through TranslationProject.org, a translation project dedicated to providing language translation for open-source software. In 2020, the translation listing for Leafpad was removed from their database.

Features
Leafpad has a small footprint compared to other graphical text editors such as gedit or Kate. It is similar in visuals and functionality to the Microsoft Windows program Notepad. Depending on the architecture of the computer installed on, the program takes up between 417 kB and 486 kB on Debian after installation, with 457 kB being the installed size on an i386 computer, compared to 5,462 kB for the text editor Kate. On Arch Linux, Leafpad's size after installation is only 301 kB.

Specific software features include a codeset option, auto codeset detection, an unlimited undo/redo feature, and drag and drop capabilities. Fonts can be chosen from among the operating system's available computer fonts, and keybindings can be used for many features such as saving a file and printing. Leafpad is available in 42 languages.

Although Leafpad cannot open multiple files at once, it is possible to open several instances of the program to have open more than one file at a time. According to Leafpad's man page, Leafpad can be launched from the terminal in a leafpad options filename format with several options including the ability to open a file with a specific codeset, specification of display and screen types, and tab width selections. The background color of the application window can be changed via a configuration file.

Usage
As part of the LXDE desktop environment, Leafpad is pre-installed as the default graphical text editor on Linux distributions that use LXDE, such as Knoppix, Trisquel Mini, and Raspberry Pi OS (formerly Raspbian). It is included in default installations of Bodhi Linux, the Kali Linux digital forensics distribution, and is pre-installed on Ångström, a specialty Linux distribution for embedded systems such as the BeagleBone single-board computer, which uses Leafpad as its text editor. Leafpad was the default graphical text editor for Lubuntu up to version 18.04 LTS. After Lubuntu moved from the LXDE to the LXQt desktop, Leafpad was replaced by FeatherPad.

In addition to being installed by default on some Linux distributions, Leafpad can also be manually compiled for Linux, BSD, and Maemo or can be installed via the software repositories of many Linux distributions including Arch Linux and Fedora. Leafpad can be installed on macOS via MacPorts, or on Microsoft Windows via Cygwin.

Forks
Mousepad, which is a text editor for the Xfce desktop environment, was originally written as a fork of Leafpad due to an issue Leafpad had with printing, an issue which Leafpad later fixed. Mousepad was rewritten in December 2012 with version 0.3.0, which replaced the original Leafpad-based code with a complete rewrite. Another graphical text editor called l3afpad was created as a fork of Leafpad that is written in GTK3 instead of GTK2. Some parts of the Qt-based text editor FeatherPad were taken from Leafpad's code.

Architecture
Leafpad has been pre-compiled for Linux repositories to run on several types of computer architectures including x86, amd64, RISC-V, PowerPC (including ppc64), and various ARM and MIPS architectures.

Compiling Leafpad requires only one dependency: GTK+ with a version higher than 2.0.0. There are two optional dependencies that are part of the GNOME library and require a version higher than 2.2.0: libgnomeprint, which allows Leafpad to access printing functions, and libgnomeprintui, which is the package for the printing user interface. Installation on some Linux distributions may require additional dependencies based on the distribution's configuration.

Reception
A LinuxInsider review focused on the simplicity of Leafpad, saying that it leaves a small footprint on a system's resources, making it a good choice for compact Linux distributions. The review further highlighted some of the features of Leafpad, and noted its inability to open more than one file at a time, but pointed out that multiple instances of Leafpad could be open at once to work on multiple text files at a time. The review concluded by praising the print preview option of Leafpad as a good WYSIWYG representation of the final printout.

A MakeTechEasier.com review noted that Leafpad was a lightweight alternative to the text editor Gedit, and said that Leafpad's simplicity was both an advantage for people seeking a simple text editor, and a disadvantage for those seeking additional features or functionality.

An article by Admin Magazine comparing various text editors also focused on the lightweight nature of Leafpad.

A review by DebugPoint.com called it an "ideal replacement" for the Windows program Notepad. The review called Leafpad's simplicity a feature in itself, and noted the lack of ongoing development for the software, stating that to keep the program lightweight further development was not needed.

In a review of programming resources for the Raspberry Pi, Electromaker.io called Leafpad "the best text editor for the Raspberry Pi" and called it a solid resource for editing Python.