]> code.delx.au - gnu-emacs/blobdiff - lisp/textmodes/page.el
* lisp/descr-text.el (describe-char-unicode-data): Fix copy/paste errors.
[gnu-emacs] / lisp / textmodes / page.el
index 6636780a05625b765d9328931507d99ea813a873..22c73591b919aa47c2730c07fe4750381a603d7e 100644 (file)
@@ -1,9 +1,8 @@
 ;;; page.el --- page motion commands for Emacs
 
-;; Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
-;;   2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 1985, 2001-2016 Free Software Foundation, Inc.
 
-;; Maintainer: FSF
+;; Maintainer: emacs-devel@gnu.org
 ;; Keywords: wp convenience
 ;; Package: emacs
 
@@ -49,12 +48,13 @@ A page boundary is any line whose beginning matches the regexp
     (and (save-excursion (re-search-backward page-delimiter nil t))
         (= (match-end 0) (point))
         (goto-char (match-beginning 0)))
-    (forward-char -1)
-    (if (re-search-backward page-delimiter nil t)
-       ;; We found one--move to the end of it.
-       (goto-char (match-end 0))
-      ;; We found nothing--go to beg of buffer.
-      (goto-char (point-min)))
+    (unless (bobp)
+      (forward-char -1)
+      (if (re-search-backward page-delimiter nil t)
+         ;; We found one--move to the end of it.
+         (goto-char (match-end 0))
+       ;; We found nothing--go to beg of buffer.
+       (goto-char (point-min))))
     (setq count (1+ count))))
 
 (defun backward-page (&optional count)
@@ -157,9 +157,9 @@ thus showing a page other than the one point was originally in."
           (if (= (match-beginning 0) (match-end 0))
               (forward-char 1))
          (setq count (1+ count)))
-       (message "Page %d, line %d"
-                count
-                (1+ (count-lines (point) opoint)))))))
+       (message "Page %d, line %d" count (line-number-at-pos opoint))))))
+
+
 \f
 ;;; Place `provide' at end of file.
 (provide 'page)