man pages for xemacs

See ``Working with Xemacs''

NAME
     xemacs - Emacs: The Next Generation
		SunOS 5.7  Last change: 1998 January 13                

SYNOPSIS
     xemacs [ command-line switches ] [ files ... ]

DESCRIPTION
     XEmacs is a version of Emacs, compatible with and containing
     many  improvements over GNU Emacs, written by Richard Stall-
     man of the Free  Software  Foundation.   It  was  originally
     based  on  an early release of GNU Emacs Version 19, and has
     tracked subsequent releases of GNU Emacs as they have become
     available.

     The primary documentation of XEmacs is in the XEmacs  Refer-
     ence  Manual,  which you can read on-line using Info, a sub-
     system of XEmacs.  Please look there for  complete  and  up-
     to-date  documentation.   Complete  documentation  on  using
     Emacs Lisp is available  on-line  through  the  XEmacs  Lisp
     Programmer's  Manual.   Both manuals also can be printed out
     nicely using the TeX formatting package.

     The user  functionality  of  XEmacs  encompasses  everything
     other  Emacs  editors  do, and it is easily extensible since
     its editing commands are written in Lisp.

     XEmacs has an extensive interactive help facility,  but  the
     facility assumes that you know how to manipulate XEmacs win-
     dows and buffers.  CTRL-h enters the  Help  facility.   Help
     Tutorial  (CTRL-h  t) requests an interactive tutorial which
     can teach beginners the fundamentals  of  XEmacs  in  a  few
     minutes.   Help  Apropos (CTRL-h a) helps you find a command
     given  its  functionality,  Help  Key  Binding  (CTRL-h   k)
     describes  a  given key sequence's effect, and Help Function
     (CTRL-h f) describes a  given  Lisp  function  specified  by
     name.   You  can  also  look  up key sequences in the XEmacs
     Reference Manual using Lookup Key Binding  (CTRL-h  CTRL-k),
     and  look  up Lisp functions in the XEmacs Lisp Programmer's
     Manual using Lookup Function (CTRL-h CTRL-f).  All of  these
     help  functions, and more, are available on the Help menu if
     you are using a window system.

     XEmacs has extensive GUI (graphical user interface)  support
     when running under a window system such as X, including mul-
     tiple frames (top-level windows), a menubar, a toolbar, hor-
     izontal and vertical scrollbars, dialog boxes, and extensive
     mouse support.

     XEmacs has full  support  for  multiple  fonts  and  colors,
     variable-width  fonts, and variable-height lines, and allows
     for pixmaps to be inserted into a buffer. (This is  used  in
     the  W3 web-browsing package and in some of the debugger and

     outlining interfaces, among other things.)

     XEmacs's Undo can undo several steps of modification to your
     buffers, so it is easy to recover from editing mistakes.

     XEmacs's many special packages handle mail reading (VM, MH-E
     and RMail) and sending (Mail), Usenet news reading and post-
     ing (GNUS), World Wide Web browsing (W3), specialized  modes
     for editing source code in all common programming languages,
     syntax highlighting for many languages (Font-Lock),  compil-
     ing  (Compile),  running  subshells  within  XEmacs  windows
     (Shell), outline editing (Outline),  running  a  Lisp  read-
     eval-print   loop   (Lisp-Interaction-Mode),  and  automated
     psychotherapy (Doctor).

     There is an extensive reference manual, but users  of  other
     Emacsen  should  have little trouble adapting even without a
     copy.  Users new to Emacs will be able to use basic features
     fairly  rapidly by studying the tutorial and using the self-
     documentation features.

     XEmacs Options

     XEmacs accepts all standard X Toolkit command  line  options
     when run in an X Windows environment.  In addition, the fol-
     lowing options are accepted (when options imply  a  sequence
     of  actions  to  perform,  they  are  performed in the order
     encountered):

     -t file Use specified file as the terminal instead of  using
             stdin/stdout.  This implies -nw.

     -batch  Edit in batch mode.  The editor will  send  messages
             to  stdout.   You  must  use  the  -l, -f, and -eval
             options to specify files to execute and functions to
             call.

     -nw     Inhibit  the  use  of   any   window-system-specific
             display code: use the current TTY.

     -debug-init
             Enter the debugger if an error  occurs  loading  the
             init file.

     -unmapped
             Do not map the initial frame.

     -no-site-file
             Do not  load  the  site-specific  init  file  (site-
             start.el).

     -q, -no-init-file

             Do not load an init file.

     -no-early-packages
             Do not process the early packages.

     -vanilla
             Load no extra files at startup.  Equivalent  to  the
             combination of -q , -no-site-file , and -no-packages

     -u user, -user user
             Load user's init file.

     file    Edit file.

     +number Go to the line specified by number (do not insert  a
             space between the "+" sign and the number).

     -help   Print a help message and exit.

     -V, -version,
             Print the version number and exit.

     -f function, -funcall function
             Execute the lisp function function.

     -l file, -load file
             Load the Lisp code in the file file.

     -eval form
             Evaluate the Lisp form form.

     -i file, -insert file
             Insert file into the current buffer.

     -kill   Exit XEmacs (useful with -batch).

     Using XEmacs with X

     XEmacs has been tailored to work well with the X window sys-
     tem.  If you run XEmacs from under X windows, it will create
     its own X window to display in.  You will probably  want  to
     start  the  editor  as  a background process so that you can
     continue using your original window.

     XEmacs can be started with the following standard X options:

     -visual 
          Select the visual that  XEmacs  will  attempt  to  use.
             should  be  one  of  the  strings  "Sta-
          ticColor", "TrueColor", "GrayScale",  "PseudoColor"  or
          "DirectColor",  and   should be the number of
          bits per pixel (example, "-visual  TrueColor24"  for  a

          24bit TrueColor visual) See X(1) for more information.

     -privateColormap
          Require XEmacs to create and use a private colormap for
          display.  This will keep XEmacs from taking colors from
          the  default  colormap  and  keeping  them  from  other
          clients.

     -geometry ##x##+##+##
          Specify the geometry of the initial window.   The  ##'s
          represent a number; the four numbers are width (charac-
          ters), height (characters), X offset  (pixels),  and  Y
          offset  (pixels), respectively.  Partial specifications
          of the form ##x## or  +##+##  are  also  allowed.  (The
          geometry specification is in the standard X format; see
          X(1) for more information.)

     -iconic
          Specifies that  the  initial  window  should  initially
          appear iconified.

     -name name
             Specifies the program name which should be used when
             looking up defaults in the user's X resources.

     -title title, -T title, -wn title
             Specifies the title which should be assigned to  the
             XEmacs window.

     -d displayname, -display displayname
             Create the XEmacs window on the display specified by
             displayname.   Must be the first option specified in
             the command line.

     -font font, -fn font
             Set the XEmacs window's font to  that  specified  by
             font.   You  will  find  the  various X fonts in the
             /usr/lib/X11/fonts  directory.   XEmacs  works  with
             either  fixed-  or  variable-width  fonts,  but will
             probably look better with a fixed-width font.

     -scrollbar-width pixels
             Specify the width of the vertical scrollbars.

     -scrollbar-height pixels
             Specify the height of the horizontal scrollbars.

     -bw pixels, -borderwidth pixels
             Set the XEmacs window's border width to  the  number
             of  pixels  specified  by  pixels.   Defaults to one
             pixel on each side of the window.

     -ib pixels, -internal-border-width pixels
             Specify the width between a frame's border  and  its
             text, in pixels.  Defaults to one pixel on each side
             of the window.

     -fg color, -foreground color
             Sets the color of the text.

             See the file  /usr/lib/X11/rgb.txt  for  a  list  of
             valid color names.

     -bg color, -background color
             Sets the color of the window's background.

     -bd color, -bordercolor color
             Sets the color of the window's border.

     -mc color
             Sets the color of the mouse pointer.

     -cr color
             Sets the color of the text cursor.

     -rv, -reverse
             Reverses  the  foreground  and   background   colors
             (reverse  video).   Consider  explicitly setting the
             foreground and background colors  instead  of  using
             this option.

     -xrm argument
             This allows you to set an arbitrary resource on  the
             command line.  argument should be a resource specif-
             ication, as might as in your  .Xresources  or  .Xde-
             faults file.

     You can also set resources, i.e.  X default values, for your
     XEmacs  windows  in your .Xresources or .Xdefaults file (see
     xrdb(1)).  Use the following format:

          Emacs.keyword:value

     or

          Emacs*EmacsFrame.keyword:value

     where value specifies the default value of  keyword.   (Some
     resources need the former format; some the latter.)

     You can also set resources for a particular frame  by  using
     the format

          Emacs*framename.keyword:value

     where framename is the resource name assigned to  that  par-
     ticular  frame.   (Certain  packages, such as VM, give their
     frames unique resource names, in this case "VM".)

     XEmacs lets you set default values for  the  following  key-
     words:

     default.attributeFont (class Face.AttributeFont)
             Sets the window's text font.

     default.attributeForeground (class Face.AttributeForeground)
             Sets the window's text color.

     default.attributeBackground (class Face.AttributeBackground)
             Sets the window's background color.

     face.attributeFont (class Face.AttributeFont)
             Sets the font for face, which should be the name  of
             a face.  Common face names are

             FACE            PURPOSE
             default         Normal text.
             bold            Bold text.
             italic          Italicized text.
             bold-italic     Bold and italicized text.
             modeline        Modeline text.
             zmacs-region    Text selected with the mouse.
             highlight       Text  highlighted  when  the   mouse
                             passes over.
             left-margin     Text in the left margin.
             right-margin    Text in the right margin.
             isearch         Text highlighted during  incremental
                             search.
             info-node       Text of Info menu items.
             info-xref       Text of Info cross references.

     face.attributeForeground (class Face.AttributeForeground)
             Sets the foreground color for face.

     face.attributeBackground (class Face.AttributeBackground)
             Sets the background color for face.

Face.AttributeBackgroundPixmap)
     face.attributeBackgroundPixmap                             (class
             Sets the background pixmap (stipple) for face.

     face.attributeUnderline (class Face.AttributeUnderline)
             Whether face should be underlined.

     reverseVideo (class ReverseVideo)
             If set to  on,  the  window  will  be  displayed  in
             reverse  video.   Consider  explicitly  setting  the

             foreground and background colors  instead  of  using
             this resources.

     borderWidth (class BorderWidth)
             Sets the window's border width in pixels.

     internalBorderWidth (class InternalBorderWidth)
             Sets the window's internal border width in pixels.

     borderColor (class BorderColor)
             Sets the color of the window's border.

     cursorColor (class Foreground)
             Sets the color of the window's text cursor.

     pointerColor (class Foreground)
             Sets the color of the window's mouse cursor.

     emacsVisual (class EmacsVisual)
             Sets the default visual XEmacs will try to  use  (as
             described above).

     privateColormap (class PrivateColormap)
             If set, XEmacs  will  default  to  using  a  private
             colormap.

     geometry (class Geometry)
             Sets the geometry of the XEmacs window (as described
             above).

     iconic (class Iconic)
             If set to  on,  the  XEmacs  window  will  initially
             appear as an icon.

     menubar (class Menubar)
             Whether the  XEmacs  window  will  have  a  menubar.
             Defaults to true.

     initiallyUnmapped (class InitiallyUnmapped)
             Whether XEmacs will leave the initial frame unmapped
             when it starts up.

     barCursor (class BarCursor)
             Whether the cursor should be a bar  instead  of  the
             traditional box.

     title (class Title)
             Sets the title of the XEmacs window.

     iconName (class Title)
             Sets the icon name for the XEmacs window icon.

     scrollBarWidth (class ScrollBarWidth)
             Sets the width of the vertical scrollbars,  in  pix-
             els.  A width of 0 means no vertical scrollbars.

     scrollBarHeight (class ScrollBarHeight)
             Sets the height of  the  horizontal  scrollbars,  in
             pixels.    A   height   of  0  means  no  horizontal
             scrollbars.

     scrollBarPlacement (class ScrollBarPlacement)
             Sets  the  position  of  vertical   and   horizontal
             scrollbars.    Should  be  one  of the strings "top-
             left",  "bottom-left",  "top-right",   or   "bottom-
             right".  The default is "bottom-right" for the Motif
             and  Lucid  scrollbars  and  "buttom-left"  for  the
             Athena scrollbars.

     topToolBarHeight (class TopToolBarHeight)
             Sets the height of the top toolbar,  in  pixels.   0
             means no top toolbar.

     bottomToolBarHeight (class BottomToolBarHeight)
             Sets the height of the bottom toolbar, in pixels.  0
             means no bottom toolbar.

     leftToolBarWidth (class LeftToolBarWidth)
             Sets the width of the left toolbar,  in  pixels.   0
             means no left toolbar.

     rightToolBarWidth (class RightToolBarWidth)
             Sets the width of the right toolbar, in  pixels.   0
             means no right toolbar.

     topToolBarShadowColor (class TopToolBarShadowColor)
             Sets the color of the top shadows for the  toolbars.
             (For  all  toolbars, not just the toolbar at the top
             of the frame.)

     bottomToolBarShadowColor (class BottomToolBarShadowColor)
             Sets the color of the bottom shadows for  the  tool-
             bars. (For all toolbars, not just the toolbar at the
             bottom of the frame.)

     topToolBarShadowPixmap (class TopToolBarShadowPixmap)
             Sets the pixmap of the top shadows for the toolbars.
             (For  all  toolbars, not just the toolbar at the top
             of the frame.) If set, this resource  overrides  the
             corresponding color resource.

     bottomToolBarShadowPixmap (class BottomToolBarShadowPixmap)
             Sets the pixmap of the bottom shadows for the  tool-
             bars. (For all toolbars, not just the toolbar at the

             bottom of the frame.) If set,  this  resource  over-
             rides the corresponding color resource.

     toolBarShadowThickness (class ToolBarShadowThickness)
             Thickness of the shadows  around  the  toolbars,  in
             pixels.

     visualBell (class VisualBell)
             Whether XEmacs should flash the screen  rather  than
             making an audible beep.

     bellVolume (class BellVolume)
             Volume of the audible beep.  Range is 0 through 100.

     useBackingStore (class UseBackingStore)
             Whether XEmacs should set the  backing-store  attri-
             bute  of  the  X windows it creates.  This increases
             the memory usage of the X server but  decreases  the
             amount  of X traffic necessary to update the screen,
             and is useful when the connection to  the  X  server
             goes  over a low-bandwidth line such as a modem con-
             nection.

     textPointer (class Cursor)
             The cursor to use when the mouse is over text.

     selectionPointer (class Cursor)
             The cursor to use when the mouse is  over  a  mouse-
             highlighted text region.

     spacePointer (class Cursor)
             The cursor to use when the mouse  is  over  a  blank
             space  in a buffer (that is, after the end of a line
             or after the end-of-file).

     modeLinePointer (class Cursor)
             The cursor to use when the  mouse  is  over  a  mode
             line.

     gcPointer (class Cursor)
             The cursor to display when a  garbage-collection  is
             in progress.

     scrollbarPointer (class Cursor)
             The cursor  to  use  when  the  mouse  is  over  the
             scrollbar.

     pointerColor (class Foreground)
             The foreground color of the mouse cursor.

     pointerBackground (class Background)
             The background color of the mouse cursor.

     Using the Mouse

     The following lists the mouse button bindings for the XEmacs
     window under X11.

     MOUSE BUTTON         FUNCTION
     left                 Set point or make a text selection.
     middle               Paste text.
     right                Pop up a menu of options.
     SHIFT-left           Extend a selection.
     CTRL-left            Make  a  selection  and  insert  it  at
                          point.
     CTRL-middle          Set point and move selected text there.
     CTRL-SHIFT-left      Make a selection, delete it, and insert
                          it at point.
     META-left            Make a rectangular selection.

FILES
     Lisp code is read at startup  from  the  user's  init  file,
     $HOME/.emacs.

     /usr/local/info - files for the Info  documentation  browser
     (a  subsystem  of XEmacs) to refer to.  The complete text of
     the XEmacs Reference Manual and the XEmacs Lisp Programmer's
     Manual is included in a convenient tree structured form.

     /usr/local/lib/xemacs-$VERSION/info - the Info files may  be
     here instead.

     /usr/local/lib/xemacs-$VERSION/src  -  C  source  files  and
     object files.  (May not be present.)

     /usr/local/lib/xemacs-$VERSION/lisp/* -  Lisp  source  files
     and  compiled  files that define most editing commands.  The
     files are contained in subdirectories, categorized by  func-
     tion  or individual package.  Some are preloaded; others are
     autoloaded from these directories when used.

     /usr/local/lib/xemacs-$VERSION/etc - some files of  informa-
     tion,  pixmap  files, other data files used by certain pack-
     ages, etc.

     /usr/local/lib/xemacs-$VERSION/$CONFIGURATION - various pro-
     grams that are used with XEmacs.

     /usr/local/lib/xemacs-$VERSION/$CONFIGURATION/DOC - contains
     the  documentation  strings  for  the  Lisp  primitives  and
     preloaded Lisp functions of XEmacs.  They are stored here to
     reduce the size of XEmacs proper.

     /usr/local/lib/xemacs-$VERSION/etc/SERVICE  -  lists  people
     offering   various  services  to  assist  users  of  XEmacs,

     including education, troubleshooting, porting and customiza-
     tion.

     /usr/local/lib/xemacs/lock - holds lock files that are  made
     for  all  files  being modified in XEmacs, to prevent simul-
     taneous modification of one file by two users.

     /usr/local/lib/xemacs/site-lisp  -   locally-provided   Lisp
     files.

     /usr/lib/X11/rgb.txt - list of valid X color names.

BUGS AND HELP
     There  is  a  newsgroup,  comp.emacs.xemacs,  for  reporting
     XEmacs  bugs  and  fixes  and  requesting  help.  But before
     reporting something as a bug, please try to be sure that  it
     really  is  a  bug,  not  a misunderstanding or a deliberate
     feature.  We ask you to read the section ``Reporting  XEmacs
     Bugs'' near the end of the reference manual (or Info system)
     for hints on how and when to report bugs.  Also, include the
     version  number of the XEmacs you are running and the system
     you are running it on in every bug report that you send  in.
     Finally, the more you can isolate the cause of a bug and the
     conditions it happens under, the more likely  it  is  to  be
     fixed, so please take the time to do so.

     The newsgroup is bidirectionally gatewayed to and  from  the
     mailing  list  xemacs@xemacs.org.   You  can  read  the list
     instead of the newsgroup  if  you  do  not  have  convenient
     Usenet  news  access.  To request to be added to the mailing
     list, send mail to xemacs-request@xemacs.org. (Do  not  send
     mail to the list itself.)

     The XEmacs maintainers read the newsgroup regularly and will
     attempt  to fix bugs reported in a timely fashion.  However,
     not every message will get a response from one of the  main-
     tainers.   Note  that  there  are many people other than the
     maintainers who read the newsgroup, and will usually  be  of
     assistance in helping with any problems encountered.

     If you need more personal assistance than can be provided by
     the  newsgroup,  look  in the SERVICE file (see above) for a
     list of people who offer it.

     For more information about XEmacs  mailing  lists,  see  the
     file /usr/local/lib/xemacs-$VERSION/etc/MAILINGLISTS.

UNRESTRICTIONS
     XEmacs is free; anyone may redistribute copies of XEmacs  to
     anyone  under  the terms stated in the XEmacs General Public
     License, a copy of which accompanies each copy of XEmacs and
     which also appears in the reference manual.

     Copies of XEmacs may sometimes  be  received  packaged  with
     distributions  of  Unix systems, but it is never included in
     the scope of  any  license  covering  those  systems.   Such
     inclusion  violates  the terms on which distribution is per-
     mitted.  In fact, the primary purpose of the General  Public
     License  is to prohibit anyone from attaching any other res-
     trictions to redistribution of XEmacs.

SEE ALSO
     X(1), xlsfonts(1), xterm(1), xrdb(1), emacs(1), vi(1)

AUTHORS
     XEmacs was written by Steve Baur ,  Martin
     Buchholz      ,      Richard     Mlynarik
     , Hrvoje Niksic , Chuck
     Thompson , Ben Wing , Jamie
     Zawinski , and many others.  It was  based
     on  an  early  version  of  GNU Emacs Version 19, written by
     Richard Stallman  of the Free Software  Founda-
     tion,  and  has  tracked subsequent releases of GNU Emacs as
     they have become available.  It was  originally  written  by
     Lucid, Inc.  (now defunct) and was called Lucid Emacs.

     Chuck Thompson wrote the XEmacs redisplay engine,  maintains
     the  XEmacs  FTP and WWW sites, and has put out all releases
     of XEmacs since 19.11 (the  first  release  called  XEmacs).
     Ben Wing wrote the Asian-language support, the on-line docu-
     mentation (including this man page and much of the FAQ), the
     external  widget  code,  and retooled or rewrote most of the
     basic, low-level XEmacs subsystems.  Jamie Zawinski put  out
     all  releases  of Lucid Emacs, from the first (19.0) through
     the last (19.10), and was the primary code  contributor  for
     all  of these releases.  Richard Mlynarik rewrote the XEmacs
     Lisp-object allocation system, improved the keymap and mini-
     buffer code, and did the initial synching of XEmacs with GNU
     Emacs Version 19.

     Many others have also contributed significantly.   For  more
     detailed  information,  including  a  long history of XEmacs
     from multiple viewpoints and pretty pictures and bios of the
     major  XEmacs  contributors,  see the XEmacs About Page (the
     About XEmacs option on the Help menu).

MORE INFORMATION
     For more information about XEmacs, see the XEmacs About Page
     (mentioned  above),  look in the file /usr/local/lib/xemacs-
     $VERSION/etc/NEWS, or point your Web browser at

     http://www.xemacs.org/

     for up-to-the-minute information about XEmacs.

     The XEmacs FAQ (Frequently Asked Questions) can be found  at
     the Web site just listed.  A possibly out-of-date version is
     also accessible through the Info system inside of XEmacs.

     The  latest  version  of  XEmacs  can  be  downloaded  using
     anonymous FTP from

     ftp://ftp.xemacs.org/pub/xemacs/

     or from a mirror site near you.  Mirror sites are listed  in
     the  file  etc/FTP in the XEmacs distribution or see the Web
     site for an up-to-date list of mirror sites.