[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Isearch in Keyboard Macro.

From: Sriram Thaiyar
Subject: Isearch in Keyboard Macro.
Date: Sun, 15 Oct 2000 12:38:16 -0700
User-agent: Gnus/5.0807 (Gnus v5.8.7) Emacs/20.7


I hope the following is not to difficult to understand.  Here is the
description of the problem I am encountering:  My keyboard macro
``contains'' a search (isearch-forward) for some word.  When I call
this macro, and the end of file is reached, I get an error from the
debugger (my debug-on-error is set to t).  Everything is normal so
far.  However, after I quit the debugger (by hitting `q'), the word
``Isearch'' still remains on the modeline.  But, I am not in Isearch.
However, when I try the same thing with debug-on-error set to nil,
then when the end-of-file is reached, the message, ``After 0 kbd macro
iterations: Keyboard macro terminated by a command ringing the bell.''
is displayed, and I am still in Isearch mode.  Is this a bug or am I
doing something wrong?

Here is the keyboard macro I defined:

;; Keyboard Macro Editor.  Press C-c C-c to finish; press C-x k RET to cancel. 
;; Original keys: C-s DATE C-x

Command: last-kbd-macro
Key: none


C-s             ;; isearch-forward
DATE            ;; self-insert-command * 4
C-x             ;; Control-X-prefix

Here is the error message I got:

Signaling: (error "Keyboard macro terminated by a command ringing the bell") 
isearch-process-search-string("D" "D")
It is not until, I complete another search, does the word Isearch
go away from my modeline.

This is how my bell is defined, to turn it off:
;; turn off the bell; see `term.c'.
(setq ring-bell-function #'(lambda ()))

I also tried the same thing with the line above commented out, and
I got the same error.  

Doing the following gives me the error (?) (set the variable
debug-on-error to t), consistently:
      ACTIONS                         KEYS PRESSED
  -1. (setq debug-on-error t)
   0. Start defining the kbd-macro:   C-x (
   1. Do a search inside the macro,
      for the word below:             C-s DATE
   2. End the kbd-macro definition:   C-x )
   3. Re-execute the kbd-macro:       C-x e
      Keep doing this till an error
      is thrown...
   4. Quit the debugger:          q


The modeline still has Isearch on it, and isearch-mode evaluates to
" Isearch".

I am running GNU Emacs 20.7.1 (sparc-sun-solaris2.3, X toolkit) of
Tue Jul 25 2000 on general4.

Sriram Thaiyar

reply via email to

[Prev in Thread] Current Thread [Next in Thread]