summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--etc/NEWS3
-rw-r--r--lisp/ChangeLog11
-rw-r--r--lisp/emulation/ws-mode.el10
-rw-r--r--lisp/simple.el20
4 files changed, 34 insertions, 10 deletions
diff --git a/etc/NEWS b/etc/NEWS
index 7c5f6b79b1a..eb4c326ee8a 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -69,6 +69,9 @@ Use `set-scroll-bar-mode' to change this.
(bound to [next] and [prior]) does not signal errors at top/bottom
of buffer at first key-press (instead moves to top/bottom of buffer).
+** New scrolling commands `scroll-up-line' and `scroll-down-line'
+scroll a line instead of full screen.
+
* Editing Changes in Emacs 24.1
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index f343754e3d2..a9d95d9dd3d 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,16 @@
2010-04-05 Juri Linkov <juri@jurta.org>
+ Scrolling commands which scroll a line instead of full screen.
+ http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01452.html
+
+ * simple.el (scroll-up-line, scroll-down-line): New commands.
+ Put property isearch-scroll=t on them.
+
+ * emulation/ws-mode.el (scroll-down-line, scroll-up-line):
+ Remove commands.
+
+2010-04-05 Juri Linkov <juri@jurta.org>
+
Scrolling commands which does not signal errors at top/bottom.
http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01452.html
diff --git a/lisp/emulation/ws-mode.el b/lisp/emulation/ws-mode.el
index ed8b5562999..220ac7d67dc 100644
--- a/lisp/emulation/ws-mode.el
+++ b/lisp/emulation/ws-mode.el
@@ -339,16 +339,6 @@ the distance between the end of the text and `fill-column'."
(+ left-margin
(/ (- fill-column left-margin line-length) 2))))))
-(defun scroll-down-line ()
- "Scroll one line down."
- (interactive)
- (scroll-down 1))
-
-(defun scroll-up-line ()
- "Scroll one line up."
- (interactive)
- (scroll-up 1))
-
;;;;;;;;;;;
;; wordstar special variables:
diff --git a/lisp/simple.el b/lisp/simple.el
index 7616d19057a..66ea9ebebd9 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -4800,6 +4800,26 @@ If ARG is the atom `-', scroll upward by nearly full screen."
(put 'scroll-down-command 'isearch-scroll t)
+;;; Scrolling commands which scroll a line instead of full screen.
+
+(defun scroll-up-line (&optional arg)
+ "Scroll text of selected window upward ARG lines; or one line if no ARG.
+If ARG is omitted or nil, scroll upward by one line.
+This is different from `scroll-up-command' that scrolls a full screen."
+ (interactive "p")
+ (scroll-up (or arg 1)))
+
+(put 'scroll-up-line 'isearch-scroll t)
+
+(defun scroll-down-line (&optional arg)
+ "Scroll text of selected window down ARG lines; or one line if no ARG.
+If ARG is omitted or nil, scroll down by one line.
+This is different from `scroll-down-command' that scrolls a full screen."
+ (interactive "p")
+ (scroll-down (or arg 1)))
+
+(put 'scroll-down-line 'isearch-scroll t)
+
(defun scroll-other-window-down (lines)
"Scroll the \"other window\" down.