(ns-extended-platform-support-mode, menu-bar-ns-file-menu)
(ns-arrange-all-frames, ns-arrange-visible-frames)
(ns-arrange-frames): remove. These functionalities not
available on other (free) platforms will be provided to users
outside the Emacs project in the "ns-platform-support" package.
(S-,): bind to `customize' in line with menu item.
([global-map windows]): remove (in line with other platforms).
(menu-bar-update-frames, force-menu-bar-update-buffers,force-menu-bar-update-buffers,force-menu-bar-update-buffers): remove, not needed.
(menu-bar-update-hook): do not alter.
(generate-fontset-menu,mouse-set-font): amend doc string of these defaliases to point out their altered meaning in NS.
remove NS-specific preferences window that used to show NS-specific preferences.
Integrate preferences in Lisp accessible customization system where possible.
Remove ns-expand-space, because it can be set only during fontloading (i.e. not at runtime),
and because of redundancy with line-spacing frame parameter.
Remove loading of most and saving of all NS resources (from org.gnu.Emacs.plist).
nsterm.m (ns_shutdown_properly, -terminate): remove global state variable as it was never reset
(ns_term_init): remove initialization of Lisp-settable defaults and ns_expand_space
(-setPanelFromDefaultValues): remove ns_expand_space.
(-showPreferencesWindow): send new KEY_NS_SHOW_PREFS key.
nsfont.m (nsfont_open): remove ns_expand_space, assume -0.5 i.e. no additional spacing, similar to Carbon port.
nsterm.h: define KEY_NS_SHOW_PREFS key.
nsfns.m (ns-popup-prefs-panel): remove.
term/ns-win.el (ns-expand-space): remove.
(ns-show-prefs event): run `customize'.
(ns-power-off): run `save-buffers-kill-emacs', but ask user whether to save files (as is standard)
(clipboard-yank, clipboard-kill-ring-save, clipboard-kill-region)
(menu-bar-enable-clipboard): do not undefine these.
(ns-save-preferences,ns-save-options,ns-show-preferences-help): remove.
(ns-working-overlay-len): Remove. Use ns-working-overlay instead.
(ns-delete-working-text): Merge with ns-unecho-working-text.
Decide which to use based on ns-working-overlay.
(ns-unecho-working-text): Remove.
(ns-insert-working-text, ns-echo-working-text): Adjust accordingly.
Remove from global map and key definitions.
(ns-toggle-toolbar, ns-info-prefs): Add to global map and key
definitions.
(ns-show-preferences-help, ns-unput-working-text): New functions.
(ns-unecho-working-text): Update message.
(dos-codepage-setup): Use it to compute a value of locale with which to call
set-locale-environment. Remove code to set terminal, keyboard, and
file-name encoding (done by set-locale-environment).
(IT-character-translations, cjk-codepages-alist): Remove variables.
(IT-display-table-setup, dos-cpNNN-setup): Remove functions.
(IT-unicode-translations): Remove charset and base elements. Add translations
for Latin-1 characters.
(IT-setup-unicode-display): Accept a CODING argument. Don't use base and
chset elements of IT-unicode-translations. Don't wrap translation in "{...}".
Set up translations only for characters for which unencodable-char-position
returns non-nil.
(dos-codepage-setup): Don't use special-case codepages in cjk-codepages-alist.
(terminal-init-internal): New function, errors out if called.
(msdos-initialize-window-system): New function.
(msdos-create-frame-with-faces): Set the terminal's `terminal-initted' (sic!)
parameter.
(frame-creation-function-alist): Add msdos-create-frame-with-faces.
(window-system-initialization-alist): Add msdos-initialize-window-system.
(handle-args-function-alist): Use tty-handle-args for `pc' ``window system''
as well.
(pc-win): Provide.