25852
|
1 .TH EMACSTOOL 1
|
|
2 .SH NAME
|
|
3 .I emacstool
|
|
4 \- run emacs under Sun windows with function-key and mouse support.
|
|
5 .SH SYNOPSIS
|
|
6 .I emacstool
|
|
7 [{window_args} {-rc run_command_path} args ... ]
|
|
8 .SH TYPICAL USAGE
|
|
9 In ~/.suntools or ~/.rootmenu include a line like this:
|
|
10 .br
|
|
11 "Emacstool" emacstool -WI emacs.icon -f emacstool-init
|
|
12 .SH DESCRIPTION
|
|
13 .B Emacstool
|
|
14 creates a SunView frame and a tty subwindow within which mouse events
|
|
15 and function keys are translated to ASCII sequences which Emacs can
|
|
16 parse. The translated input events are sent to the process running in
|
|
17 the tty subwindow, which is typically GNU Emacs. Emacstool thereby
|
|
18 allows GNU Emacs users to make full use of the mouse and function keys.
|
|
19 GNU Emacs can be loaded with functions to interpret the mouse and
|
|
20 function-key events to make a truly fine screen oriented editor for
|
|
21 the Sun Workstation.
|
|
22 .PP
|
|
23 (Note that GNU Emacs has a special interface to the X window system as
|
|
24 well. The X window system has many technical advantages, it is an
|
|
25 industry standard, and it is also free software. The Free Software
|
|
26 Foundation urges you to try X windows, and distributes a free copy of
|
|
27 X on Emacs distribution tapes.)
|
|
28 .PP
|
|
29 Function keys are translated to a sequence of the form
|
|
30 `^X*[a-o][lrt]'. The last character is `l', `r', or `t' corresponding
|
|
31 to whether the key is among the Left, Right, or Top function keys.
|
|
32 The third character indicates which button of the group
|
|
33 was pressed. Thus, the function key in the lower right corner will
|
|
34 transmit the sequence `^X*or'. In addition, the [lrt] is affected by
|
|
35 the Control, Meta, and Shift keys. Unshifted Control keys will be
|
|
36 non-alphabetic: C-l is [,], C-r is [2], C-t is [4].
|
|
37 .PP
|
|
38 Mouse buttons are encoded as `^X^@([124] x y)\\n'. ^X^@ is the
|
|
39 standard GNU Emacs mouse event prefix, it is followed by a list
|
|
40 indicating the button pressed and the character row and column of the
|
|
41 point in the window where the mouse cursor is, and followed by a
|
|
42 newline character. In GNU Emacs, the ^X^@ dispatches to a
|
|
43 mouse event handler which then reads the following list.
|
|
44 .SH OPTIONS
|
|
45 .B Emacstool
|
|
46 supports all the standard window arguments, including font and icon
|
|
47 specifiers.
|
|
48 .PP
|
|
49 By default, Emacstool runs the program
|
|
50 .I emacs
|
|
51 in the created subwindow.
|
|
52 The value of the environment variable
|
|
53 .I EMACSTOOL
|
|
54 can be used to override this if your version of
|
|
55 .B Emacs
|
|
56 is not accessible on your search path by the name
|
|
57 .I Emacs.
|
|
58 In addition, the run command can be set by the
|
|
59 .I pathname
|
|
60 following the last occurrence of the
|
|
61 .I \-rc
|
|
62 flag.
|
|
63 This is convenient for using Emacstool to run on remote machines.
|
|
64 .PP
|
|
65 All other command line arguments not used by the window system are passed
|
|
66 as arguments to the program that runs in the Emacstool window.
|
|
67 .PP
|
|
68 For example:
|
|
69 .PP
|
|
70 local% (emacstool -rc rlogin remote -8 &)&
|
|
71 .PP
|
|
72 will create an Emacstool window logged in to a machine named
|
|
73 .I remote.
|
|
74 If Emacs is run from this window,
|
|
75 Emacstool will encode mouse and function keys, and send them to rlogin.
|
|
76 If Emacs is run from this shell on the remote machine, it will see
|
|
77 the mouse and function keys properly.
|
|
78 However, since the remote host does not have access to the screen,
|
|
79 the cursor cannot be changed, menus will not appear, and the selection
|
|
80 buffer (STUFF) is limited.
|
|
81 .SH Using With GNU Emacs:
|
|
82 The GNU Emacs files
|
|
83 lisp/term/sun.el,
|
|
84 lisp/sun-mouse.el,
|
|
85 lisp/sun-fns.el,
|
|
86 and
|
|
87 src/sunfns.c
|
|
88 provide emacs support for the Emacstool and function keys.
|
|
89 Emacstool will automatically set the TERM environment variable to be "sun"
|
|
90 and unset the environment variable TERMCAP. That is, these variables will
|
|
91 not be inherited from the shell that starts Emacstool.
|
|
92 Since the terminal type is
|
|
93 .I SUN
|
|
94 (that is, the environment variable TERM is set to
|
|
95 .I SUN),
|
|
96 Emacs will automatically load the file lisp/term/sun.
|
|
97 This, in turn, will ensure that sun-mouse.el is autoloaded when any mouse
|
|
98 events are detected. It is suggested that
|
|
99 .I sun-mouse
|
|
100 and
|
|
101 .I sun-fns
|
|
102 be loaded in your site-init.el file, so that they will always be loaded
|
|
103 when running on a Sun workstation.
|
|
104 .PP
|
|
105 In addition, Emacstool sets the environment variable IN_EMACSTOOL = "t".
|
|
106 Lisp code in your ~/.emacs can use (getenv "IN_EMACSTOOL")
|
|
107 to determine whether to do Emacstool specific initialization.
|
|
108 Sun.el uses this to automatically call emacstool-init (getenv "IN_EMACSTOOL")
|
|
109 is defined.
|
|
110 .PP
|
|
111 The file src/sunfns.c defines several useful functions for emacs on
|
|
112 the Sun. Among these are procedures to pop-up SunView
|
|
113 .I menus,
|
|
114 put and get from the SunView
|
|
115 .I STUFF
|
|
116 buffer, and a procedure for changing the cursor
|
|
117 .I icon.
|
|
118 If you want to define or edit cursor icons,
|
|
119 there is a rudimentary mouse driven icon editor in the file
|
|
120 lisp/sun-cursors.el. Try invoking (sc:edit-cursor)
|
|
121 .SH BUGS
|
|
122 It takes a few milliseconds to create a menu before it pops up.
|
|
123 .SH ENVIRONMENT VARIABLES
|
|
124 EMACSTOOL
|
|
125 IN_EMACSTOOL
|
|
126 TERM
|
|
127 TERMCAP
|
|
128 .SH FILES
|
|
129 .DT
|
|
130 emacs
|
|
131 .SH "SEE ALSO"
|
|
132 emacs(1)
|
|
133 .../etc/SUN-SUPPORT
|
|
134 .../lisp/term/sun.el
|
37512
|
135 .SH COPYING
|
|
136 Copyright
|
|
137 .if t \(co
|
|
138 .if n (c)
|
|
139 2001 Free Software Foundation, Inc.
|
|
140 .PP
|
41399
|
141 Permission is granted to make and distribute verbatim copies of this
|
|
142 document provided the copyright notice and this permission notice are
|
|
143 preserved on all copies.
|
37512
|
144 .PP
|
41399
|
145 Permission is granted to copy and distribute modified versions of
|
|
146 this document under the conditions for verbatim copying, provided that
|
|
147 the entire resulting derived work is distributed under the terms of
|
|
148 a permission notice identical to this one.
|
|
149 .PP
|
|
150 Permission is granted to copy and distribute translations of this
|
|
151 document into another language, under the above conditions for
|
|
152 modified versions, except that this permission notice may be stated
|
|
153 in a translation approved by the Free Software Foundation.
|
89909
|
154
|
|
155 .\" arch-tag: a1f44815-5163-4026-89c1-4404e4b81d37
|