[hb-info] Add --list-scripts
This commit is contained in:
parent
9ca2f86fe0
commit
aee7454d05
|
@ -42,6 +42,7 @@ struct info_t
|
|||
{"list-tables", 0, 0, G_OPTION_ARG_NONE, &this->list_tables, "List tables", nullptr},
|
||||
{"list-unicodes", 0, 0, G_OPTION_ARG_NONE, &this->list_unicodes, "List characters", nullptr},
|
||||
{"list-glyphs", 0, 0, G_OPTION_ARG_NONE, &this->list_glyphs, "List glyphs", nullptr},
|
||||
{"list-scripts", 0, 0, G_OPTION_ARG_NONE, &this->list_scripts, "List layout scripts", nullptr},
|
||||
{"list-features", 0, 0, G_OPTION_ARG_NONE, &this->list_features, "List layout features", nullptr},
|
||||
#ifndef HB_NO_VAR
|
||||
{"list-variations",0, 0, G_OPTION_ARG_NONE, &this->list_variations, "List variations", nullptr},
|
||||
|
@ -67,6 +68,7 @@ struct info_t
|
|||
hb_bool_t list_tables = false;
|
||||
hb_bool_t list_unicodes = false;
|
||||
hb_bool_t list_glyphs = false;
|
||||
hb_bool_t list_scripts = false;
|
||||
hb_bool_t list_features = false;
|
||||
#ifndef HB_NO_VAR
|
||||
hb_bool_t list_variations = false;
|
||||
|
@ -86,6 +88,7 @@ struct info_t
|
|||
list_tables =
|
||||
list_unicodes =
|
||||
list_glyphs =
|
||||
list_scripts =
|
||||
list_features =
|
||||
#ifndef HB_NO_VAR
|
||||
list_variations =
|
||||
|
@ -96,6 +99,7 @@ struct info_t
|
|||
if (list_tables) _list_tables ();
|
||||
if (list_unicodes) _list_unicodes ();
|
||||
if (list_glyphs) _list_glyphs ();
|
||||
if (list_scripts) _list_scripts ();
|
||||
if (list_features) _list_features ();
|
||||
#ifndef HB_NO_VAR
|
||||
if (list_variations) _list_variations ();
|
||||
|
@ -227,17 +231,15 @@ struct info_t
|
|||
}
|
||||
|
||||
void
|
||||
_list_features ()
|
||||
_list_scripts ()
|
||||
{
|
||||
if (verbose)
|
||||
{
|
||||
separator ();
|
||||
printf ("Layout features information:\n\n");
|
||||
printf ("Layout script information:\n\n");
|
||||
}
|
||||
|
||||
hb_tag_t table_tags[] = {HB_OT_TAG_GSUB, HB_OT_TAG_GPOS, HB_TAG_NONE};
|
||||
auto language = hb_language_get_default ();
|
||||
hb_set_t *features = hb_set_create ();
|
||||
|
||||
for (unsigned int i = 0; table_tags[i]; i++)
|
||||
{
|
||||
|
@ -282,6 +284,27 @@ struct info_t
|
|||
}
|
||||
while (script_count == sizeof script_array / sizeof script_array[0]);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void
|
||||
_list_features ()
|
||||
{
|
||||
if (verbose)
|
||||
{
|
||||
separator ();
|
||||
printf ("Layout features information:\n\n");
|
||||
}
|
||||
|
||||
hb_tag_t table_tags[] = {HB_OT_TAG_GSUB, HB_OT_TAG_GPOS, HB_TAG_NONE};
|
||||
auto language = hb_language_get_default ();
|
||||
hb_set_t *features = hb_set_create ();
|
||||
|
||||
for (unsigned int i = 0; table_tags[i]; i++)
|
||||
{
|
||||
printf ("Table: %c%c%c%c\n", HB_UNTAG (table_tags[i]));
|
||||
|
||||
hb_set_clear (features);
|
||||
hb_tag_t feature_array[32];
|
||||
unsigned feature_count = sizeof feature_array / sizeof feature_array[0];
|
||||
|
|
Loading…
Reference in New Issue