1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-03 22:56:33 +02:00

common: Improve helpfile.c to provide a generic template API.

* common/util.h (GET_TEMPLATE_CURRENT_LOCALE): New.
(GET_TEMPLATE_SUBST_ENVVARS): New.
(GET_TEMPLATE_CRLF): New.
* common/helpfile.c (findkey_fname): Add arg flags and terminate line
with CRLF if requested.
(findkey_locale): Replace arg only_current_locale by flags and add arg
domain.
(gnupg_get_help_string): Factor all code out to ...
(gnupg_get_template): new.  Add arg domain.  Handle SUBST flags.  Do
not trim tralins spaces with the CRLF flag.

* common/t-helpfile.c (main): Require domain name and add two options.
This commit is contained in:
Werner Koch 2025-05-28 15:19:19 +02:00
parent ef5fa47ee8
commit 8d837279bc
No known key found for this signature in database
GPG key ID: E3FDFF218E45B72B
3 changed files with 83 additions and 31 deletions

View file

@ -296,6 +296,14 @@ void gnupg_set_builddir (const char *newdir);
void gnupg_rl_initialize (void);
/*-- helpfile.c --*/
/* Bit flags for gnupg_get_template. */
#define GET_TEMPLATE_CURRENT_LOCALE 1 /* Use only the current locale. */
#define GET_TEMPLATE_SUBST_ENVVARS 2 /* Substitute environment variables. */
#define GET_TEMPLATE_CRLF 4 /* Use CR+LF. */
char *gnupg_get_template (const char *domain, const char *key,
unsigned int flags);
char *gnupg_get_help_string (const char *key, int only_current_locale);
/*-- localename.c --*/