unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#73412: 31.0.50; Improve sql-read-product
@ 2024-09-21 14:32 Stephen Berman via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-09-21 15:21 ` Eli Zaretskii
  0 siblings, 1 reply; 5+ messages in thread
From: Stephen Berman via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-09-21 14:32 UTC (permalink / raw)
  To: 73412

[-- Attachment #1: Type: text/plain, Size: 1503 bytes --]

0. emacs -Q
1. C-u M-x sql-product-interactive RET

Now the minbuffer displays the following:

SQL product: ansi

so it you want to change the product, e.g. to postgres, you first have
to delete "ansi".

Likewise, `M-x sql-set-product RET' produces the same minbuffer display,
requiring deletion to change the product.

The reason "ansi" is displayed after the prompt is that the definition
of sql-read-product uses the same non-nil value of the deprecated
argument INITIAL-INPUT as is used for the argument DEF.  The attached
patch makes INITIAL-INPUT nil, thus using only DEF, and also wraps the
prompt argument of sql-read-product in format-prompt, so the default
value is shown as part of the prompt and changing it does not require
deletion.  The patch also adjusts the two callers of sql-read-product
accordingly.


In GNU Emacs 31.0.50 (build 3, x86_64-pc-linux-gnu, GTK+ Version
 3.24.43, cairo version 1.18.2) of 2024-09-12 built on strobelfssd
Repository revision: 31e8500b061b6963708e66468fc89db1006226d7
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101013
System Description: Linux From Scratch r12.2-5-systemd

Configured using:
 'configure -C 'CFLAGS=-Og -g3''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
LCMS2 LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG
RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER
WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: sql-read-product patch --]
[-- Type: text/x-patch, Size: 1622 bytes --]

diff --git a/lisp/progmodes/sql.el b/lisp/progmodes/sql.el
index 5273ba2bee1..a0b350ce54f 100644
--- a/lisp/progmodes/sql.el
+++ b/lisp/progmodes/sql.el
@@ -2666,11 +2666,11 @@ sql-read-product
   "Read a valid SQL product."
   (let ((init (or (and initial (symbol-name initial)) "ansi")))
     (intern (completing-read
-             prompt
+             (format-prompt prompt init)
              (mapcar (lambda (info) (symbol-name (car info)))
                      sql-product-alist)
              nil 'require-match
-             init 'sql-product-history init))))
+             nil 'sql-product-history init))))

 (defun sql-add-product (product display &rest plist)
   "Add support for a database product in `sql-mode'.
@@ -2912,7 +2912,7 @@ sql-highlight-product
 (defun sql-set-product (product)
   "Set `sql-product' to PRODUCT and enable appropriate highlighting."
   (interactive
-   (list (sql-read-product "SQL product: ")))
+   (list (sql-read-product "SQL product")))
   (if (stringp product) (setq product (intern product)))
   (when (not (assoc product sql-product-alist))
     (user-error "SQL product %s is not supported; treated as ANSI" product)
@@ -4546,7 +4546,7 @@ sql-product-interactive
   (setq product
         (cond
          ((= (prefix-numeric-value product) 4) ; C-u, prompt for product
-          (sql-read-product "SQL product: " sql-product))
+          (sql-read-product "SQL product" sql-product))
          ((assoc product sql-product-alist) ; Product specified
           product)
          (t sql-product)))              ; Default to sql-product

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-09-22  4:45 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-21 14:32 bug#73412: 31.0.50; Improve sql-read-product Stephen Berman via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-09-21 15:21 ` Eli Zaretskii
2024-09-21 20:29   ` Stephen Berman via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-09-21 23:51     ` Stefan Kangas
2024-09-22  4:45     ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).