@subsection Emacs Terminal Emulator
@findex term
- To run a subshell in a terminal emulator, use @kbd{M-x term}. This
-creates (or reuses) a buffer named @file{*terminal*}, and runs a
+ To run a subshell in a text terminal emulator, use @kbd{M-x term}.
+This creates (or reuses) a buffer named @file{*terminal*}, and runs a
subshell with input coming from your keyboard, and output going to
that buffer.
+@cindex line mode @r{(terminal emulator)}
+@cindex char mode @r{(terminal emulator)}
The terminal emulator uses Term mode, which has two input modes. In
-line mode, Term basically acts like Shell mode (@pxref{Shell Mode}).
-
- In char mode, each character is sent directly to the subshell, as
-``terminal input''. Any ``echoing'' of your input is the
-responsibility of the subshell. The sole exception is the terminal
-escape character, which by default is @kbd{C-c} (@pxref{Term Mode}).
-Any ``terminal output'' from the subshell goes into the buffer,
-advancing point.
+@dfn{line mode}, Term basically acts like Shell mode (@pxref{Shell
+Mode}). In @dfn{char mode}, each character is sent directly to the
+subshell, as terminal input; the sole exception is the terminal escape
+character, which by default is @kbd{C-c} (@pxref{Term Mode}). Any
+echoing of your input is the responsibility of the subshell; any
+terminal output from the subshell goes into the buffer, advancing
+point.
Some programs (such as Emacs itself) need to control the appearance
-on the terminal screen in detail. They do this by sending special
-control codes. The exact control codes needed vary from terminal to
-terminal, but nowadays most terminals and terminal emulators
-(including @code{xterm}) understand the ANSI-standard (VT100-style)
-escape sequences. Term mode recognizes these escape sequences, and
-handles each one appropriately, changing the buffer so that the
-appearance of the window matches what it would be on a real terminal.
-You can actually run Emacs inside an Emacs Term window.
+of the terminal screen in detail. They do this by emitting special
+control codes. Term mode recognizes and handles ANSI-standard
+VT100-style escape sequences, which are accepted by most modern
+terminals, including @command{xterm}. (Hence, you can actually run
+Emacs inside an Emacs Term window.)
+
+ The @code{term-face} face specifies the default appearance of text
+in the terminal emulator (the default is the same appearance as the
+@code{default} face). When terminal control codes are used to change
+the appearance of text, these are represented in the terminal emulator
+by the faces @code{term-color-black}, @code{term-color-red},
+@code{term-color-green}, @code{term-color-yellow}
+@code{term-color-blue}, @code{term-color-magenta},
+@code{term-color-cyan}, @code{term-color-white},
+@code{term-color-underline}, and @code{term-color-bold}.
+@xref{Faces}.
You can also Term mode to communicate with a device connected to a
serial port. @xref{Serial Terminal}.
directory is. This is done automatically by @code{bash} version 1.15
and later.
+
+
+
@node Term Mode
@subsection Term Mode
@cindex Term mode