Let the editor wars begin!
Well Armed
Leafpad
No one says that a GUI editor has to have lots of features. It can be very lightweight and simple, which is exactly the focus of Leafpad [34], the default editor for the LXDE environment and Xubuntu 11.10 and 12.04. If you have used Raspbian on a Raspberry Pi, you probably have used Leafpad.
Leafpad (Figure 13), currently only runs on Linux. It is not feature rich because its focus is on ease of use, small size, and fast start-up. Its main features are:
- Codeset option
- Unlimited undo/redo
- Auto-/multiline indentation
- Drag and drop
- Printing
- Line numbering
I started using Leafpad on Raspbian with a Raspberry Pi 2, and I found it to be very useful and quite fast. I've been using it on my Linux laptop as well.
NEdit
The first GUI editor I used was NEdit (Nirvana Editor) [35] on SGI workstations running IRIX. It was originally developed at Fermilab, but the version today on Linux was developed as an independent open source project with the GNU GPL license. NEdit was built using the Motif toolkit, which was very popular when it was released.
I used NEdit on Linux for many years to write a great deal of both code and text. According to the Wikipedia article, development of NEdit stopped in 2010. With few updates since, the last release was version 5.6 in December 2014, which was 10 years after the release of the previous version.
NEdit (Figure 14) comes with many features, including bracket matching, syntax highlighting, line numbering (basically mandatory for a text editor), a very good search and replace function with which you can use regular expressions, macros, block selection of text (i.e. specified rows and columns), and my personal favorite, column cut/copy/paste capability. If you look around the web a bit, you will find lots of people who recommend it highly, but be aware that NEdit still relies on Motif, which is slowly giving way to more modern toolkits.
Notepad++ and Notepadqq
One of the most popular editors in the Windows world is Notepad++ [36]. As you can tell from the name, it is intended to be a much better version of Notepad, which has been very popular for editing code on Windows.
Notepad++ has split-screen editing, a tabbed document interface, a spell checker, syntax highlighting, code folding, brace matching, macros, and several other features common in editors. It supports a large number of languages for syntax highlighting, including Fortran (the true language of HPC kings), Matlab, Python, and Perl. People have been asking for Notepad++ on Linux for many years. The code is open source and uses the Scintilla editing component. However, it uses some pure Win32 and Standard Template Library (STL) functions, so it doesn't port easily to other platforms, although a few attempts have been made without any real success.
A Linux editor that is similar to Notepad++ is Notepadqq (Figure 15) [37], which is a pretty close Notepad++ work-alike for Linux. It includes syntax highlighting, code folding, support for many languages (>100), and extensions written in Node.js (JavaScript).
Buy this article as PDF
(incl. VAT)