Initial Commit
[packages] / xemacs-packages / eterm / README.term
1 This new term-mode is a merge of the comint shell mode with a
2 ANSI-compatible terminal-emulator.
3
4 If you're using emacs-19.23 (or newer) or xemacs-19.11 (or newer),
5 and only want the terminal-emulator itself, just load the file
6 term.el.  (You probably want to byte-compile it first, especially
7 if you have a slow machine.)
8
9 To start term do M-x term RETURN.
10
11 Compared to terminal.el:
12 * Uses standard ANSI (vt102) escape sequences.
13 * High-lighting (inverse video, underline, bold, ansi colors) are supported.
14 * Fully integrated into shell mode.
15 * Can switch back and forth between character mode (acts like xterm)
16   and line mode (acts like old shell mode).
17 * Tab and line breaks are stored in buffer (so cut and paste will get
18   the correct tabs and line breaks), but terminal motion uses the
19   "visible" layout of the screen (and display programs can assume
20   tab, cr and lf work as on plain terminal).
21
22 In character ("raw") sub-mode:
23 Each character type is sent to the inferior process, except for C-c.
24 C-c C-c Send a C-c to the inferior.
25 C-c C-j Enter line sub-mode
26 C-c OTHER Same as cooked C-x map
27 Can use bash line editing, filename completion, and history.
28 Can run emacs in an emacs window! (bash users first do: export -n DISPLAY)
29
30 In line ("cooked") mode:
31 Like traditional shell mode
32 C-c C-k Enter character sub-mode
33
34 Either character or line sub-mode:
35 C-c C-q Toggle pager sub-mode (enable or disable)
36 The "pager" provides functionality similar to the "more" program:
37 Whenever a screenful has been received, emacs stops reading from
38 the process until you type the appropriate key.  (The key 'h' provides help.)
39 The pager is smart enough that you can leave it on,  even while
40 running full-screen interactive programs inside a shell window.
41 (The pager does not work under xemacs 19.11.)
42
43 The file tshell.el is a preliminary replacement for shell mode.
44 After loading it, you invoke it with M-x tshell RET.
45 This needs a little work, and is not recommended.  It differs from
46 term-mode in that it starts in line mode, and it performs directory
47 tracking.  Such directory tracking cannot be made reliable.
48 It you're running bash, it is better to just use term-mode and have
49 bash tell term the current directory.  You can do that by adding
50 the following to your ~/.bashrc:
51
52         if [ "$TERM" = "eterm" ]; then
53           PROMPT_COMMAND='echo "\1a/${PWD}"'
54         fi
55
56 The file tgud.el is a preliminary replacement for gud.el, including
57 gdb-mode.  After loading it, invoke "tgdb-mode" with M-x tgdb RET.
58
59 An alternative is to run gdb from term (or tshell) mode.
60 Just start gdb with the --fullname flag.  This will cause gdb to
61 ask emacs to display proper source frame on break-points -
62 even over a telnet/rlogin link!  You would not be able to use the
63 gud-specific commands, but you can use gdb/readline line editing.
64
65 If you're using terminfo, copy the e directory (itself, not just
66 the files in it) into the emacs 'etc' directory (as given by
67 ESC ESC data-directory RET), so you have ..../etc/e/eterm.
68 (Your system uses terminfo if ESC ESC (boundp 'system-uses-terminfo) RET
69 return t.)  If you can't do that, replace the word "data-directory"
70 in term.el by a string naming this directory.
71
72 The file TODO.term notes ideas for improvements.
73
74 The file term.texi contain some notes that one day may become part
75 of a manual.
76
77 Term.el will be in the next emacs release from the FSF.
78 It will also probably be in the next xemacs release.
79 The comint-based shell.el and gud.el will be replaced later.
80 Telnet.el can then be junked.
81 Long-term, term.el will replace comint.el, but can co-exist with it.
82
83 Comments and bug fixes should be sent to Per Bothner (bothner@cygnus.com).
84 Note that I'm new to emacs hacking, so improvements are very welcome.