Andrew Choi [Sun, 22 Oct 2000 16:50:16 +0000 (16:50 +0000)]
Initial check-in: changes for building Emacs under Mac OS.
2000-10-23 Andrew Choi <akochoi@i-cable.com>
* dispextern.h [macintosh]: Include macgui.h instead of macterm.h.
* dispnew.c [macintosh]: Include macterm.h.
(init_display) [macintosh]: initialization for window system.
* emacs.c (main) [macintosh]: Call syms_of_textprop,
syms_of_macfns, syms_of_ccl, syms_of_fontset, syms_of_xterm,
syms_of_search, x_term_init, and init_keyboard before calling
init_window_once. Also, call syms_of_xmenu.
* fontset.c (syms_of_fontset) [macintosh]: Set ASCII font of
default fontset to Monaco.
* frame.c [macintosh]: Include macterm.h. Remove declarations of
NewMacWindow and DisposeMacWindow.
(make_terminal_frame) [macintosh]: Call make_mac_terminal_frame
instead of calling NewMacWindow and setting fields of
f->output_data.mac directly. Call init_frame_faces.
(Fdelete_frame) [macintosh]: Remove unused code.
(Fmodify_frame_parameters) [macintosh]: Call
x_set_frame_parameters instead of mac_set_frame_parameters.
* frame.h [macintosh]: Define menu_bar_lines field in struct
frame. Define FRAME_EXTERNAL_MENU_BAR macro.
* keyboard.c [macintosh]: Include macterm.h.
(kbd_buffer_get_event) [macintosh]: Generate delete_window_event
and menu_bar_activate_event type events as for X and NT.
(make_lispy_event) [macintosh]: Construct lisp events of type
MENU_BAR_EVENT as for X and NT.
* sysdep.c [macintosh]: Remove declaration for sys_signal.
Include stdlib.h. Remove definition of Vx_bitmap_file_path.
(sys_subshell) [macintosh]: Remove definition entirely.
(init_sys_modes) [macintosh]: Do not initialize Vwindow_system and
Vwindow_system_version here. Remove initialization of
Vx_bitmap_file_path.
(read_input_waiting): Correct the number of parameters passed to
read_socket_hook.
Move all Macintosh functions to mac/mac.c.
* term.c [macintosh]: Include macterm.h.
* window.c [macintosh]: Include macterm.h.
* xdisp.c [macintosh]: Include macterm.h. Declare
set_frame_menubar and pending_menu_activation.
(echo_area_display) [macintosh]: Do not return if terminal frame
is the selected frame.
(update_menu_bar) [macintosh]: Check FRAME_EXTERNAL_MENU_BAR (f).
Allow only the selected frame to set menu bar.
(redisplay_window) [macintosh]: Obtain menu bar to redisplay by
calling FRAME_EXTERNAL_MENU_BAR (f).
(display_menu_bar) [macintosh]: Check FRAME_MAC_P (f).
* xfaces.c [macintosh]: Include macterm.h. Define x_display_info
and check_x. Declare XCreateGC. Define x_create_gc and
x_free_gc. Initialize font_sort_order.
(x_face_list_fonts) [macintosh]: Use the same code as WINDOWSNT,
but call x_list_fonts instead of w32_list_fonts.
(Finternal_face_x_get_resource) [macintosh]: Do not call
display_x_get_resource.
(prepare_face_for_display) [macintosh]: Set xgcv.font.
(realize_x_face) [macintosh]: Load the font if it is specified in
ATTRS.
(syms_of_xfaces) [macintosh]: Initialize Vscalable_fonts_allowed
to Qt.
* cus-edit.el (custom-button-face): Use 3D look for mac.
(custom-button-pressed-face): Likewise.
* faces.el (set-face-attributes-from-resources): Handle mac frames
in the same way as x and w32 frames.
(face-valid-attribute-values): Likewise.
(read-face-attribute): Likewise.
(defined-colors): Likewise.
(color-defined-p): Likewise.
(color-values): Likewise.
(display-grayscale-p): Likewise.
(face-set-after-frame-default): Likewise.
(mode-line): Same default face as for x and w32.
(tool-bar): Likewise.
* frame.el: Remove call to frame-notice-user-settings at end of
the file.
* info.el (Info-fontify-node): make underlines invisible for mac
as for x, pc, and w32 frame types.
André Spiegel [Sun, 22 Oct 2000 15:37:51 +0000 (15:37 +0000)]
(vc-checkout): Added `-p' suffix in call to vc-make-version-backups-p;
use vc-make-version-backup to actually make the backup.
(vc-version-other-window, vc-version-backup-file): Handle both
automatic and manual backups.
(vc-revert-file): Use vc-delete-automatic-version-backups to get rid
of all of them.
André Spiegel [Sun, 22 Oct 2000 15:28:58 +0000 (15:28 +0000)]
(vc-version-backup-file-name): New optional args MANUAL and REGEXP.
(vc-delete-automatic-version-backups, vc-make-version-backup): New
functions.
(vc-before-save): Use the latter.
(vc-default-make-version-backups-p): Added `-p' suffix to avoid
confusion.
Stefan Monnier [Sun, 22 Oct 2000 04:48:48 +0000 (04:48 +0000)]
(fix_submap_inheritance): Don't do anything if parent_entry
is nil: since we go to the end of submap anyway, we'd end up
setting nil to nil.
(access_keymap): Don't use KEYMAPP on meta_map since KEYMAPP
doesn't obey autoload.
Miles Bader [Sat, 21 Oct 2000 22:29:38 +0000 (22:29 +0000)]
(color-values, color-defined-p): Use `member', not
`memq', because it works correctly for strings.
(frame-set-background-mode): Actually, "unspecified-fg" and
"unspecified-bg" *are* strings. Use `member', not `memq', and
`equal', not `eq', when a string value is possible.
Stefan Monnier [Sat, 21 Oct 2000 18:06:17 +0000 (18:06 +0000)]
(sh-mode-map): Remove bindings for
sh-electric-rparen, sh-electric-less and sh-electric-hash.
(sh-st-punc, sh-here-doc-syntax): Use string-to-syntax.
(sh-font-lock-heredoc, sh-font-lock-paren): New funs.
(sh-font-lock-syntactic-keywords): Use them.
(sh-heredoc-face, sh-st-face, sh-special-syntax): Remove.
(sh-mkword-regexp, sh-electric-rparen-needed-here): Remove.
(sh-mode): Don't override font-lock-unfontify-region-function.
Use a copy of sh-font-lock-syntactic-keywords.
(sh-set-shell): Don't set sh-electric-rparen-needed-here.
Don't call sh-scan-buffer since font-lock does it on the fly.
(sh-get-indent-info): Use `face' rather than `syntax-table'
text-property to detect here-documents.
Replace sh-special-syntax with sh-st-punc.
(sh-prev-line): Use `face' rather than `syntax-table'
text-property to skip over here-documents.
(sh-font-lock-unfontify-region-function, sh-check-paren-in-case)
(sh-set-char-syntax, sh-electric-rparen, sh-electric-hash)
(sh-electric-less, sh-set-here-doc-region)
(sh-remove-our-text-properties, sh-search-word, sh-scan-case)
(sh-scan-buffer, sh-rescan-buffer): Remove.
Andrew Innes [Sat, 21 Oct 2000 13:26:41 +0000 (13:26 +0000)]
(w32_per_char_metric): Remove HDC argument. Use
cached information in emulated XFontStruct to handle common cases
quickly. Do not allocate XCharStruct for return.
(w32_native_per_char_metric): New function.
(w32_bdf_per_char_metric): Fill in supplied XCharStruct instead of
allocating one.
(x_produce_glyphs): Don't get an HDC. Change calls to
w32_per_char_metric to match arg change above. Remove calls to
free results.
(w32_get_glyph_overhangs): Ditto.
(w32_cache_char_metrics): New function.
Miles Bader [Sat, 21 Oct 2000 07:57:20 +0000 (07:57 +0000)]
(pos_fully_visible_in_window_p):
New function.
(Fpos_visible_in_window_p):
Add FULLY argument.
Use pos_fully_visible_in_window_p.
(window_scroll_pixel_based, window_scroll_line_based):
Update calls to Fpos_visible_in_window_p.
Miles Bader [Fri, 20 Oct 2000 16:38:06 +0000 (16:38 +0000)]
(quail-show-guidance-buf): Make sure guidance window really has enough room.
(quail-update-guidance): If quail-guidance-win is already shown, make
sure its height is OK.
Gerd Moellmann [Fri, 20 Oct 2000 15:55:14 +0000 (15:55 +0000)]
(toplevel) [SYSTEM_MALLOC || DOUG_LEA_MALLOC]: Undef
GC_MALLOC_CHECK.
(toplevel) [GC_MARK_STACK || GC_MALLOC_CHECK]: Move mem_node
structure definition and related variabled to the top of the file.
Include this code when GC_MALLOC_CHECK is defined.
(lisp_malloc, lisp_free) [GC_MALLOC_CHECK]: Don't
register/unregister allocated region.
(emacs_blocked_free) [GC_MALLOC_CHECK]: Check if freeing something
which isn't allocated.
(emacs_blocked_malloc) [GC_MALLOC_CHECK]: Check if returning
something which is already in use.
(emacs_blocked_realloc) [GC_MALLOC_CHECK]: Likewise.
(mem_insert) [GC_MALLOC_CHECK]: Use _malloc_internal.
(mem_delete) [GC_MALLOC_CHECK]: Use _free_internal.
(init_alloc_once) [GC_MALLOC_CHECK]: Call mem_init.
Miles Bader [Fri, 20 Oct 2000 15:16:46 +0000 (15:16 +0000)]
(window-text-height, set-window-text-height): New functions.
(shrink-window-if-larger-than-buffer): Use `window-text-height'
instead of `window-height' & `mode-line-window-height-fudge'.
(mode-line-window-height-fudge): Add FACE parameter.
Andrew Innes [Fri, 20 Oct 2000 14:49:19 +0000 (14:49 +0000)]
[!WINDOWSNT]: Don't apply Solaris 2.5 work-around on
Windows.
(my_strftime) <macro>: Don't use macro arg list when redefining as
_strftime_copytm.
(my_strftime) <function>: Supply 0 as ut argument.
Miles Bader [Fri, 20 Oct 2000 12:23:37 +0000 (12:23 +0000)]
(ispell-mode-line-window-height-fudge):
New function, conditionally aliased to `mode-line-window-height-fudge'.
(ispell-help): Use it.
(ispell-choices-win-default-height): Don't include mode-line fudge.
(ispell-choices-win-default-height): New function.
(ispell-show-choices, ispell-command-loop): Use function
`ispell-choices-win-default-height' instead of variable.
Miles Bader [Fri, 20 Oct 2000 09:21:59 +0000 (09:21 +0000)]
(mode-line-window-height-fudge): New variable.
(height-affecting-face-attributes): New variable.
(mode-line-window-height-fudge): New function.
(shrink-window-if-larger-than-buffer): Use it.
Miles Bader [Fri, 20 Oct 2000 02:58:00 +0000 (02:58 +0000)]
(Info-fontify-node):
Add support for @subsubsection titles, which use `Info-title-4-face'.
(Info-title-4-face):
New face.
(Info-title-3-face):
Inherit from Info-title-4-face instead of variable-pitch.
Jason Rumney [Thu, 19 Oct 2000 19:25:53 +0000 (19:25 +0000)]
(add_menu_item): Do not use MF_OWNERDRAW for titles, as it has stopped working.
(Fx_popup_menu, Fx_popup_dialog): Check for tool-bar position like menu-bar.
Jason Rumney [Thu, 19 Oct 2000 19:12:51 +0000 (19:12 +0000)]
(Fx_create_frame): Don't bother calling
face-set-after-frame-default since the caller does it for us
anyway. Clean up calls to x_get_arg to be consistent with X.
Gerd Moellmann [Thu, 19 Oct 2000 14:45:45 +0000 (14:45 +0000)]
(cmuscheme-program-name): Renamed from
scheme-program-name because xscheme.el contains a defcustom with
the same name. As a consequence, customizing group `cmuscheme'
loaded `xscheme' which redefined run-scheme.
(run-scheme): Use cmuscheme-program-name.
Gerd Moellmann [Thu, 19 Oct 2000 10:46:51 +0000 (10:46 +0000)]
Even/odd pages fix. Fix little bug on XEmacs. Avoid
compilation gripes. Doc fix.
(ps-print-version): New version number (6.2).
(ps-x-color-instance-p, ps-x-color-instance-rgb-components)
(ps-x-color-name, ps-x-color-specifier-p, ps-x-copy-coding-system)
(ps-x-device-class, ps-x-extent-end-position, ps-x-extent-face)
(ps-x-extent-priority, ps-x-extent-start-position)
(ps-x-face-font-instance, ps-x-find-coding-system)
(ps-x-font-instance-properties, ps-x-make-color-instance)
(ps-x-map-extents): Alias for functions without the prefix `ps-x-', to
avoid compilation gripes without defining functions.
(ps-e-find-composition): Alias for function find-composition, to have a
suitable function depending on Emacs version.
(ps-color-device, ps-color-values, ps-face-foreground-name)
(ps-face-background-name, ps-face-bold-p, ps-face-italic-p, ps-mapper)
(ps-extent-sorter, ps-xemacs-face-kind-p, ps-xemacs-color-name)
(ps-print-ensure-fontified): Function definitions surrounded by
`eval-and-compile' to avoid compilation gripes.
(ps-font-lock-face-attributes): `font-lock-face-attributes' evaluated
by symbol-value to avoid compilation gripes.
(ps-end-file, ps-header-sheet, ps-plot-region): Even/odd pages fix.
(ps-generate-postscript-with-faces): Fix little bug on XEmacs.
Kenichi Handa [Thu, 19 Oct 2000 07:09:20 +0000 (07:09 +0000)]
Use registry "MuleTibetan-2" for Tibetan.
(ccl-encode-mule-unicode-0100-24ff): New CCL program. Register it
for ISO10646-1 fonts.
(x-font-name-charset-alist): Add an entry for "iso10646-1".
Eli Zaretskii [Thu, 19 Oct 2000 06:56:50 +0000 (06:56 +0000)]
(frame-set-background-mode): If a tty frame defines a
background color, use that to compute the background mode, instead
of always defaulting to "dark".
Dave Love [Wed, 18 Oct 2000 16:50:53 +0000 (16:50 +0000)]
(gnus-nocem-issuers): Update.
(gnus-nocem-check-from): New option.
(gnus-nocem-scan-groups): Use it.
(gnus-nocem-check-article): Bind gnus-newsgroup-name.
(gnus-nocem-check-article-limit): Add :version.