diff options
author | Přemysl Eric Janouch <p@janouch.name> | 2021-10-12 01:26:06 +0200 |
---|---|---|
committer | Přemysl Eric Janouch <p@janouch.name> | 2021-10-12 02:38:40 +0200 |
commit | 627c296057a91e73d3cd1631caa1e61ad4f2d124 (patch) | |
tree | bd9122d627103d9cda140964396791d82f079e86 /src/sdtui.c | |
parent | 13a16d1eb5b34e23aed4b17720bfbdbe85b5b5ca (diff) | |
download | tdv-627c296057a91e73d3cd1631caa1e61ad4f2d124.tar.gz tdv-627c296057a91e73d3cd1631caa1e61ad4f2d124.tar.xz tdv-627c296057a91e73d3cd1631caa1e61ad4f2d124.zip |
query-tool: support more field types
Add options to format the output for the terminal, or IRC messages.
Changed the output format to separate dictionary name with a tab,
so it's now rather similar to tabfiles.
Diffstat (limited to 'src/sdtui.c')
-rw-r--r-- | src/sdtui.c | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/src/sdtui.c b/src/sdtui.c index 5e00d7c..d64f1d1 100644 --- a/src/sdtui.c +++ b/src/sdtui.c @@ -348,23 +348,9 @@ view_entry_split_add_pango (ViewEntry *ve, const gchar *markup) static void view_entry_split_add_xdxf (ViewEntry *ve, const gchar *xml) { - // Trivially filter out all tags we can't quite handle, - // then parse the reduced XML as Pango markup--this seems to work well. - // Given the nature of our display, also skip keyword elements. - GString *filtered = g_string_new (""); - while (*xml) - { - // GMarkup can read some of the wilder XML constructs, Pango skips them - const gchar *p = NULL; - if (*xml != '<' || xml[1] == '!' || xml[1] == '?' - || g_ascii_isspace (xml[1]) || !*(p = xml + 1 + (xml[1] == '/')) - || (strchr ("biu", *p) && p[1] == '>') || !(p = strchr (p, '>'))) - g_string_append_c (filtered, *xml++); - else if (xml[1] != 'k' || xml[2] != '>' || !(xml = strstr (p, "</k>"))) - xml = ++p; - } - view_entry_split_add_pango (ve, filtered->str); - g_string_free (filtered, TRUE); + gchar *markup = xdxf_to_pango_markup_with_reduced_effort (xml); + view_entry_split_add_pango (ve, markup); + g_free (markup); } /// Decomposes a dictionary entry into the format we want. |