1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-30 11:03:19 +03:00

Remove configure's check for rl_completion_append_character.

The comment for PGAC_READLINE_VARIABLES says "Readline versions < 2.1
don't have rl_completion_append_character".  It seems certain that such
versions are extinct in the wild, though; for sure there are none in the
buildfarm.  Libedit has had this variable for at least twenty years too.
Also, tab-complete.c's behavior without it is quite unfriendly, since
we'll emit a space even when completion fails; but we've had no
complaints about that.

Therefore, let's assume this variable is always there, and drop the
configure check to save a few build cycles.

Discussion: https://postgr.es/m/147685.1643858911@sss.pgh.pa.us
This commit is contained in:
Tom Lane
2022-02-02 23:01:56 -05:00
parent 9d179d9c23
commit 4b0e37faaf
5 changed files with 4 additions and 74 deletions

View File

@ -1674,9 +1674,7 @@ psql_completion(const char *text, int start, int end)
completion_last_char = (end > start) ? text[end - start - 1] : '\0';
/* We usually want the append character to be a space. */
#ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER
rl_completion_append_character = ' ';
#endif
/* Clear a few things. */
completion_charp = NULL;
@ -4547,9 +4545,7 @@ psql_completion(const char *text, int start, int end)
{
COMPLETE_WITH_CONST(true, "");
/* Also, prevent Readline from appending stuff to the non-match */
#ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER
rl_completion_append_character = '\0';
#endif
#ifdef HAVE_RL_COMPLETION_SUPPRESS_QUOTE
rl_completion_suppress_quote = 1;
#endif
@ -5078,10 +5074,8 @@ _complete_from_query(const char *simple_query,
* space afterwards. Otherwise the schema will stop being part of the
* completion subject text, which is not what we want.
*/
#ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER
if (num_schema_only > 0 && num_query_other == 0 && num_keywords == 0)
rl_completion_append_character = '\0';
#endif
/* No more matches, so free the result structure and return null */
PQclear(result);
@ -5368,10 +5362,8 @@ complete_from_files(const char *text, int state)
Assert(*retend == '\'');
*retend = '/';
/* Try to prevent libedit from adding a space, too */
#ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER
/* Prevent libedit from adding a space, too */
rl_completion_append_character = '\0';
#endif
}
}

View File

@ -460,10 +460,6 @@
/* Define to 1 if you have the `readv' function. */
#undef HAVE_READV
/* Define to 1 if you have the global variable
'rl_completion_append_character'. */
#undef HAVE_RL_COMPLETION_APPEND_CHARACTER
/* Define to 1 if you have the `rl_completion_matches' function. */
#undef HAVE_RL_COMPLETION_MATCHES

View File

@ -347,7 +347,6 @@ sub GenerateFiles
HAVE_READLINE_READLINE_H => undef,
HAVE_READLINK => undef,
HAVE_READV => undef,
HAVE_RL_COMPLETION_APPEND_CHARACTER => undef,
HAVE_RL_COMPLETION_MATCHES => undef,
HAVE_RL_COMPLETION_SUPPRESS_QUOTE => undef,
HAVE_RL_FILENAME_COMPLETION_FUNCTION => undef,