From 752a4dac50a9a3e99eb60a5c6cedf8a962de6518 Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Thu, 12 Jun 2003 01:38:08 +0000
Subject: [PATCH] psql: tab completion for \encoding

Ian Barwick
---
 src/bin/psql/tab-complete.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c
index d1e1272a32c..f0de8f6c0e6 100644
--- a/src/bin/psql/tab-complete.c
+++ b/src/bin/psql/tab-complete.c
@@ -3,7 +3,7 @@
  *
  * Copyright 2000-2002 by PostgreSQL Global Development Group
  *
- * $Header: /cvsroot/pgsql/src/bin/psql/tab-complete.c,v 1.79 2003/06/11 22:13:22 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/tab-complete.c,v 1.80 2003/06/12 01:38:08 momjian Exp $
  */
 
 /*----------------------------------------------------------------------
@@ -207,6 +207,11 @@ initialize_readline(void)
 "          WHERE substr(nspname,1,%d)='%s' "\
 "         HAVING COUNT(nspname)=1))"
 
+#define Query_for_list_of_encodings \
+" SELECT DISTINCT pg_catalog.pg_encoding_to_char(conforencoding) "\
+"   FROM pg_catalog.pg_conversion "\
+"  WHERE substr(pg_catalog.pg_encoding_to_char(conforencoding),1,%d)=UPPER('%s')"
+
 #define Query_for_list_of_functions \
 " SELECT DISTINCT proname || '()' "\
 "   FROM pg_catalog.pg_proc p, pg_catalog.pg_namespace n "\
@@ -1273,6 +1278,8 @@ psql_completion(char *text, int start, int end)
 		COMPLETE_WITH_QUERY(Query_for_list_of_users);
 	else if (strcmp(prev_wd, "\\dv") == 0 || strcmp(prev_wd, "\\dv+") == 0)
 		COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_views);
+	else if (strcmp(prev_wd, "\\encoding") == 0)
+		COMPLETE_WITH_QUERY(Query_for_list_of_encodings);
 	else if (strcmp(prev_wd, "\\h") == 0 || strcmp(prev_wd, "\\help") == 0)
 		COMPLETE_WITH_LIST(sql_commands);
 	else if (strcmp(prev_wd, "\\pset") == 0)
-- 
GitLab