(x_display_and_set_cursor): Set phys_cursor_width to
[bpt/emacs.git] / man / macos.texi
index 1d4106c..9913104 100644 (file)
@@ -1,5 +1,5 @@
 @c This is part of the Emacs manual.
-@c Copyright (C) 2000 Free Software Foundation, Inc.
+@c Copyright (C) 2000,2001 Free Software Foundation, Inc.
 @c See file emacs.texi for copying conditions.
 @node Mac OS, MS-DOS, Antinews, Top
 @appendix Emacs and the Mac OS
@@ -16,35 +16,34 @@ Emacs under the Mac OS.
 
   The following features of Emacs are not yet supported on the Mac:
 unexec (@code{dump-emacs}), asynchronous subprocesses
-(@code{start-process}), and networking (@code{open-network-connection}).
-As a result, packages such as Gnus, Ispell, and Comint do not work.
+(@code{start-process}), and networking (@code{open-network-stream}).
+As a result, packages such as Gnus, GUD, and Comint do not work.
 
-  Since external Unix programs to handle commands such as
+  Since external programs to handle commands such as
 @code{print-buffer} and @code{diff} are not available on the Mac OS,
 they are not supported in the Mac OS version.
 
 @menu
-* Mac Input::                  Keyboard input on the Mac.
-* Mac International::          International character set support on the Mac.
-* Mac Environment Variables::  Setting environment variables for Emacs.
-* Mac Directories::            Volumes and directories on the Mac.
-* Mac Font Specs::             Specifying fonts on the Mac.
-* Mac Functions::              Mac specific Lisp functions.
+* Input: Mac Input.                Keyboard input on the Mac.
+* Intl: Mac International.         International character sets on the Mac.
+* Env: Mac Environment Variables.  Setting environment variables for Emacs.
+* Directories: Mac Directories.    Volumes and directories on the Mac.
+* Font: Mac Font Specs.            Specifying fonts on the Mac.
+* Functions: Mac Functions.        Mac-specific Lisp functions.
 @end menu
 
-
 @node Mac Input
 @section Keyboard Input on the Mac
-@cindex Meta (under Mac OS)
-@cindex Mac keyboard coding
+@cindex Meta (Mac OS)
+@cindex keyboard coding (Mac OS)
 @vindex mac-command-key-is-meta
 @vindex mac-keyboard-text-encoding
 
   On the Mac, Emacs can use either the @key{option} key or the
 @key{command} key as the @key{META} key.  If the value of the variable
 @code{mac-command-key-is-meta} is non-@code{nil} (its default value),
-Emacs uses the @key{command} key as the @key{META} key.  Otherwise it uses the
-@key{option} key as the @key{META} key.
+Emacs uses the @key{command} key as the @key{META} key.  Otherwise it
+uses the @key{option} key as the @key{META} key.
 
   Most people should want to use the @key{command} key as the @key{META} key,
 so that dead-key processing with the @key{option} key will still work.  This is
@@ -63,41 +62,43 @@ be passed to Emacs.
   The Mac keyboard ordinarily generates characters in the Mac Roman
 encoding.  To use it for entering ISO Latin-1 characters directly, set
 the value of the variable @code{mac-keyboard-text-encoding} to
-@code{kTextEncodingISOLatin1}.  Note that that not all Mac Roman
-characters that can be entered at the keyboard can be converted to ISO
-Latin-1 characters.
+@code{kTextEncodingISOLatin1}.  Note that not all Mac Roman characters
+that can be entered at the keyboard can be converted to ISO Latin-1
+characters.
 
-  To enter ISO Latin-2 characters directly from the Mac keyboard.  Set
+  To enter ISO Latin-2 characters directly from the Mac keyboard, set
 the value of @code{mac-keyboard-text-encoding} to
 @code{kTextEncodingISOLatin2}.  Then let Emacs know that the keyboard
-generates Latin-2 codes by typink @kbd{C-x RET k iso-latin-2 RET}.  To
-make this setting permanent, put this in your @file{.emacs} init file:
+generates Latin-2 codes, by typing @kbd{C-x @key{RET} k iso-latin-2
+@key{RET}}.  To make this setting permanent, put this in your
+@file{.emacs} init file:
 
 @lisp
- (set-keyboard-coding-system 'iso-latin-2)
+(set-keyboard-coding-system 'iso-latin-2)
 @end lisp
 
 @node Mac International
 @section International Character Set Support on the Mac
 @cindex Mac Roman coding system
-@cindex Mac clipboard support
+@cindex clipboard support (Mac OS)
 
   The Mac uses a non-standard encoding for the upper 128 single-byte
-characters.  It also deviates from the ISO 2022 standard by using code
-points in the range 128-159.  The coding system @code{mac-roman} is used
-to represent this Mac encoding.  It is used for editing files stored in
-this native encoding, and for displaying filenames in Dired mode.
+characters.  It also deviates from the ISO 2022 standard by using
+character codes in the range 128-159.  The coding system
+@code{mac-roman} is used to represent this Mac encoding.  It is used
+for editing files stored in this native encoding, and for displaying
+file names in Dired mode.
 
   Any native (non-symbol) Mac font can be used to correctly display
 characters in the @code{mac-roman} coding system.
 
-  The fontset @code{fontset-mac} is created automatically when Emacs is
-run on the Mac by the following expression.  It displays characters in
-the @code{mac-roman} coding system using 12-point Monaco.
+  The fontset @code{fontset-mac} is created automatically when Emacs
+is run on the Mac.  It displays characters in the @code{mac-roman}
+coding system using 12-point Monaco.
 
   To insert characters directly in the @code{mac-roman} coding system,
-type @kbd{C-x RET k mac-roman RET}, or put this in your @file{.emacs}
-init file:
+type @kbd{C-x @key{RET} k mac-roman @key{RET}}, customize the option
+@code{keyboard-coding-system}, or put this in your init file:
 
 @lisp
 (set-keyboard-coding-system 'mac-roman)
@@ -110,10 +111,10 @@ This is useful for editing documents in native Mac encoding.
 Methods}) or the Mac OS to enter international characters.
 
   To use the former, see the International Character Set Support section
-of the manual.
+of the manual (@pxref{International}).
 
   To use input methods provided by the Mac OS, set the keyboard coding
-system accordingly using the @kbd{C-x RET k} command
+system accordingly using the @kbd{C-x @key{RET} k} command
 (@code{set-keyboard-coding-system}).  For example, for Traditional
 Chinese, use @samp{chinese-big5} as keyboard coding system; for
 Japanese, use @samp{sjis}, etc.  Then select the desired input method in
@@ -127,15 +128,15 @@ a piece of text and paste it into another Mac application, or cut or copy
 one in another Mac application and yank it into a Emacs buffer.
 
   The encoding of text selections must be specified using the commands
-@kbd{C-x RET x} (@code{set-selection-coding-system}) or @kbd{C-x RET X}
-(@code{set-next-selection-coding-system}) (e.g., for Traditional
-Chinese, use @samp{chinese-big5-mac} and for Japanese,
+@kbd{C-x @key{RET} x} (@code{set-selection-coding-system}) or @kbd{C-x
+@key{RET} X} (@code{set-next-selection-coding-system}) (e.g., for
+Traditional Chinese, use @samp{chinese-big5-mac} and for Japanese,
 @samp{sjis-mac}).  @xref{Specify Coding}, for more details.
 
 
 @node Mac Environment Variables
 @section Environment Variables and Command Line Arguments.
-@cindex Mac environment variables
+@cindex environment variables (Mac OS)
 
   Environment variables and command line arguments for Emacs can be set
 by modifying the @samp{STR#} resources 128 and 129, respectively.  A common
@@ -160,25 +161,25 @@ EMACS_UNIBYTE=1
 
 @node Mac Directories
 @section Volumes and Directories on the Mac
-@cindex file names under Mac OS
+@cindex file names (Mac OS)
 
   The directory structure in the Mac OS is seen by Emacs as 
 
 @example
-/<volumename>/<pathname>
+/@var{volumename}/@var{filename}
 @end example
 
-So when Emacs requests a file name, doing filename completion on
-@file{/} will display all volumes on the system.  As in Unix, @file{..}
-can be used to go up a directory level.
+So when Emacs requests a file name, doing file name completion on
+@file{/} will display all volumes on the system.  You can use @file{..}
+to go up a directory level.
 
   To access files and folders on the desktop, look in the folder
 @file{Desktop Folder} in your boot volume (this folder is usually
 invisible in the Mac @code{Finder}).
 
   Emacs creates the Mac folder @file{:Preferences:Emacs:} in the
-@file{System Folder} and uses it as the temporary directory.  The Unix
-emulation code maps the Unix directory @file{/tmp} to it.  Therefore it
+@file{System Folder} and uses it as the temporary directory.  Emacs
+maps the directory name @file{/tmp/} to that.  Therefore it
 is best to avoid naming a volume @file{tmp}.  If everything works
 correctly, the program should leave no files in it when it exits.  You
 should be able to set the environment variable @code{TMPDIR} to use
@@ -187,29 +188,27 @@ another directory but this folder will still be created.
 
 @node Mac Font Specs
 @section Specifying Fonts on the Mac
-@cindex font names under Mac OS
+@cindex font names (Mac OS)
 
-  Fonts are specified to Emacs on the Mac in the form of a standard X
-font name.  I.e.,
+  It is rare that you need to specify a font name in Emacs; usually
+you specify face attributes instead.  But when you do need to specify
+a font name in Emacs on the Mac, use a standard X font name:
 
-@example
-  -FOUNDRY-FAMILY-WEIGHT-SLANT-WIDTH--PIXELS-POINTS-
-    HRES-VRES-SPACING-AVEWIDTH-CHARSET
-@end example
+@smallexample
+-@var{maker}-@var{family}-@var{weight}-@var{slant}-@var{widthtype}-@var{style}@dots{}
+@dots{}-@var{pixels}-@var{height}-@var{horiz}-@var{vert}-@var{spacing}-@var{width}-@var{charset}
+@end smallexample
 
-where the fields refer to foundry, font family, weight, slant, width,
-pixels, point size, horizontal resolution, vertical resolution, spacing,
-average width, and character set, respectively.
-
-Wildcards are supported as they are on X.
+@noindent
+@xref{Font X}.  Wildcards are supported as they are on X.
 
-  Native Apple fonts in Mac Roman encoding has foundry name @code{apple}
+  Native Apple fonts in Mac Roman encoding has maker name @code{apple}
 and charset @code{mac-roman}.  For example 12-point Monaco can be
 specified by the name @samp{-apple-monaco-*-12-*-mac-roman}.
 
   Native Apple Traditional Chinese, Simplified Chinese, Japanese, and
-Korean fonts have charsets @samp{big5-0}, @samp{gb2312-0},
-@samp{jisx0208.1983-sjis}, and @samp{ksc5601-1}, respectively.
+Korean fonts have charsets @samp{big5-0}, @samp{gb2312.1980-0},
+@samp{jisx0208.1983-sjis}, and @samp{ksc5601.1989-0}, respectively.
 
   Single-byte fonts converted from GNU fonts in BDF format, which are not
 in the Mac Roman encoding, have foundry, family, and character sets
@@ -219,17 +218,18 @@ the name @samp{-ETL-fixed-*-iso8859-1}.
 
 
 @node Mac Functions
-@section Mac Specific Lisp Functions
-@cindex Lisp functions on the Mac OS
+@section Mac-Specific Lisp Functions
+@cindex Lisp functions specific to Mac OS
 
 @findex do-applescript
   The function @code{do-applescript} takes a string argument,
 executes it as an AppleScript command, and returns the result as a
 string.
 
-@findex mac-filename-to-unix
-@findex unix-filename-to-mac
-  The function @code{mac-filename-to-unix} takes a Mac pathname and
-returns the Unix equivalent.  The function @code{unix-filename-to-mac}
-performs the opposite conversion.  They are useful for constructing
-AppleScript commands to be passed to @code{do-applescript}.
+@findex mac-file-name-to-posix
+@findex posix-file-name-to-mac
+  The function @code{mac-file-name-to-posix} takes a Mac file name and
+returns the GNU or Unix equivalent.  The function
+@code{posix-file-name-to-mac} performs the opposite conversion.  They
+are useful for constructing AppleScript commands to be passed to
+@code{do-applescript}.