From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Spyros Roum Newsgroups: gmane.emacs.devel Subject: Re: Add completion to compilation-read-command Date: Wed, 25 Dec 2024 18:02:45 +0000 Message-ID: <540a1e38-30f6-4008-b0b7-8c72c743ad55@posteo.net> References: <87ttatb9g0.fsf@posteo.net> <87a5clm3p5.fsf@mail.linkov.net> <8734icaegs.fsf@posteo.net> <9a4bb215-561c-468f-97de-7d84fe7adc43@posteo.net> <87ttas80au.fsf@posteo.net> <962064f8-fab7-4867-af04-135e48a9dd15@posteo.net> <87pllf1yrw.fsf@mail.linkov.net> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="------------CtOAAXlgu6dOi0SGxWrSGQHK" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="7061"; mail-complaints-to="usenet@ciao.gmane.io" Cc: philipk@posteo.net, emacs-devel@gnu.org To: juri@linkov.net Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Dec 25 19:03:31 2024 Return-path: Envelope-to: ged-emacs-devel@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 1tQVjG-0001hW-8C for ged-emacs-devel@m.gmane-mx.org; Wed, 25 Dec 2024 19:03:30 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tQViX-0000vA-C7; Wed, 25 Dec 2024 13:02:45 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tQViV-0000uu-0I for emacs-devel@gnu.org; Wed, 25 Dec 2024 13:02:43 -0500 Original-Received: from mout02.posteo.de ([185.67.36.66]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tQViS-0002dQ-22 for emacs-devel@gnu.org; Wed, 25 Dec 2024 13:02:42 -0500 Original-Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 4E352240101 for ; Wed, 25 Dec 2024 19:02:36 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1735149756; bh=xgqlcdBRKgFsGRjvp7zYVGBOIDhBEJ5cUdnLQreNSOM=; h=Content-Type:Message-ID:Date:MIME-Version:Subject:To:Cc:From: From; b=PujNWAcmwtHMXNtIIGJ/o2SAFo9M3hHo2teGJaeXHGeibQBM361RIA/QG6594sFJR agE2DuOjjVeVJfH8xnZP30631mD+NiPerI4d8zoSp/fqQIsCNZ4iI7EFwkzh9U7a2A rbA/CUOv8eZCxrVwiORAsLSl4orANIkyS8V6BXChV+70zr9sPhnF/7353U2CSEeHwq iSJ8d397UKFUfC/sgDKuDDeOtre4W451/mhZdZ+Ng+k2XKa68pPz73j2OV7TmsYu0R sJ1JKFfBF5vmUMELdXcL8NZUlz3Mbdiiw+GVcYo8vKMD799aFKS8PR3e5hu4GSepT2 SnhLd31EQIkXw== Original-Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4YJKNW2z91z6tsb; Wed, 25 Dec 2024 19:02:35 +0100 (CET) Content-Language: en-US, el, el-en In-Reply-To: <87pllf1yrw.fsf@mail.linkov.net> Received-SPF: pass client-ip=185.67.36.66; envelope-from=spyros.roum@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:327118 Archived-At: This is a multi-part message in MIME format. --------------CtOAAXlgu6dOi0SGxWrSGQHK Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Juri Linkov wrote: >> -(defun compilation-read-command (command) >> +(defun compilation-prompt-read-shell-command (command) >> (read-shell-command "Compile command: " command >> (if (equal (car compile-history) command) >> '(compile-history . 1) >> 'compile-history))) >> >> +(defun compilation-prompt-read-command-with-completion (command) >> + (completing-read "Compile command: " compile-history >> + nil nil command >> + (if (equal (car compile-history) command) >> + '(compile-history . 1) >> + 'compile-history))) > Thanks. The only problem I see is that the function name > doesn't indicate that it's completing on compile-history. > Probably a better name would be: > > compilation-read-command-with-history-completion I see what you are saying, however, I do like the current `compilation-prompt` prefix on these commands, as it distinguishes them from `compilation-read-command`. If I were to keep both the `-prompt` prefix, and the `history-completion` suffix, I worry that the command name would be too long at 55 chars. Instead, I suggest the name `compilation-prompt-read-with-history-completion` Effectively dropping the word `command`. I think `compilation-prompt` is enough and `command` doesn't add any information. --------------CtOAAXlgu6dOi0SGxWrSGQHK Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit
Juri Linkov wrote:
-(defun compilation-read-command (command)
+(defun compilation-prompt-read-shell-command (command)
   (read-shell-command "Compile command: " command
                       (if (equal (car compile-history) command)
                           '(compile-history . 1)
                         'compile-history)))
 
+(defun compilation-prompt-read-command-with-completion (command)
+  (completing-read "Compile command: " compile-history
+                   nil nil command
+                   (if (equal (car compile-history) command)
+                       '(compile-history . 1)
+                     'compile-history)))
Thanks.  The only problem I see is that the function name
doesn't indicate that it's completing on compile-history.
Probably a better name would be:

  compilation-read-command-with-history-completion

I see what you are saying, however, I do like the current `compilation-prompt` prefix on
these commands, as it distinguishes them from `compilation-read-command`.

If I were to keep both the `-prompt` prefix, and the `history-completion` suffix,
I worry that the command name would be too long at 55 chars.

Instead, I suggest the name `compilation-prompt-read-with-history-completion`

Effectively dropping the word `command`. I think `compilation-prompt` is enough and `command` doesn't add
any information.

--------------CtOAAXlgu6dOi0SGxWrSGQHK--