[util] Make tools default to stdin if no text is provided
authorBehdad Esfahbod <behdad@behdad.org>
Sat, 12 May 2012 13:54:27 +0000 (15:54 +0200)
committerBehdad Esfahbod <behdad@behdad.org>
Sat, 12 May 2012 13:54:27 +0000 (15:54 +0200)
One less argument to type in typical testing workflow!

util/hb-view.hh
util/options.cc
util/options.hh

index 66d955b..61af2a8 100644 (file)
@@ -50,8 +50,10 @@ struct hb_view_t
     if (argc && !input.text && !input.text_file) input.text = argv[0], argc--, argv++;
     if (argc)
       fail (TRUE, "Too many arguments on the command line");
-    if (!font_opts.font_file || (!input.text && !input.text_file))
+    if (!font_opts.font_file)
       options.usage ();
+    if (!input.text && !input.text_file)
+      input.text_file = "-";
 
     output.init (&font_opts);
 
index e24a026..363a150 100644 (file)
@@ -376,7 +376,7 @@ view_options_t::add_options (option_parser_t *parser)
   parser->add_group (entries,
                     "view",
                     "View options:",
-                    "Options controlling the output rendering",
+                    "Options controlling output rendering",
                     this);
 }
 
@@ -391,7 +391,7 @@ shape_options_t::add_options (option_parser_t *parser)
     {"direction",      0, 0, G_OPTION_ARG_STRING,      &this->direction,               "Set text direction (default: auto)",   "ltr/rtl/ttb/btt"},
     {"language",       0, 0, G_OPTION_ARG_STRING,      &this->language,                "Set text language (default: $LANG)",   "langstr"},
     {"script",         0, 0, G_OPTION_ARG_STRING,      &this->script,                  "Set text script (default: auto)",      "ISO-15924 tag"},
-    {"utf8-clusters",  0, 0, G_OPTION_ARG_NONE,        &this->utf8_clusters,           "Use UTF-8 byte indices, not char indices",     NULL},
+    {"utf8-clusters",  0, 0, G_OPTION_ARG_NONE,        &this->utf8_clusters,           "Use UTF8 byte indices, not char indices",      NULL},
     {NULL}
   };
   parser->add_group (entries,
@@ -400,9 +400,7 @@ shape_options_t::add_options (option_parser_t *parser)
                     "Options controlling the shaping process",
                     this);
 
-  const gchar *features_help = "\n"
-    "\n"
-    "    Comma-separated list of font features to apply to text\n"
+  const gchar *features_help = "Comma-separated list of font features\n"
     "\n"
     "    Features can be enabled or disabled, either globally or limited to\n"
     "    specific character ranges.\n"
@@ -444,7 +442,7 @@ shape_options_t::add_options (option_parser_t *parser)
   parser->add_group (entries2,
                     "features",
                     "Features options:",
-                    "Options controlling the OpenType font features applied",
+                    "Options controlling font features used",
                     this);
 }
 
@@ -470,7 +468,7 @@ text_options_t::add_options (option_parser_t *parser)
   GOptionEntry entries[] =
   {
     {"text",           0, 0, G_OPTION_ARG_STRING,      &this->text,                    "Set input text",                       "string"},
-    {"text-file",      0, 0, G_OPTION_ARG_STRING,      &this->text_file,               "Set input text file-name",             "filename"},
+    {"text-file",      0, 0, G_OPTION_ARG_STRING,      &this->text_file,               "Set input text file-name\n\n    If no text is provided, standard input is used for input.",            "filename"},
     {NULL}
   };
   parser->add_group (entries,
index ec51ed3..bf9123b 100644 (file)
@@ -239,7 +239,7 @@ struct text_options_t : option_group_t
     if (text && text_file)
       g_set_error (error,
                   G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE,
-                  "Only one of text and text-file must be set");
+                  "Only one of text and text-file can be set");
 
   };