Mercurial > emacs
view etc/emacstool.1 @ 51195:3cbf29813eea
(struct frame): Rename members height to text_lines,
width to text_cols, window_height to total_lines, window_width to
total_cols, new_height to new_text_lines, new_width to
new_text_cols. All uses changed.
(struct frame): New members which consolidate common members of
x_output, w32_output, and mac_output structures: left_pos,
top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
win_gravity, size_hint_flags, border_width, internal_border_width,
line_height, fringe_cols, left_fringe_width, right_fringe_width,
want_fullscreen. All uses changed.
(struct frame): New member column_width contaning the canonical
column width, analogue to line_height. All uses changed.
(struct frame): Rename members scroll_bar_pixel_width to
config_scroll_bar_width, and scroll_bar_cols to
config_scroll_bar_cols. All uses changed.
(struct frame): New member scroll_bar_actual_width which
consolidates and renames the vertical_scroll_bar_extra member of
x_output, w32_output, and mac_output structures. All uses changed.
(FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
from x/w32/macterm.h files. All uses changed. Also change code
which referred to f->output_data...->pixel_height.
(FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
from x/w32/macterm.h files. All uses changed. Also change code
which referred to f->output_data...->pixel_width.
(FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
Also change code which referred to f->height.
(FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
Also change code which referred to f->width.
(FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
to update new_text_lines and new_text_cols members directly.
(FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
(FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
FRAME_SCROLL_BAR_COLS. All uses changed.
(FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
(FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
(FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
(FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
(SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
(FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
(WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
(WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
(FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
return line_height member (it now has proper value also for
non-window frames).
(FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
return new column_width member (rather than the default font width).
(FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
(FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
from x/w32/macterm.h files. Unconditionally return corresponding
member of frame structure (they now have proper values also for
non-window frames).
(FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
Calculate return value from left and right widths.
(FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
internal_border_width member (has proper value for non-window frame).
(FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
(FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
(FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
(FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
(FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
consolidated from xterm.h, macterm.h, and w32term.h.
(FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
consolidated from xterm.h, macterm.h, and w32term.h.
(FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
(FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
(FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
consolidated from x/mac/w32term.h.
(FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
consolidated from x/mac/w32term.h.
(FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
(FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Sat, 24 May 2003 21:58:07 +0000 |
parents | 3fbd6b1cb498 |
children | 695cf19ef79e d7ddb3e565de |
line wrap: on
line source
.TH EMACSTOOL 1 .SH NAME .I emacstool \- run emacs under Sun windows with function-key and mouse support. .SH SYNOPSIS .I emacstool [{window_args} {-rc run_command_path} args ... ] .SH TYPICAL USAGE In ~/.suntools or ~/.rootmenu include a line like this: .br "Emacstool" emacstool -WI emacs.icon -f emacstool-init .SH DESCRIPTION .B Emacstool creates a SunView frame and a tty subwindow within which mouse events and function keys are translated to ASCII sequences which Emacs can parse. The translated input events are sent to the process running in the tty subwindow, which is typically GNU Emacs. Emacstool thereby allows GNU Emacs users to make full use of the mouse and function keys. GNU Emacs can be loaded with functions to interpret the mouse and function-key events to make a truly fine screen oriented editor for the Sun Workstation. .PP (Note that GNU Emacs has a special interface to the X window system as well. The X window system has many technical advantages, it is an industry standard, and it is also free software. The Free Software Foundation urges you to try X windows, and distributes a free copy of X on Emacs distribution tapes.) .PP Function keys are translated to a sequence of the form `^X*[a-o][lrt]'. The last character is `l', `r', or `t' corresponding to whether the key is among the Left, Right, or Top function keys. The third character indicates which button of the group was pressed. Thus, the function key in the lower right corner will transmit the sequence `^X*or'. In addition, the [lrt] is affected by the Control, Meta, and Shift keys. Unshifted Control keys will be non-alphabetic: C-l is [,], C-r is [2], C-t is [4]. .PP Mouse buttons are encoded as `^X^@([124] x y)\\n'. ^X^@ is the standard GNU Emacs mouse event prefix, it is followed by a list indicating the button pressed and the character row and column of the point in the window where the mouse cursor is, and followed by a newline character. In GNU Emacs, the ^X^@ dispatches to a mouse event handler which then reads the following list. .SH OPTIONS .B Emacstool supports all the standard window arguments, including font and icon specifiers. .PP By default, Emacstool runs the program .I emacs in the created subwindow. The value of the environment variable .I EMACSTOOL can be used to override this if your version of .B Emacs is not accessible on your search path by the name .I Emacs. In addition, the run command can be set by the .I pathname following the last occurrence of the .I \-rc flag. This is convenient for using Emacstool to run on remote machines. .PP All other command line arguments not used by the window system are passed as arguments to the program that runs in the Emacstool window. .PP For example: .PP local% (emacstool -rc rlogin remote -8 &)& .PP will create an Emacstool window logged in to a machine named .I remote. If Emacs is run from this window, Emacstool will encode mouse and function keys, and send them to rlogin. If Emacs is run from this shell on the remote machine, it will see the mouse and function keys properly. However, since the remote host does not have access to the screen, the cursor cannot be changed, menus will not appear, and the selection buffer (STUFF) is limited. .SH Using With GNU Emacs: The GNU Emacs files lisp/term/sun.el, lisp/sun-mouse.el, lisp/sun-fns.el, and src/sunfns.c provide emacs support for the Emacstool and function keys. Emacstool will automatically set the TERM environment variable to be "sun" and unset the environment variable TERMCAP. That is, these variables will not be inherited from the shell that starts Emacstool. Since the terminal type is .I SUN (that is, the environment variable TERM is set to .I SUN), Emacs will automatically load the file lisp/term/sun. This, in turn, will ensure that sun-mouse.el is autoloaded when any mouse events are detected. It is suggested that .I sun-mouse and .I sun-fns be loaded in your site-init.el file, so that they will always be loaded when running on a Sun workstation. .PP In addition, Emacstool sets the environment variable IN_EMACSTOOL = "t". Lisp code in your ~/.emacs can use (getenv "IN_EMACSTOOL") to determine whether to do Emacstool specific initialization. Sun.el uses this to automatically call emacstool-init (getenv "IN_EMACSTOOL") is defined. .PP The file src/sunfns.c defines several useful functions for emacs on the Sun. Among these are procedures to pop-up SunView .I menus, put and get from the SunView .I STUFF buffer, and a procedure for changing the cursor .I icon. If you want to define or edit cursor icons, there is a rudimentary mouse driven icon editor in the file lisp/sun-cursors.el. Try invoking (sc:edit-cursor) .SH BUGS It takes a few milliseconds to create a menu before it pops up. .SH ENVIRONMENT VARIABLES EMACSTOOL IN_EMACSTOOL TERM TERMCAP .SH FILES .DT emacs .SH "SEE ALSO" emacs(1) .../etc/SUN-SUPPORT .../lisp/term/sun.el .SH COPYING Copyright .if t \(co .if n (c) 2001 Free Software Foundation, Inc. .PP Permission is granted to make and distribute verbatim copies of this document provided the copyright notice and this permission notice are preserved on all copies. .PP Permission is granted to copy and distribute modified versions of this document under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. .PP Permission is granted to copy and distribute translations of this document into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation.