|
7 | 7 | * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group
|
8 | 8 | * Portions Copyright (c) 1994, Regents of the University of California
|
9 | 9 | *
|
10 |
| - * $PostgreSQL: pgsql/src/bin/scripts/common.c,v 1.20 2006/03/05 15:58:52 momjian Exp $ |
| 10 | + * $PostgreSQL: pgsql/src/bin/scripts/common.c,v 1.21 2006/09/22 18:50:41 petere Exp $ |
11 | 11 | *
|
12 | 12 | *-------------------------------------------------------------------------
|
13 | 13 | */
|
@@ -198,18 +198,29 @@ executeCommand(PGconn *conn, const char *query,
|
198 | 198 | * Check yes/no answer in a localized way.1=yes, 0=no, -1=neither.
|
199 | 199 | */
|
200 | 200 |
|
201 |
| -/* translator:Make sure the (y/n) prompts match the translation of this. */ |
| 201 | +/* translator:abbreviation for "yes" */ |
202 | 202 | #definePG_YESLETTER gettext_noop("y")
|
203 |
| -/* translator:Make sure the (y/n) prompts match the translation of this. */ |
| 203 | +/* translator:abbreviation for "no" */ |
204 | 204 | #definePG_NOLETTER gettext_noop("n")
|
205 | 205 |
|
206 |
| -int |
207 |
| -check_yesno_response(constchar*string) |
| 206 | +bool |
| 207 | +yesno_prompt(constchar*question) |
208 | 208 | {
|
209 |
| -if (strcmp(string,_(PG_YESLETTER))==0) |
210 |
| -return1; |
211 |
| -elseif (strcmp(string,_(PG_NOLETTER))==0) |
212 |
| -return0; |
213 |
| -else |
214 |
| -return-1; |
| 209 | +staticcharprompt[128]; |
| 210 | + |
| 211 | +for (;;) |
| 212 | +{ |
| 213 | +char*resp; |
| 214 | + |
| 215 | +/* translator: This is a question followed by the translated options for "yes" and "no". */ |
| 216 | +snprintf(prompt,sizeof(prompt),_("%s (%s/%s) "),_(question),_(PG_YESLETTER),_(PG_NOLETTER)); |
| 217 | +resp=simple_prompt(prompt,1, true); |
| 218 | + |
| 219 | +if (strcmp(resp,_(PG_YESLETTER))==0) |
| 220 | +return true; |
| 221 | +elseif (strcmp(resp,_(PG_NOLETTER))==0) |
| 222 | +return false; |
| 223 | + |
| 224 | +printf(_("Please answer \"%s\" or \"%s\".\n"),_(PG_YESLETTER),_(PG_NOLETTER)); |
| 225 | +} |
215 | 226 | }
|