GNU Emacs is an open-source text editor which has been developed as part of the GNU project. The most salient feature of GNU Emacs is the extensible and customizable editing capability, where users can write extensions in Emacs Lisp language, which in turn are run by its built-in Lisp interpreter. Out of box, GNU Emacs already provides a powerful, feature-rich editing environment, featuring support for user-defined keyboard macros, integrated command documentation, unicode support, multi-modes (shell, sql, DocView, wiki), syntax highlighting, integration with many third-party tools such as system tools, compilers, debuggers, email clients, browsers, chat programs, and much more.