emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/simple.el


From: Kim F . Storm
Subject: [Emacs-diffs] Changes to emacs/lisp/simple.el
Date: Mon, 07 Mar 2005 06:12:31 -0500

Index: emacs/lisp/simple.el
diff -c emacs/lisp/simple.el:1.695 emacs/lisp/simple.el:1.696
*** emacs/lisp/simple.el:1.695  Sun Mar  6 20:15:50 2005
--- emacs/lisp/simple.el        Mon Mar  7 11:12:31 2005
***************
*** 3517,3522 ****
--- 3517,3549 ----
              (setq arg 1)
            (setq done t)))))))
  
+ (defun move-beginning-of-line (arg)
+   "Move point to beginning of current display line.
+ With argument ARG not nil or 1, move forward ARG - 1 lines first.
+ If point reaches the beginning or end of buffer, it stops there.
+ To ignore intangibility, bind `inhibit-point-motion-hooks' to t.
+ 
+ This command does not move point across a field boundary unless doing so
+ would move beyond there to a different line; if ARG is nil or 1, and
+ point starts at a field boundary, point does not move.  To ignore field
+ boundaries bind `inhibit-field-text-motion' to t."
+   (interactive "p")
+   (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))))))
+ 
+ 
  ;;; Many people have said they rarely use this feature, and often type
  ;;; it by accident.  Maybe it shouldn't even be on a key.
  (put 'set-goal-column 'disabled t)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]