Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uunet!tut.cis.ohio-state.edu!ucbvax!hplabs!hp-pcd!hpcvca!charles From: charles@hpcvca.CV.HP.COM (Charles Brown) Newsgroups: comp.emacs Subject: Forward and Backward Searches with Full Editing. Message-ID: <640012@hpcvca.CV.HP.COM> Date: 2 Jan 90 22:36:06 GMT Organization: Hewlett-Packard Co., Corvallis, Oregon Lines: 100 ; Charles Brown date= "Mon Nov 9 18:08:22 1987" (if (not (boundp '*re-search-last*)) (progn (defvar *re-search-last* ""))) (if (not (boundp 're-search-last)) (progn (defvar re-search-last "") (make-variable-buffer-local 're-search-last))) (if (not (boundp '*search-last*)) (progn (defvar *search-last* ""))) (if (not (boundp 'search-last)) (progn (defvar search-last "") (make-variable-buffer-local 'search-last))) (defun re-search-forward-command (&optional repeat) "Search forward from point for regular expression REGEXP. Set point to the end of the occurrence found, and return t." (interactive "p") (let ((repeat-num (cond ((null repeat) 1) (t (prefix-numeric-value repeat)))) (search-string)) (setq search-string (read-from-minibuffer "RE search: " (if (or (equal "" re-search-last) (null re-search-last)) *re-search-last* re-search-last))) (if (or (equal "" search-string) (null search-string)) (message "Search string is null") (setq *re-search-last* search-string) (setq re-search-last search-string) (re-search-forward search-string nil nil repeat-num)) t)) (defun re-search-backward-command (&optional repeat) "Search backward from point for match for regular expression REGEXP. Set point to the beginning of the match, and return t." (interactive "p") (let ((repeat-num (cond ((null repeat) 1) (t (prefix-numeric-value repeat)))) (search-string)) (setq search-string (read-from-minibuffer "RE search backward: " (if (or (equal "" re-search-last) (null re-search-last)) *re-search-last* re-search-last))) (if (or (equal "" search-string) (null search-string)) (message "Search string is null") (setq *re-search-last* search-string) (setq re-search-last search-string) (re-search-backward search-string nil nil repeat-num)) t)) (defun search-forward-command (&optional repeat) "Search forward from point for STRING. Set point to the end of the occurrence found, and return t." (interactive "p") (let ((repeat-num (cond ((null repeat) 1) (t (prefix-numeric-value repeat)))) (search-string)) (setq search-string (read-from-minibuffer "search: " (if (or (equal "" search-last) (null search-last)) *search-last* search-last))) (if (or (equal "" search-string) (null search-string)) (message "Search string is null") (setq *search-last* search-string) (setq search-last search-string) (search-forward search-string nil nil repeat-num)) t)) (defun search-backward-command (&optional repeat) "Search backward from point for STRING. Set point to the beginning of the occurrence found, and return t." (interactive "p") (let ((repeat-num (cond ((null repeat) 1) (t (prefix-numeric-value repeat)))) (search-string)) (setq search-string (read-from-minibuffer "search backward: " (if (or (equal "" search-last) (null search-last)) *search-last* search-last))) (if (or (equal "" search-string) (null search-string)) (message "Search string is null") (setq *search-last* search-string) (setq search-last search-string) (search-backward search-string nil nil repeat-num)) t))