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