I developed these to convert Andrew Choi's Carbon Emacs distribution, which has been rolled into the standard Emacs CVS distro; so future versions of Emacs on the Mac may be able to take advantage of this stuff too.
(setq inhibit-startup-message t) (pc-selection-mode) (setq mac-command-key-is-meta nil)
(setq *true-mac-cut-buffer* "")
(setq *true-mac-cut-buffer2* t)
(setq interprogram-cut-function
'(lambda (str push)
(setq *true-mac-cut-buffer* str)
(setq *true-mac-cut-buffer2* push)))
(setq interprogram-paste-function
'(lambda () nil))
(defun true-mac-cut-function () (interactive)
(if mark-active
(progn
(true-mac-copy-function)
(kill-region (point) (mark)))
(beep)))
(defun true-mac-copy-function () (interactive)
(if mark-active
(mac-cut-function
*true-mac-cut-buffer*
*true-mac-cut-buffer2*)
(beep)))
(defun true-mac-paste-function () (interactive)
(if mark-active
(kill-region (point) (mark)))
(insert (mac-paste-function)))
(global-set-key [?\A-x] 'true-mac-cut-function)
(global-set-key [?\A-c] 'true-mac-copy-function)
(global-set-key [?\A-v] 'true-mac-paste-function)
(global-set-key [?\A-a] 'mark-whole-buffer) (global-set-key [?\A-s] 'save-buffer) (global-set-key [?\A-S] 'write-file) (global-set-key [?\A-p] 'ps-print-buffer) (global-set-key [?\A-o] 'find-file) (global-set-key [?\A-q] 'save-buffers-kill-emacs) (global-set-key [?\A-w] 'kill-buffer-and-window) (global-set-key [?\A-z] 'undo) (global-set-key [?\A-f] 'isearch-forward) (global-set-key [?\A-g] 'query-replace) (global-set-key [?\A-l] 'goto-line) (global-set-key [?\A-m] 'iconify-frame) (global-set-key [?\A-n] 'new-frame)
(modify-frame-parameters
(selected-frame)
'((font . "-*-monaco-*-*-*-*-10-*-*-*-*-*-*")))
(add-hook 'after-make-frame-functions
(lambda (frame)
(modify-frame-parameters
frame
'((font . "-*-monaco-*-*-*-*-10-*-*-*-*-*-*")))))
MacOS X's Emacs.app doesn't set the path when you launch it. This messes up the ability to do a lot of stuff. Here's my path, but you'll get the idea.
(setenv "PATH" "/Users/sean/bin/powerpc-apple-darwin:/Users/sean/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/teTeX/bin/powerpc-apple-darwin1.3.7:/usr/X11R6/bin:/usr/local/bin:/usr/X11R6/bin")