diff lisp/simple.el @ 90127:30ad2795fdab

Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-28 Merge from emacs--cvs-trunk--0 Patches applied: * emacs--cvs-trunk--0 (patch 180-191) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 39-44) - Merge from emacs--cvs-trunk--0 - Update from CVS
author Miles Bader <miles@gnu.org>
date Sat, 19 Mar 2005 02:42:17 +0000
parents 8395880305fe 2edb492f66d9
children 13796b0653c7
line wrap: on
line diff
--- a/lisp/simple.el	Wed Mar 16 21:23:11 2005 +0000
+++ b/lisp/simple.el	Sat Mar 19 02:42:17 2005 +0000
@@ -3536,17 +3536,11 @@
   (or arg (setq arg 1))
   (if (/= arg 1)
       (line-move (1- arg) t))
-  (let (done pos)
-    (while (not done)
-      (beginning-of-line 1)
-      ;; (not bolp) means that it stopped at a field boundary.
-      (if (or (bobp) (not (bolp)))
-	  (setq done t)
-	(sit-for 0)
-	(if (and (consp (setq pos (pos-visible-in-window-p (point) nil t)))
-		 (= (car pos) 0))
-	    (setq done t)
-	  (backward-char 1))))))
+  (beginning-of-line 1)
+  (let ((orig (point)))
+    (vertical-motion 0)
+    (if (/= orig (point))
+	(goto-char (constrain-to-field (point) orig (/= arg 1) t nil)))))
 
 
 ;;; Many people have said they rarely use this feature, and often type
@@ -3933,6 +3927,7 @@
   "The function to use for `auto-fill-function' if Auto Fill mode is turned on.
 Some major modes set this.")
 
+(put 'auto-fill-function :minor-mode-function 'auto-fill-mode)
 ;; FIXME: turn into a proper minor mode.
 ;; Add a global minor mode version of it.
 (defun auto-fill-mode (&optional arg)
@@ -5069,6 +5064,7 @@
 (defcustom normal-erase-is-backspace
   (and (not noninteractive)
        (or (memq system-type '(ms-dos windows-nt))
+	   (eq window-system 'mac)
 	   (and (memq window-system '(x))
 		(fboundp 'x-backspace-delete-keys-p)
 		(x-backspace-delete-keys-p))