From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Leo Liu Newsgroups: gmane.emacs.bugs Subject: bug#14135: not recording macro Date: Fri, 05 Apr 2013 15:28:21 +0800 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1365146943 18958 80.91.229.3 (5 Apr 2013 07:29:03 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 5 Apr 2013 07:29:03 +0000 (UTC) Cc: 14135@debbugs.gnu.org To: Juanma Barranquero Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Apr 05 09:29:31 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1UO15V-0003Ls-NQ for geb-bug-gnu-emacs@m.gmane.org; Fri, 05 Apr 2013 09:29:29 +0200 Original-Received: from localhost ([::1]:52146 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UO156-0000A2-NS for geb-bug-gnu-emacs@m.gmane.org; Fri, 05 Apr 2013 03:29:04 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:46233) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UO14w-0008Sw-L9 for bug-gnu-emacs@gnu.org; Fri, 05 Apr 2013 03:29:00 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UO14r-0000ON-NI for bug-gnu-emacs@gnu.org; Fri, 05 Apr 2013 03:28:54 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:58755) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UO14r-0000OI-Jq for bug-gnu-emacs@gnu.org; Fri, 05 Apr 2013 03:28:49 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1UO17y-0002L8-GJ for bug-gnu-emacs@gnu.org; Fri, 05 Apr 2013 03:32:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Leo Liu Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 05 Apr 2013 07:32:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 14135 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 14135-submit@debbugs.gnu.org id=B14135.13651471038967 (code B ref 14135); Fri, 05 Apr 2013 07:32:02 +0000 Original-Received: (at 14135) by debbugs.gnu.org; 5 Apr 2013 07:31:43 +0000 Original-Received: from localhost ([127.0.0.1]:34631 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UO17f-0002KZ-1H for submit@debbugs.gnu.org; Fri, 05 Apr 2013 03:31:43 -0400 Original-Received: from mail-pb0-f54.google.com ([209.85.160.54]:42954) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UO17c-0002KR-4c for 14135@debbugs.gnu.org; Fri, 05 Apr 2013 03:31:41 -0400 Original-Received: by mail-pb0-f54.google.com with SMTP id xa7so1879323pbc.13 for <14135@debbugs.gnu.org>; Fri, 05 Apr 2013 00:28:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:from:to:cc:subject:references:face:date:in-reply-to :message-id:user-agent:mime-version:content-type; bh=pRxwKBkaRKuuGpBItsrH2fTBzugWG4eLjAQoZNJ5SWA=; b=LMH2YBVhJZ8OySarMkV/pS6a+FFHopqmCFEgD66F6x7TJ30Rhz/erZXQLnYbvSH/Fr VzYbZ9iynJ6DhSeNe25DalyYBttd1F9fxYqDybLKkJrgC/SM6j6XxjQAK0g5QU1dlnid /1ngNwzjhc1h2OPbncFD5lgH0YWqWQQRobZ3b1/skbNaB+/L1nF+PcA1p0wbIuUxpEtQ ToqlwtKuByLbx477pdldUFQ/3yfivFaWqwW5HSsWTT0j7Mz+DdA2eGopWJ/9D+cBpCBO kU/GU5xyI+nju/n8sLRXBo1qOFIFOGAnm0pYtfaBvQuGrpezD0ZYOV8wiKQnTPJNSops eTew== X-Received: by 10.66.221.226 with SMTP id qh2mr13794597pac.62.1365146905418; Fri, 05 Apr 2013 00:28:25 -0700 (PDT) Original-Received: from localhost ([61.148.244.73]) by mx.google.com with ESMTPS id z1sm13383823pbw.19.2013.04.05.00.28.21 (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Fri, 05 Apr 2013 00:28:24 -0700 (PDT) Face: iVBORw0KGgoAAAANSUhEUgAAACgAAAAoAgMAAADxkFD+AAAADFBMVEUvT09qWs3/pQD///+J kUVcAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9cBBwMLOd3veKQA AACuSURBVBjTldE9CgIxEAXgB+lEyFUC2wo5ikdZ8DSypxhMY7H9VuIVwlqkGRgnm59VsHGafIQ3 CZlAtmKIRaHETgYa12lqvEsPYKf8wXHsPGfqPaUM0g9aJPKFXkmNQmSDqwzz4Fpgpz+6WAPY2z5o uPJJpu0uypcl4nyCibMLQ8lCiVjayLoQvw5LsVKQuHPRR958HZbOcVsKeepcLxpByjycGvnKmY+c MBvrtyjfe0vmuLvdq/kAAAAASUVORK5CYII= In-Reply-To: (Juanma Barranquero's message of "Wed, 3 Apr 2013 23:53:22 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (OS X 10.8.3) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:73177 Archived-At: On 2013-04-04 05:53 +0800, Juanma Barranquero wrote: > Package: emacs > Version: 24.3.50 > > emacs -Q > ;; Defining kbd macro... > a > ;; Keyboard macro defined > ;; No kbd macro has been defined Thanks for the bug report. Sorry this is broken by my commit. Could you give the following patch a good test? Thanks a lot. -- Leo diff --git a/lisp/kmacro.el b/lisp/kmacro.el index c08f49df..d6de2feb 100644 --- a/lisp/kmacro.el +++ b/lisp/kmacro.el @@ -631,11 +631,11 @@ (defun kmacro-call-macro (arg &optional no-repeat end-macro macro) (> (length (this-single-command-keys)) 1)) ;; Used when we're in the process of repeating. (eq no-repeat 'repeating)) - last-input-event)) - (last-kbd-macro (or macro last-kbd-macro))) + last-input-event))) (if end-macro - (kmacro-end-macro arg) - (call-last-kbd-macro arg #'kmacro-loop-setup-function)) + (kmacro-end-macro arg) ; modifies last-kbd-macro + (let ((last-kbd-macro (or macro last-kbd-macro))) + (call-last-kbd-macro arg #'kmacro-loop-setup-function))) (when (consp arg) (setq arg (car arg))) (when (and (or (null arg) (> arg 0)) @@ -658,7 +658,9 @@ (defun kmacro-call-macro (arg &optional no-repeat end-macro macro) (define-key map (vector repeat-key) `(lambda () (interactive) (kmacro-call-macro ,(and kmacro-call-repeat-with-arg arg) - 'repeating nil ,last-kbd-macro))) + 'repeating nil ,(if end-macro + last-kbd-macro + (or macro last-kbd-macro))))) map)))))