From unknown Sat Jun 21 03:29:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7025: Viper's `viper-deflocalvar' macro doesn't indent properly Resent-From: Vegard =?UTF-8?Q?=C3=98ye?= Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 12 Sep 2010 15:38:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 7025 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 7025@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.12843058373394 (code B ref -1); Sun, 12 Sep 2010 15:38:03 +0000 Received: (at submit) by debbugs.gnu.org; 12 Sep 2010 15:37:17 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OuocF-0000sc-K4 for submit@debbugs.gnu.org; Sun, 12 Sep 2010 11:37:16 -0400 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OumrQ-00006W-SC for submit@debbugs.gnu.org; Sun, 12 Sep 2010 09:44:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OumtV-0001iG-1P for submit@debbugs.gnu.org; Sun, 12 Sep 2010 09:46:58 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RECEIVED_FROM_WINDOWS_HOST,T_RP_MATCHES_RCVD, T_TO_NO_BRKTS_FREEMAIL autolearn=no version=3.3.1 Received: from lists.gnu.org ([199.232.76.165]:53305) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OumtU-0001iC-V7 for submit@debbugs.gnu.org; Sun, 12 Sep 2010 09:46:57 -0400 Received: from [140.186.70.92] (port=58612 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OumtT-0007cD-Ou for bug-gnu-emacs@gnu.org; Sun, 12 Sep 2010 09:46:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OumtS-0001hh-3u for bug-gnu-emacs@gnu.org; Sun, 12 Sep 2010 09:46:55 -0400 Received: from blu0-omc1-s14.blu0.hotmail.com ([65.55.116.25]:26394) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OumtS-0001hS-2F for bug-gnu-emacs@gnu.org; Sun, 12 Sep 2010 09:46:54 -0400 Received: from BLU0-SMTP170 ([65.55.116.7]) by blu0-omc1-s14.blu0.hotmail.com with Microsoft SMTPSVC(6.0.3790.4675); Sun, 12 Sep 2010 06:46:52 -0700 X-Originating-IP: [80.212.184.210] X-Originating-Email: [vegard_oye@hotmail.com] Message-ID: Received: from [192.168.1.149] ([80.212.184.210]) by BLU0-SMTP170.phx.gbl over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Sun, 12 Sep 2010 06:46:50 -0700 Date: Sun, 12 Sep 2010 15:46:46 +0200 From: Vegard =?UTF-8?Q?=C3=98ye?= User-Agent: Mozilla/5.0 (X11; U; Linux i686; nb-NO; rv:1.9.2.8) Gecko/20100802 Thunderbird/3.1.2 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 12 Sep 2010 13:46:50.0871 (UTC) FILETIME=[F3BCA870:01CB5280] X-detected-operating-system: by eggs.gnu.org: Windows 2000 SP4, XP SP1+ X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -3.6 (---) X-Mailman-Approved-At: Sun, 12 Sep 2010 11:37:11 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -4.7 (----) The `viper-deflocalvar' macro in viper-init.el is used for defining buffer-local variables. However, it doesn't indent properly: (viper-deflocalvar foo nil "Docstring") The following patch adds a `declare' statement to fix the indentation: (viper-deflocalvar foo nil "Docstring") `viper-loop' suffers from the same problem, and is also fixed by the patch. Furthermore, the patch adds syntax highlighting for `viper-deflocalvar' and `viper-loop', so that they blend in with `defvar' and `loop'. Vegard --- viper-init.el 2010-09-12 15:22:42.000000000 +0200 +++ viper-init-patched.el 2010-09-12 15:32:35.000000000 +0200 @@ -95,6 +95,10 @@ ;;; Macros (defmacro viper-deflocalvar (var default-value &optional documentation) + "Define VAR as a buffer-local variable. +DEFAULT-VALUE is the default value and DOCUMENTATION is the +docstring. The variable becomes buffer-local whenever set." + (declare (indent defun)) `(progn (defvar ,var ,default-value ,(format "%s\n\(buffer local\)" documentation)) @@ -102,11 +106,20 @@ ;; (viper-loop COUNT BODY) Execute BODY COUNT times. (defmacro viper-loop (count &rest body) + (declare (indent defun)) `(let ((count ,count)) (while (> count 0) ,@body (setq count (1- count))))) +(when (fboundp 'font-lock-add-keywords) + (font-lock-add-keywords + 'emacs-lisp-mode + '(("(\\(viper-deflocalvar\\)\\>[ \f\t\n\r\v]*\\(\\sw+\\)?" + (1 font-lock-keyword-face) + (2 font-lock-variable-name-face nil t)) + ("(\\(viper-loop\\)\\>" 1 font-lock-keyword-face)))) + (defmacro viper-buffer-live-p (buf) `(and ,buf (get-buffer ,buf) (buffer-name (get-buffer ,buf)))) From unknown Sat Jun 21 03:29:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7025: Viper's `viper-deflocalvar' macro doesn't indent properly Resent-From: Chong Yidong Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 05 Aug 2012 09:02:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7025 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Vegard =?UTF-8?Q?=C3=98ye?= Cc: 7025@debbugs.gnu.org Received: via spool by 7025-submit@debbugs.gnu.org id=B7025.134415730132296 (code B ref 7025); Sun, 05 Aug 2012 09:02:02 +0000 Received: (at 7025) by debbugs.gnu.org; 5 Aug 2012 09:01:41 +0000 Received: from localhost ([127.0.0.1]:34623 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SxwiT-0008Or-3n for submit@debbugs.gnu.org; Sun, 05 Aug 2012 05:01:41 -0400 Received: from mail-pb0-f44.google.com ([209.85.160.44]:37468) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SxwiQ-0008Oj-Mq for 7025@debbugs.gnu.org; Sun, 05 Aug 2012 05:01:39 -0400 Received: by pbbrr4 with SMTP id rr4so2185673pbb.3 for <7025@debbugs.gnu.org>; Sun, 05 Aug 2012 01:53:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-type:content-transfer-encoding; bh=Dh61rSjlG0dYyJvwsjvgul02vuu1KV5eVBYxrl5Ijq0=; b=N/pUFUYSj0EY4yqXWkWp165ppmWZIiBXZ/kV6CouTHpt0vH5PdI7URxX+kCBUKaFDc YQEYKs3dgig/hCr+5MSst42Z79Qi6hR2IzSZecI8NBtI0nM5b7bJ4shsQN7f7C5XrHOR D5aLyoxCawYCDZU0iC/G3zad0U0mcSoAyQr2lqz4aLNB9TAxCPPpRp5jtyJ19uVRx/M3 k1e1LnWqOnIaRvXpt3XoItouMvLr5aD2+v6S1R9J0vH7NI0W3qO3gRfMicWa/i+8Ixod paXUL7ILdQTii6xZ69bQgLHU6ydQNIH4k9ZHs+QGhp+If2s9t0/Oh3snlXK7yopTraX2 WUyg== Received: by 10.66.75.133 with SMTP id c5mr10338675paw.24.1344156831712; Sun, 05 Aug 2012 01:53:51 -0700 (PDT) Received: from ulysses (cm162.gamma80.maxonline.com.sg. [202.156.80.162]) by mx.google.com with ESMTPS id qa5sm6533237pbb.19.2012.08.05.01.53.49 (version=SSLv3 cipher=OTHER); Sun, 05 Aug 2012 01:53:50 -0700 (PDT) From: Chong Yidong References: Date: Sun, 05 Aug 2012 16:53:47 +0800 In-Reply-To: ("Vegard \=\?utf-8\?Q\?\=C3\=98ye\=22's\?\= message of "Sun, 12 Sep 2010 15:46:46 +0200") Message-ID: <871ujlyb1g.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.6 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Vegard =C3=98ye writes: > The `viper-deflocalvar' macro in viper-init.el is used for defining > buffer-local variables. However, it doesn't indent properly: > > (viper-deflocalvar foo nil > "Docstring") > > The following patch adds a `declare' statement to fix the indentation Thanks. I've committed your patch to trunk, except for the font-lock stuff (we don't generally provide font lock support for such package-specific compatibility macros). From debbugs-submit-bounces@debbugs.gnu.org Sun Aug 05 05:01:52 2012 Received: (at control) by debbugs.gnu.org; 5 Aug 2012 09:01:52 +0000 Received: from localhost ([127.0.0.1]:34626 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sxwid-0008PH-TF for submit@debbugs.gnu.org; Sun, 05 Aug 2012 05:01:52 -0400 Received: from mail-pb0-f44.google.com ([209.85.160.44]:37468) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sxwic-0008Oj-Bj for control@debbugs.gnu.org; Sun, 05 Aug 2012 05:01:50 -0400 Received: by mail-pb0-f44.google.com with SMTP id rr4so2185673pbb.3 for ; Sun, 05 Aug 2012 01:54:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:subject:date:message-id:mime-version:content-type; bh=pQJrcKVwJHJsttUnolau77KrIV7pmX0ewnCNZM9X/K4=; b=phqKoEg+3zv1STt9hodtqafMg/PNdpk/GgEU3Zj2kHdXi/CvAkD6jwvNqNLOp6xoQg JnYaak7VbfSCWTaYGRlgj69XUrg3bL+yeuWwP0QFtJMpyP3sOiEzjDjMHnUswGnh1ukj wpTClPvEqQAvWuHjiImcVpmskqzW3LzHL2ARmJf112I7r2hSOYUwH8geEtfjen/BAZEM Xtnv2nXYJrpXpruOqYjZtiNxTUXhD+AJ2u6VcacTJxYdKroxWFTD+0ANHPvDJh5OHBxL MoToXgngZIy6U4O5nZWo3JTYsDy9i7NDRMFwY5WaDAqMtvGbKsIkJeLVLpIQDNcapOGe 0qAA== Received: by 10.68.136.8 with SMTP id pw8mr10205516pbb.82.1344156843933; Sun, 05 Aug 2012 01:54:03 -0700 (PDT) Received: from ulysses (cm162.gamma80.maxonline.com.sg. [202.156.80.162]) by mx.google.com with ESMTPS id ng8sm6534776pbc.13.2012.08.05.01.54.01 (version=SSLv3 cipher=OTHER); Sun, 05 Aug 2012 01:54:03 -0700 (PDT) From: Chong Yidong To: control@debbugs.gnu.org Subject: close 7025 Date: Sun, 05 Aug 2012 16:53:59 +0800 Message-ID: <87wr1d4t3s.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) close 7025 thanks