From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier via Users list for the GNU Emacs text editor Newsgroups: gmane.emacs.help Subject: Re: Prefix Argument and optional argument Date: Thu, 07 Jul 2022 15:04:01 -0400 Message-ID: References: Reply-To: Stefan Monnier Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="15500"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) To: help-gnu-emacs@gnu.org Cancel-Lock: sha1:9ijGbI+b3+1z6WGl87cim8GIvZI= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jul 07 21:09:27 2022 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o9WsR-0003w2-MK for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 07 Jul 2022 21:09:27 +0200 Original-Received: from localhost ([::1]:48542 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o9WsP-0000QI-2m for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 07 Jul 2022 15:09:25 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:56440) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o9WnM-0008AO-Uu for help-gnu-emacs@gnu.org; Thu, 07 Jul 2022 15:04:12 -0400 Original-Received: from ciao.gmane.io ([116.202.254.214]:48810) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o9WnK-0005CU-FN for help-gnu-emacs@gnu.org; Thu, 07 Jul 2022 15:04:12 -0400 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1o9WnI-0006r0-EZ for help-gnu-emacs@gnu.org; Thu, 07 Jul 2022 21:04:08 +0200 X-Injected-Via-Gmane: http://gmane.org/ Received-SPF: pass client-ip=116.202.254.214; envelope-from=geh-help-gnu-emacs@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:138363 Archived-At: > (defun poke (&optional prefix) > "TODO" > (interactive "P") > > (cond > ((equal current-prefix-arg nil) ; no C-u > (setq poke-name-mode 1)) > > ((equal current-prefix-arg '(4)) ; C-u > (setq poke-name-mode 0) > (arktika-workbench)) > > ((equal current-prefix-arg 1) ; C-u 1 > (setq poke-name-mode 0) > > (let* ( (name (read-from-minibuffer " Name: ")) ) > (arktika-workbench name))) ) )) The byte-compiler should tell you that the `prefix` argument is unused, so you can remove it and replace (interactive "P") with (interactive) and that will work just the same. What the "P" does above is provide the (interactive) value of `prefix` by setting it to `current-prefix-arg`. Stefan