A Tour on Emacs - (Part 1)

venami's Avatar author of A Tour on Emacs - (Part 1)
This is an article on A Tour on Emacs - (Part 1) in Unix.


Everyone of us might have come across a lot of text editors each of them having their own special features and style. GNU Emacs, apart from being a text editor, is a wonderful software which makes us believe it to be a mini operating system. Like other softwares, Emacs is extensible, customizable, self editing and a real time editor.

History of Emacs

Emacs was developed by Richard M Stallman, the founder of GNU Project. Being impressed by the "E" editor's WYSIWYG feature, he started improving the "TECO" editor's functionality. Soon TECO became popular and so a large number of macros were developed to be used with TECO. The names of the macros ended with either "MAC" or "MACS" meaning macro(s). This functionality was improved which enabled users to document and extend their own new macros to the existing software. This final software was named "Emacs" by Richard M Stallman which is expanded as "Editing MACroS" or "E with MACroS". Emacs is written in C and provides "Emacs Lisp"(implemented in C) as an extension language. GNU Emacs became the first program released by GNU Project.

Features of Emacs

Text formatter

The operations with Emacs are done with commands, which are a combination of keys. Emacs uses a large buffer which stores the intermediate data that is typed until a file is saved. This makes it possible to version the files. Apart from the ordinary text-editing functionalities, this editor enables syntax-highlighting/syntax-coloring for the source code and HTML. For most of the programming languages, Emacs auto-intends the source code for more readability. It has Unicode support for almost all the human languages and their scripts. It also supports text processing language "latex" using which mathematical formulas, symbols, etc. can be displayed.

Project Planner

The "Org-mode" of Emacs enables users to create NOTES and TODO lists and for doing project planning, using the fast plain-text system.

News and Email Reader

Emacs enables users to read News, e-Mail and RSS feeds using the extension named "Gnus".

Command Interpreter

Like a shell, emacs has "e-shell" where users can execute any OS commands and execute other programs.


The gdb extension of Emacs allows users to easily debug their code.

Other features

  • More than one file can be opened in a single Emacs window which enables the users to view all the files at the same time.
  • By doing so, the contents of the files can be compared easily using the "ediff" extension.
  • Emacs gives a text-based view of the file system, where users can navigate through directories. Since it is a text-based view, the files/directories can be renamed easily.
  • Emacs uses SSH to connect and open/edit the files present in remote servers.
  • It also supports entertainment features like games, audio and video. There are few games that come along with the software. The audio and video contents are played using EMMS.
  • Emacs allows users to create and edit bitmap images, do image formatting like cropping, changing colors, changing effects, etc. using "ImageMagick".
Apart from the above features, users can customize the software by adding their own extensions. With all these features, I would say that Emacs is, more or less, an operating system .
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
Nominate this article for Article of the month - Nov 2009
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
Vote this article for Article of the month - November 2009
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
Winner of Article of the month - November 2009.