comparison lisp/simple.el @ 90106:bf0d492ea2d5

Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-16 Merge from emacs--cvs-trunk--0 Patches applied: * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-106 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-110 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-111 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-112 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-113 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-114 <no summary provided> * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-115 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-123 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-124 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-17 - miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-19 Update from CVS * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-20 Merge from emacs--cvs-trunk--0 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-21 More work on moving images to etc/images * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-22 Update from CVS * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-23 Fix errors with image-file installation * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-24 etc/Makefile.in (install): Put gnus-tut.txt in the right place. * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-25 etc/Makefile.in (install, uninstall): Fix installed image dirs. * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-26 etc/Makefile.in (install): Create $(etcdir)/images/gnus dir. * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-27 Update from CVS
author Miles Bader <miles@gnu.org>
date Wed, 23 Feb 2005 09:18:23 +0000
parents 3ebd9bdb4fe5 9440f8bb9f71
children 29e773288013
comparison
equal deleted inserted replaced
90105:7e3f621f1dd4 90106:bf0d492ea2d5
3156 (if (save-excursion (end-of-line) (eobp)) 3156 (if (save-excursion (end-of-line) (eobp))
3157 ;; When adding a newline, don't expand an abbrev. 3157 ;; When adding a newline, don't expand an abbrev.
3158 (let ((abbrev-mode nil)) 3158 (let ((abbrev-mode nil))
3159 (end-of-line) 3159 (end-of-line)
3160 (insert "\n")) 3160 (insert "\n"))
3161 (line-move arg)) 3161 (line-move arg nil nil t))
3162 (if (interactive-p) 3162 (if (interactive-p)
3163 (condition-case nil 3163 (condition-case nil
3164 (line-move arg) 3164 (line-move arg nil nil t)
3165 ((beginning-of-buffer end-of-buffer) (ding))) 3165 ((beginning-of-buffer end-of-buffer) (ding)))
3166 (line-move arg))) 3166 (line-move arg nil nil t)))
3167 nil) 3167 nil)
3168 3168
3169 (defun previous-line (&optional arg) 3169 (defun previous-line (&optional arg)
3170 "Move cursor vertically up ARG lines. 3170 "Move cursor vertically up ARG lines.
3171 If there is no character in the target line exactly over the current column, 3171 If there is no character in the target line exactly over the current column,
3184 to use and more reliable (no dependence on goal column, etc.)." 3184 to use and more reliable (no dependence on goal column, etc.)."
3185 (interactive "p") 3185 (interactive "p")
3186 (or arg (setq arg 1)) 3186 (or arg (setq arg 1))
3187 (if (interactive-p) 3187 (if (interactive-p)
3188 (condition-case nil 3188 (condition-case nil
3189 (line-move (- arg)) 3189 (line-move (- arg) nil nil t)
3190 ((beginning-of-buffer end-of-buffer) (ding))) 3190 ((beginning-of-buffer end-of-buffer) (ding)))
3191 (line-move (- arg))) 3191 (line-move (- arg) nil nil t))
3192 nil) 3192 nil)
3193 3193
3194 (defcustom track-eol nil 3194 (defcustom track-eol nil
3195 "*Non-nil means vertical motion starting at end of line keeps to ends of lines. 3195 "*Non-nil means vertical motion starting at end of line keeps to ends of lines.
3196 This means moving to the end of each line moved onto. 3196 This means moving to the end of each line moved onto.
3225 prop 3225 prop
3226 (or (memq prop buffer-invisibility-spec) 3226 (or (memq prop buffer-invisibility-spec)
3227 (assq prop buffer-invisibility-spec))))) 3227 (assq prop buffer-invisibility-spec)))))
3228 3228
3229 ;; Perform vertical scrolling of tall images if necessary. 3229 ;; Perform vertical scrolling of tall images if necessary.
3230 (defun line-move (arg &optional noerror to-end) 3230 (defun line-move (arg &optional noerror to-end try-vscroll)
3231 (if auto-window-vscroll 3231 (if (and auto-window-vscroll try-vscroll)
3232 (let ((forward (> arg 0)) 3232 (let ((forward (> arg 0))
3233 (part (nth 2 (pos-visible-in-window-p (point) nil t)))) 3233 (part (nth 2 (pos-visible-in-window-p (point) nil t))))
3234 (if (and (consp part) 3234 (if (and (consp part)
3235 (> (setq part (if forward (cdr part) (car part))) 0)) 3235 (> (setq part (if forward (cdr part) (car part))) 0))
3236 (set-window-vscroll nil 3236 (set-window-vscroll nil
3242 (- (window-vscroll nil t) 3242 (- (window-vscroll nil t)
3243 (min part 3243 (min part
3244 (* (frame-char-height) (- arg)))))) 3244 (* (frame-char-height) (- arg))))))
3245 t) 3245 t)
3246 (set-window-vscroll nil 0) 3246 (set-window-vscroll nil 0)
3247 (line-move-1 arg noerror to-end))) 3247 (when (line-move-1 arg noerror to-end)
3248 (sit-for 0)
3249 (if (and (not forward)
3250 (setq part (nth 2 (pos-visible-in-window-p
3251 (line-beginning-position) nil t)))
3252 (> (cdr part) 0))
3253 (set-window-vscroll nil (cdr part) t))
3254 t)))
3248 (line-move-1 arg noerror to-end))) 3255 (line-move-1 arg noerror to-end)))
3249 3256
3250 ;; This is the guts of next-line and previous-line. 3257 ;; This is the guts of next-line and previous-line.
3251 ;; Arg says how many lines to move. 3258 ;; Arg says how many lines to move.
3252 ;; The value is t if we can move the specified number of lines. 3259 ;; The value is t if we can move the specified number of lines.