]> granicus.if.org Git - procps-ng/commitdiff
free: add gettext support
authorSami Kerola <kerolasa@iki.fi>
Sat, 8 Oct 2011 20:24:06 +0000 (22:24 +0200)
committerSami Kerola <kerolasa@iki.fi>
Tue, 20 Dec 2011 16:17:03 +0000 (17:17 +0100)
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
free.c

diff --git a/free.c b/free.c
index 004e769d986a84432858a6633070142e71bdd8d4..91e13de92b066ef49a213df33ffe83a2adb4169c 100644 (file)
--- a/free.c
+++ b/free.c
  */
 #include "proc/sysinfo.h"
 #include "proc/version.h"
+#include "c.h"
+#include "nls.h"
+
 #include <errno.h>
-#include <err.h>
 #include <limits.h>
 #include <ctype.h>
 #include <getopt.h>
@@ -48,24 +50,26 @@ static const char *scale_size(unsigned long size, int flags, struct commandline_
 static void __attribute__ ((__noreturn__))
     usage(FILE * out)
 {
-       fprintf(out, "\nUsage: %s [options]\n" "\nOptions:\n", program_invocation_short_name);
-       fprintf(out,
-               "  -b, --bytes         show output in bytes\n"
-               "  -k, --kilo          show output in kilobytes\n"
-               "  -m, --mega          show output in megabytes\n"
-               "  -g, --giga          show output in gigabytes\n"
-               "      --tera          show output in terabytes\n"
-               "  -h, --human         show human readable output\n"
-               "      --si            use powers of 1000 not 1024\n"
-               "  -l, --lohi          show detailed low and high memory statistics\n"
-               "  -o, --old           use old format (no -/+buffers/cache line)\n"
-               "  -t, --total         show total for RAM + swap\n"
-               "  -s N, --seconds N   repeat printing every N seconds\n"
-               "  -c N, --count N     repeat printing N times\n");
+        fputs(USAGE_HEADER, out);
        fprintf(out,
-               "      --help          display this help text\n"
-               "  -V, --version       display version information and exit\n");
-       fprintf(out, "\nFor more information see free(1).\n");
+             _(" %s [options]\n"), program_invocation_short_name);
+       fputs(USAGE_OPTIONS, out);
+       fputs(_(" -b, --bytes         show output in bytes\n"), out);
+       fputs(_(" -k, --kilo          show output in kilobytes\n"), out);
+       fputs(_(" -m, --mega          show output in megabytes\n"), out);
+       fputs(_(" -g, --giga          show output in gigabytes\n"), out);
+       fputs(_("     --tera          show output in terabytes\n"), out);
+       fputs(_(" -h, --human         show human readable output\n"), out);
+       fputs(_("     --si            use powers of 1000 not 1024\n"), out);
+       fputs(_(" -l, --lohi          show detailed low and high memory statistics\n"), out);
+       fputs(_(" -o, --old           use old format (no -/+buffers/cache line)\n"), out);
+       fputs(_(" -t, --total         show total for RAM + swap\n"), out);
+       fputs(_(" -s N, --seconds N   repeat printing every N seconds\n"), out);
+       fputs(_(" -c N, --count N     repeat printing N times\n"), out);
+       fputs(USAGE_SEPARATOR, out);
+       fputs(_("      --help    display this help text\n"), out);
+       fputs(USAGE_VERSION, out);
+       fprintf(out, USAGE_MAN_TAIL("free(1)"));
 
        exit(out == stderr ? EXIT_FAILURE : EXIT_SUCCESS);
 }
@@ -79,7 +83,7 @@ double power(unsigned int base, unsigned int expo)
 static const char *scale_size(unsigned long size, int flags, struct commandline_arguments args)
 {
        static char nextup[] = { 'B', 'K', 'M', 'G', 'T', 0 };
-       static char buf[SIZE_MAX];
+       static char buf[BUFSIZ];
        int i;
        char *up;
        float base;
@@ -236,23 +240,23 @@ int main(int argc, char **argv)
                        flags |= FREE_REPEAT;
                        args.repeat_interval = (1000000 * strtof(optarg, &endptr));
                        if (errno || optarg == endptr || (endptr && *endptr))
-                               errx(EXIT_FAILURE, "seconds argument `%s' failed", optarg);
+                               errx(EXIT_FAILURE, _("seconds argument `%s' failed"), optarg);
                        if (args.repeat_interval < 1)
                                errx(EXIT_FAILURE,
-                                    "seconds argument `%s' is not positive number", optarg);
+                                    _("seconds argument `%s' is not positive number"), optarg);
                        break;
                case 'c':
                        flags |= FREE_REPEAT;
                        flags |= FREE_REPEATCOUNT;
                        args.repeat_counter = strtoul(optarg, &endptr, 10);
                        if (errno || optarg == endptr || (endptr && *endptr))
-                               errx(EXIT_FAILURE, "count argument `%s' failed", optarg);
+                               errx(EXIT_FAILURE, _("count argument `%s' failed"), optarg);
 
                        break;
                case HELP_OPTION:
                        usage(stdout);
                case 'V':
-                       display_version();
+                       printf(PROCPS_NG_VERSION);
                        exit(EXIT_SUCCESS);
                default:
                        usage(stderr);
@@ -261,10 +265,10 @@ int main(int argc, char **argv)
        do {
 
                meminfo();
-
-               printf
-                   ("             total       used       free     shared    buffers     cached\n");
-               printf("%-7s", "Mem:");
+               printf("%7s %10s %10s %10s %10s %10s %10s\n",
+                      "", _("total"), _("used"), _("free"), _("shared"),
+                      _("buffers"), _("cached"));
+               printf("%-7s", _("Mem:"));
                printf(" %10s", scale_size(kb_main_total, flags, args));
                printf(" %10s", scale_size(kb_main_used, flags, args));
                printf(" %10s", scale_size(kb_main_free, flags, args));
@@ -279,13 +283,13 @@ int main(int argc, char **argv)
                 * to print the high info, even if it is zero.
                 */
                if (flags & FREE_LOHI) {
-                       printf("%-7s", "Low:");
+                       printf("%-7s", _("Low:"));
                        printf(" %10s", scale_size(kb_low_total, flags, args));
                        printf(" %10s", scale_size(kb_low_total - kb_low_free, flags, args));
                        printf(" %10s", scale_size(kb_low_free, flags, args));
                        printf("\n");
 
-                       printf("%-7s", "High:");
+                       printf("%-7s", _("High:"));
                        printf(" %10s", scale_size(kb_high_total, flags, args));
                        printf(" %10s", scale_size(kb_high_total - kb_high_free, flags, args));
                        printf(" %10s", scale_size(kb_high_free, flags, args));
@@ -294,21 +298,21 @@ int main(int argc, char **argv)
 
                if (!(flags & FREE_OLDFMT)) {
                        unsigned KLONG buffers_plus_cached = kb_main_buffers + kb_main_cached;
-                       printf("-/+ buffers/cache:");
+                       printf(_("-/+ buffers/cache:"));
                        printf(" %10s",
                               scale_size(kb_main_used - buffers_plus_cached, flags, args));
                        printf(" %10s",
                               scale_size(kb_main_free + buffers_plus_cached, flags, args));
                        printf("\n");
                }
-               printf("%-7s", "Swap:");
+               printf("%-7s", _("Swap:"));
                printf(" %10s", scale_size(kb_swap_total, flags, args));
                printf(" %10s", scale_size(kb_swap_used, flags, args));
                printf(" %10s", scale_size(kb_swap_free, flags, args));
                printf("\n");
 
                if (flags & FREE_TOTAL) {
-                       printf("%-7s", "Total:");
+                       printf("%-7s", _("Total:"));
                        printf(" %10s", scale_size(kb_main_total + kb_swap_total, flags, args));
                        printf(" %10s", scale_size(kb_main_used + kb_swap_used, flags, args));
                        printf(" %10s", scale_size(kb_main_free + kb_swap_free, flags, args));