pacman/pacman-conf, testpkg: Added translatable strings

Added gettext macro to warnings, helps, and errors for translation.

Signed-off-by: Matthew Sexton <wsdmatty@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
Matthew Sexton 2019-09-10 05:33:53 -04:00 committed by Allan McRae
parent a6ae5f0a04
commit 6d99a15f0b
2 changed files with 42 additions and 31 deletions

View file

@ -20,6 +20,7 @@
#include <getopt.h> #include <getopt.h>
#include <string.h> #include <string.h>
#include "conf.h" #include "conf.h"
#include "util.h"
const char *myname = "pacman-conf", *myver = "1.0.0"; const char *myname = "pacman-conf", *myver = "1.0.0";
@ -37,17 +38,17 @@ static void cleanup(void)
static void usage(int ret) static void usage(int ret)
{ {
FILE *stream = (ret ? stderr : stdout); FILE *stream = (ret ? stderr : stdout);
fputs("pacman-conf - query pacman's configuration file\n", stream); fputs(_("pacman-conf - query pacman's configuration file\n"), stream);
fputs("usage: pacman-conf [options] [<directive>...]\n", stream); fputs(_("usage: pacman-conf [options] [<directive>...]\n"), stream);
fputs(" pacman-conf (--repo-list|--help|--version)\n", stream); fputs(_(" pacman-conf (--repo-list|--help|--version)\n"), stream);
fputs("options:\n", stream); fputs(_("options:\n"), stream);
fputs(" -c, --config=<path> set an alternate configuration file\n", stream); fputs(_(" -c, --config=<path> set an alternate configuration file\n"), stream);
fputs(" -R, --rootdir=<path> set an alternate installation root\n", stream); fputs(_(" -R, --rootdir=<path> set an alternate installation root\n"), stream);
fputs(" -r, --repo=<remote> query options for a specific repo\n", stream); fputs(_(" -r, --repo=<remote> query options for a specific repo\n"), stream);
fputs(" -v, --verbose always show directive names\n", stream); fputs(_(" -v, --verbose always show directive names\n"), stream);
fputs(" -l, --repo-list list configured repositories\n", stream); fputs(_(" -l, --repo-list list configured repositories\n"), stream);
fputs(" -h, --help display this help information\n", stream); fputs(_(" -h, --help display this help information\n"), stream);
fputs(" -V, --version display version information\n", stream); fputs(_(" -V, --version display version information\n"), stream);
cleanup(); cleanup();
exit(ret); exit(ret);
} }
@ -76,7 +77,7 @@ static void parse_opts(int argc, char **argv)
break; break;
case 'R': case 'R':
if ((config->rootdir = strdup(optarg)) == NULL) { if ((config->rootdir = strdup(optarg)) == NULL) {
fprintf(stderr, "error setting rootdir '%s': out of memory\n", optarg); fprintf(stderr, _("error setting rootdir '%s': out of memory\n"), optarg);
cleanup(); cleanup();
exit(1); exit(1);
} }
@ -106,7 +107,7 @@ static void parse_opts(int argc, char **argv)
} }
if(parseconfigfile(config_file) != 0 || setdefaults(config) != 0) { if(parseconfigfile(config_file) != 0 || setdefaults(config) != 0) {
fprintf(stderr, "error parsing '%s'\n", config_file); fprintf(stderr, _("error parsing '%s'\n"), config_file);
cleanup(); cleanup();
exit(1); exit(1);
} }
@ -286,7 +287,7 @@ static int list_repo_directives(void)
} }
if(!repo) { if(!repo) {
fprintf(stderr, "error: repo '%s' not configured\n", repo_name); fprintf(stderr, _("error: repo '%s' not configured\n"), repo_name);
return 1; return 1;
} }
@ -303,10 +304,10 @@ static int list_repo_directives(void)
} else if(strcasecmp(i->data, "Usage") == 0) { } else if(strcasecmp(i->data, "Usage") == 0) {
show_usage("Usage", repo->usage); show_usage("Usage", repo->usage);
} else if(strcasecmp(i->data, "Include") == 0) { } else if(strcasecmp(i->data, "Include") == 0) {
fputs("warning: 'Include' directives cannot be queried\n", stderr); fprintf(stderr,_("warning: '%s' directives cannot be queried\n"), "Include");
ret = 1; ret = 1;
} else { } else {
fprintf(stderr, "warning: unknown directive '%s'\n", (char*) i->data); fprintf(stderr, _("warning: unknown directive '%s'\n"), (char*) i->data);
ret = 1; ret = 1;
} }
} }
@ -379,10 +380,10 @@ static int list_directives(void)
show_siglevel("RemoteFileSigLevel", config->remotefilesiglevel, 1); show_siglevel("RemoteFileSigLevel", config->remotefilesiglevel, 1);
} else if(strcasecmp(i->data, "Include") == 0) { } else if(strcasecmp(i->data, "Include") == 0) {
fputs("warning: 'Include' directives cannot be queried\n", stderr); fprintf(stderr, _("warning: '%s' directives cannot be queried\n"), "Include");
ret = 1; ret = 1;
} else { } else {
fprintf(stderr, "warning: unknown directive '%s'\n", (char*) i->data); fprintf(stderr, _("warning: unknown directive '%s'\n"), (char*) i->data);
ret = 1; ret = 1;
} }
} }
@ -404,6 +405,11 @@ int main(int argc, char **argv)
goto cleanup; goto cleanup;
} }
/* i18n init */
#if defined(ENABLE_NLS)
bindtextdomain(PACKAGE, LOCALEDIR);
#endif
for(; optind < argc; optind++) { for(; optind < argc; optind++) {
directives = alpm_list_add(directives, argv[optind]); directives = alpm_list_add(directives, argv[optind]);
} }
@ -414,7 +420,7 @@ int main(int argc, char **argv)
if(repo_list) { if(repo_list) {
if(directives) { if(directives) {
fputs("error: directives may not be specified with --repo-list\n", stderr); fprintf(stderr, _("error: directives may not be specified with %s\n"), "--repo-list");
ret = 1; ret = 1;
goto cleanup; goto cleanup;
} }

View file

@ -22,6 +22,7 @@
#include <stdarg.h> /* va_list */ #include <stdarg.h> /* va_list */
#include <alpm.h> #include <alpm.h>
#include "util.h" /* For Localization */
__attribute__((format(printf, 2, 0))) __attribute__((format(printf, 2, 0)))
static void output_cb(alpm_loglevel_t level, const char *fmt, va_list args) static void output_cb(alpm_loglevel_t level, const char *fmt, va_list args)
@ -30,8 +31,8 @@ static void output_cb(alpm_loglevel_t level, const char *fmt, va_list args)
return; return;
} }
switch(level) { switch(level) {
case ALPM_LOG_ERROR: printf("error: "); break; case ALPM_LOG_ERROR: printf(_("error: ")); break;
case ALPM_LOG_WARNING: printf("warning: "); break; case ALPM_LOG_WARNING: printf(_("warning: ")); break;
default: return; /* skip other messages */ default: return; /* skip other messages */
} }
vprintf(fmt, args); vprintf(fmt, args);
@ -45,16 +46,20 @@ int main(int argc, char *argv[])
alpm_pkg_t *pkg = NULL; alpm_pkg_t *pkg = NULL;
const int siglevel = ALPM_SIG_PACKAGE | ALPM_SIG_PACKAGE_OPTIONAL; const int siglevel = ALPM_SIG_PACKAGE | ALPM_SIG_PACKAGE_OPTIONAL;
#if defined(ENABLE_NLS)
bindtextdomain(PACKAGE, LOCALEDIR);
#endif
if(argc != 2) { if(argc != 2) {
fprintf(stderr, "testpkg (pacman) v" PACKAGE_VERSION "\n\n" fprintf(stderr, "testpkg (pacman) v" PACKAGE_VERSION "\n\n");
"Test a pacman package for validity.\n\n" fprintf(stderr, _("Test a pacman package for validity.\n\n"));
"Usage: testpkg <package file>\n"); fprintf(stderr, _("Usage: testpkg <package file>\n"));
return 1; return 1;
} }
handle = alpm_initialize(ROOTDIR, DBPATH, &err); handle = alpm_initialize(ROOTDIR, DBPATH, &err);
if(!handle) { if(!handle) {
fprintf(stderr, "cannot initialize alpm: %s\n", alpm_strerror(err)); fprintf(stderr, _("cannot initialize alpm: %s\n"), alpm_strerror(err));
return 1; return 1;
} }
@ -69,28 +74,28 @@ int main(int argc, char *argv[])
err = alpm_errno(handle); err = alpm_errno(handle);
switch(err) { switch(err) {
case ALPM_ERR_PKG_NOT_FOUND: case ALPM_ERR_PKG_NOT_FOUND:
printf("Cannot find the given file.\n"); printf(_("Cannot find the given file.\n"));
break; break;
case ALPM_ERR_PKG_OPEN: case ALPM_ERR_PKG_OPEN:
printf("Cannot open the given file.\n"); printf(_("Cannot open the given file.\n"));
break; break;
case ALPM_ERR_LIBARCHIVE: case ALPM_ERR_LIBARCHIVE:
case ALPM_ERR_PKG_INVALID: case ALPM_ERR_PKG_INVALID:
printf("Package is invalid.\n"); printf(_("Package is invalid.\n"));
break; break;
default: default:
printf("libalpm error: %s\n", alpm_strerror(err)); printf(_("libalpm error: %s\n"), alpm_strerror(err));
break; break;
} }
retval = 1; retval = 1;
} else { } else {
alpm_pkg_free(pkg); alpm_pkg_free(pkg);
printf("Package is valid.\n"); printf(_("Package is valid.\n"));
retval = 0; retval = 0;
} }
if(alpm_release(handle) == -1) { if(alpm_release(handle) == -1) {
fprintf(stderr, "error releasing alpm\n"); fprintf(stderr, _("error releasing alpm\n"));
} }
return retval; return retval;