X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=util%2Fyaz-icu.c;h=ac7806a33d1d5e96298c751e553810e1c8ef2115;hp=ceff120e7f0f17f3c425c9125fedb8672c7e5162;hb=30af0a1ebbea75c3e757eb03d3f988c61fce8511;hpb=7e4656f4fb50445df3713d6bea33a6fc4c5ab3d8 diff --git a/util/yaz-icu.c b/util/yaz-icu.c index ceff120..ac7806a 100644 --- a/util/yaz-icu.c +++ b/util/yaz-icu.c @@ -1,5 +1,5 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2013 Index Data + * Copyright (C) Index Data * See the file LICENSE for details. */ @@ -26,6 +26,7 @@ #include #include +#include /* commando line and config parameters */ struct config_t { @@ -454,8 +455,6 @@ static void process_text_file(struct config_t *p_config) { printf("Could not set up ICU chain from config file '%s' \n", p_config->conffile); - if (!U_SUCCESS(status)) - printf("ICU Error: %d %s\n", status, u_errorName(status)); exit(1); } @@ -480,9 +479,11 @@ static void process_text_file(struct config_t *p_config) else { size_t start, len; + const char *org_string = 0; const char *sortkey = icu_chain_token_sortkey(p_config->chain); - icu_chain_get_org_info(p_config->chain, &start, &len); + icu_chain_get_org_info2(p_config->chain, &start, &len, + &org_string); wrbuf_rewind(sw); wrbuf_puts_escaped(sw, sortkey); token_count++; @@ -526,6 +527,12 @@ static void process_text_file(struct config_t *p_config) { fprintf(p_config->outfile, " %ld+%ld", (long) start, (long) len); + fputc(' ', p_config->outfile); + fwrite(org_string, 1, start, p_config->outfile); + fputc('*', p_config->outfile); + fwrite(org_string + start, 1, len, p_config->outfile); + fputc('*', p_config->outfile); + fputs(org_string + start + len, p_config->outfile); } fprintf(p_config->outfile, "\n"); } @@ -554,6 +561,7 @@ int main(int argc, char **argv) #if YAZ_HAVE_ICU struct config_t config; + yaz_enable_panic_backtrace(*argv); read_params(argc, argv, &config); if (config.conffile && strlen(config.conffile))