From a812877745d4d3c1cedc66a8351f1b9909517f6c Mon Sep 17 00:00:00 2001 From: Stefano Zacchiroli Date: Fri, 6 Nov 2015 09:56:40 -0800 Subject: [PATCH] Add service=... support to PostgreSQL completion --- src/_pgsql_utils | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/_pgsql_utils b/src/_pgsql_utils index 64cd527..f59a101 100644 --- a/src/_pgsql_utils +++ b/src/_pgsql_utils @@ -121,11 +121,21 @@ _pgsql_databases () { local _pgsql_user _pgsql_port _pgsql_host _pgsql_params _pgsql_get_identity + local _pgsql_services _pgsql_service_files + _pgsql_service_files=( + ~/.pg_service.conf + $(pg_config --sysconfdir)/pg_service.conf + ) + _pgsql_services=$( grep -h '^\[.*\]' $_pgsql_service_files 2>/dev/null \ + | sed -e 's/^\[/service=/' -e 's/\].*$//' ) + local _pgsql_db_sql _pgsql_db_sql="select d.datname from pg_catalog.pg_database d \ where d.datname <> 'template0'" - compadd "$@" - $( psql $_pgsql_params[@] -Atq -c $_pgsql_db_sql template1 2>/dev/null ) + compadd "$@" - \ + ${(f)_pgsql_services} \ + $( psql $_pgsql_params[@] -Atq -c $_pgsql_db_sql template1 2>/dev/null ) } _pgsql_encodings () {