comparison lisp/simple.el @ 83256:389421e988c2

Merged from miles@gnu.org--gnu-2005 (patch 17-26, 107-116) Patches applied: * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-107 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-108 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-109 Update from CVS * 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 Update from CVS * 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 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-116 Update from CVS * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-17 Update from CVS * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-18 Update from CVS * 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. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-296
author Karoly Lorentey <lorentey@elte.hu>
date Sun, 20 Feb 2005 18:47:54 +0000
parents c0215e820840 9440f8bb9f71
children 1f334cdd7020
comparison
equal deleted inserted replaced
83255:9684495d72bc 83256:389421e988c2
3160 (if (save-excursion (end-of-line) (eobp)) 3160 (if (save-excursion (end-of-line) (eobp))
3161 ;; When adding a newline, don't expand an abbrev. 3161 ;; When adding a newline, don't expand an abbrev.
3162 (let ((abbrev-mode nil)) 3162 (let ((abbrev-mode nil))
3163 (end-of-line) 3163 (end-of-line)
3164 (insert "\n")) 3164 (insert "\n"))
3165 (line-move arg)) 3165 (line-move arg nil nil t))
3166 (if (interactive-p) 3166 (if (interactive-p)
3167 (condition-case nil 3167 (condition-case nil
3168 (line-move arg) 3168 (line-move arg nil nil t)
3169 ((beginning-of-buffer end-of-buffer) (ding))) 3169 ((beginning-of-buffer end-of-buffer) (ding)))
3170 (line-move arg))) 3170 (line-move arg nil nil t)))
3171 nil) 3171 nil)
3172 3172
3173 (defun previous-line (&optional arg) 3173 (defun previous-line (&optional arg)
3174 "Move cursor vertically up ARG lines. 3174 "Move cursor vertically up ARG lines.
3175 If there is no character in the target line exactly over the current column, 3175 If there is no character in the target line exactly over the current column,
3188 to use and more reliable (no dependence on goal column, etc.)." 3188 to use and more reliable (no dependence on goal column, etc.)."
3189 (interactive "p") 3189 (interactive "p")
3190 (or arg (setq arg 1)) 3190 (or arg (setq arg 1))
3191 (if (interactive-p) 3191 (if (interactive-p)
3192 (condition-case nil 3192 (condition-case nil
3193 (line-move (- arg)) 3193 (line-move (- arg) nil nil t)
3194 ((beginning-of-buffer end-of-buffer) (ding))) 3194 ((beginning-of-buffer end-of-buffer) (ding)))
3195 (line-move (- arg))) 3195 (line-move (- arg) nil nil t))
3196 nil) 3196 nil)
3197 3197
3198 (defcustom track-eol nil 3198 (defcustom track-eol nil
3199 "*Non-nil means vertical motion starting at end of line keeps to ends of lines. 3199 "*Non-nil means vertical motion starting at end of line keeps to ends of lines.
3200 This means moving to the end of each line moved onto. 3200 This means moving to the end of each line moved onto.
3229 prop 3229 prop
3230 (or (memq prop buffer-invisibility-spec) 3230 (or (memq prop buffer-invisibility-spec)
3231 (assq prop buffer-invisibility-spec))))) 3231 (assq prop buffer-invisibility-spec)))))
3232 3232
3233 ;; Perform vertical scrolling of tall images if necessary. 3233 ;; Perform vertical scrolling of tall images if necessary.
3234 (defun line-move (arg &optional noerror to-end) 3234 (defun line-move (arg &optional noerror to-end try-vscroll)
3235 (if auto-window-vscroll 3235 (if (and auto-window-vscroll try-vscroll)
3236 (let ((forward (> arg 0)) 3236 (let ((forward (> arg 0))
3237 (part (nth 2 (pos-visible-in-window-p (point) nil t)))) 3237 (part (nth 2 (pos-visible-in-window-p (point) nil t))))
3238 (if (and (consp part) 3238 (if (and (consp part)
3239 (> (setq part (if forward (cdr part) (car part))) 0)) 3239 (> (setq part (if forward (cdr part) (car part))) 0))
3240 (set-window-vscroll nil 3240 (set-window-vscroll nil
3246 (- (window-vscroll nil t) 3246 (- (window-vscroll nil t)
3247 (min part 3247 (min part
3248 (* (frame-char-height) (- arg)))))) 3248 (* (frame-char-height) (- arg))))))
3249 t) 3249 t)
3250 (set-window-vscroll nil 0) 3250 (set-window-vscroll nil 0)
3251 (line-move-1 arg noerror to-end))) 3251 (when (line-move-1 arg noerror to-end)
3252 (sit-for 0)
3253 (if (and (not forward)
3254 (setq part (nth 2 (pos-visible-in-window-p
3255 (line-beginning-position) nil t)))
3256 (> (cdr part) 0))
3257 (set-window-vscroll nil (cdr part) t))
3258 t)))
3252 (line-move-1 arg noerror to-end))) 3259 (line-move-1 arg noerror to-end)))
3253 3260
3254 ;; This is the guts of next-line and previous-line. 3261 ;; This is the guts of next-line and previous-line.
3255 ;; Arg says how many lines to move. 3262 ;; Arg says how many lines to move.
3256 ;; The value is t if we can move the specified number of lines. 3263 ;; The value is t if we can move the specified number of lines.