Re: Tab complete for CREATE SUBSCRIPTION ... CONECTION does not work - Mailing list pgsql-hackers

From Japin Li
Subject Re: Tab complete for CREATE SUBSCRIPTION ... CONECTION does not work
Date
Msg-id MEYP282MB1669A4EFDE76E48B24D6292DB64E9@MEYP282MB1669.AUSP282.PROD.OUTLOOK.COM
Whole thread Raw
In response to Tab complete for CREATE SUBSCRIPTION ... CONECTION does not work  (Japin Li <japinli@hotmail.com>)
List pgsql-hackers
On Tue, 20 Sep 2022 at 00:19, Japin Li <japinli@hotmail.com> wrote:
> Hi hacker,
>
> As $subject detailed, the tab-complete cannot work such as:
>
>    CREATE SUBSCRIPTION sub CONNECTION 'dbname=postgres port=6543' \t
>
> It seems that the get_previous_words() could not parse the single quote.
>
> OTOH, it works for CREATE SUBSCRIPTION sub CONNECTION xx \t, should we fix it?

Attach fixed this problem.  Any thoughts?

-- 
Regrads,
Japin Li.
ChengDu WenWu Information Technology Co.,Ltd.

From 40b3ef8decd305bdaefddd797872da05bb5b65b4 Mon Sep 17 00:00:00 2001
From: Japin Li <japinli@hotmail.com>
Date: Thu, 22 Sep 2022 22:39:00 +0800
Subject: [PATCH v1] Fix tab-completation for CREATE SUBSCRIPTION

---
 src/bin/psql/tab-complete.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c
index 820f47d23a..73c34aed83 100644
--- a/src/bin/psql/tab-complete.c
+++ b/src/bin/psql/tab-complete.c
@@ -6068,7 +6068,7 @@ get_previous_words(int point, char **buffer, int *nwords)
          */
         for (start = end; start > 0; start--)
         {
-            if (buf[start] == '"')
+            if (buf[start] == '"' || buf[start] == '\'')
                 inquotes = !inquotes;
             if (!inquotes)
             {
-- 
2.25.1


pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: [RFC] building postgres with meson - v13
Next
From: Andres Freund
Date:
Subject: Re: proposal: possibility to read dumped table's name from file