1. Home
  2. Tutorials
  3. Linux Text Editors
Yolinux.com Linux logo

Linux Text Editors:

Linux has a plethora of text editors available for simple text, structured text (eg. XML, HTML) and programming languages. The most popular are listed below and almost all are available for a multitude of other operating systems.

Free Information Technology Magazines and Document Downloads
TradePub link image

Linux Editors for Plain Text:

Linux editors for plain text can be divided into two categories, graphical GUI editors and console text editors. The advantage of the GUI editor is intuitive user friendly interface while the benefit of the console text editor is the suitability over long distance network connections which may or may not provide suitable bandwidth or reliability which would both be required by the GUI editors for remote operation.

Console Based Editors:
emacs: This console based plain text editor supports the theory that more is better. It tries to support every feature possible.
Also see the YoLinux.com emacs/xemacs tutorial.

gnu.org: emacs

jed: This console based plain text editor supports menus and other GUI features in a console based terminal. Targeted to software development. Text based but with some GUI menu features (accessible via esc+M). Feature rich including a unicode mode.
Ubuntu Install: sudo apt-get install jed


nano: This is a GNU.org clone of Pico.


pico: This console based plain text editor operates with the simplicity of a GUI editor making it a favorite with Linux beginners. Pico comes with the Pine email client.

Pine/Pico home

vim: This console based plain text editor supports syntax highlighting and numerous plug-ins for specialized configurations and features. This editor is ubiquitous and available on all Linux systems and is the "standard" Linux editor. While it is not intuitive and has a learning curve, it is worth learning if Linux is part of your career or future.
Also see the YoLinux.com vim tutorial.


Graphical GUI Editors:
gedit: This is the default text editor for the Linux Gnome desktop. It supports syntax highlighting, printing, a variety of plug-ins, multi-language spell check, tabbed for multiple files, etc.

Gnome: gEdit

gvim: This an attempt to provide a GUI editor based on the vim console editor. While it provides many of the features offered by a GUI text editor, it will still require knowledge of vim to stay out of trouble.


NEdit: This is one of the original Unix GUI editors programmed in Motif. It is your basic intuitive and easy to use GUI editor.


Tea: Qt based GUI editor. Syntax highlighting, cross platform, plain text, programming language support, regular expression search and replace, file manager, ridiculously comprehensive, almost an IDE. GPL3
Ubuntu Install: sudo apt-get install tea

Sourceforge.com: Tea

Sublime: Commercial GUI editor. Syntax highlighting, cross platform, plain text, C++ and Python language support


Structured Text editors:

Structured text refers to logically formatted and/or annotated text to represent a data schema or programmatic function.

Two common formats available today are HTML for web markup of text documents and XML for data representation.

HTML Editors:
Kompozer:Easy to use WYSIWYG GUI HTML editor. Loads of features. Was renamed from "nvu".


Amaya: Basic intuitive and easy to use WYSIWYG GUI HTML editor. Needs more features to be considered complete.


Bluefish: GUI HTML text editor which also supports XML markup and even programming languages.

OpenOffice: Bluefish

ScreenshotsQuanta: GUI HTML editor which also supports programming languages (PHP, SQL, Python, Perl, ....
Open source and commercial versions available:

Aptana: GUI HTML editor which also supports CSS, PHP, Ruby on Rails and Javascript (including debugging). Cross platform, Eclipse (stand alone or plug-in)/Java based editor.


VideoCoffeeCup: Commercial HTML editor. Built-in validation. Supports HTML 5 and CSS3.


My favorite: Kompozer

XML Editors:
screenshotsKXML Editor: Easy to use GUI XML editor. I like it for error checking of XML files.


product videos

Oxygen XML: Commercial cross platform Java GUI XML / XSLT / XSD / DTD stand-alone or Eclipse plug-in editor. I've used it and found it to be a very capable editor with clear validation warning and error messages.


Eclipse: Cross platform Java IDE supports XML / XSLT / XSD / DTD. A very capable editor but not very good at verification of XML and XSD.


Eclipse structured text support for markup languages: CSS, DTD, HTML, JSP, XML, XSD

Conglomerate XML: XML / DocBook editor.


Vim Plug-ins: The Linux Vim editor MatchIt or xmledit plug-in can extend the "%" key to match XML/XHTML tags.

Vim matchit plug-in
Vim xmledit plug-in

Also see Vim as XML Editor

Emacs nXML mode: nXML mode allows a schema to be associated with the XML document being edited. Supports continuous validation. Emacs 21 and later.

nXML mode

My favorite: OxygenXML
Favorite FOSS: KXML

Linux Editors for Computer Language Programming:

This most often refers to Integrated Development Environments (IDE) for programming.


Bookmark and Share