Parent page: Programming Applications
Emacs is the extensible, customizable, self-documenting real-time display editor. It is very powerful, yet idiosyncratic; to use it we advise following its own tutorial, and after the tutorial one should use its effective help system, learning gradually. One can access the tutorial via the menu (Help → Emacs Tutorial) or via the keyboard shortcut C-h t (that is: type Control-h, then release both keys and type 't').
Emacs 24.5 (released on April 10, 2015) is readily available in the Ubuntu repositories for Ubuntu 16.04 (Xenial). Simply install the emacs package. Emacs 25.1 was released on September 17, 2016 with many additional features, but isn't readily available in the Ubuntu 16.04 repositories. To install the latest Emacs 25.1, I downloaded and compiled the source archive. It was quick and easy, but if you want a trivial installation then simply install the ready-made Ubuntu package for Emacs 24.5.
Emacs Lisp packages Directory
The directory ~/.emacs.d/ is the location for additional per-user Emacs-specific files written in the Emacs Lisp programming language. Since it is located in the home directory (~/), it is unique for each user, just like the ~/.emacs init file.
Starting with Emacs 22, if the startup configuration file ~/.emacs does not exist, Emacs will try ~/.emacs.d/init.el and ~/.emacs.d/init.elc. The user independent startup file for all Emacs flavors (Emacs 19, Emacs 20, XEmacs) will load /etc/emacs/site-start.el.
The Emacs Wiki is a community website which collects Elisp code, questions and answers related to Elisp code and style; introductions to Elisp packages and links to their sources; complete manuals or documentation fragments; comments on features, differences, and history of different Emacs versions, flavors, and ports; jokes; pointers to Emacs clones and lookalikes, as well as references to other Emacs related information on the Web.
If one wants the text-based user interface
If one launches Emacs via the graphical launcher then it will choose its default GUI mode. To see what its TUI (text-based user interface) looks like, one can execute emacs -nw in a console, terminal or terminal emulator. If there isn't a graphical window system – for example if one executes Emacs remotely over SSH – then the emacs command will choose the TUI by default. Note that instead of executing Emacs on the remote computer over SSH, you can also execute Emacs locally and use the local Emacs to access the remote files. This provides two advantages: having the GUI and forgoing the need to have Emacs installed in the remote end.