diff options
author | Bruno Haible <bruno@clisp.org> | 2003-02-14 14:04:38 +0000 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2009-06-23 12:09:32 +0200 |
commit | 8e0eb38d0caf9c6e67f063034a268f426b0f4edd (patch) | |
tree | 218434c074551da5ecb611bfe2c7b38256867bdb /src/ChangeLog | |
parent | 54bf838758ee554e6668b33f2d83fa6a4e94b4b5 (diff) | |
download | external_gettext-8e0eb38d0caf9c6e67f063034a268f426b0f4edd.zip external_gettext-8e0eb38d0caf9c6e67f063034a268f426b0f4edd.tar.gz external_gettext-8e0eb38d0caf9c6e67f063034a268f426b0f4edd.tar.bz2 |
Move src/ChangeLog to gettext-tools/src/ChangeLog.0.
Diffstat (limited to 'src/ChangeLog')
-rw-r--r-- | src/ChangeLog | 5247 |
1 files changed, 0 insertions, 5247 deletions
diff --git a/src/ChangeLog b/src/ChangeLog deleted file mode 100644 index f260588..0000000 --- a/src/ChangeLog +++ /dev/null @@ -1,5247 +0,0 @@ -2003-01-31 Bruno Haible <bruno@clisp.org> - - * gettext-po.h: New file. - * gettext-po.c: New file. - * Makefile.am (lib_LTLIBRARIES): Add libgettextpo.la. - (include_HEADERS): New variable. - (libgettextpo_la_SOURCES, libgettextpo_la_LDFLAGS): New variables. - (LTV_CURRENT, LTV_REVISION, LTV_AGE): New variables. - -2003-01-24 Bruno Haible <bruno@clisp.org> - - * msgattrib.c (long_options): Add --only-file and --ignore-file. - (main): Handle options --only-file and --ignore-file. - (usage): Document options --only-file and --ignore-file. - (process_message_list): Add arguments only_mdlp, ignore_mdlp. - (process_msgdomain_list): Likewise. - -2003-01-23 Bruno Haible <bruno@clisp.org> - - * po-gram.h: Don't include <sys/types.h>. - -2003-01-23 Bruno Haible <bruno@clisp.org> - - * msgmerge.c (use_fuzzy_matching): New variable. - (long_options): Add option -N/--no-fuzzy-matching. - (main, match_domain): Implement it. - (usage): Document it. - -2003-01-23 Bruno Haible <bruno@clisp.org> - - * write-mo.c (write_table): Use xmalloc/free instead of alloca/freea - for most allocations. Needed for platforms with a small stack, such - as Woe32 with a default stack size of 1.2 MB. - Reported by Xiong Jiang <jxiong@offtopic.org>. - -2003-01-23 Bruno Haible <bruno@clisp.org> - - * format-c.c (get_c99_format_directives): Free the allocated - descriptor after use. - -2003-01-18 Bruno Haible <bruno@clisp.org> - - * FILES: Update. - -2003-01-12 Bruno Haible <bruno@clisp.org> - - * msgconv.c: Include localcharset.h. - (locale_charset): Remove declaration. - * msginit.c: Include localcharset.h. - (locale_charset): Remove declaration. - * msgl-charset.c: Include localcharset.h. - (locale_charset): Remove declaration. - -2003-01-12 Bruno Haible <bruno@clisp.org> - - * format-java.c: Include alloca.h instead of liballoca.h. - * msggrep.c: Likewise. - * msginit.c: Likewise. - * msgl-cat.c: Likewise. - * msgl-charset.c: Likewise. - * msgl-iconv.c: Likewise. - * msgmerge.c: Likewise. - * po-charset.c: Likewise. - * read-tcl.c: Likewise. - * write-java.c: Likewise. - * write-mo.c: Likewise. - * write-po.c: Likewise. - * write-tcl.c: Likewise. - -2003-01-12 Bruno Haible <bruno@clisp.org> - - * Makefile.am: Make use of += for variables. - -2003-01-12 Bruno Haible <bruno@clisp.org> - - * write-po.c (wrap): Add an assertion, to protect against Solaris 2.9 - iconv() bug. - -2003-01-10 Bruno Haible <bruno@clisp.org> - - * po-charset.c (po_lex_charset_set): Work around Solaris 2.9 iconv() - bug. - * write-po.c (wrap): Likewise. - -2003-01-08 Bruno Haible <bruno@clisp.org> - - * project-id: Make it work with configure files that use - AM_INIT_AUTOMAKE from automake-1.7.2. - -2002-12-04 Bruno Haible <bruno@clisp.org> - - Fix handling of references to filenames starting with a digit. - * po-hash-gen.y (last_was_colon): New variable. - (yylex): Update it for each token. Recognize numbers only immediately - after a colon. - (po_hash): Move function. Initialize last_was_colon. - Reported by Yanko Kaneti <yaneti@declera.com> and - Jordi Mallach <jordi@sindominio.net>. - -2002-11-22 Bruno Haible <bruno@clisp.org> - - * msgexec.c (process_string): Change test of full_write return value. - * msggrep.c (is_string_selected): Likewise. - * urlget.c (cat_file): Likewise. - -2002-11-14 Bruno Haible <bruno@clisp.org> - - * x-php.c (phase3_getc): Initialize variable last_was_qmark. - -2002-11-13 Bruno Haible <bruno@clisp.org> - - Assume ANSI C. - * dir-list.h (dir_list_append, dir_list_nth, dir_list_save_reset, - dir_list_restore): Use ANSI C function declarations. - * dir-list.c (dir_list_append, dir_list_nth, dir_list_restore): - Likewise. - * file-list.h (read_names_from_file): Likewise. - * file-list.c (read_names_from_file): Likewise. - * format.h (struct formatstring_parser, get_c99_format_directives): - Likewise. - * format-awk.c (numbered_arg_compare, format_parse, format_free, - format_get_number_of_directives, format_check, format_print): Likewise. - * format-c.c (numbered_arg_compare, format_parse, format_free, - format_get_number_of_directives, format_check, - get_c99_format_directives, format_print): Likewise. - * format-elisp.c (numbered_arg_compare, format_parse, format_free, - format_get_number_of_directives, format_check, format_print): Likewise. - * format-java.c (message_format_parse, date_format_parse, - number_format_parse, choice_format_parse, numbered_arg_compare, - format_parse, format_free, format_get_number_of_directives, - format_check, format_print): Likewise. - * format-librep.c (numbered_arg_compare, format_parse, format_free, - format_get_number_of_directives, format_check, format_print): Likewise. - * format-lisp.c (verify_element, verify_list, free_element, free_list, - copy_element, copy_list, equal_element, equal_list, - ensure_initial_alloc, grow_initial_alloc, ensure_repeated_alloc, - grow_repeated_alloc, normalize_outermost_list, normalize_list, - is_empty_list, unfold_loop, rotate_loop, initial_splitelement, - initial_unshare, shift_list, make_intersected_element, - append_repeated_to_initial, backtrack_in_initial, - make_intersected_list, make_intersection_with_empty_list, - intersection, make_union_element, make_union_list, - make_union_with_empty_list, union, is_required, - add_required_constraint, add_end_constraint, add_type_constraint, - add_listtype_constraint, add_req_type_constraint, - add_req_listtype_constraint, make_repeated_list_of_lists, - make_repeated_list, check_params, nocheck_params, parse_upto, - format_parse, format_free, format_get_number_of_directives, - format_check, print_element, print_list, format_print): Likewise. - * format-pascal.c (numbered_arg_compare, format_parse, format_free, - format_get_number_of_directives, format_check, format_print): Likewise. - * format-php.c (numbered_arg_compare, format_parse, format_free, - format_get_number_of_directives, format_check, format_print): Likewise. - * format-python.c (named_arg_compare, format_parse, format_free, - format_get_number_of_directives, format_check, format_print): Likewise. - * format-tcl.c (numbered_arg_compare, format_parse, format_free, - format_get_number_of_directives, format_check, format_print): Likewise. - * format-ycp.c (format_parse, format_free, - format_get_number_of_directives, format_check, format_print): Likewise. - * gettext.c (main, usage, expand_escape): Likewise. - * hostname.c (main, usage): Likewise. - * message.h (possible_format_p, message_alloc, message_free, - message_comment_append, message_comment_dot_append, - message_comment_filepos, message_copy, message_list_alloc, - message_list_free, message_list_append, message_list_prepend, - message_list_delete_nth, message_predicate_ty, - message_list_remove_if_not, message_list_search, - message_list_search_fuzzy, message_list_list_alloc, - message_list_list_free, message_list_list_append, - message_list_list_append_list, message_list_list_search, - message_list_list_search_fuzzy, msgdomain_alloc, msgdomain_free, - msgdomain_list_alloc, msgdomain_list_free, msgdomain_list_append, - msgdomain_list_append_list, msgdomain_list_sublist, - msgdomain_list_search, msgdomain_list_search_fuzzy): Likewise. - * message.c (possible_format_p, message_alloc, message_free, - message_comment_append, message_comment_dot_append, - message_comment_filepos, message_copy, message_list_alloc, - message_list_free, message_list_append, message_list_prepend, - message_list_delete_nth, message_list_remove_if_not, - message_list_search, message_list_search_fuzzy_inner, - message_list_search_fuzzy, message_list_list_free, - message_list_list_append, message_list_list_append_list, - message_list_list_search, message_list_list_search_fuzzy, - msgdomain_alloc, msgdomain_free, msgdomain_list_alloc, - msgdomain_list_free, msgdomain_list_append, - msgdomain_list_append_list, msgdomain_list_sublist, - msgdomain_list_search, msgdomain_list_search_fuzzy): Likewise. - * msgattrib.c (main, usage, is_message_selected, process_message_list, - process_msgdomain_list): Likewise. - * msgcat.c (main, usage): Likewise. - * msgcmp.c (main, usage, is_message_selected, remove_obsoletes, - match_domain, compare): Likewise. - * msgcomm.c (main, usage): Likewise. - * msgconv.c (locale_charset, main, usage): Likewise. - * msgen.c (main, usage): Likewise. - * msgexec.c (main, usage, nonintr_close, process_string, - process_message, process_message_list, process_msgdomain_list): - Likewise. - * msgfilter.c (main, usage, nonintr_close, nonintr_read, nonintr_write, - nonintr_select, process_string, process_message, process_message_list, - process_msgdomain_list): Likewise. - * msgfmt.c (main, usage, add_mo_suffix, new_domain, is_nonobsolete, - sigfpe_handler, check_plural_eval, check_plural, check_pair, - check_header_entry, format_constructor, format_debrief, - format_directive_domain, format_directive_message, - format_comment_special, read_po_file): Likewise. - * msggrep.c (main, no_pass, usage, filename_list_match, nonintr_close, - is_string_selected, is_message_selected, process_message_list, - process_msgdomain_list): Likewise. - * msginit.c (locale_charset, _nl_locale_name, _nl_expand_alias, main, - usage, catalogname_for_locale, language_of_locale, po_revision_date, - content_type, fields, get_field, put_field, subst_string, - subst_string_list, fill_header): Likewise. - * msgl-ascii.h (is_ascii_string, is_ascii_string_list, - is_ascii_message, is_ascii_message_list): Likewise. - * msgl-ascii.c (is_ascii_string, is_ascii_string_list, - is_ascii_message, is_ascii_message_list): Likewise. - * msgl-cat.h (catenate_msgdomain_list): Likewise. - * msgl-cat.c (is_message_selected, is_message_needed, - is_message_first_needed, catenate_msgdomain_list): Likewise. - * msgl-charset.h (compare_po_locale_charsets): Likewise. - * msgl-charset.c (locale_charset, compare_po_locale_charsets): - Likewise. - * msgl-english.h (msgdomain_list_english): Likewise. - * msgl-english.c (msgdomain_list_english): Likewise. - * msgl-equal.h (string_list_equal, message_equal, message_list_equal, - msgdomain_list_equal): Likewise. - * msgl-equal.c (msgstr_equal, msgstr_equal_ignoring_potcdate, - pos_equal, string_list_equal, message_equal, message_list_equal, - msgdomain_equal, msgdomain_list_equal): Likewise. - * msgl-iconv.h (convert_string, iconv_message_list, - iconv_msgdomain_list): Likewise. - * msgl-iconv.c (iconv_string, convert_string, convert_string_list, - convert_msgid, convert_msgstr, iconv_message_list, - iconv_msgdomain_list): Likewise. - * msgmerge.c (main, usage, compendium, msgfmt_check_pair_fails, - message_merge, match_domain, merge): Likewise. - * msgunfmt.c (main, usage): Likewise. - * msguniq.c (main, usage): Likewise. - * ngettext.c (main, usage, expand_escape): Likewise. - * open-po.h (open_po_file): Likewise. - * open-po.c (open_po_file): Likewise. - * po-charset.h (po_charset_canonicalize, po_charset_ascii_compatible, - po_is_charset_weird, po_is_charset_weird_cjk, po_lex_charset_init, - po_lex_charset_set, po_lex_charset_close): Likewise. - * po-charset.c (po_charset_canonicalize, po_charset_ascii_compatible, - po_is_charset_weird, po_is_charset_weird_cjk, po_lex_charset_set): - Likewise. - * po-gram.h (po_gram_parse): Likewise. - * po-hash-gen.y (yyerror, yylex, po_hash): Likewise. - * po-hash.h (po_hash): Likewise. - * po-lex.h (lex_start, lex_end, lex_open, lex_close, po_gram_lex, - po_lex_pass_comments, po_lex_pass_obsolete_entries, po_gram_error, - po_gram_error_at_line): Likewise. - * po-lex.c: Include <stdarg.h> instead of libstdarg.h. - (ALERT_CHAR): Remove macro. - (po_gram_error, po_gram_error_at_line): Use ANSI C function - declarations. Use va_start instead of VA_START. - (memcpy_small, mb_iseof, mb_ptr, mb_len, mb_iseq, mb_isnul, mb_cmp, - mb_equal, mb_isascii, mb_width, mb_putc, mb_setascii, mb_copy, - mbfile_init, mbfile_getc, mbfile_ungetc, lex_start, lex_open, - lex_getc, lex_ungetc, keyword_p, po_lex_pass_comments, - po_lex_pass_obsolete_entries): Use ANSI C function declarations. - * po-time.h (po_strftime): Likewise. - * po-time.c (difftm, po_strftime): Likewise. - * po.h (struct po_method_ty, po_alloc, po_scan, po_scan_file, po_free, - po_callback_domain, po_callback_message, po_callback_comment, - po_callback_comment_dot, po_callback_comment_filepos, - po_parse_comment_special): Likewise. - * po.c (po_alloc, po_free, po_parse_brief, po_parse_debrief, po_scan, - po_scan_file, po_directive_domain, po_callback_domain, - po_directive_message, po_callback_message, po_comment_special, - po_comment, po_comment_dot, po_callback_comment, po_comment_filepos, - po_callback_comment_filepos, po_parse_comment_special): Likewise. - * read-java.h (msgdomain_read_java): Likewise. - * read-java.c (execute_and_read_po_output, msgdomain_read_java): - Likewise. - * read-mo.h (read_mo_file): Likewise. - * read-mo.c (read_binary_mo_file, get_uint32, get_string, - get_sysdep_string, read_mo_file): Likewise. - * read-po.h (read_po, read_po_file): Likewise. - * read-po.c (readall_constructor, readall_destructor, - readall_directive_domain, readall_directive_message, - readall_parse_brief, readall_comment, readall_comment_dot, - readall_comment_special, readall_comment_filepos, read_po, - read_po_file): Likewise. - * read-tcl.h (msgdomain_read_tcl): Likewise. - * read-tcl.c (msgdomain_read_tcl): Likewise. - * str-list.h (string_list_init, string_list_alloc, string_list_append, - string_list_append_unique, string_list_destroy, string_list_free, - string_list_concat, string_list_concat_destroy, string_list_join, - string_list_member): Likewise. - * str-list.c (string_list_init, string_list_append, - string_list_append_unique, string_list_destroy, string_list_free, - string_list_concat, string_list_concat_destroy, string_list_join, - string_list_member): Likewise. - * urlget.c (main, usage, cat_file, execute_it, fetch): Likewise. - * write-java.h (msgdomain_write_java): Likewise. - * write-java.c (check_resource_name, string_hashcode, - compute_hashsize, compare_index, compute_table_items, - write_java_string, write_java_msgstr, write_lookup_code, - is_expression_boolean, write_java_expression, write_java_code, - cleanup, msgdomain_write_java): Likewise. - * write-mo.h (msgdomain_write_mo): Likewise. - * write-mo.c (compare_id, write_table, msgdomain_write_mo): Likewise. - * write-po.h (message_page_width_set, message_page_width_ignore, - message_print_style_indent, message_print_style_uniforum, - message_print_style_escape, msgdomain_list_print, - msgdomain_list_sort_by_msgid, msgdomain_list_sort_by_filepos): - Likewise. - * write-po.c (message_page_width_set, message_print_style_escape, - make_format_description_string, significant_format_p, - has_significant_format_p, make_c_width_description_string, - memcpy_small, wrap, print_blank_line, message_print, - message_print_obsolete, msgdomain_list_print, cmp_by_msgid, - msgdomain_list_sort_by_msgid, cmp_filepos, - msgdomain_list_sort_filepos, cmp_by_filepos, - msgdomain_list_sort_by_filepos): Likewise. - * write-tcl.h (msgdomain_write_tcl): Likewise. - * write-tcl.c (write_tcl_string, write_msg, msgdomain_write_tcl): - Likewise. - * x-awk.h (extract_awk, x_awk_keyword, x_awk_extract_all): Likewise. - * x-awk.c (ALERT_CHAR): Remove macro. - (x_awk_keyword, phase1_ungetc, phase2_ungetc, free_token, x_awk_lex, - extract_parenthesized, extract_awk): Use ANSI C function declarations. - * x-c.h (extract_c, x_c_extract_all, x_c_keyword, x_c_any_keywords, - x_c_trigraphs): Likewise. - * x-c.c (ALERT_CHAR): Remove macro. - (x_c_keyword, phase1_ungetc, phase2_ungetc, phase3_ungetc, - comment_add, comment_line_end, phase4_ungetc, phase7_ungetc, - free_token, phase5_get, phaseX_get, phase6_get, phase6_unget, - is_inttypes_macro, phase8a_get, phase8a_unget, phase8_get, x_c_lex, - extract_parenthesized, extract_c): Use ANSI C function declarations. - * x-elisp.h (extract_elisp, x_elisp_extract_all, x_elisp_keyword): - Likewise. - * x-elisp.c (ALERT_CHAR): Remove macro. - (x_elisp_keyword, do_ungetc, init_token, free_token, grow_token, - is_integer, is_float, read_token, comment_add, comment_line_end, - free_object, string_of_object, do_getc_escaped, read_object, - extract_elisp): Use ANSI C function declarations. - * x-glade.h (extract_glade, x_glade_extract_all, x_glade_keyword): - Likewise. - * x-glade.c (x_glade_keyword, XML_StartElementHandler, - XML_EndElementHandler, XML_CharacterDataHandler, XML_CommentHandler, - p_XML_ParserCreate, p_XML_SetElementHandler, - p_XML_SetCharacterDataHandler, p_XML_SetCommentHandler, p_XML_Parse, - p_XML_GetErrorCode, p_XML_GetCurrentLineNumber, - p_XML_GetCurrentColumnNumber, p_XML_ParserFree, p_XML_ErrorString, - ensure_stack_size, start_element_handler, end_element_handler, - character_data_handler, comment_handler, do_extract_glade, - extract_glade): Likewise. - * x-java.h (extract_java, x_java_keyword, x_java_extract_all): - Likewise. - * x-java.l (append_char_buf, get_string, destroy_charbuf, - update_line_no, strip_ending_spaces, append_strings, isplus, isdot, - translate_esc, object_list_destroy, get_num_objects, get_object, - add_object, alloc_keyword, tailcmp, do_compare, is_keyword, - x_java_keyword, extract_java): Likewise. - * x-librep.h (extract_librep, x_librep_extract_all, x_librep_keyword): - Likewise. - * x-librep.c (ALERT_CHAR): Remove macro. - (x_librep_keyword, do_ungetc, init_token, free_token, grow_token, - read_token, comment_add, comment_line_end, free_object, - string_of_object, do_getc_escaped, read_object, extract_librep): Use - ANSI C function declarations. - * x-lisp.h (extract_lisp, x_lisp_extract_all, x_lisp_keyword): - Likewise. - * x-lisp.c (x_lisp_keyword, do_ungetc, syntax_code_of, - read_char_syntax, attribute_of, init_token, free_token, grow_token, - read_token, has_a_dot, all_a_number, a_letter_to_digit, has_a_digit, - has_adjacent_letters, is_potential_number, is_number, upcase_token, - downcase_token, case_convert_token, comment_add, comment_line_end, - free_object, string_of_object, read_object, extract_lisp): Likewise. - * x-php.h (extract_php, x_php_keyword, x_php_extract_all): Likewise. - * x-php.c (x_php_keyword, phase1_ungetc, phase2_ungetc, comment_add, - comment_line_end, phase3_ungetc, free_token, x_php_lex, - extract_parenthesized, extract_php): Likewise. - * x-po.h (extract_po): Likewise. - * x-po.c (extract_constructor, extract_directive_domain, - extract_directive_message, extract_parse_brief, extract_comment, - extract_comment_dot, extract_comment_filepos, extract_comment_special, - extract_po): Likewise. - * x-python.h (extract_python, x_python_keyword, x_python_extract_all): - Likewise. - * x-python.c (ALERT_CHAR): Remove macro. - (x_python_keyword, phase1_ungetc, comment_add, phase2_ungetc, - phase7_getuc, phase5_get, phase5_unget, x_python_lex, - extract_parenthesized, extract_python): Use ANSI C function - declarations. - * x-rst.h (extract_rst): Likewise. - * x-rst.c (extract_rst): Likewise. - * x-smalltalk.h (extract_smalltalk): Likewise. - * x-smalltalk.c (phase1_ungetc, comment_add, phase2_get, phase2_unget, - x_smalltalk_lex, extract_smalltalk): Likewise. - * x-tcl.h (extract_tcl, x_tcl_extract_all, x_tcl_keyword): Likewise. - * x-tcl.c (ALERT_CHAR): Remove macro. - (x_tcl_keyword, do_ungetc, phase1_ungetc, phase2_pop, phase2_ungetc, - init_token, free_token, grow_token, comment_add, free_word, - string_of_word, accumulate_word, read_word, read_command, - read_command_list, extract_tcl): Use ANSI C function declarations. - * x-ycp.h (extract_ycp): Likewise. - * x-ycp.c (phase1_ungetc, phase2_ungetc, x_ycp_lex, extract_ycp): - Likewise. - * xgettext.h (split_keywordspec, xgettext_comment_add, - xgettext_comment, xgettext_comment_reset, remember_a_message, - remember_a_message_plural): Likewise. - * xgettext.c (extractor_func, main, usage, exclude_directive_domain, - exclude_directive_message, read_exclusion_file, split_keywordspec, - xgettext_comment_add, xgettext_comment, xgettext_open, - extract_from_file, remember_a_message, remember_a_message_plural, - finalize_header, language_to_extractor, extension_to_language): - Likewise. - -2002-11-05 Bruno Haible <bruno@clisp.org> - - Allow non-ASCII msgids in POT files. - * po-charset.h (po_charset_utf8): New declaration. - * po-charset.c (utf8, po_charset_utf8): New variables. - (po_charset_canonicalize): Use po_charset_utf8. - * msgl-iconv.h: Include iconv.h. - (convert_string): New declaration. - * msgl-iconv.c (convert_string): Export function. - (convert_msgid): New function. - (iconv_message_list): Call it. - * xgettext.h: Include iconv.h. - (xgettext_global_source_encoding, xgettext_global_source_iconv, - xgettext_current_source_encoding, xgettext_current_source_iconv): New - declarations. - * xgettext.c (xgettext_global_source_encoding, - xgettext_global_source_iconv, xgettext_current_source_encoding, - xgettext_current_source_iconv): New variables. - (long_options): New option --from-code. - (main): Initialize xgettext_global_source_encoding. Handle option - --from-code. Initialize and destroy xgettext_global_source_iconv. - (usage): Document option --from-code. - (extract_from_file): Set xgettext_current_source_encoding and - xgettext_current_source_iconv. - (CONVERT_STRING): New macro. - (remember_a_message, remember_a_message_plural): Call CONVERT_STRING. - (finalize_header): Set the charset in the header here. - * x-glade.c (do_extract_glade): Set xgettext_current_source_encoding. - Don't set the result's header charset; this is now done in xgettext.c. - * x-python.c (extract_python): Likewise. - * x-tcl.c (extract_tcl): Likewise. - * write-po.c (message_print, message_print_obsolete): Don't warn about - non-ASCII msgids if the file's encoding is UTF-8. - * msginit.c (content_type): Add header argument. Use charset UTF-8 - if that was already the POT file's encoding. - (fields): Update. - * msgmerge.c (merge): If the POT file was in UTF-8, convert the - definitions to UTF-8. - * msgcmp.c (compare): Likewise. - -2002-11-01 Bruno Haible <bruno@clisp.org> - - * msgcmp.c: Include read-po.h. - (is_message_selected, remove_obsoletes): New functions. - (grammar, compare_constructor, compare_destructor, - compare_directive_domain, compare_directive_message): Remove functions. - (compare_class_ty): Remove type. - (compare_methods): Remove variable. - (compare): Use read_po_file instead. - -2002-10-14 Bruno Haible <bruno@clisp.org> - - * project-id: When testing for "GNU $package", ignore libtool, because - libtool.m4 calls a package "GNU $package" even if it is not GNU. - Reported by Andrew Suffield <asuffield@debian.org>. - -2002-10-03 Bruno Haible <bruno@clisp.org> - - * msgl-equal.h (message_equal, message_list_equal, - msgdomain_list_equal): Add 'ignore_potcdate' argument. - * msgl-equal-c (msgstr_equal, msgstr_equal_ignoring_potcdate): New - functions. - (message_equal, message_list_equal, msgdomain_equal, - msgdomain_list_equal): Add 'ignore_potcdate' argument. - * msgmerge.c (main): Call msgdomain_list_equal with ignore_potcdate = - true. - -2002-09-09 Bruno Haible <bruno@clisp.org> - - * x-smalltalk.h: New file. - * x-smalltalk.c: New file. - * xgettext.c: Include x-smalltalk.h. - (usage): Mention Smalltalk language. - (language_to_extractor): Add Smalltalk support. - (extension_to_language): Likewise. - * Makefile.am (noinst_HEADERS): Add x-smalltalk.h. - (xgettext_SOURCES): Add x-smalltalk.c. - -2002-08-18 Bruno Haible <bruno@clisp.org> - - * message.h (enum format_type): New enum value 'format_php'. - (NFORMATS): Increment. - * message.c (format_language, format_language_pretty): Add entry - for php. - * format.h (formatstring_php): New declaration. - * format-php.c: New file. - * format.c (formatstring_parsers): Add entry for php. - * x-php.h: New file. - * x-php.c: New file. - * xgettext.c: Include x-php.c. - (main): Call x_php_extract_all, x_php_keyword. - (language_to_scanner): Add PHP rule. - (extension_to_language): Add PHP rule. - * Makefile.am (noinst_HEADERS): Add x-php.h. - (FORMAT_SOURCE): Add format-php.c. - (xgettext_SOURCES): Add x-php.c. - -2002-08-17 Bruno Haible <bruno@clisp.org> - - * urlget.c (fetch): Also try invoking the 'curl' program. - -2002-08-06 Bruno Haible <bruno@clisp.org> - - * gettext-0.11.5 released. - -2002-08-02 Bruno Haible <bruno@clisp.org> - - * read-mo.c (get_sysdep_string): Make the error message easier to - translate. - -2002-07-25 Bruno Haible <bruno@clisp.org> - - * gettext-0.11.4 released. - -2002-07-21 Bruno Haible <bruno@clisp.org> - - * format.h (struct interval): New type. - (get_c99_format_directives): New declaration. - * format-c.c (FAT_SIZE_8_T, FAT_SIZE_16_T, FAT_SIZE_32_T, - FAT_SIZE_64_T, FAT_SIZE_LEAST8_T, FAT_SIZE_LEAST16_T, - FAT_SIZE_LEAST32_T, FAT_SIZE_LEAST64_T, FAT_SIZE_FAST8_T, - FAT_SIZE_FAST16_T, FAT_SIZE_FAST32_T, FAT_SIZE_FAST64_T, - FAT_SIZE_INTPTR_T): New enum values. - (FAT_SIZE_MASK): Update. - (struct spec): New fields c99_directives_count, c99_directives. - (format_parse): Recognize C 99 <inttypes.h> macros. Set the new - fields c99_directives_count, c99_directives in the result. - (get_c99_format_directives): New function. - (format_print): Update. - * x-c.c (is_inttypes_macro, phase8a_get, phase8a_unget): New functions. - (phase8_get): Use phase8a_get instead of phase6_get. - * write-mo.c: Include format.h, xmalloc.h. - (freea): New macro. - (struct pre_string): New type. - (struct pre_message): Renamed from struct id_str_pair. - (compare_id): Update. - (struct pre_sysdep_segment): New type. - (struct pre_segment_pair): New type. - (struct pre_sysdep_string): New type. - (struct pre_sysdep_message): New type. - (write_table): Rewritten. - * read-mo.c (endian): Remove variable. - (read32, seek32, string32): Remove functions. - (struct binary_mo_file): New type. - (read_binary_mo_file, get_uint32, get_string, get_sysdep_string): New - functions. - (read_mo_file): Reworked to work in-memory, without fseek/lseek calls. - * msgfmt.c (format_directive_message): Copy the is_format array. - Needed by write-mo.c. - -2002-07-20 Andreas Schwab <schwab@suse.de> - - * plural-eval.c: Include <signal.h> if !INTDIV0_RAISES_SIGFPE. - -2002-07-17 Bruno Haible <bruno@clisp.org> - - * gettext-0.11.3 released. - -2002-07-17 Bruno Haible <bruno@clisp.org> - - * dir-list.c: Include stdlib.h. - -2002-07-16 Bruno Haible <bruno@clisp.org> - - * read-java.c (msgdomain_read_java): Pass $GETTEXTJEXEDIR to - execute_java_class. - * urlget.c (fetch): Likewise. - * Makefile.am (DEFS): Define USEJEXE and GETTEXTJEXEDIR. - (GCJ, GCJFLAGS, USEJEXE): New variables. - (all-java*): Renamed to take into account BUILDJAVAEXE. - (install-data-java*): Likewise. - (installdirs-java*): Likewise. - (uninstall-java*): Likewise. - (install-exec-*): New rules. - (gnu.gettext.DumpResource, gnu.gettext.GetURL): New rules. - (CLEANFILES): Add them. - -2002-07-16 Bruno Haible <bruno@clisp.org> - - * project-id: Make it work when the configure file was generated by - autoconf-2.52 with AC_INIT and AM_INIT_AUTOMAKE(...). - -2002-06-14 Bruno Haible <bruno@clisp.org> - - * po-lex.c (mbfile_getc): Handle the case where iconv converts - some character and returns -1 at once; this can happen immediately - after an invalid multibyte sequence. - Reported by Andrew V. Samoilov <kai@cmail.ru>. - -2002-06-08 Bruno Haible <bruno@clisp.org> - - * user-email.in: Look at /etc/sysconfig/mail, found on SuSE Linux. - Suggested by Karl Eichwalder <ke@suse.de>. - -2002-06-07 Bruno Haible <bruno@clisp.org> - - * user-email.in: Look at /etc/mailname, found on Debian systems. - Suggested by Mark W. Eichin <eichin@thok.org>. - -2002-06-07 Bruno Haible <bruno@clisp.org> - - * msgfmt.c (install_sigfpe_handler): Assume the signal is always - SIGFPE, regardless of the platform. - (uninstall_sigfpe_handler): Likewise. - -2002-05-29 Bruno Haible <bruno@clisp.org> - - * dir-list.h (dir_list_save_reset, dir_list_restore): New declarations. - * dir-list.c (dir_list_save_reset, dir_list_restore): New functions. - * xgettext.c (main): Temporarily reset the dir_list while opening - reading the contents of the output file. - Reported by Mark Eichin <eichin@thok.org>. - -2002-05-22 Bruno Haible <bruno@clisp.org> - - * msgl-iconv.h (iconv_message_list): Add from_filename argument. - (iconv_msgdomain_list): Likewise. - * msgl-iconv.c (iconv_message_list): Add from_filename argument. - Don't give an error for POT files containing charset=CHARSET. - (iconv_msgdomain_list): Add from_filename argument. - * msgl-cat.c (catenate_msgdomain_list): Don't give an error for - POT files containing charset=CHARSET. Pass input file name to - iconv_message_list. - * msgconv.c (main): Pass input file name to iconv_msgdomain_list. - * write-java.c (msgdomain_write_java): Update. - * write-tcl.c (msgdomain_write_tcl): Update. - * x-glade.c (do_extract_glade): Update. - * x-python.c (extract_python): Update. - * x-tcl.c (extract_tcl): Update. - -2002-05-18 Bruno Haible <bruno@clisp.org> - - * Makefile.am (RM): New variable. - (install-exec-am): Depend on install-exec-clean. - (install-exec-clean): New rule. - -2002-05-14 Bruno Haible <bruno@clisp.org> - - * write-po.c (wrap): Canonicalize the charset. Handle the case when - po_charset_canonicalize returns NULL. - Reported by Jan-Marek Glogowski <glogow@stud.fbi.fh-darmstadt.de>. - -2002-05-12 Bruno Haible <bruno@clisp.org> - - * po-charset.c (po_charset_canonicalize): Add ISO-8859-14, KOI8-T, - GEORGIAN-PS to the list of allowed encodings. - -2002-04-30 Bruno Haible <bruno@clisp.org> - - * hostname.c (ipv6_ntop): Provide a fallback definition for systems - that define s6_addr but no s6_addr16 element of 'struct in6_addr'. - Reported by Perry Rapp <PRapp@smartronix.com>. - -2002-04-28 Bruno Haible <bruno@clisp.org> - - * project-id: Recognize package name and version when given by a - two-argument AC_INIT invocation (autoconf 2.52 and newer). - -2002-04-24 Bruno Haible <bruno@clisp.org> - - * gettext-0.11.2 released. - -2002-04-23 Bruno Haible <bruno@clisp.org> - - * write-po.h (message_page_width_ignore): New declaration. - * write-po.c (wrap_strings): New variable. - (message_page_width_ignore): New function. - (wrap): Ignore the do_wrap argument if wrap_strings is false. - * msgattrib.c (long_options): Add --no-wrap option. - (main): Handle option --no-wrap. - (usage): Document option --no-wrap. - * msgcat.c: Likewise. - * msgcomm.c: Likewise. - * msgconv.c: Likewise. - * msgen.c: Likewise. - * msgfilter.c: Likewise. - * msggrep.c: Likewise. - * msginit.c: Likewise. - * msgmerge.c: Likewise. - * msgunfmt.c: Likewise. - * msguniq.c: Likewise. - * xgettext.c: Likewise. - -2002-04-19 Bruno Haible <bruno@clisp.org> - - * msginit.c (catalogname_for_locale): Add wa_BE. Change Javanese from - jw to jv. - -2002-04-15 Bruno Haible <bruno@clisp.org> - - * po-lex.h (po_gram_error): Treat Apple's version of GCC like non-GCC. - * po-lex.c (po_gram_error): Likewise. - Reported by Richard S. Blake <blakers@presence-group.com>. - -2002-04-04 Bruno Haible <bruno@clisp.org> - - * po-lex.h (po_gram_error): Use __VA_ARGS__ + 0 instead of __VA_ARGS__. - (po_gram_error_at_line): LIkewise. - Fixes syntax error when __VA_ARGS__ is empty. - Reported by Trond Eivind Glomsrød <teg@redhat.com>. - -2002-04-04 Bruno Haible <bruno@clisp.org> - - * msginit.c (find_pot): Add dummy return, to avoid gcc warning. - -2002-03-12 Bruno Haible <bruno@clisp.org> - - * gettext-0.11.1 released. - -2002-03-10 Bruno Haible <bruno@clisp.org> - - * x-python.c (phase7_getuc): Change type of buf to 'unsigned char[]'. - -2002-03-07 Bruno Haible <bruno@clisp.org> - - * Makefile.am (msginit_LDADD): Use @INTL_LIBTOOL_SUFFIX_PREFIX@o - instead of $(OBJEXT). - -2002-03-05 Bruno Haible <bruno@clisp.org> - - * hostname.c (s6_addr16): Define if not defined by the system. - (ipv6_ntop): Use s6_addr16 instead of in6_u.u6_addr16. - -2002-03-05 Bruno Haible <bruno@clisp.org> - - * xgettext.c (usage): Mention languages Python, awk, Tcl, RST, Glade. - -2002-03-03 Bruno Haible <bruno@clisp.org> - - * message.h (format_type): New enum value 'format_tcl'. - (NFORMATS): Increment. - * message.c (format_language): Add format_tcl entry. - (format_language_pretty): Likewise. - * format.h (formatstring_tcl): New declaration. - * format-tcl.c: New file. - * format.c (formatstring_parsers): Add formatstring_tcl. - * x-tcl.h: New file. - * x-tcl.c: New file. - * xgettext.c: Include x-tcl.h. - (main): Call x_tcl_extract_all, x_tcl_keyword. - (language_to_scanner): Add Tcl rule. - (extension_to_language): Add Tcl rule. - * write-tcl.h: New file. - * write-tcl.c: New file. - * msgfmt.c: Include write-tcl.h. - (tcl_mode, tcl_locale_name, tcl_base_directory): New variables. - (long_options): Add option "--tcl". - (main): Handle --tcl option. Set tcl_mode, tcl_locale_name, - tcl_base_directory. More checks for contradicting options. Call - msgdomain_write_tcl. - (usage): Mention Tcl mode. - (format_directive_domain): Ignore domain directive if in Tcl mode. - * read-tcl.h: New file. - * read-tcl.c: New file. - * msgunfmt.c: Include read-tcl.h. - (tcl_mode, tcl_locale_name, tcl_base_directory): New variables. - (long_options): Add option "--tcl". - (main): Handle --tcl and -d options. Set tcl_mode, tcl_locale_name, - tcl_base_directory. More checks for contradicting options. Call - msgdomain_read_tcl. - (usage): Mention Tcl mode. - * msgunfmt.tcl: New file. - * Makefile.am (noinst_HEADERS): Add read-tcl.h, write-tcl.h, x-tcl.h. - (EXTRA_DIST): Add msgunfmt.tcl. - (DEFS): Add -DGETTEXTDATADIR. - (FORMAT_SOURCE): Add format-tcl.c. - (msgfmt_SOURCES): Add write-tcl.c. - (msgunfmt_SOURCES): Add read-tcl.c. - (xgettext_SOURCES): Add x-tcl.c. - (install-tcl, installdirs-tcl, uninstall-tcl): New targets. - -2002-03-02 Bruno Haible <bruno@clisp.org> - - * msgfmt.c (check_pair): Don't count "&&" as an accelerator designator, - for consistency with Qt and KDE. - -2002-02-24 Bruno Haible <bruno@clisp.org> - - * po-lex.c: Include libstdarg.h. - (VA_START, va_alist, va_dcl): Remove macros. - (po_gram_error): Modernize varargs handling. Fix memory leak. - (po_gram_error_at_line): Likewise. - -2002-02-21 Bruno Haible <bruno@clisp.org> - - * msggrep.c: Include liballoca.h. - (grep_args): Add a third one. - (grep_argv): Likewise. - (long_options): Add --comment option. - (main): Handle option --comment/-C. - (usage): Document option -C. - (is_message_selected): If option -C is given, concatenate the - translator comments and run a third grep pass on the result. - -2002-02-09 Bruno Haible <bruno@clisp.org> - - * message.h (possible_format_p): Change return type to bool. - * message.c (possible_format_p): Likewise. - -2002-01-14 Bruno Haible <bruno@clisp.org> - - * x-glade.h: New file. - * x-glade.c: New file. - * xgettext.c: Include x-glade.h. - (main): Call x_glade_extract_all, x_glade_keyword. - (language_to_scanner): Add glade rule. - (extension_to_language): Add glade rule. - * Makefile.am (noinst_HEADERS): Add x-glade.h. - (xgettext_SOURCES): Add x-glade.c. - (xgettext_LDADD): Add @LTLIBEXPAT@. - -2002-01-27 Bruno Haible <bruno@clisp.org> - - * message.h (format_type): New enum value 'format_awk'. - (NFORMATS): Increment. - * message.c (format_language): Add format_awk entry. - (format_language_pretty): Likewise. - * format.h (formatstring_awk): New declaration. - * format-awk.c: New file. - * format.c (formatstring_parsers): Add formatstring_awk. - * x-awk.h: New file. - * x-awk.c: New file. - * xgettext.c: Include x-awk.h. - (main): Call x_awk_extract_all, x_awk_keyword. - (language_to_scanner): Add awk rule. - (extension_to_language): Add awk rule. - * Makefile.am (noinst_HEADERS): Add x-awk.h. - (FORMAT_SOURCE): Add format-awk.c. - (xgettext_SOURCES): Add x-awk.c. - -2002-02-02 Bruno Haible <bruno@clisp.org> - - * x-python.h: New file. - * x-python.c: New file. - * xgettext.c: Include x-python.h. - (main): Call x_python_extract_all, x_python_keyword. - (language_to_scanner): Add Python rule. - (extension_to_language): Add Python rule. - * Makefile.am (noinst_HEADERS): Add x-python.h. - (INCLUDES): Add -I$(top_srcdir)/libuniname. - (LIBUNINAME): New variable. - (xgettext_SOURCES): Add x-python.c. - (xgettext_LDADD): Add $(LIBUNINAME). - -2002-02-03 Bruno Haible <bruno@clisp.org> - - * msgfmt.c (check_header_entry): Terminate the error strings with - newlines. - -2002-02-03 Bruno Haible <bruno@clisp.org> - - * plural-table.h: New file. - * plural-table.c: New file. - * msginit.c: Include plural-table.h. - (plural_forms): Use plural_table. - * msgfmt.c: Include plural-table.h. - (check_plural): Print a recommendation about the right plural formula. - * Makefile.am (noinst_HEADERS): Add plural-table.h. - (libgettextsrc_la_SOURCES): Add plural-table.c. - -2002-02-03 Bruno Haible <bruno@clisp.org> - - * xgettext.c (finalize_header): New function. - (main): Call it. - -2002-02-03 Bruno Haible <bruno@clisp.org> - - * msginit.c (fill_header): Also replace "PACKAGE" in the comment. - -2002-02-02 Bruno Haible <bruno@clisp.org> - - * Makefile.am (INCLUDES): Add -I../lib. Needed for builds with - builddir != srcdir on platforms that don't have fnmatch and stdbool.h. - -2002-01-31 Bruno Haible <bruno@clisp.org> - - * gettext-0.11 released. - -2002-01-31 Bruno Haible <bruno@clisp.org> - - * plural-eval.h: Include eval-plural.h instead of plural-eval.c. - -2002-01-30 Bruno Haible <bruno@clisp.org> - - Make the gettext and ngettext programs independent of libgettextlib. - * Makefile.am (gettext_LDADD, ngettext_LDADD): New variables. - -2002-01-27 Bruno Haible <bruno@clisp.org> - - * x-ycp.c (enum token_type_ty): New enum value token_type_symbol. - (x_ycp_lex): Assign a value to tp->string if and only if the type is - token_type_string_literal or token_type_symbol. - (extract_ycp): Simplify cleanup. - -2002-01-27 Bruno Haible <bruno@clisp.org> - - * x-java.l (extract_java): Don't create a plural message if the - function can take two string argument but actually has only one - string argument. - -2002-01-27 Bruno Haible <bruno@clisp.org> - - * x-lisp.c (extract_lisp): Free memory allocated in toplevel_object. - * x-elisp.c (string_of_object): Use memcpy. - (extract_elisp): Free memory allocated in toplevel_object. - * x-librep.c (string_of_object): Use memcpy. - (extract_librep): Free memory allocated in toplevel_object. - -2002-01-27 Bruno Haible <bruno@clisp.org> - - * x-c.c (ALERT_CHAR): New macro. - (phase7_getc): Accept \a and \v as well. - - * x-c.c (free_token): New inline function. - (phase6_get): Use it. - -2002-01-27 Bruno Haible <bruno@clisp.org> - - * format-elisp.c (format_check): Don't use Java syntax for format - argument number in error message. - * format-librep.c (format_check): Likewise. - * format-pascal.c (format_check): Likewise. - -2002-01-24 Bruno Haible <bruno@clisp.org> - - * Makefile.am (LDADD): Use @LTLIBINTL@ instead of @INTLLIBS@. - (libgettextsrc_la_LDFLAGS): Likewise. Use @LTLIBICONV@ instead of - @LIBICONV@. - -2002-01-21 Bruno Haible <bruno@clisp.org> - - * msggrep.c (main): On SunOS4, don't pass option "-q" to grep. - -2002-01-19 Bruno Haible <bruno@clisp.org> - - * msgfmt.c (check_header_entry): Emit error messages including the - file name. - -2002-01-19 Bruno Haible <bruno@clisp.org> - - * open-po.c (open_po_file): Use 'size_t' instead of 'int'. - * x-java.l (translate_esc): Likewise. - * read-mo.c (read_mo_file): Use 'unsigned int' instead of 'int'. - -2002-01-13 Bruno Haible <bruno@clisp.org> - - * msgl-iconv.c (iconv_message_list): Don't complain by a nonportable - encoding name if it has been overridden by an argument canon_from_code. - -2002-01-13 Bruno Haible <bruno@clisp.org> - - * msgl-ascii.c (is_ascii_message): Don't consider a message as being - ASCII if its msgid or msgid_plural is not ASCII. - -2002-01-12 Bruno Haible <bruno@clisp.org> - - * gettext.c (main): Update year in --version output. - * ngettext.c (main): Likewise. - * msgattrib.c (main): Likewise. - * msgcat.c (main): Likewise. - * msgcmp.c (main): Likewise. - * msgcomm.c (main): Likewise. - * msgconv.c (main): Likewise. - * msgen.c (main): Likewise. - * msgexec.c (main): Likewise. - * msgfilter.c (main): Likewise. - * msgfmt.c (main): Likewise. - * msggrep.c (main): Likewise. - * msginit.c (main): Likewise. - * msgmerge.c (main): Likewise. - * msgunfmt.c (main): Likewise. - * msguniq.c (main): Likewise. - * xgettext.c (main): Likewise. - -2002-01-11 Bruno Haible <bruno@clisp.org> - - * write-po.c: Include po-charset.h. - -2002-01-11 Bruno Haible <bruno@clisp.org> - - * msgfmt.c (install_sigfpe_handler, uninstall_sigfpe_handler): On AIX, - treat SIGTRAP like SIGFPE. - -2002-01-09 Bruno Haible <bruno@clisp.org> - - * msgfmt.c (USE_SIGINFO): New macro. - (sigfpe_code, sigfpe_handler, install_sigfpe_handler, - uninstall_sigfpe_handler, check_plural_eval): Use USE_SIGINFO instead - of HAVE_SIGINFO. - (install_sigfpe_handler, uninstall_sigfpe_handler): On Irix, treat - SIGTRAP like SIGFPE. - -2002-01-09 Bruno Haible <bruno@clisp.org> - - * x-java.l (strip_ending_spaces): Fix logic. - -2002-01-09 Tommy Johansson <tommy.johansson@kanalen.org> - - * x-java.l: Avoid endless loop when encountering unterminated string. - -2002-01-08 Bruno Haible <bruno@clisp.org> - - * message.h (format_type): New enum value 'format_elisp'. - (NFORMATS): Increment. - * message.c (format_language): Add format_elisp entry. - (format_language_pretty): Likewise. - * format.h (formatstring_elisp): New declaration. - * format-elisp.c: New file. - * format.c (formatstring_parsers): Add formatstring_elisp. - * x-elisp.h: New file. - * x-elisp.c: New file. - * xgettext.c: Include x-elisp.h. - (main): Call x_elisp_extract_all, x_elisp_keyword. - (usage): Mention the languages Lisp, EmacsLisp, librep. - (language_to_scanner): Add elisp rule. - (extension_to_language): Add elisp rule. - * Makefile.am (noinst_HEADERS): Add x-elisp.h. - (FORMAT_SOURCE): Add format-elisp.c. - (xgettext_SOURCES): Add x-elisp.c. - -2002-01-06 Bruno Haible <bruno@clisp.org> - - * x-librep.c (read_object): Fix handling of #[ and #(. - -2002-01-06 Bruno Haible <bruno@clisp.org> - - * x-lisp.c (read_object): Treat ',.' like ',@'. - -2002-01-05 Bruno Haible <bruno@clisp.org> - - Make "msgmerge --update" work better on CJK files even if iconv() is - not available. - * po-charset.h (po_is_charset_weird): New declaration. - (po_is_charset_weird_cjk): Likewise.. - (po_lex_weird_cjk): New variable declaration. - * po-charset.c (po_is_charset_weird): New function, extracted from - po_lex_charset_set. - (po_is_charset_weird_cjk): New function. - (po_lex_weird_cjk): New variable. - (po_lex_charset_init): Initialize po_lex_weird_cjk. - (po_lex_charset_set): Call po_is_charset_weird and - po_is_charset_weird_cjk. Set po_lex_weird_cjk. - (po_lex_charset_close): Reset po_lex_weird_cjk. - * po-lex.c (mbfile_getc): If po_lex_weird_cjk is set, possibly return - a double byte instead of single byte. - * write-po.c (wrap): Call po_is_charset_weird_cjk. If it returns true, - group double bytes where possible. - -2002-01-05 Bruno Haible <bruno@clisp.org> - - * gettext.c: TESTS version is now separate. - -2002-01-05 Bruno Haible <bruno@clisp.org> - - * x-java.l (extract_java): Avoid "uninitialized variable" warnings. - Free a temporary string. - -2002-01-05 Bruno Haible <bruno@clisp.org> - - * Makefile.am (libgettextsrc_la_LDFLAGS): Add -lc. Needed on AIX. - -2002-01-05 Bruno Haible <bruno@clisp.org> - - * x-c.c (buflen): Make static. - * x-librep.c (buflen): Likewise. - * x-lisp.c (buflen): Likewise. - -2001-12-23 Bruno Haible <bruno@clisp.org> - - * msgexec.c (process_string): Use xsetenv instead of setenv. - * msginit.c (canonical_locale_charset): Likewise. - (get_title): Likewise. - -2001-12-22 Bruno Haible <bruno@clisp.org> - - * dir-list.c: Include <stddef.h> instead of <stdlib.h>. - * xgettext.h: Likewise. - * file-list.c: Include exit.h instead of system.h. - * gettext.c: Likewise. - * hostname.c: Likewise. - * msgattrib.c: Likewise. - * msgcat.c: Likewise. - * msgcomm.c: Likewise. - * msgconv.c: Likewise. - * msgexec.c: Likewise. - * msgunfmt.c: Likewise. - * msguniq.c: Likewise. - * ngettext.c: Likewise. - * read-java.c: Likewise. - * x-ycp.c: Likewise. - * msgcmp.c: Include exit.h instead of system.h. Don't include - str-list.h. - * msgfilter.c: Likewise. - * msgen.c: Include exit.h instead of system.h. Don't include xmalloc.h. - * msgfmt.c: Include exit.h, stpcpy.h instead of system.h. Don't - include <errno.h>, getline.h. - * msggrep.c: Include exit.h instead of system.h. Don't include - <fcntl.h>. - * msginit.c: Include liballoca.h, <limits.h>, exit.h, pathname.h - instead of system.h. - * msgl-cat.c: Include liballoca.h, exit.h instead of system.h. - Include <stddef.h> instead of <stdlib.h>. - * msgl-charset.c: Likewise. - * msgl-iconv.c: Include liballoca.h, exit.h instead of system.h. - * write-po.c: Likewise. - * msgmerge.c: Include liballoca.h, exit.h, strcase.h, stpcpy.h, - stpncpy.h instead of system.h. - * format-java.c: Include liballoca.h instead of system.h. - * format-lisp.c: Don't include system.h. - * open-po.c: Include pathname.h, xmalloc.h instead of system.h. - Don't include <sys/types.h>, error.h. - * po-charset.c: Include liballoca.h, string.h, strcase.h instead of - system.h. Don't include error.h. Include progname.h. - (program_name): Remove declaration. - * po-gram-gen.y: Include <string.h>. - * po-hash-gen.y: Include <string.h>. - * po-lex.c: Include exit.h instead of system.h. Don't include - <sys/types.h>. - * read-mo.c: Include binary-io.h, exit.h instead of system.h. - Include <stddef.h> instead of <stdlib.h>. - * urlget.c: Include <unistd.h>, binary-io.h, exit.h instead of - system.h. - (O_BINARY): Remove fallback definition. - * write-java.c: Include liballoca.h, pathname.h instead of system.h. - * write-mo.c: Include liballoca.h, binary-io.h, exit.h instead of - system.h. Don't include msgfmt.h. - * x-c.c: Include exit.h instead of system.h. Don't include <ctype.h>. - * x-librep.c: Include exit.h instead of system.h. Include hash.h. - * x-lisp.c: Likewise. - * x-rst.c: Include exit.h instead of system.h. Include <stddef.h> - instead of <stdlib.h>. - * xgettext.c: Include <string.h>, exit.h, pathname.h, strcase.h, - stpcpy.h instead of system.h. Include str-list.h. Don't include - <sys/param.h>, <pwd.h>, <sys/types.h>, <unistd.h>, getline.h. - (getpwuid): Remove declaration. - -2001-12-21 Bruno Haible <bruno@clisp.org> - - * format-lisp.c: Include minmax.h. - -2001-12-21 Bruno Haible <bruno@clisp.org> - - * file-list.c: Include gettext.h instead of libgettext.h. - * format-c.c: Likewise. - * format-java.c: Likewise. - * format-librep.c: Likewise. - * format-lisp.c: Likewise. - * format-pascal.c: Likewise. - * format-python.c: Likewise. - * format-ycp.c: Likewise. - * gettext.c: Likewise. - * hostname.c: Likewise. - * msgattrib.c: Likewise. - * msgcat.c: Likewise. - * msgcmp.c: Likewise. - * msgcomm.c: Likewise. - * msgconv.c: Likewise. - * msgen.c: Likewise. - * msgexec.c: Likewise. - * msgfilter.c: Likewise. - * msgfmt.c: Likewise. - * msggrep.c: Likewise. - * msginit.c: Likewise. - * msgl-cat.c: Likewise. - * msgl-charset.c: Likewise. - * msgl-iconv.c: Likewise. - * msgmerge.c: Likewise. - * msgunfmt.c: Likewise. - * msguniq.c: Likewise. - * ngettext.c: Likewise. - * open-po.c: Likewise. - * po-charset.c: Likewise. - * po-gram-gen.y: Likewise. - * po-lex.c: Likewise. - * read-java.c: Likewise. - * read-mo.c: Likewise. - * read-po.c: Likewise. - * urlget.c: Likewise. - * write-java.c: Likewise. - * write-mo.c: Likewise. - * write-po.c: Likewise. - * x-c.c: Likewise. - * x-librep.c: Likewise. - * x-lisp.c: Likewise. - * x-po.c: Likewise. - * x-rst.c: Likewise. - * x-ycp.c: Likewise. - * xgettext.c: Likewise. - -2001-12-21 Bruno Haible <bruno@clisp.org> - - * message.h (message_merge): Remove declaration. - * message.c (msgfmt_check_pair_fails, message_merge): Move to - msgmerge.c. - * msgmerge.c (msgfmt_check_pair_fails, message_merge): Moved to here - from message.c. - -2001-12-20 Bruno Haible <bruno@clisp.org> - - * format-java.c: Include system.h. - * format-lisp.c (parse_upto): Fix prototype. char promotes to int. - * po-lex.c (mb_iseq, mb_setascii): Likewise. - * po-hash-gen.y: alloca fix for AIX 3. - * x-lisp.c (syntax_code_of, read_char_syntax, attribute_of, is_number): - Move prototypes, to avoid compilation errors on AIX 3. - (syntax_code_of, attribute_of): Fix prototype. unsigned char promotes - to int. - * x-java.l (TOKEN_TYPE): Remove trailing comma in enum. - (PARSER_STATE): Likewise. - * msgfilter.c: Include <sys/select.h> on AIX. - -2001-12-12 Bruno Haible <bruno@clisp.org> - - * xgettext.c: Include <limits.h>. - (copyright_holder): New variable. - (foreign_user): Remove variable. - (long_options): Add --copyright-holder option. - (main): Implement --copyright-holder option. - (usage): Document --copyright-holder option. - (construct_header): Use the copyright_holder variable. If it is - empty, add a "public domain" comment. - -2001-12-17 Bruno Haible <bruno@clisp.org> - - * msggrep.c: Include <fnmatch.h>. - (filename_list_match): New function. - (is_message_selected): Use it instead of string_list_member. - -2001-12-16 Bruno Haible <bruno@clisp.org> - - * message.h (format_type): New enum value 'format_librep'. - (NFORMATS): Increment. - * message.c (format_language): Add format_librep entry. - (format_language_pretty): Likewise. - * format.h (formatstring_librep): New declaration. - * format-librep.c: New file. - * format.c (formatstring_parsers): Add formatstring_librep. - * x-librep.h: New file. - * x-librep.c: New file. - * xgettext.c: Include x-librep.h. - (main): Call x_librep_extract_all, x_librep_keyword. - (language_to_scanner): Add librep rule. - (extension_to_language): Add librep rule. - * Makefile.am (noinst_HEADERS): Add x-librep.h. - (FORMAT_SOURCE): Add format-librep.c. - (xgettext_SOURCES): Add x-librep.c. - -2001-12-15 Bruno Haible <bruno@clisp.org> - - * msgfmt.c (check_plural): Use ngettext for two messages. - Reported by Primoz Peterlin <primoz.peterlin@biofiz.mf.uni-lj.si>. - -2001-12-15 Bruno Haible <bruno@clisp.org> - - * xgettext.c (remember_a_message_plural): Mark the message as xx-format - if the English plural form has xx format syntax and the singular form - may or may not have xx format syntax. - -2001-12-15 Bruno Haible <bruno@clisp.org> - - * format.h (struct formatstring_parser): Add 'equality' and - 'pretty_msgstr' arguments to 'check' field. - * format-c.c (format_check): Add 'equality' and 'pretty_msgstr' - arguments. - * format-java.c (format_check): Likewise. - * format-lisp.c (format_check): Likewise. - * format-pascal.c (format_check): Likewise. - * format-python.c (format_check): Likewise. - * format-ycp.c (format_check): Likewise. - * msgfmt.c (check_pair): Check messages with plural forms as well. - * message.c (msgfmt_check_pair_fails): Add msgid_plural, msgstr_len - arguments. Check messages with plural forms as well. - (message_merge): Check messages with plural forms as well. - -2001-12-11 Bruno Haible <bruno@clisp.org> - - * x-java.l (strip_ending_spaces): Fix isspace call. - - * xgettext.h (xgettext_omit_header): Renamed from omit_header. - * xgettext.c (xgettext_omit_header): Likewise. - (long_options, main, remember_a_message): Update. - * x-po.c (extract_directive_message): Update. - -2001-12-09 Bruno Haible <bruno@clisp.org> - - * x-lisp.h: New file. - * x-lisp.c: New file. - * xgettext.c: Include x-lisp.h. - (main): Call x_lisp_extract_all, x_lisp_keyword. - (language_to_scanner): Add Lisp rule. Remove preliminary Lisp rule. - (extension_to_language): Add Lisp rule. - * Makefile.am (noinst_HEADERS): Add x-lisp.h. - (xgettext_SOURCES): Add x-lisp.c. - -2001-12-09 Bruno Haible <bruno@clisp.org> - - * xgettext.h (split_keywordspec): New declaration. - * xgettext.c (split_keywordspec): New function. - * x-c.c (x_c_keyword): Use split_keywordspec. - * x-java.l (extract_keyword, extract_msgid_arg, - extract_msgid_plural_arg): Remove functions. - (x_java_keyword): Use split_keywordspec. - -2001-12-09 Bruno Haible <bruno@clisp.org> - - * x-c.c: Reorder. - -2001-12-08 Bruno Haible <bruno@clisp.org> - - * msgattrib.c (process_message_list): Never make the header entry - obsolete. - -2001-12-08 Bruno Haible <bruno@clisp.org> - - * msgfilter.c (main): Fix getopt_long string: -i takes an argument. - -2001-12-08 Bruno Haible <bruno@clisp.org> - - * xgettext.c (remember_a_message): Don't print the line number if it - is = (size_t)(-1). - -2001-12-08 Bruno Haible <bruno@clisp.org> - - * msgfilter.c: Renamed from msgexec.c. - * msgexec.c: New file. - * Makefile.am (bin_PROGRAMS): Add msgfilter. - (msgfilter_SOURCES): New variable. - (msgfilter_LDADD): New variable. - -2001-12-07 Bruno Haible <bruno@clisp.org> - - * msgexec.c (keep_header): New variable. - (long_options): New option --keep-header. - (usage): Document option --keep-header. - (process_message): Implement --keep-header. - -2001-12-06 Bruno Haible <bruno@clisp.org> - - * format.h (struct formatstring_parser): Add 'noisy' argument to - 'check' field. - * format-c.c (format_check): Add 'noisy' argument. - * format-java.c (format_check): Likewise. - * format-lisp.c (format_check): Likewise. - * format-pascal.c (format_check): Likewise. - * format-python.c (format_check): Likewise. - * format-ycp.c (format_check): Likewise. - * msgfmt.c (check_pair): Pass noisy=true. - * message.c: Include format.h. - (msgfmt_check_pair_fails): New function. - (message_merge): Set fuzzy flag when adding a -format specifier that - needs the translator's attention. - -2001-12-10 Bruno Haible <bruno@clisp.org> - - * x-java.l (tailcmp): If s1 ends with s2, it must be either equal to - s2 or have a dot right before s2. - -2001-12-01 Bruno Haible <bruno@clisp.org> - - * msginit.c (project_id): Make it possible to specify the location - of the project-id script through an environment variable. - (project_id_version): Likewise. - -2001-12-03 Tommy Johansson <tommy.johansson@kanalen.org> - - * x-java.l (tailcmp): New function. - (do_compare): Use it instead of strcmp. - (extract_java): After seeing an invocation, don't set the state to - STATE_NONE. - -2001-11-30 Bruno Haible <bruno@clisp.org> - - * message.c (message_merge): Determine whether postprocessing is - needed. - * msgmerge.c (match_domain): Postprocess some problematic cases. - * Makefile.am (libgettextsrc_la_SOURCES): Add plural.c. - (msgfmt_SOURCES): Remove plural.c. - -2001-11-29 Bruno Haible <bruno@clisp.org> - - * plural-eval.c: Include config.h and plural-exp.h. - -2001-11-27 Bruno Haible <bruno@clisp.org> - - * msgfmt.c (struct msgfmt_class_ty): New field - 'has_nonfuzzy_header_entry'. - (format_constructor): Initialize it. - (format_debrief): Give a warning if the header entry exists but is - fuzzy. - (format_directive_message): Update has_nonfuzzy_header_entry. - -2001-11-25 Bruno Haible <bruno@clisp.org> - - * x-c.c (comment_start, comment_add, comment_line_end): New inline - functions. - (phase4_getc): Use them. - -2001-11-25 Bruno Haible <bruno@clisp.org> - - * msginit.c (no_translator): New variable. - (long_options): Add option --no-translator. - (main): Handle option --no-translator. - (usage): Document option --no-translator. - (po_revision_date): Add header argument. Return POT's creation date - if no_translator. - (last_translator): Return a dummy string if no_translator. - (language_team): Likewise. - (fields): Allow getter with 0 or 1 argument. - (get_field): New function. - (fill_header): Call getter with 0 or 1 argument. - -2001-11-25 Bruno Haible <bruno@clisp.org> - - * msginit.c (canonical_locale_charset): Return the charset of 'locale' - if available. - (get_title): Return a correct value even if 'locale' is a nonexistent - locale. - -2001-11-24 Bruno Haible <bruno@clisp.org> - - * urlget.c (fetch): Call execute_java_class with quiet=true. If Java - program failed, try wget or lynx. - - * read-java.c (msgdomain_read_java): Update for changed - execute_java_class parameter list. - -2001-11-24 Bruno Haible <bruno@clisp.org> - - * msgexec.c (process_message): Really process each plural form once. - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (is_nonobsolete): New function. - (main): Remove obsolete messages after reading all input files. - (check_header_entry): New function, extracted from - format_directive_message. - (format_directive_message): Perform duplicate checking also on - obsolete, untranslated and fuzzy messages, like msgmerge and the - other tools do. Put also obsolete, untranslated and fuzzy messages - on the result list, but mark them obsolete. - (read_po_file): Call po_lex_pass_obsolete_entries. - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * po.c (po_callback_message): Ignore obsolete header entries, for - consistency with msgdomain_list_print(), compare_po_locale_charsets(), - iconv_message_list(), catenate_msgdomain_list(). - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (struct msg_domain): Remove symbol_tab field. - (main, new_domain): Update. - (format_directive_message): Use message_list_search instead of - explicit hash table calls. - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * message.h: Include hash.h. - (message_list_ty): Add use_hashtable, htable fields. - (message_list_alloc): Add 'use_hashtable' argument. - (msgdomain_alloc): Likewise. - (msgdomain_list_ty): Add use_hashtable field. - (msgdomain_list_alloc): Add 'use_hashtable' argument. - * message.c: Include hash.h. - (message_list_alloc): Add 'use_hashtable' argument. - (message_list_free): Delete the hash table if present. - (message_list_append): If a hash table is in use, verify no duplicates. - (message_list_prepend): Likewise. - (message_list_remove_if_not): Remove hash table after removal. - (message_list_search): Use hash table if present. - (msgdomain_alloc): Add 'use_hashtable' argument. - (msgdomain_list_alloc): Add 'use_hashtable' argument. - (msgdomain_list_sublist): Use 'use_hashtable'. - * msgcmp.c (compare): Update. - (compare_constructor): Allocate a message list with hash table. - * msgfmt.c (new_domain): Allocate a message list with hash table. - Remove impossible error message. - * msgl-cat.c (catenate_msgdomain_list): Allocate message lists with - hash table. - * msgmerge.c (merge): Update. - * msgunfmt.c (main): Update. - * read-po.c (readall_constructor): Allocate a message list with hash - table if and only if duplicates will lead to an error message. - * xgettext.c (main): Allocate a message list with hash table, to - speed up insertion. - (exclude_directive_message): Allocate a message list with hash table, - to speed up exclusion test. - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * message.h (msgdomain_list_sublist): Change last argument to bool. - * message.c (msgdomain_list_sublist): Likewise. - * msgcmp.c (compare): Update msgdomain_list_sublist calls. - (compare_constructor, compare_directive_message): Likewise. - * msgl-cat.c (catenate_msgdomain_list): Likewise. - * msgmerge.c (merge): Likewise. - * read-po.c (readall_constructor, readall_directive_message): Likewise. - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (format_directive_message): Finish 2001-08-30 patch. - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (accelerator_char): New variable. - (long_options): --check-accelerators has optional argument. - (main): Store --check-accelerators value in accelerator_char. - (usage): --check-accelerators has optional argument. - (check_pair): Use accelerator_char instead of hardwired '&'. - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * msginit.c (main): Print a blank line. - (get_title): Always use the English title first. - (fill_header): Update accordingly. - -2001-11-17 Bruno Haible <haible@clisp.cons.org> - - * message.h (NFORMATS): Fix misapplied patch. - -2001-11-11 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (check_accelerators): New variable. - (long_options): Add --check-accelerators. - (main): Handle --check-accelerators. - (usage): Document --check-accelerators option. - (check_pair): Implement check_accelerators handling. - -2001-11-11 Bruno Haible <haible@clisp.cons.org> - - * msgl-cat.c (catenate_msgdomain_list): Fix a typo in 2001-11-01 patch. - Reported by Karl Eichwalder. - -2001-11-11 Bruno Haible <haible@clisp.cons.org> - - * msginit.c (verbose): Remove variable. - (long_options): Remove --verbose. - (main): Remove --verbose option handling. - (usage): Remove --verbose documentation. - (language_team_address): Don't pass a verbose option to the subprocess. - -2001-11-08 Bruno Haible <haible@clisp.cons.org> - - * message.h: New enum value format_smalltalk. - * message.c (format_language): Add value for format_smalltalk. - (format_language_pretty): Likewise. - * format.h (formatstring_smalltalk): New declaration. - * format-ycp.c (formatstring_smalltalk): New variable. - * format.c (formatstring_parsers): Add value for format_smalltalk. - -2001-11-05 Bruno Haible <haible@clisp.cons.org> - - * format-lisp.c (parse_upto): Remove 'base' argument. It is always 0. - (format_parse): Update. - - * msgl-equal.c: Include string.h. - * str-list.c: Likewise. - -2001-11-03 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (line_comment): Remove variable, so default value is - always 1. - -2001-11-03 Bruno Haible <haible@clisp.cons.org> - - * x-c.c (extract_parenthesized): New function, extracted from - extract_c. - (extract_c): Call extract_parenthesized. - -2001-11-03 Bruno Haible <haible@clisp.cons.org> - - Add YCP plural form support. - * x-ycp.c (enum token_type_ty): New value token_type_comma. - (x_ycp_lex): Recognize comma. - (extract_ycp): Also recognize the _("singular","plural" pattern. - -2001-11-01 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (check_plural_eval): Fix #if mistake. - -2001-11-01 Bruno Haible <haible@clisp.cons.org> - - * msgl-iconv.h (iconv_message_list): Add argument 'canon_from_code'. - * msgl-iconv.c (iconv_message_list): Add argument 'canon_from_code'. - (iconv_msgdomain_list): Update. - * write-java.c (msgdomain_write_java): Update. - * msgl-cat.c (catenate_msgdomain_list): Pass the canon_charsets[n][k] - to iconv_message_list; the header entry that contained the charset - specification may already have been removed from the message list. - -2001-11-01 Bruno Haible <haible@clisp.cons.org> - - * msgl-equal.h (string_list_equal): New declaration. - * msgl-equal.c (string_list_equal): Export function. - * message.h (struct altstr): New fields 'comment', 'comment_dot'. - * msgl-cat.c: Include msgl-equal.h. - (catenate_msgdomain_list): If all alternative comments are equal, - use one copy of them, instead of concatenating them. Likewise for dot - comments. - * Makefile.am (libgettextsrc_la_SOURCES): Add msgl-equal.c. - (msgmerge_SOURCES): Remove msgl-equal.c. - -2001-10-31 Bruno Haible <haible@clisp.cons.org> - - * Makefile.am (noinst_HEADERS): Add read-java.h, write-java.h, - format.h, msgunfmt.h. - (EXTRA_DIST): Add project-id, gnu/gettext/*.java. - * message.h (NFORMATS): Define via #define, not via an enum value. - * format.h (struct formatstring_parser): Use PARAMS. - * format-c.c (FAT_SIZE_MASK): Remove extraneous backslashes. - * po-charset.c (po_lex_charset_set): Fix syntax error. - * write-java.c (write_java_string): Drop hexdigit[] size. - * x-java.l (add_object): Remove C++ style comment. - -2001-10-28 Bruno Haible <haible@clisp.cons.org> - - * hostname.c: Include "progname.h". - (program_name): Remove variable. - (main): Call set_program_name instead of setting program_name. - -2001-10-28 Bruno Haible <haible@clisp.cons.org> - - Create a libgettextsrc shared library. - * Makefile.am (lib_LTLIBRARIES): New variable. - (libgettextsrc_la_SOURCES): New variable. - (msgcmp_SOURCES, msgfmt_SOURCES, msgmerge_SOURCES, msgunfmt_SOURCES, - xgettext_SOURCES, msgattrib_SOURCES, msgcat_SOURCES, msgcomm_SOURCES, - msgconv_SOURCES, msgen_SOURCES, msgexec_SOURCES, msggrep_SOURCES, - msginit_SOURCES, msguniq_SOURCES): Remove source files listed in - libgettextsrc_la_SOURCES. - (libgettextsrc_la_LDFLAGS): New variable. - (msgcmp_LDADD, msgfmt_LDADD, msgmerge_LDADD, msgunfmt_LDADD, - xgettext_LDADD, msgattrib_LDADD, msgcat_LDADD, msgcomm_LDADD, - msgconv_LDADD, msgen_LDADD, msgexec_LDADD, msggrep_LDADD, - msginit_LDADD, msguniq_LDADD): Add libgettextsrc.la. Remove all - dependencies already listed in libgettextsrc_la_LDFLAGS. - (po-lex.lo): Depend on po-gram-gen2.h. - -2001-10-21 Bruno Haible <haible@clisp.cons.org> - - * Makefile.am (LDADD): Replace libnlsut.a with libgettextlib.la. - (*_LDADD): Likewise. - -2001-10-26 Bruno Haible <haible@clisp.cons.org> - - * x-c.h (EXTENSIONS_C): Add ".hxx". - -2001-10-21 Bruno Haible <haible@clisp.cons.org> - - * msgmerge.c (match_domain): Change type of 'processed' argument to - 'unsigned int *'. - (merge): Change type of 'processed' to 'unsigned int'. - -2001-10-21 Bruno Haible <haible@clisp.cons.org> - - Avoid warnings on platforms where size_t is larger than int. - * msgfmt.c (check_pair): Use an 'unsigned int' variable instead of - 'size_t', to avoid warnings. - * po-lex.h (po_gram_error): Cast line number to 'unsigned long'. - * po-lex.c (po_gram_error): Likewise. - * x-c.c (extract_c): Likewise. - -2001-10-21 Bruno Haible <haible@clisp.cons.org> - - * msgexec.c [BeOS]: Fix #ifdef conditional. - -2001-10-21 Bruno Haible <haible@clisp.cons.org> - - * read-java.c (execute_and_read_po_output): Return false, not 0. - -2001-10-11 Bruno Haible <haible@clisp.cons.org> - - * msgattrib.c (usage): Fix: --sort-output doesn't deal with duplicates. - * msgcat.c (usage): Likewise. - * msgcomm.c (usage): Likewise. - * msgconv.c (usage): Likewise. - * msgen.c (usage): Likewise. - * msgexec.c (usage): Likewise. - * msggrep.c (usage): Likewise. - * msgmerge.c (usage): Likewise. - * msgunfmt.c (usage): Likewise. - * msguniq.c (usage): Likewise. - * xgettext.c (usage): Likewise. - -2001-10-09 Bruno Haible <haible@clisp.cons.org> - - * write-po.c (memcpy_small): New function. - (wrap): Use it instead of memcpy. Optimize handling of escape - characters. - -2001-10-09 Bruno Haible <haible@clisp.cons.org> - - * write-po.c (putc): Define as putc_unlocked if available. - -2001-10-09 Bruno Haible <haible@clisp.cons.org> - - * po-lex.c (getc): Define as getc_unlocked if available. - -2001-10-21 Bruno Haible <haible@clisp.cons.org> - - * msginit.c: New file. - * project-id: New file. - * Makefile.am (bin_PROGRAMS): Add msginit. - (projectsdir): New variable. - (DEFS): Add -DLIBDIR and -DPROJECTSDIR. - (msginit_SOURCES): New variable. - (msginit_LDADD): New variable. - (install-exec-local): Also install project-id. - (uninstall-local): Also uninstall project-id. - -2001-10-21 Bruno Haible <haible@clisp.cons.org> - - * gnu/gettext/GetURL.java: New file. - * urlget.c: New file. - * Makefile.am (noinst_PROGRAMS): Add urlget. - (urlget_SOURCES): New variable. - (install-exec-local): Also install urlget. - (uninstall-local): Also uninstall urlget. - (gnu/gettext/GetURL.class): New rule. - (gettext.jar): Also include gnu/gettext/GetURL*.class. - -2001-10-08 Bruno Haible <haible@clisp.cons.org> - - * msgl-english.h: New file. - * msgl-english.c: New file, extracted from msgen.c. - * msgen.c: Include msgl-english.h. - (english): Move to msgl-english.c. - (main): Update accordingly. - * Makefile.am (noinst_HEADERS): Add msgl-english.h. - (msgen_SOURCES): Add msgl-english.c. - -2001-10-08 Bruno Haible <haible@clisp.cons.org> - - * po-time.h: New file. - * po-time.c: New file, extracted from xgettext.c. - * xgettext.c: Include po-time.h. - (difftm): Move to po-time.c. - (construct_header): Move some code to po-time.c. Call po_strftime. - * Makefile.am (noinst_HEADERS): Add po-time.h. - (xgettext_SOURCES): Add po-time.c. - -2001-09-29 Bruno Haible <haible@clisp.cons.org> - - * user-email.in: New file. - * Makefile.am (install-exec-local): Install user-email. - (uninstall-local): Uninstall user-email. - (DISTCLEANFILES): Add user-email. - -2001-09-29 Bruno Haible <haible@clisp.cons.org> - - * hostname.c: New file. - * Makefile.am (noinst_PROGRAMS, hostname_SOURCES): New variables. - (install-exec-local, installdirs-local, uninstall-local): New rules. - -2001-10-10 Bruno Haible <haible@clisp.cons.org> - - * msgexec.c (process_string): Update for changed create_pipe_bidi(), - wait_subprocess(). - * msggrep.c (is_string_selected): Update for changed create_pipe_out(), - wait_subprocess(). - * read-java.c (execute_and_read_po_output): Update for changed - create_pipe_in(), wait_subprocess(). - -2001-10-08 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (remember_a_message): When the comment tag is seen, - remember all remaining comment lines, not just one. - -2001-09-25 Bruno Haible <haible@clisp.cons.org> - - Upgrade to automake-1.5. - * Makefile.am (AUTOMAKE_OPTIONS): Add 'no-dependencies'. - (COMMON_SOURCE): Renamed from COMMON_SOURCES. - (FORMAT_SOURCE): Renamed from FORMAT_SOURCES. - * ylwrap: Remove file. - -2001-09-22 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (extractor_func): New typedef. - (scanner_fp): Remove typedef. - (main): Use extractor_func and call it via extract_from_file. - (extract_from_file): New function. - (scan_c_file, scan_po_file, scan_java_file, scan_ycp_file, - scan_rst_file): Remove functions. - (language_to_extractor): Renamed from language_to_scanner. - * x-c.h (SCANNERS_C): Use extract_c instead of scan_c_file. - * x-java.h (SCANNERS_JAVA): Use extract_java instead of scan_java_file. - * x-po.h (SCANNERS_PO): Use extract_po instead of scan_po_file. - * x-rst.h (SCANNERS_RST): Use extract_rst instead of scan_rst_file. - * x-ycp.h (SCANNERS_YCP): Use extract_ycp instead of scan_ycp_file. - -2001-09-23 Bruno Haible <haible@clisp.cons.org> - - * plural-eval.c: New file. - * msgfmt.c: Include plural-exp.h. - (sigfpe_exit, sigfpe_code): New variables. - (sigfpe_handler, install_sigfpe_handler, uninstall_sigfpe_handler, - check_plural_eval, check_plural): New functions. - (main): Call it if --check-header is enabled. - * Makefile.am (msgfmt_SOURCES): Add plural-eval.c. - -2001-10-04 Tommy Johansson <tommy.johansson@kanalen.org> - - * x-java.l (object_list): New type. - (INITIAL_OBJECT_LIST_SIZE, OBJECT_LIST_GROWTH): New macros. - (java_keyword): New type. - (strip_ending_spaces): New function. - (object_list_alloc, object_list_destroy, get_num_objects, get_object, - add_object, alloc_keyword): New functions. - (java_keywords): Change type. - (extract_keyword, extract_msgid_arg, extract_msgid_plural_arg): New - functions. - (is_keyword): Change return type. - (x_java_keyword): Update. - (extract_java): Count arguments, and support plural keywords like - ngettext. - -2001-09-19 Bruno Haible <haible@clisp.cons.org> - - * xgettext.h (omit_header): New declaration. - * xgettext.c (omit_header): Make global. - * x-po.c (extract_directive_message): Don't throw the header entry - away if omit_header is true. - -2001-09-19 Bruno Haible <haible@clisp.cons.org> - - * write-po.c (msgdomain_list_print): Treat charset=CHARSET as if it - were absent, i.e. like ASCII, not like an unknown 8-bit encoding. - -2001-09-18 Bruno Haible <haible@clisp.cons.org> - - * msgl-equal.h: New file. - * msgl-equal.c: New file. - * msgmerge.c: Include msgl-equal.h, backupfile.h, copy-file.h. - (update_mode, version_control_string, backup_suffix_string): New - variables. - (long_options): Add --backup, --suffix, --update. - (main): Accept options --backup, --suffix, -U/--update. If in update - mode, compare old and new message lists, backup the def.po file, and - overwrite the def.po file. - (usage): Document --backup, --suffix, -U/--update. - (DOT_FREQUENCY): Renamed from DOT_FREQUENCE. - (merge): Also return def.po message list. Don't share messages between - def and result; copy instead. - * Makefile.am (noinst_HEADERS): Add msgl-equal.h. - (msgmerge_SOURCES): Add msgl-equal.c. - -2001-09-19 Bruno Haible <haible@clisp.cons.org> - - * po-hash-gen.y (number): Change type from 'int' to 'size_t'. - (filepos): Accept strings without line number. - (yylex): Change n from 'int' to 'size_t'. - * po.h (po_method_ty): In field comment_filepos, change line's type - from 'int' to 'size_t'. - (po_callback_comment_filepos): Change line's type from 'int' to - 'size_t'. - * read-po.c (readall_comment_filepos): Likewise. - * x-po.c (extract_comment_filepos): Likewise. - * po.c (po_comment_filepos): Likewise. - (po_callback_comment_filepos): Likewise. - (po_callback_comment): Reduce the possibility that po_hash succeeds - if the comment is not a Sun file position comment. - -2001-09-16 Bruno Haible <haible@clisp.cons.org> - - * x-rst.h: New file. - * x-rst.c: New file. - * xgettext.c: Include x-rst.h. - (scan_rst_file): New function. - (language_to_scanner): Add RST rule. - (extension_to_language): Add RST rule. - * write-po.c (message_print): Don't print the line number if it is - = (size_t)(-1). - * Makefile.am (noinst_HEADERS): Add x-rst.h. - (xgettext_SOURCES): Add x-rst.c. - -2001-09-20 Bruno Haible <haible@clisp.cons.org> - - * format-pascal.c: New file. - * format.h (formatstring_pascal): New declaration. - * message.h (enum format_type): Add format_pascal. - * message.c (format_language): Add format_pascal entry. - (format_language_pretty): Likewise. - * format.c (formatstring_parsers): Add formatstring_pascal. - * Makefile.am (FORMAT_SOURCES): Add format-pascal.c. - -2001-09-16 Bruno Haible <haible@clisp.cons.org> - - * x-ycp.h: New file. - * x-ycp.c: New file. - * xgettext.c: Include x-ycp.h. - (usage): Mention YCP. - (scan_ycp_file): New function. - (language_to_scanner): Add YCP rule. Remove preliminary YCP rule. - (extension_to_language): Add YCP rule. - * Makefile.am (noinst_HEADERS): Add x-ycp.h. - (xgettext_SOURCES): Add x-ycp.c. - -2001-09-17 Bruno Haible <haible@clisp.cons.org> - - * gettext.c: Include basename.h. - * ngettext.c: Likewise. - * msgattrib.c: Likewise. - * msgcat.c: Likewise. - * msgcmp.c: Likewise. - * msgcomm.c: Likewise. - * msgconv.c: Likewise. - * msgen.c: Likewise. - * msgexec.c: Likewise. - * msgfmt.c: Likewise. - * msggrep.c: Likewise. - * msgl-cat.c: Likewise. - * msgl-charset.c: Likewise. - * msgl-iconv.c: Likewise. - * msgmerge.c: Likewise. - * msgunfmt.c: Likewise. - * msguniq.c: Likewise. - * xgettext.c: Likewise. - * po-charset.c: Include <stdlib.h> and basename.h. - -2001-09-16 Bruno Haible <haible@clisp.cons.org> - - * x-c.c (phase4_getc): Rename local variable 'state' to - 'last_was_star'. - -2001-09-11 Bruno Haible <haible@clisp.cons.org> - - * Makefile.am (COMMON_SOURCES, FORMAT_SOURCES): New variables. - (msgcmp_SOURCES, msgfmt_SOURCES, msgmerge_SOURCES, msgunfmt_SOURCES, - xgettext_SOURCES, msgattrib_SOURCES, msgcat_SOURCES, msgcomm_SOURCES, - msgconv_SOURCES, msgen_SOURCES, msgexec_SOURCES, msggrep_SOURCES, - msguniq_SOURCES): Simplify. - -2001-09-09 Bruno Haible <haible@clisp.cons.org> - - * file-list.c: Include system.h. - * format-c.c: Include xmalloc.h instead of system.h. - * format-ycp.c: Likewise. - * read-po.c: Likewise. - * x-po.c: Likewise. - * format-java.c: Include xmalloc.h. - * format-lisp.c: Likewise. - * format-python.c: Likewise. - * gettext.c: Likewise. - * msgen.c: Likewise. - * msgexec.c: Likewise. - * msggrep.c: Likewise. - * ngettext.c: Likewise. - * po-lex.c: Likewise. - * read-mo.c: Likewise. - * x-c.c: Likewise. - * message.c: Include xmalloc.h and strstr.h. - * msgfmt.c: Likewise. - * write-po.c: Likewise. - * msgl-cat.c: Include string.h, xmalloc.h and strstr.h. - * msgl-iconv.c: Likewise. - * msgl-charset.c: Include strstr.h. - * po-charset.c: Likewise. - * po-gram-gen.y: Include stdlib.h, xmalloc.h instead of system.h. - * po-hash-gen.y: Likewise. - * str-list.c: Likewise. - * po.c: Include string.h, xmalloc.h instead of system.h. - * write-java.c: Include string.h, xmalloc.h. - * x-java.l: Include stdlib.h, xmalloc.h, strstr.h instead of system.h. - * xgettext.c: Include xmalloc.h, strstr.h, xerror.h. - (main, construct_header): Use xasprintf instead of asprintf. - -2001-09-24 Bruno Haible <haible@clisp.cons.org> - - * po-lex.c (mb_iseq): Compare the byte sequence, not the Unicode - equivalent. This is necessary for non-ASCII-compatible encodings like - SHIFT_JIS. - -2001-09-08 Bruno Haible <haible@clisp.cons.org> - - * msgunfmt.h: New file. - * msgunfmt.c (verbose): New variable. - (java_mode, java_resource_name, java_locale_name): New variables. - (long_options): Add --java, --locale, --resource, --verbose. - (main): Recognize new options -j, -l, -r, -v. Handle java mode - differently. - (usage): Document --java, --resource, --locale, --verbose. - * read-java.h: New file. - * read-java.c: New file. - * read-po.h (read_po): New declaration. - * read-po.c (read_po): New function. - * gnu/gettext/DumpResource.java: New file. - * Makefile.am (jardir): New variable. - (DEFS): Define GETTEXTJAR, for read-java.c. - (JAR): New variable. - (JAVACOMP): New variable. - (msgunfmt_SOURCES): Add open-po.c, po-gram-gen.y, po-hash-gen.y, - po-charset.c, po-lex.c, po.c, read-po.c, dir-list.c, read-java.c. - (all-local, all-java-no, all-java-yes, gnu/gettext/DumpResource.class, - gettext.jar, install-data-local, install-java-no, install-java-yes, - installdirs-local, installdirs-java-no, installdirs-java-yes, - uninstall-local, uninstall-java-no, uninstall-java-yes): New rules. - (CLEANFILES): New variable. - -2001-09-08 Bruno Haible <haible@clisp.cons.org> - - * msgexec.c (nonintr_select): Add function prototype. - - * xgettext.c (scan_java_file): Add function prototype. - -2001-09-23 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (remember_a_message): Warn about empty msgid if it - conflicts with construct_header(). - -2001-09-08 Bruno Haible <haible@clisp.cons.org> - - * msgcat.c (main): Move the option checking after the handling of - --version and --help, but before opening of any file. - * msgcomm.c (main): Move the option checking after the handling of - --version and --help. - * msguniq.c (main): Likewise. - * xgettext.c (main): Likewise. - * msgconv.c (main): Additional option checking for --sort-by-file. - * msgen.c (main): Likewise. - * msgexec.c (main): Likewise. - * msggrep.c (main): Likewise. - * msgmerge.c (main): Likewise. - -2001-09-08 Bruno Haible <haible@clisp.cons.org> - - * dir-list.c: Include specification header before all other headers. - * file-list.c: Likewise. - * message.c: Likewise. - * msgl-cat.c: Likewise. - * msgl-charset.c: Likewise. - * msgl-iconv.c: Likewise. - * open-po.c: Likewise. - * po.c: Likewise. - * po-gram-gen.y: Likewise. - * po-hash-gen.y: Likewise. - * po-lex.c: Likewise. - * read-po.c: Likewise. - * str-list.c: Likewise. - * write-mo.c: Likewise. - * write-po.c: Likewise. - * msgfmt.h: Don't include message.h. - * open-po.h: Include <stdio.h>, for FILE. - * write-mo.h: Include message.h and <stddef.h>. - -2001-09-21 Tommy Johansson <tommy.johansson@kanalen.org> - - * x-java.l (create_char_buf): Fix problem with empty messages. - (//): Remove leading "//" from result. - (x_java_keyword): Handle NULL argument. - -2001-09-19 Tommy Johansson <tommy.johansson@kanalen.org> - - * x-java.l (is_keyword): Swap arguments of do_compare. - -2001-09-02 Bruno Haible <haible@clisp.cons.org> - - * write-java.h: New file. - * write-java.c: New file. - * plural.c: New file. - * msgfmt.c: Include write-java.h. - (java_mode, assume_java2, java_resource_name, java_locale_name, - java_class_directory): New variables. - (long_options): Add --java, --java2, --locale, --resource. - (main): Add command line option -d, -j, -l, -r. Handle them and - --java2. Forbid some options depending on whether --java was given - or not. In java_mode, call msgdomain_write_java. - (usage): Update. - (format_directive_domain): In java_mode, ignore domain directives. - * Makefile.am (msgfmt_SOURCES): Add write-java.c, msgl-ascii.c, - msgl-iconv.c, plural.c. - -2001-09-16 Bruno Haible <haible@clisp.cons.org> - - * Makefile.am (noinst_HEADERS): Add x-java.h. - -2001-09-14 Tommy Johansson <tommy.johansson@kanalen.org> - - * x-java.h (x_java_extract_all): New declaration. - * x-java.l (extract_all_strings): New variable. - (x_java_extract_all): New function. - (extract_java): Test extract_all_strings. - * xgettext.c (main): Call x_java_extract_all. - -2001-09-03 Bruno Haible <haible@clisp.cons.org> - - * x-c.h (EXTENSIONS_C, SCANNERS_C): Remove extraneous commas. - * x-po.h (EXTENSIONS_PO, SCANNERS_PO): Likewise. - -2001-09-11 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c: Set msgstr_prefix to "", not NULL. - Reported by Martin Quinson <Martin.Quinson@ens-lyon.fr>. - -2001-09-10 Bruno Haible <haible@clisp.cons.org> - - * msgattrib.c (main): Call set_program_name instead of assigning - program_name directly. - * msgcat.c (main): Likewise. - * msgconv.c (main): Likewise. - * msgen.c (main): Likewise. - * msgexec.c (main): Likewise. - * msggrep.c (main): Likewise. - * msguniq.c (main): Likewise. - -2001-09-08 Bruno Haible <haible@clisp.cons.org> - - * msgattrib.c: New file. - * Makefile.am (bin_PROGRAMS): Add msgattrib. - (msgattrib_SOURCES, msgattrib_LDADD): New variables. - -2001-09-02 Bruno Haible <haible@clisp.cons.org> - - * format-lisp.c (gcd): Remove function. Include "gcd.h" instead. - -2001-09-03 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (usage): Mention ObjectiveC and Java. - * xgettext.h (substring_match): New declaration. - * Makefile.am (x-java.c): New rule. Automake's .l.c rules doesn't - work if $(LEX) is defined to ":". - -2001-09-03 Tommy Johansson <tommy.johansson@kanalen.org> - - * x-java.h: New file. - * x-java.l: New file. - * xgettext.c: Include x-java.h. - (substring_match): New variable. - (long_options): Add --keyword-substring. - (main): For -k, also call x_java_keyword. Treat --keyword-substring. - (scan_java_file): New function. - (language_to_scanner): Add Java rule. Remove preliminary Java rule. - (extension_to_language): Add Java rule. - * Makefile.am (xgettext_SOURCES): Add x-java.l. - -2001-09-02 Bruno Haible <haible@clisp.cons.org> - - * read-mo.h: New file. - * read-mo.c: New file, extracted from msgunfmt.c. - (read_mo_file): Require non-null message list argument. Return void. - * msgunfmt.c (endian, read32, seek32, string32, read_mo_file): Move to - read-mo.c. - (main): Pass a fresh list, not NULL, to read_mo_file. - * Makefile.am (noinst_HEADERS): Add read-mo.h. - (msgunfmt_SOURCES): Add read-mo.c. - -2001-09-02 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.h (struct hashtable_entry): Remove type. - (verbose): New declaration. - * msgfmt.c (msg_domain): Add a message list field. - (verbose): Make non-static. - (main): Pass the message list, not the hash table, to - msgdomain_write_mo. Free the message list when done. - (new_domain): Initialize the message list to empty. - (format_directive_message): Change type of entry to 'message_ty *'. - Store msgid in it. - * write-mo.h: Don't include hash.h. - (msgdomain_write_mo): Change argument type from hash table to message - list. - * write-mo.c (id_str_pair): Add const. - (write_table): Change argument type from hash table to message list. - Use 'message_ty' instead of 'struct hashtable_entry'. - (msgdomain_write_mo): Change argument type from hash table to message - list. - -2001-09-01 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.h: New file, extracted from msgfmt.c. - * write-mo.h: New file, extracted from msgfmt.c. - * write-mo.c: New file, extracted from msgfmt.c. - (write_table): Don't call delete_hash here. - (msgdomain_write_mo): Add check against writing on full disk. - * msgfmt.c (struct id_str_pair): Move to write-mo.c. - (struct hashtable_entry): Move to msgfmt.h. - (alignment): Move to write-mo.h and write-mo.c. - (no_hash_table): Likewise. Change type to boolean. - (long_options): Don't take &no_hash_table. - (roundup): Move to write-mo.c. - (main): Set no_hash_table here. Call msgdomain_write_mo and - delete_hash. - (compare_id): Move to write-mo.c. - (write_table): Likewise. - (read_po_file): Renamed from grammar. - * Makefile.am (noinst_HEADERS): Add msgfmt.h, write-mo.h. - (msgfmt_SOURCES): Add write-mo.c. - -2001-09-01 Bruno Haible <haible@clisp.cons.org> - - * write-po.c (msgdomain_list_print): Before fclose, check for ferror. - -2001-09-01 Bruno Haible <haible@clisp.cons.org> - - * message.c (message_list_list_search): If the first match has an - empty translation but there is later in the list a non-empty - translation, return the latter one. This fixes the msgmerge-8 test. - -2001-08-30 Bruno Haible <haible@clisp.cons.org> - - Reorganize msgfmt checking options. - * msgfmt.c: Include limits.h. - (verbose): Renamed from verbose_level. - (check_format_strings): Renamed from do_check. - (check_header, check_domain, check_compatibility): New variables. - (long_options): Add --check-domain, --check-format, --check-header, - --check-compatibility. - (main): Recognize options -C, --check-compatibility, --check-domain, - --check-format, --check-header. Option -c implies the last three. - (usage): Update. - (format_debrief): Test check_header, not verbose_level. - (format_directive_domain): Test check_domain, not verbose_level. - (format_directive_message): Test check_compatibility and check_header, - not verbose_level. Always perform the check for duplicates. - (format_comment_special): Test check_compatibility, not verbose_level. - (check_pair): Error if check_compatibility is true an msgid_plural is - used. - -2001-08-26 Bruno Haible <haible@clisp.cons.org> - - * format.h: New file. - * format-c.c: New file. - * format-java.c: New file. - * format-lisp.c: New file. - * format-python.c: New file. - * format-ycp.c: New file. - * format.c: New file. - * Makefile.am (msgfmt_SOURCES): Add format.c, format-c.c, - format-java.c, format-lisp.c, format-python.c, format-ycp.c. - (xgettext_SOURCES): Likewise. - * message.h (enum format_type): New type. - (format_language, format_language_pretty): New declarations. - (parse_c_format_description_string): Remove declaration. - (possible_format_p): Renamed from possible_c_format_p. - (struct message_ty): Change field 'is_c_format' to an array and - rename it to 'is_format'. - * message.c (parse_c_format_description_string): Remove function. - (format_language): New array. - (format_language_pretty): New array. - (possible_format_p): Renamed from possible_c_format_p. - (parse_c_width_description_string): Remove function. - (message_alloc): Update for is_format array. - (message_copy): Likewise. - (message_merge): Likewise. - * po.h (po_parse_comment_special): New declaration. - * po.c (po_parse_comment_special): New function. - * msgl-cat.c (catenate_msgdomain_list): Update for is_format array. - * read-po.c (struct readall_class_ty): Change field 'is_c_format' to - an array and rename it to 'is_format'. - (readall_constructor): Update for is_format array. - (readall_directive_message): Likewise. - (readall_comment_special): Call po_parse_comment_special instead of - parse_c_format_description_string and parse_c_width_description_string. - * write-po.c (make_format_description_string): Renamed from - make_c_format_description_string. Add a language argument. Remove the - impossible and undecided cases. - (significant_format_p): Renamed from significant_c_format_p. - (has_significant_format_p): New function. - (message_print): Update for is_format array. - * msgfmt.c: Include format.h instead of printf.h. - (struct msgfmt_class_ty): Change field 'is_c_format' to an array and - rename it to 'is_format'. - (format_constructor): Update for is_format array. - (format_directive_message): Likewise. - (format_comment_special): Call po_parse_comment_special instead of - parse_c_format_description_string and parse_c_width_description_string. - (check_pair): Change is_format argument to an array. Call language - dependent format string checking routines. - * x-po.c (struct extract_class_ty): Change field 'is_c_format' to - an array and rename it to 'is_format'. - (extract_constructor): Update for is_format array. - (extract_directive_message): Likewise. - (extract_comment_special): Call po_parse_comment_special instead of - parse_c_format_description_string and parse_c_width_description_string. - * x-c.h (SCANNERS_C): Refer to formatstring_c. - * x-po.h (SCANNERS_PO): Add NULL formatstring reference. - * xgettext.c: Include format.h instead of printf-parse.h. - (test_whether_c_format): Remove function. - (current_formatstring_parser): New variable. - (remember_a_message): Update for is_format array. Call - po_parse_comment_special instead of parse_c_format_description_string - and parse_c_width_description_string. Decide whether format string - depending on current_formatstring_parser. - (language_to_scanner): Also set current_formatstring_parser. Add - dummy table entries for Python, Lisp, Java, YCP. - -2001-08-12 Bruno Haible <haible@clisp.cons.org> - - * pos.h: Include <stddef.h>. - -2001-08-12 Bruno Haible <haible@clisp.cons.org> - - * x-c.c (real_file_name): Renamed from file_name. - (last_comment_line, last_non_comment_line, newline_count): Don't - initialize statically. - (phase1_getc): Update. - (x_c_lex): Don't reset last_comment_line, last_non_comment_line, - newline_count upon EOF. - (extract_c): Reset them here. Update. - - * x-c.c (x_c_lex): Move lazy keyword initialization... - (init_keywords): ... to here. New function. - (extract_c): Call init_keywords. - - * x-c.c (x_c_lex): Look up token without NUL in hash table. - (x_c_keyword): Store keywords without NUL in hash table. - -2001-07-28 Bruno Haible <haible@clisp.cons.org> - - * gettext.c (usage): If IN_HELP2MAN is set, output template for - localedir, not its value. - * ngettext.c (usage): Likewise. - -2001-07-28 Bruno Haible <haible@clisp.cons.org> - - * po-lex.c: Include c-ctype.h instead of <ctype.h>. - (control_sequence): Use C locale character classifications. - * xgettext.c (main): Cast isspace argument to 'unsigned char'. - -2001-07-28 Bruno Haible <haible@clisp.cons.org> - - * po-lex.h (lex_start, lex_end): New declarations. - * po-lex.c (lex_start): New function. - (lex_end): New function. - (lex_open): Call lex_start. - (lex_close): Call lex_end. - * open-po.h (open_po_file): Nop. - * open-po.c (open_po_file): Small optimization. - * po.h (po_scan): New declaration. - (po_scan_file): Renamed from po_scan. - * po.c (po_scan): New function. - (po_scan_file): Renamed from po_scan. - * msgcmp.c (grammar): Update po_scan_file call. - * msgfmt.c (grammar): Likewise. - * read-po.c (read_po_file): Likewise. - * x-po.h: New file. - * x-po.c: New file. - (extract_class_ty, extract_constructor, extract_directive_domain, - extract_directive_message, extract_parse_brief, extract_comment, - extract_comment_dot, extract_comment_filepos, extract_comment_special, - extract_methods): Moved here from xgettext.c. - (extract_po): New function, extracted from read_po_file. - * xgettext.h (line_comment, exclude): New declarations. - * xgettext.c: Include x-po.h. - (line_comment): Make non-static. - (exclude): Likewise. - (main): Update scan_po_file call. - (read_exclusion_file): Update po_scan_file call. - (extract_class_ty, extract_constructor, extract_directive_domain, - extract_directive_message, extract_parse_brief, extract_comment, - extract_comment_dot, extract_comment_filepos, extract_comment_special, - extract_methods): Move to x-po.c. - (scan_po_file): Renamed from read_po_file. Call xgettext_open and - extract_po. - (language_to_scanner): Use SCANNERS_PO. - (extension_to_language): Use EXTENSIONS_PO. - * Makefile.am (noinst_HEADERS): Add x-po.h. - (xgettext_SOURCES): Add x-po.c. - -2001-07-27 Bruno Haible <haible@clisp.cons.org> - - * x-c.h: New file. - * x-c.c: New file. - (xgettext_token_type_ty, xgettext_token_ty): Moved here from - xget-lex.h. In xgettext_token_ty, unify line_number and file_name into - lex_pos_ty. - (token_type_ty, token_ty): Moved here from xget-lex.c. - (extract_all): Moved here from xgettext.c. - (keywords, default_keywords, trigraphs, file_name, logical_file_name, - line_number, fp, last_comment_line, last_non_comment_line, - newline_count): Moved here from xget-lex.c. - (phase1_pushback, phase1_pushback_length, phase1_getc, phase1_ungetc, - phase2_pushback, phase2_pushback_length, phase2_getc, phase2_ungetc, - phase3_pushback, phase3_pushback_length, phase3_getc, phase3_ungetc, - phase4_getc, phase4_ungetc, phase7_getc, phase7_ungetc, - phase5_pushback, phase5_pushback_length, phase5_get, phase5_unget, - phaseX_get, phase6_pushback, phase6_pushback_length, phase6_get, - phase6_unget, phase8_get): Moved here from xget-lex.c. Use - xgettext_comment_add instead of accessing 'comment'. Don't free - logical_file_name; it is still used as file_name of messages in mdlp. - (x_c_lex): Moved here from xget-lex.c, renamed from xgettext_lex. - (extract_c): Moved here from xgettext.c, renamed from scan_c_file. - Change arguments from filename to FILE * and two filenames. Don't call - xgettext_lex_open and xgettext_lex_close. - (x_c_extract_all): New function. - (x_c_keyword): Moved here from xget-lex.c, renamed from - xgettext_lex_keyword. - (x_c_any_keywords): Moved here from xget-lex.c, renamed from - xgettext_any_keywords. - (x_c_trigraphs): Moved here from xget-lex.c, renamed from - xgettext_lex_trigraphs. - * xgettext.h: New file. - * xgettext.c (extract_all): Move to x-c.c. - (comment): Moved here from xget-lex.c. - (xgettext_comment_add): New function. - (xgettext_comment): Moved here from xget-lex.c, renamed from - xgettext_lex_comment. - (xgettext_comment_reset): Moved here from xget-lex.c, renamed from - xgettext_lex_comment_reset. - (xgettext_open): New function, mostly taken from xgettext_lex_open - in xget-lex.c. - (remember_a_message): Make non-static. Replace xgettext_token_ty arg - with lex_pos_ty argument. - (remember_a_message_plural): Likewise. - (scan_c_file): Moved the body to x-c.c:extract_c. - (language_to_scanner): Use SCANNERS_C. - (extension_to_language): Use EXTENSIONS_C. - * xget-lex.h: Remove file. - * xget-lex.c: Remove file. - * Makefile.am (noinst_HEADERS): Remove xget-lex.h. Add xgettext.h and - x-c.h. - (xgettext_SOURCES): Remove xget-lex.c. Add x-c.c. - -2001-07-26 Bruno Haible <haible@clisp.cons.org> - - * file-list.h: New file. - * file-list.c: New file, extracted from msgcomm.c. - * msgcat.c: Include file-list.h. - (main): Call read_names_from_file instead of read_name_from_file. - (read_name_from_file): Remove function. - * msgcomm.c: Include file-list.h. - (main): Call read_names_from_file instead of read_name_from_file. - (read_name_from_file): Remove function. - * xgettext.c: Include file-list.h. - (main): Call read_names_from_file instead of read_name_from_file. - (read_name_from_file): Remove function. - * Makefile.am (noinst_HEADERS): Add file-list.h. - (xgettext_SOURCES): Add file-list.c. - (msgcat_SOURCES): Likewise. - (msgcomm_SOURCES): Likewise. - -2001-07-23 Bruno Haible <haible@clisp.cons.org> - - * msgcomm.c: Assume <limits.h> exists. - * msgexec.c: Likewise. - * msggrep.c: Likewise. - * write-po.c: Likewise. - -2001-08-02 Bruno Haible <haible@clisp.cons.org> - - * gettext.c (usage): Change bug report address to - <bug-gnu-gettext@gnu.org>. - * ngettext.c (usage): Likewise. - * msgcat.c (usage): Likewise. - * msgcmp.c (usage): Likewise. - * msgcomm.c (usage): Likewise. - * msgconv.c (usage): Likewise. - * msgen.c (usage): Likewise. - * msgexec.c (usage): Likewise. - * msgfmt.c (usage): Likewise. - * msggrep.c (usage): Likewise. - * msgmerge.c (usage): Likewise. - * msgunfmt.c (usage): Likewise. - * msguniq.c (usage): Likewise. - * xgettext.c (usage): Likewise. - -2001-07-22 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (language_to_scanner): Add language "ObjectiveC". - (extension_to_language): Map extension "m" to "ObjectiveC". - -2001-07-22 Bruno Haible <haible@clisp.cons.org> - - Make msgcomm work with multidomain input and different encodings. - * msgl-cat.h (msgcomm_mode, omit_header): New declarations. - * msgl-cat.c (msgcomm_mode, omit_header): New variables. - (is_message_selected): Different behaviour if omit_header is true. - (is_message_needed): Different behaviour if msgcomm_mode is true. - (catenate_msgdomain_list): Likewise. - * msgcomm.c: Don't include <sys/types.h>, <unistd.h>, po.h. Include - read-po.h, msgl-cat.h instead. - (line_comment, omit_header, more_than, less_than): Remove variables. - (to_code): New variable. - (long_options): New option --to-code. - (main): New option -t/--to-code. Don't take the address of omit_header. - Call catenate_msgdomain_list instead of read_po_file and - is_message_selected. - (is_message_selected, extract_constructor, extract_directive_domain, - extract_directive_message, extract_parse_brief, extract_comment, - extract_comment_dot, extract_comment_filepos, extract_comment_special, - read_po_file): Remove functions. - * Makefile.am (msgcomm_SOURCES): Add read-po.c, msgl-iconv.c, - msgl-cat.c. - -2001-07-22 Bruno Haible <haible@clisp.cons.org> - - * msgl-ascii.h: New file. - * msgl-ascii.c: New file. - * po-charset.h (po_charset_ascii, po_charset_ascii_compatible): New - declarations. - * po-charset.c (po_charset_ascii): New variable. - (po_charset_ascii_compatible): New function. - * write-po.c (has_nonascii): Remove function. - (message_print, message_print_obsolete): Use is_ascii_string instead. - * msgl-iconv.c (iconv_message_list): Don't complain about missing - header entry with charset if all messages are ASCII. - * msgl-cat.c (catenate_msgdomain_list): Don't complain about missing - header entry with charset if all messages are ASCII. Better choice of - canon_to_code: when combining ASCII and an ASCII compatible encoding, - choose the latter, not UTF-8. Avoid performing trivial conversions. - * Makefile.am (noinst_HEADERS): Add msgl-ascii.h. - (msgmerge_SOURCES): Add msgl-ascii.c. - (msgunfmt_SOURCES): Likewise. - (msgcat_SOURCES): Likewise. - (msgcomm_SOURCES): Likewise. - (msgconv_SOURCES): Likewise. - (msgen_SOURCES): Likewise. - (msgexec_SOURCES): Likewise. - (msggrep_SOURCES): Likewise. - (msguniq_SOURCES): Likewise. - -2001-07-22 Bruno Haible <haible@clisp.cons.org> - - * msgl-cat.h: Include <stdbool.h>. - * po.h: Likewise. - * read-po.h: Likewise. - * write-po.h: Likewise. - * xget-lex.h: Likewise. - -2001-07-21 Bruno Haible <haible@clisp.cons.org> - - * msgl-cat.h: New file. - * msgl-cat.c: New file, extracted from msgcat.c. - * msgcat.c (more_than, less_than): Move to msgl-cat.c. - (use_first): Likewise. Change type to bool. - (long_options): Don't take the address of use_first. - (main): Initialize more_than, less_than, use_first explicitly. - Add --use-first handling. - (is_message_selected, is_message_needed, is_message_first_needed, - catenate_msgdomain_list): Move to msgl-cat.c. - * read-po.h (allow_duplicates): New declaration. - * read-po.c (allow_duplicates): New variable. - (readall_directive_message): If allow_duplicates is true, don't search - for the message ID, just append the message. - * msguniq.c: New file. - * Makefile.am (bin_PROGRAMS): Add msguniq. - (noinst_HEADERS): Add msgl-cat.h. - (msgcat_SOURCES): Add msgl-cat.c. - (msguniq_SOURCES, msguniq_LDADD): New variables. - -2001-07-21 Bruno Haible <haible@clisp.cons.org> - - * msgcat.c (usage): The default value for more-than is 0 here. - (is_message_selected): Always keep the header entry. Needed when - option --unique is used. - -2001-07-21 Bruno Haible <haible@clisp.cons.org> - - * message.h (struct message_ty): Add fields 'alternative_count', - 'alternative'. - * msgcat.c (catenate_msgdomain_list): is_c_format defaults to - undecided, not to no. If all alternative translations of a message - are the same, keep the first translation instead of mentioning them - all, and don't make the message fuzzy. - -2001-07-21 Bruno Haible <haible@clisp.cons.org> - - * msgcomm.c (extract_directive_message): Don't make the message fuzzy - if the first occurrence wasn't fuzzy. - -2001-07-21 Bruno Haible <haible@clisp.cons.org> - - * message.c (message_comment_filepos): Don't keep the filepos[] array - sorted. - * write-po.c (cmp_by_msgid): Renamed from msgid_cmp. - (cmp_filepos, msgdomain_list_sort_filepos): New functions. - (cmp_by_filepos): Renamed from filepos_cmp. - (msgdomain_list_sort_by_filepos): Call msgdomain_list_sort_filepos. - -2001-07-12 Bruno Haible <haible@clisp.cons.org> - - * msgexec.c: New file. - * msgsed.c: Remove file. - * Makefile.am (bin_PROGRAMS): Replace msgsed with msgexec. - (msgexec_SOURCES, msgexec_LDADD): New variables. - (msgsed_SOURCES, msgsed_LDADD): Remove variables. - -2001-07-11 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (test_whether_c_format): When encountering an - unterminated % format specifier, return 'impossible'. - Reported by Gaute B Strokkenes <gs234@cam.ac.uk>. - -2001-07-09 Bruno Haible <haible@clisp.cons.org> - - * write-po.c (has_nonascii): New function. - (message_print): Warn if the msgid is not fully ASCII. - (message_print_obsolete): Likewise. - -2001-07-05 Bruno Haible <haible@clisp.cons.org> - - * msgcomm.c (is_message_selected): Keep the header entry. - -2001-07-01 Bruno Haible <haible@clisp.cons.org> - - * po-charset.h (po_lex_charset): New declaration. - * po-charset.c (po_lex_charset): Export variable. - * po-lex.h: Include xerror.h. - (gram_pos_column): New declaration. - (po_gram_error): Also output current column number. - (po_gram_error_at_line): Work around ## problem in gcc. - * po-lex.c: Include linebreak.h and utf8-ucs4.h. - (gram_pos_column): New variable. - (po_gram_error): Also output current column number. - (MBCHAR_BUF_SIZE): New macro. - (struct mbchar, mbchar_t): New types. - (memcpy_small, mb_iseof, mb_ptr, mb_len, mb_iseq, mb_isnul, mb_cmp, - mb_equal, mb_isascii): New functions. - (MB_UNPRINTABLE_WIDTH): New macro. - (mb_width, mb_putc, mb_setascii, mb_copy): New functions. - (NPUSHBACK): New macro. - (struct mbfile, mbfile_t): New types. - (signal_eilseq): New variable. - (mbfile_init, mbfile_getc, mbfile_ungetc): New functions. - (mbf): New variable. - (fp): Remove variable. - (lex_open): Initialize mbf, gram_pos_column, signal_eilseq. - (lex_close): Reset mbf, gram_pos_column, signal_eilseq. - (lex_getc): Return a multibyte character. Update gram_pos_column. - (lex_ungetc): Take a multibyte character. Update gram_pos_column. - (keyword_p): Use po_gram_error_at_line instead of po_gram_error. - No column number needed here. - (control_sequence): Read multibyte characters instead of bytes. - (po_gram_lex): Likewise. - * xgettext.c (exclude_directive_domain): Use po_gram_error_at_line - instead of po_gram_error. No column number needed here. - (extract_directive_domain): Likewise. - * msgcomm.c (extract_directive_domain): Likewise. - -2001-06-30 Bruno Haible <haible@clisp.cons.org> - - * message.h: Include stdbool.h. - (message_ty): Change type of fields 'is_fuzzy', 'obsolete' to bool. - (message_predicate_ty): Change return type to bool. - * message.c (message_alloc): Update. - * msgcat.c (is_message_selected): Change return type to bool. - (is_message_needed): Likewise. - (is_message_first_needed): Likewise. - (main): Use bool. - (catenate_msgdomain_list): Update. Use yes/no for is_c_format and - do_wrap. - * msgcmp.c (multi_domain_mode): Change type to bool. - (compare_directive_message): Change 'obsolete' argument type to bool. - (main): Use bool. - * msgcomm.c (is_message_selected): Change return type to bool. - (extract_directive_message): Change 'obsolete' argument type to bool. - (main): Use bool. - (struct extract_class_ty): Change type of field 'is_fuzzy' to bool. - Change type of field 'filepos_count' to size_t. - (extract_constructor): Update. - (extract_parse_brief): Update. - (extract_comment_special): Update. - (read_po_file): Update. - * msgconv.c (main): Use bool. - * msgen.c (main): Use bool. - * msgfmt.c (struct msgfmt_class_ty): Change type of fields 'is_fuzzy', - 'has_header_entry' to bool. - (include_all): Change type to bool. - (do_check): Likewise. - (long_options): Update. - (format_directive_message): Change 'obsolete' argument type to bool. - (main): Use bool. - (format_constructor): Update. - (format_debrief): Update. - (format_comment_special): Update. - (check_pair): Update. - * msggrep.c (is_string_selected): Change return type to bool. - (is_message_selected): Likewise. - (main): Use bool. - * msgl-charset.c (compare_po_locale_charsets): Use bool. - * msgl-iconv.c (iconv_message_list): Update. - * msgmerge.c (quiet): Change type to bool. - (multi_domain_mode): Likewise. - (main): Use bool. - (match_domain): Update. - (merge): Update. - * msgsed.c (main): Use bool. - * msgunfmt.c (main): Use bool. - * po-gram-gen.y (string, stringlist, number, pos, rhs): Change type of - 'obsolete' field to bool. - * po-lex.h: Include stdbool.h. - (pass_obsolete_entries): Change type to bool. - (po_lex_pass_comments): Change argument type to bool. - (po_lex_pass_obsolete_entries): Likewise. - (po_gram_error): Update. - (po_gram_error_at_line): Update. - * po-lex.c (po_lex_obsolete): Change type to bool. - (pass_comments): Likewise. - (pass_obsolete_entries): Likewise. - (lex_open): Update. - (lex_close): Update. - (po_gram_error): Update. - (po_gram_error_at_line): Update. - (po_gram_lex): Update. - (po_lex_pass_comments): Change argument type to bool. - (po_lex_pass_obsolete_entries): Likewise. - * po.h (struct po_method_ty): Change 'obsolete' argument type of - directive_message to bool. - (po_callback_message): Change 'obsolete' argument type to bool. - * po.c (po_directive_message): Change 'obsolete' argument type to bool. - (po_callback_message): Likewise. - * read-po.c (struct readall_class_ty): Change type of field 'is_fuzzy' - to bool. - (readall_directive_message): Change 'obsolete' argument type to bool. - (readall_constructor): Update. - (readall_parse_brief): Update. - (readall_comment_special): Update. - (read_po_file): Update. - * str-list.h: Include stdbool.h. - (string_list_member): Change return type to bool. - * str-list.c (string_list_member): Change return type to bool. - * write-po.h (message_print_style_escape, msgdomain_list_print): Change - argument type to bool. - * write-po.c (make_c_format_description_string) Change argument type - to bool. - (message_print): Likewise. - (message_print_obsolete): Likewise. - (indent): Change type to bool. - (uniforum): Likewise. - (escape): Likewise. - (message_print_style_indent): Update. - (message_print_style_uniforum): Update. - (message_print_style_escape): Change argument type to bool. - (wrap): Update. - (msgdomain_list_print): Change argument type to bool. - * xget-lex.h (xgettext_any_keywords): Change return type to bool. - * xget-lex.c (trigraphs): Change type to bool. - (default_keywords): Likewise. - (phase5_get): Use NULL not 0. Update. - (phaseX_get): Use bool. - (xgettext_lex): Update. - (xgettext_lex_keyword): Update. - (xgettext_any_keywords): Change return type to bool. - (xgettext_lex_trigraphs): Update. - * xgettext.c (add_all_comments): Change type to bool. - (extract_all): Likewise. - (long_options): Update. - (exclude_directive_message): Change 'obsolete' argument type to bool. - (extract_directive_message): Likewise. - (main): Use bool. - (scan_c_file): Update. - (struct extract_class_ty): Change type of field 'is_fuzzy' to bool. - Change type of field 'filepos_count' to size_t. - (extract_constructor): Update. - (extract_parse_brief): Update. - (extract_comment_special): Update. - (construct_header): Update. - -2001-06-25 Bruno Haible <haible@clisp.cons.org> - - * msggrep.c (usage): Explain the pattern syntax. - -2001-06-18 Karl Eichwalder <ke@suse.de> - - * msgcomm.c (long_options): Add '--unique' option as documented - within --help output. - -2001-06-12 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (extension_to_language): Recognize "*.hh" as being C++. - Reported by Felix Natter. - -2001-06-10 Bruno Haible <haible@clisp.cons.org> - - * msgcmp.c (main): Set gram_max_allowed_errors to UINT_MAX, as in - msgmerge.c. - -2001-06-10 Bruno Haible <haible@clisp.cons.org> - - * message.c (message_alloc): Cast xmalloc return value. - (message_list_alloc): Likewise. - (message_list_list_alloc): Likewise. - (msgdomain_alloc): Likewise. - (msgdomain_list_alloc): Likewise. - * msgunfmt.c (string32): Likewise. - * po.c (po_alloc): Likewise. - * str-list.c (string_list_concat): Likewise. - (string_list_join): Likewise. - -2001-06-10 Bruno Haible <haible@clisp.cons.org> - - * message.h (message_ty): New field 'tmp'. - (message_predicate_ty): New type. - (message_list_remove_if_not): New declaration. - * message.c (message_list_delete_nth): Comment out. - (message_list_remove_if_not): New function. - * msgl-charset.h: New file. - * msgl-charset.c: New file. - * msgl-iconv.h: New file. - * msgl-iconv.c: New file. - * msgcat.c: New file. - * msgconv.c: New file. - * msgen.c: New file. - * msggrep.c: New file. - * msgsed.c: New file. - * msgcomm.c (default_domain, output_dir): Remove variables. - (long_options): Remove --default-domain and --output-dir. Add - --output-file. - (main): Don't accept -a, -C, -d, -k, -l, -L, -m, -M, -p, -T, -x. - Use output_file instead of complexly computed file_name. - Use O(n) loop instead of O(n^2) loop for removing messages. - (usage): Don't document --default-domain and --output-dir. - (is_message_selected): New function. - * Makefile.am (bin_PROGRAMS): Add msgcat, msgconv, msgen, msggrep, - msgsed. - (noinst_HEADERS): Add msgl-charset.h, msgl-iconv.h. - (msgcat_SOURCES, msgconv_SOURCES, msgen_SOURCES, msggrep_SOURCES, - msgsed_SOURCES): New variables. - (msgcat_LDADD, msgconv_LDADD, msgen_LDADD, msggrep_LDADD, - msgsed_LDADD): New variables. - -2001-06-10 Bruno Haible <haible@clisp.cons.org> - - * message.h (struct message_variant_ty): Remove type. - (struct message_ty): Remove variant_count, variant fields. Add - msgstr, msgstr_len, pos fields. - (message_alloc): Add msgstr, msgstr_len, pp arguments. - (message_variant_search, message_variant_append): Remove declarations. - (msgdomain_ty): New type. - (msgdomain_alloc, msgdomain_free): New declarations. - (msgdomain_list_ty): New type. - (msgdomain_list_alloc, msgdomain_list_free, msgdomain_list_append, - msgdomain_list_append_list, msgdomain_list_sublist, - msgdomain_list_search, msgdomain_list_search_fuzzy): New declarations. - * message.c (message_alloc): Add msgstr, msgstr_len, pp arguments. - (message_free): Update. - (message_variant_search): Remove function. - (message_variant_append): Remove function. - (message_copy): Update. - (message_merge): Update. - (message_list_alloc): Use NULL, not 0. - (message_list_search): Likewise. - (message_list_search_fuzzy_inner): Update. - (message_list_list_alloc): Use NULL, not 0. - (message_list_list_search): Likewise. - (message_list_list_free): Comment out. - (msgdomain_alloc, msgdomain_free, msgdomain_list_alloc, - msgdomain_list_append, msgdomain_list_sublist): New functions. - * read-po.h (read_po_file): Change return type to - 'msgdomain_list_ty *'. - * read-po.c (readall_class_ty): Remove field domain_list, add field - mdlp. - (readall_constructor): Update. - (readall_destructor): Likewise. - (readall_directive_message): Likewise. - (readall_parse_debrief): Remove function. - (readall_methods): Use NULL instead of readall_parse_debrief. - (read_po_file): Change return type to 'msgdomain_list_ty *'. - * write-po.h (message_list_print, message_list_sort_by_msgid, - message_list_sort_by_filepos): Remove declarations. - (msgdomain_list_print, msgdomain_list_sort_by_msgid, - msgdomain_list_sort_by_filepos): New declarations. - * write-po.c (message_print): Remove domain argument. Update. Assume - 'first' is true. - (message_print_obsolete): Likewise. - (msgdomain_list_print): Renamed from message_list_print. Change type - of first argument. - (msgdomain_list_sort_by_msgid): Renamed from - message_list_sort_by_msgid. Change type of argument. - (msgdomain_list_sort_by_filepos): Renamed from - message_list_sort_by_filepos. Change type of argument. - * msgcmp.c (compare_class_ty): Remove field domain_list, add field - mdlp. - (multi_domain_mode): New variable. - (long_options): Add --multi-domain. - (main): Accept -m/--multi-domain. - (usage): Explain --multi-domain. - (match_domain): New function, extracted from 'compare'. - (compare): Update. Handle multi_domain_mode. Change argument types to - 'const char *'. - (compare_constructor): Update. - (compare_destructor): Likewise. - (compare_directive_message): Likewise. - (compare_parse_debrief): Remove function. - (compare_methods): Use NULL instead of compare_parse_debrief. - (grammar): Change argument type to 'const char *' and return type to - 'msgdomain_list_ty *'. - * msgcomm.c (main): Update. - (extract_directive_message): Update. - * msgmerge.c (multi_domain_mode): New variable. - (long_options): Add --multi-domain. - (struct statistics): New type. - (main): Accept -m/--multi-domain. Update. - (usage): Explain --multi-domain. - (compendium): Update. - (match_domain): New function, extracted from 'merge'. - (merge): Update. Handle multi_domain_mode. - * msgunfmt.c (main): Update. - (read_mo_file): Update. - * xgettext.c (main): Update. - (exclude_directive_message): Update. - (remember_a_message): Likewise. - (remember_a_message_plural): Likewise. - (scan_c_file): Change argument type to 'msgdomain_list_ty *'. - (extract_directive_message): Update. - (read_po_file): Change argument type to 'msgdomain_list_ty *'. - (construct_header): Update. - - * dir-list.h: Don't use reserved identifiers in prototypes. - * gettext.c: Likewise. - * message.c: Likewise. - * msgcmp.c: Likewise. - * msgcomm.c: Likewise. - * msgfmt.c: Likewise. - * msgunfmt.c: Likewise. - * ngettext.c: Likewise. - * open-po.h: Likewise. - * po-hash.h: Likewise. - * po-lex.h: Likewise. - * po-lex.c: Likewise. - * po.h: Likewise. - * po.c: Likewise. - * str-list.h: Likewise. - * write-po.c: Likewise. - * xget-lex.h: Likewise. - * xget-lex.c: Likewise. - * xgettext.c: Likewise. - -2001-06-10 Bruno Haible <haible@clisp.cons.org> - - * message.h (message_list_prepend): New declaration. - * message.c (message_list_prepend): New function. - * msgmerge.c (merge): Add a header entry to the ref list if it has - none. - -2001-06-10 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c: Change the --strict option to not apply to domain - directives, only to the output filename argument. - (struct msg_domain): Add file_name field. - (domain_list): Renamed from domain. - (new_domain): Add file_name argument. - (main): Pass file name to new_domain(). Use file_name passed to - new_domain() in fopen call; don't free it. - (new_domain): New argument 'file_name'. - (format_directive_domain): Always ensure ".mo" suffix, independently - of --strict. - (format_directive_message): Likewise. - (add_mo_suffix): Don't call xstrdup. - -2001-06-01 Bruno Haible <haible@clisp.cons.org> - - * Makefile.am (datadir): Remove definition. - Reported by Albert Chin-A-Young <china@thewrittenword.com>. - -2001-05-15 Bruno Haible <haible@clisp.cons.org> - - * msgcmp.c (main): Call set_program_name instead of assigning - program_name directly. - * msgcomm.c (main): Likewise. - * msgfmt.c (main): Likewise. - * msgmerge.c (main): Likewise. - * msgunfmt.c (main): Likewise. - * xgettext.c (main): Likewise. - * gettext.c (main): Remove "lt-" prefix from program_name. - * ngettext.c (main): Likewise. - -2001-05-04 Bruno Haible <haible@clisp.cons.org> - - * gettext.c (usage): Add description of what the program does. - Separate blocks with blank lines. - * ngettext.c (usage): Likewise. - - * msgcmp.c (usage): Add a blank line after the first usage line. - Hardwire the blank line output. - * msgcomm.c (usage): Likewise. - * msgfmt.c (usage): Likewise. - * msgmerge.c (usage): Likewise. - * msgunfmt.c (usage): Likewise. - * xgettext.c (usage): Likewise. - -2001-05-05 Karl Eichwalder <ke@suse.de> - - * xgettext.c (read_name_from_file): Remove trailing space from line. - * msgcomm.c (read_name_from_file): Likewise. - -2001-05-02 Bruno Haible <haible@clisp.cons.org> - - * po-charset.c: Don't include stdio.h, stdlib.h, mbswidth.h. Include - xerror.h instead. - (multiline_warning): Move to xerror.c. - (po_lex_charset_set): Use xasprintf instead of asprintf. - * msgfmt.c: Include xerror.h. - (format_debrief): Use multiline_error for the error message. - -2001-05-01 Bruno Haible <haible@clisp.cons.org> - - Prefix most error messages with the program name, except those - starting with "filename:lineno:". - * po-lex.h: Include progname.h. - (po_gram_error): Set error_with_progname = 0 during error_at_line() - call. - (po_gram_error_at_line): Likewise. - * po-lex.c (po_gram_error): Likewise. - (po_gram_error_at_line): Likewise. - * msgcmp.c: Include progname.h. - (program_name): Remove variable. - (error_print): Remove function. - (main): Initialize error_print_progname with maybe_print_progname. - * msgcomm.c: Include progname.h. - (program_name): Remove variable. - (error_print): Remove function. - (main): Initialize error_print_progname with maybe_print_progname. - * msgfmt.c: Include progname.h. - (program_name): Remove variable. - (error_print): Remove function. - (main): Initialize error_print_progname with maybe_print_progname. - (format_directive_message): Set error_with_progname = 0 during - error_at_line() call. - (check_pair): Likewise. - * msgmerge.c: Include progname.h. - (program_name): Remove variable. - (error_print): Remove function. - (main): Initialize error_print_progname with maybe_print_progname. - * msgunfmt.c: Include progname.h. - (program_name): Remove variable. - (error_print): Remove function. - (main): Initialize error_print_progname with maybe_print_progname. - * xget-lex.c: Include progname.h. - (phase5_get): Set error_with_progname = 0 during error() call. - * xgettext.c: Include progname.h. - (program_name): Remove variable. - (error_print): Remove function. - (main): Initialize error_print_progname with maybe_print_progname. - (scan_c_file): Set error_with_progname = 0 during error() call. - -2001-04-30 Bruno Haible <haible@clisp.cons.org> - - Save the messages' obsoleteness status in the 'message_ty'. - * po.h (struct po_method_ty): Add 'obsolete' argument to - directive_message method. - (po_callback_message): Add 'obsolete' argument. - * po.c (po_directive_message): Add 'obsolete' argument. Pass it to - method->directive_message. - (po_callback_message): Add 'obsolete' argument. - * po-gram-gen.y (message): Pass 'obsolete' argument to - po_callback_message. - * msgcmp.c (compare_directive_message): Add 'obsolete' argument. - * msgcomm.c (extract_directive_message): Likewise. - * msgfmt.c (format_directive_message): Likewise. - * xgettext.c (exclude_directive_message, extract_directive_message): - Likewise. - * read-po.c (readall_directive_message): Likewise. Set mp->obsolete. - -2001-05-01 Bruno Haible <haible@clisp.cons.org> - - Reduce running time for very long msgstrs from O(n^2) to O(n) where - n is the number of string pieces. - * str-list.h (string_list_init, string_list_destroy, - string_list_concat, string_list_concat_destroy): New declarations. - * str-list.c (string_list_init, string_list_destroy, - string_list_concat, string_list_concat_destroy): New functions. - * po-gram-gen.y Include str-list.h. - (%union): Add new alternative of type string_list_ty. - (string_list): Change type to stringlist. - (message): Use string_list_concat_destroy to convert a stringlist to - a single string. Use string_list_destroy instead of free. - (msgid_pluralform): Likewise. - (pluralform): Likewise. - (string_list): Return a stringlist. Don't concatenate the strings one - by one. - * po-lex.c: Include str-list.h. - -2001-04-30 Bruno Haible <haible@clisp.cons.org> - - * message.h (message_alloc): Add const to prototype. - * message.c (message_alloc): Add const to argument type. - * msgcmp.c (compare_class_ty): Add const to 'domain' field. - * msgcomm.c (default_domain): Add const. - (main): Add const to 'file_name' variable. - * xgettext.c (default_domain): Add const. - (msgstr_prefix): Likewise. - (msgstr_suffix): Likewise. - (main): Add const to 'file_name' variable. - -2001-04-29 Bruno Haible <haible@clisp.cons.org> - - * read-po.h: New file. - * read-po.c: New file, extracted from msgmerge.c. - * msgmerge.c: Don't include string.h. Include read-po.h instead. - (merge_class_ty, line_comment, merge_constructor, merge_destructor, - merge_directive_domain, merge_directive_message, merge_parse_brief, - merge_parse_debrief, merge_comment, merge_comment_dot, - merge_comment_special, merge_comment_filepos, grammar): Move out to - read-po.c. - (compendium, merge): Call read_po_file() instead of grammar(). - * Makefile.am (noinst_HEADERS): Add read-po.h. - (msgmerge_SOURCES): Add read-po.c. - * FILES: Update. - -2001-04-28 Bruno Haible <haible@clisp.cons.org> - - * msgcmp.c (usage): Restructure usage message. Talk about ref.pot, not - ref.po. - * msgcomm.c (long_options): Remove --add-comments, --join-existing - options. - (main): Rename local variables sort_output, sort_by_file to - sort_by_msgid, sort_by_filepos. Remove -c and -j options. - (usage): Restructure usage message. INPUTFILE is not mandatory. Remove - --trigraphs option. - * msgfmt.c (usage): Restructure usage message. - * msgmerge.c (main): Signal error if both --sort-output and - --sort-by-file were given. - (usage): Restructure usage message. Talk about ref.pot, not ref.po. - Document --sort-output, --sort-by-file, --quiet. - * msgunfmt.c (long_options): Add --sort-output. - (main): Recognize -s/--sort-output option, and sort the message list - when it is given. - (usage): Restructure usage message. - * xgettext.c (main): Rename local variables sort_output, sort_by_file - to sort_by_msgid, sort_by_filepos. - (usage): Restructure usage message. - -2001-04-28 Bruno Haible <haible@clisp.cons.org> - - * po-charset.h: New file. - * po-charset.c: New file, extracted from po.c. Don't warn about wrong - or missing charset if it's a POT file. - * po-lex.h (iconv.h, po_lex_iconv): Move to po-charset.h. - (po_lex_charset): Remove declaration. - * po-lex.c: Include po-charset.h. - (po_lex_charset, po_lex_iconv): Move to po-charset.c. - (lex_open): Call po_lex_charset_init. - (lex_close): Call po_lex_charset_close. - * po.c: Don't include ctype.h, stdio.h, mbswidth.h, libgettext.h. - Include po-charset.h instead. - (program_name, _, SIZEOF, multiline_warning): Move to po-charset.c. - (po_callback_message): Move charset handling to po-charset.c. - * Makefile.am (noinst_HEADERS): Add po-charset.h. - (msgcmp_SOURCES, msgfmt_SOURCES, msgmerge_SOURCES, xgettext_SOURCES, - msgcomm_SOURCES): Add po-charset.c. - * FILES: Update. - - * msgfmt.c: Don't include ctype.h. - * msgunfmt.c: Likewise. - -2001-04-28 Bruno Haible <haible@clisp.cons.org> - - * po.h (PO_BASE_TY): Remove next_is_fuzzy field. - * po.c (po_alloc): Don't reset next_is_fuzzy. - (po_callback_message): Ignore fuzziness of the header entry. Don't - reset next_is_fuzzy. - (po_callback_comment): Don't set next_is_fuzzy. - * msgfmt.c (format_directive_message): Ignore fuzziness of the header - entry. Count fuzzy untranslated entries as untranslated. - -2001-09-13 Bruno Haible <haible@clisp.cons.org> - - * gettext-0.10.40 released. - -2001-07-24 Bruno Haible <haible@clisp.cons.org> - - * gettext-0.10.39 released. - -2001-05-23 Bruno Haible <haible@clisp.cons.org> - - * gettext-0.10.38 released. - -2001-05-23 Bruno Haible <haible@clisp.cons.org> - - * write-po.c (wrap): Avoid broken EUC-KR conversion in glibc-2.1. - -2001-05-21 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (construct_header): Replace 8-bit with 8bit. - -2001-04-19 Bruno Haible <haible@clisp.cons.org> - - * gettext-0.10.37 released. - -2001-04-18 Bruno Haible <haible@clisp.cons.org> - - * po.c (po_callback_message): Don't call iconv_open when the - OLD_PO_FILE_INPUT environment variable is set. - * write-po.c (wrap): Don't call iconv_open when the OLD_PO_FILE_OUTPUT - environment variable is set. - -2001-04-09 Bruno Haible <haible@clisp.cons.org> - - * po.c: Include mbswidth.h. - (program_name): New declaration. - (multiline_warning): New function. - (po_callback_message): Change messages again. Call multiline_warning - instead of error. - -2001-04-04 Bruno Haible <haible@clisp.cons.org> - - * gettext.c (program_name): Change type to 'const char *'. - * ngettext.c (program_name): Likewise. - -2001-04-04 Bruno Haible <haible@clisp.cons.org> - - * write-po.c (wrap): Prohibit line breaks inside backslash escape - sequences. - -2001-03-29 Bruno Haible <haible@clisp.cons.org> - - * gettext-0.10.36 released. - -2001-03-27 Bruno Haible <haible@clisp.cons.org> - - * po.c (po_callback_message): Change message again. - -2001-03-26 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (test_whether_c_format): Recognize '%%' as valid. - * msgfmt.c (check_pair): In error message, count format - specifications starting from 1, not 0. - -2001-03-25 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (warn_id_len): Remove unused variable. - (main): Don't set it. 'l' option becomes a nop. - (usage): Remove mention of --string-limits/-l. - -2001-03-23 Bruno Haible <haible@clisp.cons.org> - - * msgcomm.c (main): Don't give an error message if there are "too few" - messages in the input files. Do sanity checking before reading the - input files. Make --add-location the default, even if --omit-header - is specified. - -2001-03-22 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (construct_header): Replace ENCODING with 8-bit. - -2001-03-20 Bruno Haible <haible@clisp.cons.org> - - * po.c (po_callback_message): Change message, refer to GNU libiconv. - -2001-03-18 Bruno Haible <haible@clisp.cons.org> - - * gettext.c [TESTS]: When testing, set HAVE_SETLOCALE. - (main): Expand escape sequences also if no domain is given. Don't need - to call bindtextdomain if there are no string arguments. - * ngettext.c: New file. - * Makefile.am (bin_PROGRAMS): Add ngettext. - (ngettext_SOURCES): New variable. - -2001-03-19 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (extension_to_language): Recognize "*.cpp" and "*.hpp" as - being C++. - Patch by Dennis Bjorklund <db@zigo.dhs.org>. - -2001-03-11 Bruno Haible <haible@clisp.cons.org> - - * gettext.c: Force inclusion of libgnuintl.h. On Solaris, <locale.h> - has already included libintl.h. - -2001-03-11 Bruno Haible <haible@clisp.cons.org> - Karl Eichwalder <ke@suse.de> - - * po.c (po_callback_message): Add comments to support translators. - -2001-03-11 Bruno Haible <haible@clisp.cons.org> - - * po-lex.c (lex_close): Use ngettext and plural-form message. - * msgcmp.c (compare): Likewise. - * msgfmt.c (main): Likewise. - -2001-03-10 Bruno Haible <haible@clisp.cons.org> - - * po.c (po_callback_message): Cast %*s argument from size_t to int. - * msgfmt.c (format_debrief): Likewise. - (check_pair): Cast format string argument from size_t to long. - * msgmerge.c (merge): Likewise. - - * gettext.c (main): Update copyright year. - * msgcmp.c (main): Likewise. - * msgcomm.c (main): Likewise. - * msgfmt.c (main): Likewise. - * msgmerge.c (main): Likewise. - * msgunfmt.c (main): Likewise. - * xgettext.c (main): Likewise. - - * po.c (po_callback_message): Also warn if no iconv is present and - the charset is a CJK encoding requiring iconv. Also avoid broken - EUC-KR conversion in glibc-2.1. - -2001-03-09 Bruno Haible <haible@clisp.cons.org> - - Fix output of strings in CJK encodings. - * write-po.c: Include iconv.h. - (wrap): While preparing a line, use iconv to avoid treating the second - byte of a multi-byte character as an ASCII character. - -2001-03-04 Bruno Haible <haible@clisp.cons.org> - - * msgcomm.c (main): Use IS_ABSOLUTE_PATH and concatenated_pathname. - Fixes an incorrectly computed memory allocation. - * xgettext.c (main): Likewise. - * open-po.c (open_po_file): Use IS_ABSOLUTE_PATH and - concatenated_pathname. - * xget-lex.c (xgettext_lex_open): Likewise. - * msgfmt.c (main): Use SET_BINARY instead of setmode. - * msgunfmt.c (read_mo_file): Likewise. - -2001-03-04 Bruno Haible <haible@clisp.cons.org> - - Check syntax of obsolete entries of PO files, not only in msgmerge. - * po-lex.h (pass_obsolete_entries): New declaration. - (msgstr_def): Remove pos field. - * po-lex.c (po_lex_obsolete): New variable. - (pass_obsolete_entries): Make non-static. - (lex_open): Initialize po_lex_obsolete. - (lex_close): Reset po_lex_obsolete. - (po_gram_lex): Don't look at pass_obsolete_entries. Instead, set - po_lex_obsolete to 1 when "#~" is seen. Reset po_lex_obsolete when - a newline is seen. Before returning, fill the 'pos' and 'obsolete' - fields of any token. - * po-gram.gen.y (check_obsolete): New macro. - (union): Add a 'pos' and 'obsolete' field for any symbol type. - (NAME): Assign to type <string>. - (DOMAIN, MSGID, MSGID_PLURAL, MSGSTR, '[', ']'): Assign to type <pos>. - (msgid, msgstr): Remove. - (message, msgid_pluralform, pluralform_list, pluralform, string_list): - Signal an error if the 'obsolete' field is not the same across the - entire token sequence of the rule. - (message): Deal with pass_obsolete_entries here. - (msgid_pluralform, pluralform_list, pluralform, string_list): Fill the - 'pos' and 'obsolete' fields of $$. - -2001-03-03 Bruno Haible <haible@clisp.cons.org> - - Fix parsing of strings in CJK encodings. - * po.h (PO_BASE_TY): New field next_is_fuzzy. - * po-lex.h: Include iconv.h. - (po_lex_charset, po_lex_iconv): New declarations. - * po.c (SIZEOF): New macro. - (po_alloc): Initialize next_is_fuzzy. - (po_callback_message): Add check of charset in header entry. - Set po_lex_charset and po_lex_iconv. - After calling po_directive_message, reset next_is_fuzzy. - (po_callback_comment): Set next_is_fuzzy. - * msgfmt.c (format_directive_message): Remove check of charset in - header entry, now done in po.c. - * po-lex.c (po_lex_charset, po_lex_iconv): New variables. - (lex_open): Initialize them. - (lex_close): Reset them. - (po_gram_lex): While parsing a string, use 'po_lex_iconv' to avoid - treating the second byte of a multi-byte character as an ASCII - character. - * Makefile.am (msgcmp_LDADD, msgfmt_LDADD): New variables. - -2001-03-03 Bruno Haible <haible@clisp.cons.org> - - * write-po.h: New file, pieces of message.h. - * message.h (message_page_width_set, message_print_style_indent, - message_print_style_uniforum, message_print_style_escape, - message_list_print, message_list_sort_by_msgid, - message_list_sort_by_filepos): Move to write-po.h. - * write-po.c: New file, pieces of message.c. - (wrap): Add charset argument. Rewritten to use mbs_width_linebreaks(). - Use c_isprint() instead of isprint(). - (message_print): Add charset argument. Insert a space after '#' even - if the comment line's first character is a tab. - (message_print_obsolete): Likewise. - (message_list_print): Don't change locales. Extract the charset name - from the header entry. - (msgid_cmp, filepos_cmp): Always use strcmp, never use strcoll. - (message_list_sort_by_msgid, message_list_sort_by_filepos): Don't - change locales. - * message.c (indent, uniforum, escape, page_width, - make_c_format_description_string, significant_c_format_p, - make_c_width_description_string, message_print_style_indent, - message_print_style_uniforum, message_print_style_escape, wrap, - print_blank_line, message_print, message_print_obsolete, - message_list_print, msgid_cmp, message_list_sort_by_msgid, - filepos_cmp, message_list_sort_by_filepos, message_page_width_set): - Move to write-po.c. - * msgmerge.c: Include write-po.h. - * msgunfmt.c: Likewise. - * xgettext.c: Likewise. - * msgcomm.c: Likewise. - * Makefile.am (noinst_HEADERS): Add write-po.h. - (msgmerge_SOURCES): Add write-po.c. - (msgunfmt_SOURCES): Likewise. - (xgettext_SOURCES): Likewise. - (msgcomm_SOURCES): Likewise. - (msgmerge_LDADD, msgunfmt_LDADD, xgettext_LDADD, msgcomm_LDADD): New - variables. - -2001-03-03 Bruno Haible <haible@clisp.cons.org> - - * msgcmp.c (compare): Internationalize error message. - -2001-02-10 Bruno Haible <haible@clisp.cons.org> - - * msgunfmt.c (main): Accept -e and -E options. - -2001-02-04 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (main): Open the output file in binary mode. - * msgunfmt.c (read_mo_file): Open the input file in binary mode. - -2001-01-21 Bruno Haible <haible@clisp.cons.org> - - Use libtool. - * Makefile.am (LDADD): Remove ../intl/libintl.$la, not needed any more. - (l): Remove macro. - -2001-01-20 Bruno Haible <haible@clisp.cons.org> - - * msgcomm.c (main): Options '-<' and '->' want an argument. - -2001-01-07 Bruno Haible <haible@clisp.cons.org> - - * gettext.c: Renamed from gettextp.c. Use included libintl if TESTS - is defined. - * setlocale.c: Move to ../tests. - * Makefile.am (EXTRA_PROGRAMS, all-local, CLEANFILES): Remove. - (tstgettext_SOURCES): Remove. - (gettext_SOURCES): Update. - -2001-01-07 Bruno Haible <haible@clisp.cons.org> - - * msgcmp.c: Include libgettext.h instead of libintl.h, so that the - configure argument --disable-nls gets respected. - * msgfmt.c: Likewise. - * msgmerge.c: Likewise. - * msgunfmt.c: Likewise. - * open-po.c: Likewise. - * po-gram-gen.y: Likewise. - * po-lex.c: Likewise. - * xgettext.c: Likewise. Don't include gettext.h. - -2001-01-07 Bruno Haible <haible@clisp.cons.org> - - Assume <stddef.h>, <stdlib.h>, <string.h>, <locale.h> exist. - * dir-list.c: Likewise. - * gettextp.c: Likewise. - * message.c: Likewise. - * msgcmp.c: Likewise. - * msgcomm.c: Likewise. - * msgfmt.c: Likewise. - * msgmerge.c: Likewise. - * msgunfmt.c: Likewise. - * open-po.c: Likewise. - * po.c: Likewise. - * setlocale.c: Likewise. - * str-list.h: Likewise. - * xget-lex.c: Likewise. - * xgettext.c: Likewise. - -2001-01-06 Bruno Haible <haible@clisp.cons.org> - - * Makefile.am (datadir): Assume DATADIRNAME = share. - -2001-01-06 Bruno Haible <haible@clisp.cons.org> - - * setlocale.c: New file. - * Makefile.am (EXTRA_PROGRAMS): New variable. - (all-local): New target. - (CLEANFILES): New variable. - (tstgettext_SOURCES): New variable. - -2001-01-05 Bruno Haible <haible@clisp.cons.org> - - * Makefile.am (po-gram-gen.h): Don't use $^, not supported by the - SUSV2 "make" specification. - (LDADD): Add @INTLLIBS@. Needed on Solaris without - --with-included-gettext. - * po-lex.c (gram_max_allowed_errors): Change type to - 'unsigned int'. - -2001-01-01 Bruno Haible <haible@clisp.cons.org> - - Implement plural form handling. - * message.h (struct message_variant_ty): Add msgstr_len field. - (struct message_ty): Add msgid_plural field. - (message_alloc): Take additional msgid_plural argument. - (message_variant_append): Take additional msgstr_len argument. - * message.c (message_alloc): Take additional msgid_plural argument. - (message_free): Free msgid_plural field. - (message_variant_append): Take additional msgstr_len argument. - (message_copy): Copy msgid_plural as well. Pass msgstr_len. - (message_merge): Likewise. - (message_print): Print plural entries using a different format. - (message_print_obsolete): Likewise. - * msgunfmt.c (string32): Return the string's size as well. Verify - the string is NUL terminated. - (read_mo_file): Split the original string into msgid and msgid_plural. - Pass msgstr_len. - * po-lex.h (msgstr_def): New definition, taken from msgfmt.c. - * po-lex.c (keyword_p): Recognize the msgid_plural keyword. - (po_gram_lex): Accept brackets as single-character tokens. - * po.h (struct po_method_ty): Method 'directive_message' takes - additional arguments 'msgid_plural', 'msgstr_len'. - (po_callback_message): Additional arguments 'msgid_plural', - 'msgstr_len'. - * po-hash-gen.y (yyerror): Effectively rename to po_hash_error. - * po-gram-gen.y (yyerror): Effectively rename to po_gram_error, - thus enabling reporting of syntax errors. - (plural_counter): New variable. - (%token): Add MSGID_PLURAL, '[', ']' as new tokens. - (%union): Add new alternative of type 'struct msgstr_def'. - (msgid_pluralform, pluralform, pluralform_list): New productions. - (message): Add plural rules. - * po.c (po_directive_message): Additional arguments 'msgid_plural', - 'msgstr_len'. - (po_callback_message): Likewise. - * msgfmt.c (SIZEOF): New macro. - (struct id_str_pair): Add id_len, id_plural, id_plural_len, str_len - fields. - (struct hashtable_entry): Renamed from struct msgstr_def. Add - 'msgid_plural', 'msgstr_len' fields. - (format_directive_message): Additional arguments 'msgid_plural', - 'msgstr_len'. Verify the validity of the charset field in the header. - Compare msgstr using memcmp, not strcmp. - (check_pair): Additional arguments 'msgid_plural', 'msgstr_len'. - Apply the tests to msgid_plural and each msgstr[i] string. - (format_debrief): Change error message. - (write_table): Store msgid_plural and msgstr_len in msg_arr[], then - output the strings including embedded NULs. - * msgcmp.c (compare_directive_message): Additional arguments - 'msgid_plural', 'msgstr_len'. - * msgcomm.c (extract_directive_message): Additional arguments - 'msgid_plural', 'msgstr_len'. - * msgmerge.c (merge_directive_message): Additional arguments - 'msgid_plural', 'msgstr_len'. - * xget-lex.h (struct xgettext_token_ty): Replace argnum field with - argnum1, argnum2. - * xget-lex.c (xgettext_lex): Add to default keywords: "ngettext:1,2", - "dngettext:2,3", "dcngettext:2,3". - (xgettext_lex_keyword): Accept new syntax "id:argnum1,argnum2". - * xgettext.c (exclude_directive_message): Additional arguments - 'msgid_plural', 'msgstr_len'. - (remember_a_message): Return the new message. - (remember_a_message_plural): New function. - (scan_c_file): Extend state machine to allow remembering msgid1 and - msgid2 later. - (extract_directive_message): Additional arguments 'msgid_plural', - 'msgstr_len'. Compare msgstr using memcmp, not strcmp. - (construct_header): Update. - -2000-12-31 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (format_directive_message): Pass to insert_entry and - find_entry the length including the terminating NUL. - * xget-lex.c (xgettext_lex, xgettext_lex_keyword): Likewise. - -2000-12-31 Bruno Haible <haible@clisp.cons.org> - - * msgunfmt.c (read_mo_file): Recognize "/dev/stdin", not "/dev/stdout". - -2000-12-31 Bruno Haible <haible@clisp.cons.org> - - * str-list.h: Fix typo. Add comments. - * str-list.c: Add comments. - - * dir-list.h: Add comments. - * dir-list.c: Likewise. - - * domain.h: Remove file. - * msgfmt.c: Incorporate it here. Don't include "domain.h". - * msgunfmt.c: Don't include "domain.h". - * xgettext.c: Likewise. - * Makefile.am (noinst_HEADERS): Remove domain.h. - - * open-po.h: New file. - * open-po.c: Include it. - * po-lex.c: Likewise. - * Makefile.am (noinst_HEADERS): Add open-po.h. - - * open-po.c (open_po_file): Merge duplicated code. - - * po-lex.h: Add comments. - (gram_max_allowed_errors): Change type to 'unsigned int'. - (po_gram_error_at_line): Renamed from gram_error_at_line. - (po_gram_error, po_gram_error_at_line): Use ISO C 99 macro vararg - syntax if possible. - * po-lex.c: Add comments. Don't include "po-gram.h". - (po_gram_error_at_line): Renamed from gram_error_at_line. - * msgmerge.c (main): Initialize gram_max_allowed_errors to UINT_MAX. - - * message.h: Add comments. - (enum is_wrap): New type. - (parse_c_width_description_string): Change return type. - (message_ty): Change type of do_wrap field. - * message.c (wrap): Change type of do_wrap argument. - * msgfmt.c (msgfmt_class_ty): Change type of do_wrap field. - * msgmerge.c (merge_class_ty): Change type of do_wrap field. - * msgcomm.c (extract_class_ty): Change types of is_c_format, do_wrap - fields. - * xgettext.c (extract_class_ty): Likewise. - (remember_a_message): Change type of do_wrap. - - * pos.h: New file. - * po-lex.h: Include it. - (struct lex_pos_ty): Remove type, now in pos.h. - * message,h: Include pos.h instead of po-lex.h. - * Makefile.am (noinst_HEADERS): Add pos.h. - - * po.h: Add comments. - - * gettextp.c (main): Use bindtextdomain instead of bindtextdomain__, - and dgettext instead of dgettext__. There is no need to use the - included libintl when GNU gettext or an X/Open gettext or a catgets - has been found in the system's C library. - - * ylwrap: Update from automake-1.4. - - * FILES: New file. - * Makefile.am (EXTRA_DIST): New variable. - -2000-12-30 Bruno Haible <haible@clisp.cons.org> - - * xgettext.c (scanner_c, scanner_cxx): Remove declarations. - -2000-12-30 Bruno Haible <haible@clisp.cons.org> - - * msgfmt.c (write_table): Pass additional argument &id_len to - iterate_table. - -2000-09-13 Bruno Haible <haible@clisp.cons.org> - - Look into #define bodies. - * xget-lex.c (phaseX_get): Simplify. - (phase6_get): Stop the loop when recognizing a #define directive. - Based on a patch by Martin v. Löwis. - - Accept ISO C 99 comment syntax. - * xget-lex.c (cplusplus_comments: Remove variable. - (phase4_getc): Always recognize // comments. - (xgettext_lex_cplusplus): Remove function. - * xget-lex.h (xgettext_lex_cplusplus): Remove declaration. - * xgettext.c (scan_c_file): Remove is_cpp_file argument. - (scanner_c, scanner_cxx): Remove functions. - (language_to_scanner): Call scan_c_file directly. - -2000-08-23 Bruno Haible <haible@clisp.cons.org> - - * po-lex.c (ALERT_CHAR): New constant macro. - (control_sequence): Accept \a. Don't accept \X. - -2000-08-23 Ulrich Drepper <drepper@redhat.com> - - * po-lex.c (control_sequence): Unget character which ended \x.. - sequence. - -2000-07-28 Bruno Haible <haible@clisp.cons.org> - - * xget-lex.h (enum xgettext_token_type_ty): Rename - xgettext_token_type_lp/rp to xgettext_token_type_lparen/rparen. - * xget-lex.c (enum token_type_ty): Rename token_type_lp/rp to - token_type_lparen/rparen. - (xgettext_any_keywords): `keywords' is now a hash table. - * xgettext.c (construct_header): Change two printf directives %02d - to %02ld. - -1998-07-17 Paul Eggert <eggert@twinsun.com> - - Add support for user-specified argument numbers for keywords. - Extract all strings from a keyword arg, not just the first one. - Handle parenthesized commas inside keyword args correctly. - Warn about nested keywords. - - * xgettext.c (scan_c_file): - Warn about nested keywords, e.g. _(_("xxx")). - Warn also about not-yet-implemented but allowed nesting, e.g. - dcgettext(..._("xxx")..., "yyy"). - Get all strings in a keyword arg, not just the first one. - Handle parenthesized commas inside keyword args correctly. - - * xget-lex.h (enum xgettext_token_type_ty): - Replace xgettext_token_type_keyword1 and - xgettext_token_type_keyword2 with just plain - xgettext_token_type_keyword; it now has argnum value. - Add xgettext_token_type_rp. - (struct xgettext_token_ty): Add argnum member. - line_number and file_name are now also set for - xgettext_token_type_keyword. - (xgettext_lex_keyword): Arg is const char *. - - * xget-lex.c: Include "hash.h". - (enum token_type_ty): Add token_type_rp. - (keywords): Now a hash table. - (phase5_get): Return token_type_rp for ')'. - (xgettext_lex, xgettext_lex_keyword): Add support for keyword argnums. - (xgettext_lex): Return xgettext_token_type_rp for ')'. - Report keyword argnum, line number, and file name back to caller. - -2000-05-06 Ulrich Drepper <drepper@redhat.com> - - * Makefile.am (EXTRA_DIST): Replace po-gram.gen.h and po-hash.gen.h - with po-gram-gen.h and po-hash-gen.h. - (YACC): Define as @YACC@ -d. - (YFLAGS): Removed. - (msgcmp_SOURCES): Replace dependencies on po-gram.gen.c and - po-hash.gen.c with po-gram-gen.y and po-hash-gen.y. - (msgmerge_SOURCES): Likewise. - (xgettext_SOURCES): Likewise. - (msgcomm_SOURCES): Likewise. - Add rule to built po-gram-gen2.h and make po-lex.o depend on it. - Remove rules to generate po-gram.gen.c and po-hash.gen.c. - Patches by Jim Meyering. - - * po-lex.c: Include "po-gram-gen2.h" instead of "po-gram.gen.h". - - * message.c (message_list_search_fuzzy_inner): Define static. Take - extra parameter with best weight so far. - (message_list_search_fuzzy): New function. - (message_list_list_alloc): New function. - (message_list_list_append): New function. - (message_list_list_append_list): New function. - (message_list_list_search): New function. - (message_list_list_search_fuzzy): New function. - (message_list_list_free): New function. - * message.h (message_list_list_ty): Define type. - (message_list_list_alloc): Add prototype. - (message_list_list_free): Likewise. - (message_list_list_append): Likewise. - (message_list_list_append_list): Likewise. - (message_list_list_search): Likewise. - (message_list_list_search_fuzzy): Likewise. - * msgmerge.c: Implement --compendium/-C option. - * xget-lex.c (xgettext_any_keywords): New function. - * xget-lex.h (xgettext_any_keywords): Add prototype. - * xgettext.c: Use xgettext_any_keywords to see whether keywords are - defined. - Patches by Peter Miller. - -1998-05-15 Ulrich Drepper <drepper@cygnus.com> - - * po-lex.c (control_sequence): Replace illegal with invalid. - -1998-05-01 08:47 Ulrich Drepper <drepper@cygnus.com> - - * gettext-0.10.35 released. - -1998-04-30 Ulrich Drepper <drepper@cygnus.com> - - * dir-list.c: Update Peter Miller's mail address. - * dir-list.h: Likewise. - * message.c: Likewise. - * message.h: Likewise. - * msgcmp.c: Likewise. - * msgcomm.c: Likewise. - * msgmerge.c: Likewise. - * po-gram.h: Likewise. - * po-gram.y: Likewise. - * po-hash.h: Likewise. - * po-hash.y: Likewise. - * po-lex.c: Likewise. - * po-lex.h: Likewise. - * po.c: Likewise. - * po.h: Likewise. - * str-list.c: Likewise. - * str-list.h: Likewise. - * xget-lex.c: Likewise. - * xget-lex.h: Likewise. - -1998-04-30 Ulrich Drepper <drepper@cygnus.com> - - * msgfmt.c: Fix typo in --help text. - Reported by Jan.Djarv@mbox200.swipnet.se. - -1998-04-03 01:18 1998 Philippe De Muyter <phdm@macqel.be> - - * str-list.h (stddef.h): Include that file only if STDC_HEADERS. - Otherwise include sys/types.h and stdio.h. - * msgmerge.c (string.h): Include that file if HAVE_STRING_H, not - if STDC_HEADERS. - -1998-04-29 Ulrich Drepper <drepper@cygnus.com> - - * message.c: Use unsigned char for various local variables. - * xgettext.c (comment_tag): Define as unsigned char *. - For loosing Solaris systems. Patches by Jim Meyering. - - * msgfmt.c: Use extra braces in if to shut up gcc. - * po-lex.h: Don't declare function po_gram_error and - gram_error_at_line if macros with the same names are defined. - * Makefile.am (MAINTAINERCLEANFILES): New variable. - Patches by Jim Meyering. - -1998-04-27 Ulrich Drepper <drepper@cygnus.com> - - * xgettext.c: Update year and bug report address. Add little - explanation in --help messages. - * msgfmt.c: Likewise. - - * msgmerge.c: Update year and bug report address. - * msgcomm.c: Likewise. - * msgcmp.c: Likewise. - * msgunfmt.c: Likewise. - -1997-08-31 22:20 Ulrich Drepper <drepper@cygnus.com> - - * msgfmt.c (format_directive_message): Count fuzzy messages as - fuzzy, even if they are not written to the output file. - -1997-08-18 13:47 Philippe De Muyter <phdm@info.ucl.ac.be> - - * msgcomm.c (sys/types.h): File included. - -1997-08-15 12:38 Ulrich Drepper <drepper@cygnus.com> - - * xgettext.c: Include <sys/param.h> to define MIN/MAX for HP/UX. - Patch by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>. - - * msgfmt.c: Change DEFAULT_ALIGNMENT to DEFAULT_OUTPUT_ALIGNMENT - to avoid clash with macro with same name in obstack.c. - Reported by Akim Demaille <demaille@inf.enst.fr>. - -1997-08-01 15:48 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.am (AUTOMAKE_OPTIONS): Require version 1.2. - -1997-05-07 04:21 Ulrich Drepper <drepper@cygnus.com> - - * msgcomm.c (main): Print author in --version message. - * msgunfmt.c: Likewise. - * msgcmp.c: Likewise. - * msgmerge.c: Likewise. - * msgfmt.c: Likewise. - * xgettext.c: Likewise. - * gettextp.c: Likewise. - -1997-05-01 02:33 Ulrich Drepper <drepper@cygnus.com> - - * msgcmp.c (main): Update copyright. - * msgunfmt.c (main): Likewise. - * msgcomm.c (main): Likewise. - * msgmerge.c (main): Likewise. - * msgfmt.c (main): Likewise. - * gettextp.c (main): Likewise. - - * msgcomm.c: Fix comment about default output (Jan Djarv). Split - help message. - -1997-03-31 16:09 Ulrich Drepper <drepper@cygnus.com> - - * msgcomm.c (usage): Use program_name as argument for print to - print message, not stdout. - Patch by Jan Djarv <jan.djarv@mbox200.swipnet.se>. - -Mon Mar 10 06:18:58 1997 Ulrich Drepper <drepper@cygnus.com> - - * xgettext.c: Implement generic language scanner handling. - - * xget-lex.c (phase7_getc): Better comments. - (phase5_get): Print warnings about unterminated strings and - character constants. - - * po-lex.c (po_gram_error): Don't count continuation lines in - messages as errors. - (gram_error_at_line): Likewise. - * po-lex.h: Likewise for macro versions. - - * po-hash.y: Correct typo. - - * msgunfmt.c: Implement --force-po option. - - * msgmerge.c: Implement --force-po, --no-location, and - --add-location options. - - * msgfmt.c (format_directive_message): If messages are duplicated - and translations are different this is a fatal error. - - * msgcmp.c (compare_directive_message): Use correct format for - continuation line in message. - - * message.h: Add prototype for message_list_delete_nth. - - * message.c: Add message_list_delete_nth function. - - * Makefile.am (bin_PROGRAMS): Add msgcomm. (l): New variable. - Set to `l' is using libtool. (LDADD): Change for the needs of - libtool. (msgcomm_SOURCES): New variable. - - * msgcomm.c: New file. - -Wed Dec 4 01:58:10 1996 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.am (LDADD): Change for use of libtool. - -Tue Dec 3 18:08:46 1996 Ulrich Drepper <drepper@cygnus.com> - - * xget-lex.c (phase7_getc): Return \n when newline is seen, not - P7_NEWLINE. - - * xgettext.c (main): Implement --foreign-user flag. - - * msgcmp.c (main): Change --version output to what is required by - GNU standards. (usage): Correct bug report address. - * msgfmt.c: Likewise. - * msgunfmt.c: Likewise. - * msgmerge.c: Likewise. - * xgettext.c: Likewise. - * gettextp.c: Likewise. - -Sat Sep 14 04:28:09 1996 Ulrich Drepper <drepper@cygnus.com> - - * msgunfmt.c (usage): Put bug report address in separate string. - * msgmerge.c (usage): Likewise. - * msgcmp.c (usage): Likewise. - * xgettext.c (usage): Likewise. - * msgfmt.c (usage): Likewise. - * gettextp.c (usage): Likewise. - -Thu Sep 12 21:40:48 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * msgfmt.c (check_pair): Fix error messages. - -Sat Aug 31 14:05:29 1996 Ulrich Drepper <drepper@cygnus.com> - - * msgunfmt.c (usage): Add hint about where to report bugs to. - * msgmerge.c (usage): Likewise. - * msgcmp.c (usage): Likewise. - * xgettext.c (usage): Likewise. - * msgfmt.c (usage): Likewise. - * gettextp.c (usage): Likewise. - -Sat Aug 31 04:49:38 1996 Ulrich Drepper <drepper@cygnus.com> - - * gettextp.c: Don't include <libintl.h> since this can generate - conflicts. - -Mon Jul 15 02:21:25 1996 Ulrich Drepper <drepper@cygnus.com> - - * msgfmt.c: Major change: msgfmt now does not write fuzzy messages - out by default. The option -f/--use-fuzzy must be used to - explicitely tell to do it. - -Sat Jul 13 20:23:34 1996 Ulrich Drepper <drepper@cygnus.com> - - * xget-lex.c (phase6_get): Reset selected comments on every - preprocessor directive. - -Fri Jul 12 12:38:49 1996 Ulrich Drepper <drepper@cygnus.com> - - * xgettext.c (main): Remove `v' from short option list. - -Sat Jul 6 11:22:47 1996 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> - - * message.c (message_merge): Add some casts to (char *) in alloca - calls. Make KNOWN_FIELDS array static. - -Sat Jul 6 11:15:43 1996 Jim Meyering <meyering@na-net.ornl.gov> - - * msgfmt.c (check_pair): Correct English in Message. - -Fri Jul 5 17:27:11 1996 Ulrich Drepper <drepper@cygnus.com> - - * message.c (message_merge): Terminate string for UNKNOWN fields - in header entry. - - * message.c (message_merge): Don't print POT-Revision-Date twice. - - * msgfmt.c: Implement --statistics. - Suggested by Santiago Vila Doncel. - - * msgfmt.c: and change message checking so that tests for leading - and trailing \n are always performed. - Suggested by François Pinard. - -Wed Jun 19 02:42:52 1996 Ulrich Drepper <drepper@cygnus.com> - - * message.c (message_merge): Implement sorting of header entry - lines. - -Sat Jun 15 19:46:50 1996 Ulrich Drepper <drepper@cygnus.com> - - * msgmerge.c (usage): Correct -w option in help string (was -W). - -Tue Jun 11 15:28:44 1996 Ulrich Drepper <drepper@cygnus.com> - - * xget-lex.c, xget-lex.h (xgettext_lex_comment): Change parameter - type to size_t. - - * po-lex.h, po-lex.c (gram_max_allowed_errors): Change type to - size_t. - - * message.c, message.h (message_page_width_set): Change parameter - type to size_t. - - * Makefile.am (AUTOMAKE_OPTIONS): Add variable. Must be defined - in all subdirs. - -Mon Jun 10 02:53:52 1996 Marcus Daniels <marcus@sysc.pdx.edu> - - * dir-list.c: Include system.h in order to get size_t and NULL. - -Thu Jun 6 01:59:31 1996 Ulrich Drepper <drepper@cygnus.com> - - * str-list.h: Include <stddef.h> to get size_t defined. - Reported by Philippe Defert. - - * Makefile.am (LDADD): Remove `@INTLLIBS@ ../lib/libnlsut.a - @LIBS@'. This is not necessary anymore. - -Wed Jun 5 00:00:08 1996 Ulrich Drepper <drepper@cygnus.com> - - * xgettext.c, msgunfmt.c (usage): Correct --page-width to --width - in usage string. - - * open-po.c (open_po_file): Implement search path for PO files. - - * xget-lex.c (xgettext_lex_open): Implement search path for PO - files. Patch by Peter Miller. - - * message.h (struct message_ty): Add do_wrap member. - Add prototypes for parse_c_width_description_string and - message_page_width_set. - - * xgettext.c: Implement --width option to specify width for which - line wrapping is done. Change --directory option implement search - path instead of single directory. Patch by Peter Miller. - - * message.c (wrap): Implement no-wrap special comment. If given - no wrapping is performed. - - * gettextp.c, msgcmp.c, msgfmt.c, msgmerge.c, msgunfmt.c, - xgettext.c: Add `no-wrap' comments at usage message strings. - - * msgcmp.c: Implement --directory to specify search path for .po - files. Patch by Peter Miller. - -Tue Jun 4 23:57:59 1996 Ulrich Drepper <drepper@cygnus.com> - - * msgfmt.c: Implement --width option to specify width for which - line wrapping is done. Patch by Peter Miller. - - * msgmerge.c: Implement --width option to specify width for which - line wrapping is done. Implement --directory to specify search - path for .po files. Patch by Peter Miller. - - * msgunfmt.c: Implement --width option to specify width for which - line wrapping is done. Patch by Peter Miller. - -Tue Jun 4 00:12:25 1996 Ulrich Drepper <drepper@cygnus.com> - - * po-hash.y: Add new clause where in GNU style format the name is - `file'. - - * Makefile.am (noinst_HEADERS): Add dir-list.h. - (msgcmp_SOURCES, msgfmt_SOURCES, msgmerge_SOURCES, xgettext_SOURCES): - Add dir-list.c - -Mon Jun 3 00:43:07 1996 Ulrich Drepper <drepper@cygnus.com> - - * message.h: Add new parameter for message_list_print. - - * msgmerge.c, msgunfmt.c (main): Add new parameter to - message_list_print. Set to 0 because we don't need to know about - the reasoning. - - * xgettext.c: Implement new option --debug which determines - whether a difference is made between c-format and - possible-c-format. Default is to print c-format for both cases. - - * message.c (make_c_format_description_string): Take additional - parameter DEBUG. If nonzero, distinguish between c-format and - possible-c-format. - - * message.c (message_print_obsolete): Copy precious translator - comment to output file. Reported by Santiago Vila Doncel. - - * dir-list.c: Include file now is called dir-list.h, not - dir_list.h. - - * message.c: Include <limits.h>. - - * Makefile.am (EXTRA_DIST): Add variable to distribute po-gram.y - and po-hash.y. - - * Makefile.am (msgfmt_SOURCES): Fix typo: msgfmt.o -> msgfmt.c. - -Sat Jun 1 04:33:48 1996 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in: Remove support for tupdate. msgmerge is stable - now. - -Wed Apr 10 01:20:49 1996 Ulrich Drepper <drepper@myware> - - * message.c (message_print_obsolete): Don't print - c-format/no-c-format flags for obsolete entries. - - * xgettext.c (construct_header): Change DIST to ZONE in header - entry template. - - * message.c (message_merge): Insert POT-Creation-Date field before - PO-Revision-Date. - -Tue Apr 9 17:13:34 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (construct_header): Move POT-Creation-Date line - before PO-Revision-Date line. - -Fri Apr 5 12:07:19 1996 Ulrich Drepper <drepper@myware> - - * msgmerge.c: Implement --quiet option to prevent dots printed as - progress report. - (merge): Don't print dots if `quiet'. - - * msgmerge.c (merge): Nicer statistics message. - - * message.c (message_merge): Update POT-Creation-Date field in - header entry from contents in reference file. - - * msgfmt.c (format_directive_message): Better test for unchanged - fields in header entry. - - * xgettext.c (difftm): Is back. - (construct_header): Print distance to GMT in POT file time stamp. - - * xgettext.c (construct_header): Print leading comment and fuzzy - flag. - - * message.c (message_print): Allow translator comment to fill more - than one line. - - * xgettext.c (construct_header): Introduce POT-Creation-Date - field. - -Fri Apr 5 03:05:07 1996 Ulrich Drepper <drepper@myware> - - * msgmerge.c (merge): Rename empty in missing. There might be - more empty messages which are not missed. - - * msgmerge.c (merge): Terminate `.' line if no verbose output is - selected. - - * msgmerge.c (main): Implement -v option to increase verbosity - level. - (merge): Print `.' to signal ongoing work. - Unless verbosity level > 1 don't print information about fuzzy and - missing matches. Instead print statistics at the end. - Suggested by François Pinard and Santiago Vila Doncel. - -Thu Apr 4 11:59:20 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (difftm): Remove unused function. - (construct_header): Don't fill Last-Translator field with information - about curent user but instead constant text mentioning xgettext. - - * message.c (message_list_search_fuzzy): Initialize mp before - using it. - - * message.c (message_print): Normalize printed messages even more. - Don't print fuzzy flag is msgstr is empty. - - * message.c (message_list_search_fuzzy): Don't try to match - against msgid if none if the msgstr of this message in non-empty. - -Thu Apr 4 01:57:37 1996 Ulrich Drepper <drepper@myware> - - * msgfmt.c (format_directive_message): When testing header entry - also check whether they still contain the initial values. - Suggested by François Pinard. - -Tue Apr 2 16:19:42 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (main): Add "warning" to message about unknown input - file type. - - * Makefile.in (all-gettext): New goal. Same as all. - - * xgettext.c (usage): Rearange help strings. One of them was too - long for some dumb catgets programs. Reported by Marcus Daniels. - - * msgfmt.c (format_directive_message): Check for standard header - entry fields. - - * xgettext.c (construct_header): MIME-VERSION should be written - MIME-Version. - - * msgmerge.c (main): Don't recognize -f option anymore. This is - the default now. - - * msgfmt.c (format_debrief): New function. Warn if no header - entry is found. - (format_directive_message): Remember if header entry is found. - -Tue Apr 2 11:12:15 1996 Ulrich Drepper <drepper@myware> - - * msgfmt.c (format_constructor): New function. Initialize - is_c_format field. - (format_directive_message): Clear is_c_format field for next message - at the end. - - * xgettext.c, po-lex.h, po-lex.c, po-gram.y, msgmerge.c, msgfmt.c, - msgcmp.c: Use gram_error_at_line instead of gram_error_with_loc - and error_at_line instead of error_with_loc. Roland does not like - my English. - -Tue Apr 2 03:27:34 1996 Ulrich Drepper <drepper@myware> - - * msgunfmt.c (main): Removed -S option. People should think twice - before using this and so are forced to use the long version. - -Tue Apr 2 03:25:56 1996 François Pinard <pinard@iro.umontreal.ca> - - * msgunfmt.c (usage): Remove Tab character from message. - -Tue Apr 2 03:15:16 1996 Marcus Daniels <marcus@sysc.pdx.edu> - - * message.c (significant_c_format_p): If is_c_format is `no' this - is significant. - -Tue Apr 2 03:12:24 1996 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> - - * po.c (po_comment_filepos): Make definition static as declaration - was before. - - * msgunfmt.c (usage): Add missing \n to help string. - -Mon Apr 1 02:37:45 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (main): When recognizing file type, default to C - instead of regarding it as an error. Suggested by Marcus Daniels. - - * po.c (po_callback_comment): For now recognize #! also as special - comment. - - * msgmerge.c (merge): Remove --force option. We now always write - the result. It makes no sense to reject the output because some - messages are not matching. - - * po-lex.c (po-gram_error, gram_error_with_loc): Use - error_message_count instead of gram_nerrors. - (gram_nerrors): Remove definition. - - * po-lex.h (po-gram_error, gram_error_with_loc): Use - error_message_count instead of gram_nerrors. - - * xgettext.c: Remove verbose option and variable. - (test_whether_c_format): Don't return `possible' is string - contains no format specifier. - -Sun Mar 31 23:23:40 1996 Ulrich Drepper <drepper@myware> - - * xget-lex.c (xgettext_lex): Fix typo. Reported by François - Pinard. - -Thu Mar 28 19:01:22 1996 Ulrich Drepper <drepper@myware> - - * po.c (po_callback_comment): Correct handling of special - comments. Give whole comment to callback function instead of - tokenized form. - -Thu Mar 28 18:37:49 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (remember_a_message): Always look through comments - because we have to look for c-format comments. - - * message.h, msgmerge.c, xgettext.c, message.c, msgfmt.c: - Implement more detailed C format string handling. Basically coded - by Marcus Daniels. - -Thu Mar 28 16:52:56 1996 Marcus Daniels <marcus@sysc.pdx.edu> - - * Makefile.in (MSGFMT_OBJ): Add message.o. - -Wed Mar 27 03:16:01 1996 Ulrich Drepper <drepper@myware> - - * xget-lex.c (xgettext_lex): Correct implementation of comments - grouped with messages. - -Tue Mar 26 21:23:54 1996 Ulrich Drepper <drepper@myware> - - * po.c (po_callback_comment): Remove unused variable string. - Include <ctype.h> because isspace is used. - - * message.h (message_list_print): Undo change of Mon Mar 25 - 03:34:44 1996. Don't print trailing comment. Remove additional - argument. - - * message.c (message_list_print): Undo change of Mon Mar 25 - 03:34:44 1996. Don't print trailing comment. We now have a - correct implementation of obsolete entry handling. - * msgmerge.c: Ditto. - - * po-lex.h: Add prototype for po_lex_pass_obsolete_entries. - - * po-lex.c (po_gram_lex): Implement handling of comments for - obsolete entries (#~). - - * msgunfmt.c, xgettext.c (main): Undo change of Mon Mar 25 - 03:34:44 1996. Remove added argument to message_list_print again. - - * po-lex.c (po_gram_lex): Small optimization in string collection. - - * message.c (message_print_obsolete): Obsolete messages are now - preceded by #~ on each line. - - * xgettext.c (remember_a_message): Fix bug with dereferencing - dangling pointer. This caused xgettext test 1 to fail. - - * xgettext.c (construct_header): Update format for file header. - - * xgettext.c (extract_directive_message): Don't report error when - message variant exists but the value is the same. Reported by - Roland McGrath. - - * message.c (wrap): Only write characters in escape notation if - explicitely wanted or if it is one of the well known escapes like - \n. - - * msgunfmt.c (main): Adopt interface to GNU coding standard. All - given files on command line are input files. Output by default is - written to standard output and can be redirected using -o. - -Mon Mar 25 04:25:42 1996 Ulrich Drepper <drepper@myware> - - * message.c, message.h (message_list_print): Parameter filename is - const. - - * message.c (wrap): Change line break behaviour a bit. While it - is reasonable to break long line containing #: comments - immediately when reaching the the limit, this could lead to unnice - results for the strings in msgid and msgstr. The programmer - usually knows why the lines are that long. - - So we break for now after reaching 2 * PAGE_WIDTH instead of - PAGE_WIDTH. - - * message.c (message_list_print): Print blank line before trailing - comments. - - * message.c (message_print_obsolete): Don't print anything for - obsolete entries with empty msgstr. - -Mon Mar 25 03:34:44 1996 Ulrich Drepper <drepper@myware> - - * msgunfmt.c (main): Make program by default read from stdin and - by default write to stdout in the appropriate argument is not - given. Suggested by François Pinard. - - * msgfmt.c (format_directive_domain): Only check for correct - format string elements is special comment contains c-format. - - * msgfmt.c: Use sizeof instead of strlen to determine length of - constant string. - - * xgettext.c: Implement generation of c-format special comments. - - * msgunfmt.c (main): Call message_list_print with additional - argument set to NULL. - - * xgettext.c (main): Call message_list_print with additional - argument set to NULL; - (extract_class_ty): We don't have field comment_special anymore, but - instead flags fuzzy and c_format. - (extract_constructor): Reset fields fuzzy and c_format. - (extract_directive_message): Set flags according to special comments, - not string list. - (extract_comment_special): Set flags according to special comment. - - * message.h (message_ty): We don't have field comment_special - anymore. Instead flags fuzzy and c_format. - (message_comment_special_append): Remove prototype. - (message_list_print): Add new argument to prototype. - - * message.c (message_alloc): We don't have the comment_special, - but fuzzy and c_format. - (message_comment_special_append): Remove function. We now have flags. - (message_copy, message_merge): Copy fuzzy and c_format flag - appropriately. - (message_print, message_print_obsolete): Print special comment using - flags, not string list. - (message_list_print): Additional argument with trailing comments. - Printed at the end if not NULL. - - * msgmerge.c (merge_class_ty): New fields fuzzy and c_format for - flags; - (trailing_comments): New global variable for list of trailing - comments in definition file. - (grammar): Takes an additional argument which if NULL gets the list of - trailing comments assigned to. - (main): Call message_list_print with additional argument of trailing - comments. - (merge_comment_special): Recognize fuzzy and c-format special comment. - -Sun Mar 24 17:35:26 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (usage): Option --output-suffix does not exist - anymore. - - * msgmerge.c (usage): --strict does not have short form -S. - - * message.h (message_ty): New field `obsolete'. - - * msgmerge.c (merge): Change behaviour not not matched entries. - Instead of giving a message write them out at the end of the - regular output and precede each line with `# '. - - * message.c (message_list_print): Handle obsolete entries - separately by printing them at the end and preceded by `# '. - (message_print_obsolete): New function to print obsolete entries. - - * Makefile.in ($(PROGRAMS)): Add generated libraries as - dependencies for programs. - - * Makefile.in (PROGRAMS): Remove msgjoin. - -Sun Mar 24 01:03:32 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (extract_comment_filepos): Only add line comment if - requested by -n option. - - * po.c (po_callback_comment): Short by one bug in special comment - entry copying. - - * po.c (po_callback_comment): Handle special comments. Separate - them into a list of comma separate entries. - - * message.c (message_print): Format of lines containing fuzzy - comments et.al. is now `#, xxx'. - - * Makefile.in: msgjoin program is not anymore generated. - - * xgettext.c: First step to implementing general input file - handling. The program now recognizes the file type by the file - name extension and uses the appropriate function. For now two - file types are recognized: C/C++ and PO. Especially handling PO - files make the msgjoin program obsolete. - -Sat Mar 23 01:50:00 1996 Ulrich Drepper <drepper@myware> - - * msgfmt.c (verbose): Rename to verbose_level. - (main): Increment verbose_level each time -v option is given. - (format_directive_domain): Print some of the diagnostic messages only - if verbosity level is > 1. Suggested by François Pinard for a - better interface to PO mode. - - * xgettext.c (scan_c_file): Extract all string if `extract-all' - option is given. Reported by Roland McGrath. - -Thu Mar 14 14:55:20 1996 Ulrich Drepper <drepper@myware> - - * msgfmt.c (format_comment_special): Be prepared that special - comment contains more than one entry, separated by commas. - - * message.c (message_print): Special comments are now written in a - line, separated by commas. - - * msgmerge.c (merge): Replace `INEXACT' with `fuzzy'. - -Thu Mar 14 11:50:48 1996 Marcus Daniels <marcus@sysc.pdx.edu> - - * po-hash.h (po_hash): Change __P to PARAMS in prototype. - -Fri Mar 1 13:35:01 1996 Ulrich Drepper <drepper@myware> - - * msgfmt.c (main): Set error_one_per_line to 1 to prevent more - than one error message per line. Suggested by François Pinard. - - * po-lex.h (po_gram_error): Don't write source file name in fatal - message. - (po_gram_error_with_loc): Ditto. - - * po-lex.c (lex_close): Don't write source file name in fatal - message. - (po_gram_error): Ditto. - (po_gram_error_with_loc): Ditto. - -Fri Mar 1 00:30:49 1996 Ulrich Drepper <drepper@myware> - - * po-lex.h: Use PARAMS instead of __P in header declarations. - - * msgcmp.c (compare_methods): Set new field comment_special to - NULL. - - * msgjoin.c (join_methods): Set new field comment_special to NULL. - - * xgettext.c (exclude_methods): Set new field comment_special to - NULL. - - * po.h (struct po_method_ty): New field comment_special. - (po_directive_domain, po_directive_message, po_parse_brief, - po_parse_debrief, po_comment, po_comment_dot, po_comment_filepos): - Remove prototypes. Now are local functions. - - * po.c (po_parse_brief, po_parse_debrief, po_directive_domain, - po_directive_message, po_comment, po_comment_dot, - po_comment_filepos): Declare functions as local and add - prototypes. - (po_comment_special): New function. - (po_callback_comment): For special comments call po_comment_special. - - * msgmerge.c (usage): Add --force in help message. - (merge_methods): Set special comment callback to NULL. - - * po-lex.c (lex_open): Don't set pass_comments to 0. This has to - be done in upper layer functions. - (po_gram_lex): Also pass #! comments up. - - * msgfmt.c (main): Make lexer pass comments up. - (format_comment_special): New function. Warns about `#! INEXACT' - comments. - (format_methods): Add callback for special comment. - -Wed Feb 14 01:56:14 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (main): Remove option --output-suffix. When default - domain name is "-" write to stdout. - -Mon Feb 12 02:20:09 1996 Ulrich Drepper <drepper@myware> - - * xgettext.c (main): Implement --output-suffix parameter to - determine alternative form of suffix for output file. - - * xgettext.c, msgjoin.c, msgmerge.c, msgunfmt.c (main): Add - additional argument to message_list_print call: control output in - case of empty PO file. - * message.c (message_list_print): Implement FORCE parameter. - * message.h: Change prototype. - -Sun Jan 21 17:24:56 1996 Ulrich Drepper <drepper@myware> - - * Makefile.in (install-exec): Include empty else case for case - when Perl is not available. Reported by John David Anglin. - -Sat Dec 23 12:41:43 1995 Jun Young <bangjy@nownuri.nowcom.co.kr> - - * gettextp.c (usage): Short option for version info is -V. - -Tue Dec 19 22:10:12 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (Makefile, tupdate): Explicitly use $(SHELL) for - running shell scripts. - -Sat Dec 9 17:06:11 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c, xget-lex.h, xget-lex.c, str-list.h, po.h, po.c, - po-lex.c, po-hash.y, po-gram.h, open-po.c, msgunfmt.c, msgmerge.c, - msgjoin.c, msgfmt.c, msgcmp.c, message.h, message.c, gettextp.c: - Use PARAMS instead of __P. Suggested by Roland McGrath. - -Fri Dec 8 01:38:40 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (PROGRAMS): Add definitions for new msgjoin program. - - * msgjoin.c: Initial revision. - -Wed Dec 6 18:43:14 1995 Ulrich Drepper <drepper@myware> - - * open-po.c (open_po_file): Recognize /dev/stdin as name for - stdin. Recognize .pot as valid extension. - -Wed Dec 6 18:05:11 1995 Ulrich Drepper <drepper@myware> - - * msgmerge.c (main): Sort options in getopt loop. - -Mon Dec 4 15:37:22 1995 Ulrich Drepper <drepper@myware> - - * msgmerge.c: (main): Remove unused variable `exit_status'. - -Sun Dec 3 02:51:31 1995 Ulrich Drepper <drepper@myware> - - * xget-lex.h: [xgettext_token_type_ty]: We now have two keyword - types and also the comma is important. - - * xgettext.c (remember_a_message): - Correct handling of -c option. This is not a - string to prepend to output. Instead it selects single strings to - include (instead of all). Reported by Marcus Daniels. - (scan_c_file): Extend state machine. We have to retrieve the second - argument for the keywords `dgettext' and `dcgetetxt`. - - * xget-lex.c (phase5_get): Recognize ','. - (xgettext_lex): Pass ',' on caller. - Return different value for keywords `dgetetxt' and `dcgettext`. - - * xget-lex.c (xgettext_lex): `gettext_noop' is an default keyword. - - * msgunfmt.c (usage): - Message should not contain TABs. Reported by François Pinard. - - * msgunfmt.c (usage): - Correct typo: Uniforun -> Uniforum. Reported by François Pinard. - -Mon Nov 20 21:12:52 1995 Ulrich Drepper <drepper@myware> - - * po-lex.c, message.c: Some more pretty printing. - - * message.c (wrap): Don't support '\a' and '\v'. - - * xget-lex.c (phase7_getc): Don't support '\v'. - - * po-lex.c (control_sequence): Don't support '\v'. - - * gettextp.c (expand_escape): Don't support \a and \v. - - * msgcmp.c (compare): Really define static. - -Thu Nov 16 22:42:33 1995 Ulrich Drepper <drepper@myware> - - * msgmerge.c (merge): Remove additional parameter in in prototype. - - * xgettext.c: Reomved unused type definition. Patch by Peter Miller. - - * xget-lex.c: Correct some comments and better implementation of - -k option. Patch by Peter Miller. - - * po.h: Fix typos. By Peter Miller. - - * po-lex.c (po_gram_lex): Prevent accumulation of #! comments. - - * po-gram.y (comments): Remove unused rule. - - * msgmerge.c: Implement new options sort-by-file and sort-output. - Patches by Peter Miller. - - * msgcmp.c (domain): Remove unused global variable. - (domain_directive): Remove unused function. - - * message.h: Fix comment for MESSAGE_DOMAIN_DEFAULT definition. - - * message.c (message_print): Correct typo. - Clarify comments about ANSI escape sequences. - Patches by Peter Miller. - - * Makefile.in (DISTFILES): Remove $(COMSRCS). - (MSGFMT_OBJ): Correct indentation. Patches by Peter Miller. - -Sun Nov 12 12:52:29 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c (line, string, comment): Remove unused global variables. - (read_name_from_file): Remove unused variable `cp'. - - * msgmerge.c (merge): Add missing return statement. - - * msgfmt.c (check_pair): Correctly pair comparisons. - - * msgcmp.c (domain_list, mlp): Remove unused global variables. - -Sat Nov 11 21:39:17 1995 Ulrich Drepper <drepper@myware> - - * message.c (message_list_print): - Prevent output if we have no (real) entry. - - * xgettext.c (remember_a_message): Implement exclude file handling. - -Sat Nov 11 17:38:05 1995 Ulrich Drepper <drepper@myware> - - * msgunfmt.c: Fix message. - - * xgettext.c: Use string handling from str-list and .po file - handling use xget-lex et.al. - - * xget-lex.h, xget-lex.c, str-list.h, str-list.c, po.h: - Initial revision. - - * po-lex.h: Allow variable upper limit of errors. - New prototypes. - - * po-lex.c: Allow variable upper limit of errors. - Make comment's text available to the caller. - - * po.c, po-hash.y, po-hash.h: Initial revision. - - * po-gram.y: Add handling of comments. - - * po-gram.h: Remove all but one declaration. - - * msgunfmt.c, msgmerge.c: Initial revision. - - * msgfmt.c: Adopt for new interface to parser. - - * msgcmp.c: Move lot's of general code to other files. - - * message.h, message.c: - Extended functionality for Peter Miller's pseudo-OO programming. - - * Makefile.in: Rewrite after adding rules for new programs. - -Fri Nov 10 10:01:37 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (PROGRAMS): Add new programs msgmerge and msgunfmt. - -Thu Nov 9 01:29:46 1995 Ulrich Drepper <drepper@myware> - - * gettextp.c (usage): Split message in two parts. - - * xgettext.c (usage): Split message in three parts. - - * xgettext.c (main): - Print warning if --files-from option and file names on command - line are given. - - * xgettext.c (long_options): - Mixed up `default-domain' and `directory' values. - -Wed Nov 8 23:31:34 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c: Implement -D and -f option. - -Tue Nov 7 13:44:44 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (LIBS): One @LIBS@ must be @INTLLIBS@. - - * Makefile.in (LIBS): Correct definition. We must be prepared to - use two different libintl.a libraries. - (po-gram.gen.c): Don't use $< in non-implicit rule. - - * Makefile.in (install-exec): Use `test -n' instead of - `test XXX != ""'. Proposed by François Pinard. - -Sun Nov 5 23:59:03 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (INSTALL_PROGRAM): Do not specify mode. - -Sun Nov 5 21:13:57 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c, msgfmt.c: - Comments describing what has to be done should start with FIXME. - -Sun Nov 5 19:39:56 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (dist-gettext): Make synonym for dist. - -Sun Nov 5 18:11:15 1995 Ulrich Drepper <drepper@myware> - - * po-lex.h (gram_error, gram_error_with_loc): - Don't define macros when !__STDC__ - even when using gcc. - - * po-lex.c (gram_error, gram_error_with_loc): - Compile if !__STDC__ even if using gcc. - - * Makefile.in (po-gram.gen.c po-gram.gen.h): - Remove file prior of generation. - -Sun Nov 5 11:39:21 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (dist): Suppress error message when ln failed. - Get files from $(srcdir) explicitly. - - * xgettext.c (process_c_source): - Make gettext_noop the forth builtin marker. - -Fri Nov 3 00:57:52 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c (main): Don't free fname when no suffix was added. - -Thu Nov 2 22:55:44 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (dist): Also remove msgcmp. - -Tue Oct 31 22:27:52 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c: New option --strict: Only if this is given the .mo - file ending is forced. - - * msgfmt.c (message_directive): - Call error_with_loc with correct parameters. - - * msgfmt.c (message_directive): - Ignores empty message does not count as fatal error. - - * Makefile.in (po-gram.gen.c): - Add g suffix to make multiple substitution in one - line possible. - -Mon Oct 30 22:35:41 1995 Ulrich Drepper <drepper@myware> - - * po-gram.h: - Don't give defines for translation of yy* symbols. This is not enough - to be able to have more than one parser. See src/Makefile for the way - we chose. - - * Makefile.in (po-gram.gen.c): - Rewrite generated source while copying. This is the - only portable way to get more than one parser in the same program. - Patch by Peter Miller. - -Sun Oct 29 10:49:59 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (INSTALL_SCRIPT): New variable. - (install-exec): Install tupdate using INSTALL_SCRIPT to prevent error - when using strip flag. - -Sat Oct 28 14:39:33 1995 Ulrich Drepper <drepper@myware> - - * po-gram.h: Include <sys/types.h>. - - * xgettext.c (main): - Honour -n option even if --omit-header is given. By Peter Miller. - - * msgcmp.c (check_domain_coverage): - No double space in message. By Peter Miller. - - * msgcmp.c (grammar): - Close input file after coverage check. Patch by Peter Miller. - -Wed Sep 27 20:27:26 1995 Ulrich Drepper <drepper@myware> - - * msgcmp.c: - Don't try to include <string.h>. This is done in "system.h". - - * po-lex.c (gram_error, gram_error_with_loc): - Add argument definition for K&R style. - (gram_error, gram_error_with_loc): We increase gram_nerrors, - not nerrors. Reported by Francesco Potorti`. - -Tue Sep 26 10:03:29 1995 Ulrich Drepper <drepper@myware> - - * po-gram.h (yyparse): Add redefinition to gram_parse. - - * Makefile.in (YFLAGS): - Don't use -p option. Stupid old yaccs do not know it. - - * po-lex.c: Include po-gram.h to get redefinitions of yy* symbols. - - * po-gram.h (yylex, yylval, yyerror): - Redefine these symbols to gram_* because the - yacc is now called without -p option. - - * Makefile.in (LIBS): - Undid last change. On some systems libintl.a is not - completely self-contained. alloca() is miisong e.g. on HP-UX. - -Mon Sep 25 22:35:55 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c (add_mo_suffix): Fix typo. - - * po-lex.h: Include <sys/types.h>. - (lex_open): Argument is now `const char *'. - - * msgfmt.c (add_mo_suffix): - Allow .gmo suffix. Great idea by Marcus Daniels. - -Sat Sep 23 08:20:54 1995 Ulrich Drepper <drepper@myware> - - * po-gram.y, po-lex.c: Include error.h. - - * open-po.c (open_po_file): - Remove unused variables `path_dir' and `open_po_file'. - -Thu Sep 21 15:30:36 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (LIBS): - using libnlsut.a twice is not necessary anymore. libintl.a is - selfcontained. - - * gettextp.c (main): - Use dcgettext__ and bindtextdomain__ instead of __dcgettext - and __bindtextdomain. - - * msgfmt.c, xgettext.c (exit_status): - New variables. Contains exit status for the case the program - ends normally. Changed when non-fatal error messages are given. - -Wed Sep 20 09:16:57 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (xgettext): No also link po-gram.gen.o and po-lex.o. - - * po-lex.c: Pretty print comments. - Do some CSE in computation of hex value. - - * xgettext.c (read_po_file): Now use the generated scanner. - (domain_directive, message_directive): New functions needed for - scanner. - (add_id_str): Correct test for exclude files. The messages in the - exclude table are in raw format, not C format. - (write_out_domain): Check for zero messages and don't write anything in - this case. - - * po-lex.c (lex_open): Argument NAME is now const. - (gram_error): Move VARARGS1 comment to right place. - (control_sequence): Pretty print some comments. - -Mon Sep 18 21:23:55 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c (add_mo_suffix): Really check for not .mo suffix. - - * xgettext.c (write_out_domain): - Write file names in #: lines to file, not stdout. - - * po-gram.y (grammar): - Remove function. This allows sharing this file in different - programs. - - * domain.h (msg_domain): Member DOMAIN_NAME is now const. - - * Makefile.in (PROGRAMS): Add msgcmp. - (HEADERS): Add message.h. - (SOURCES): Add message.c and msgcmp.c. - (OBJECTS): Add message.o and msgcmp.o. - (msgcmp): Rule to construct program. - - * message.h, message.c: Initial revision - - * msgfmt.c (grammar): Close comment so that function is seen. - (message_directive): MSGID and MSGSTR are not const. - - * msgcmp.c: Initial revision - - * po-gram.h (message_directive): - MSGID and MSGSTR argument are not const. - - * po-gram.h (grammar): Remove prototype. Is now locally defined. - - * po-lex.h (gram_error, gram_error_with_loc): - Protect the instructions by do while (0). - - * msgfmt.c (grammar): - Define function here. This allows sharing the grammar file - with the msgcmp program. - - * msgfmt.c (domain_directive): Free memory of NAME if not needed. - (new_domain): Do not duplicate filename, use it as it is. - - * msgfmt.c (message_directive): - Free parameter string memory here if necessary. - Was done in po-gram.y before. - - * po-gram.h: Remove comment after closing #endif. - - * po-gram.h (grammar): Name parameter in prototype. - -Sun Sep 17 23:29:30 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c (read_po_file): We don't have a search path anymore, - so third argument to open_po_file is not needed anymore. Reduce - argument list by this parameter, too. - - * po-lex.c (lex_open): - We don't have a search path anymore, so third argument to - ope_po_file is not needed anymore. - - * open-po.c (open_po_file): Remove unused `use_path' parameter. - - * Makefile.in (HEADERS): Add po-gram.h and po-lex.h. - - * po-gram.h, po-lex.h: Initial revision - - * Makefile.in (YACC, YFLAGS): New program used for .po file grammar. - (SOURCES): Add po-gram.y and po-lex.c. - (GENHEADERS, GENSOURCES): New variables for generated headers - and sources. - (OBJECTS): Add po-gram.gen.o and po-lex.o. - Add rules for new files and add to dependency list for msgfmt. - - * po-lex.c, po-gram.y: Initial revision - - * xgettext.c: Remove input path handling. - Adapt for new hashing functions return values. - - * msgfmt.c: - Rewrite .po file handling. Use Peter Millers .po file Yacc grammar. - - * open-po.c: Remove handling of input path. - - * xgettext.c (write_out_domain): - Split #: lines each 80 columns. Based on a patch by - Peter Miller. - - * Makefile.in: hash.[ch] moved from src/ to lib/ subdirectory. - -Wed Aug 23 21:13:11 1995 Ulrich Drepper <drepper@myware> - - * tupdate.in: Don't print comment in front of obsolete entries. - -Tue Aug 22 22:16:31 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (AR, RANLIB): Remove definition. Not needed here. - Reported by François Pinard. - -Sat Aug 19 17:38:22 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (install-src): - Make behave like install. I.e. really install the catalogs. - -Sat Aug 19 00:57:07 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (SCRIPTS): - New variable. Contains names of scipts to be generated and - installed. For now it is tupdate. - (PROGRAMS): Remove tupdate. - (all): Also depend on $(SCRIPTS). - -Fri Aug 18 13:02:04 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (PROGRAMS): Add tupdate. - (tupdate): New rule. Rebuild tupdate if tupdate.in or - ../config.status changed. - - * tupdate.in: Correct case where message is new: no really print msgid. - Better help message by François Pinard. - Recognize #\t as comment. - Print comment for now obsolete entries. - Handle real comments (translator comments and tupdate generate obsolete - entries). - - * gettextp.c (usage): Better help message. - (usage): Add -s description to help screen. - -Mon Aug 14 23:50:48 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (install-src): New no-op goal. - -Thu Aug 10 11:26:45 1995 Ulrich Drepper <drepper@myware> - - * tupdate.in: Don't print two " in front of commented out msgstrs. - -Wed Aug 9 09:10:30 1995 Ulrich Drepper <drepper@myware> - - * hash.c: - Better implementation. Rehashing is now much faster because the - hashing value stored in the `used' field is reused. - (insert_entry): Split into two function. `insert_entry_2' now does the - the work while in `insert_entry' the checks are done. - (lookup_2): New function. Expects the search key to be NUL - terminated. This is the case when the key is already in the - hash table when rehashing. - - * msgfmt.c (write_table): - Third argument to `iterate_table' is now a `const' pointer. - - * hash.h (iterate_table): Third arguemtn is `const' pointer. - - * xgettext.c (struct id_str): Make fields `const' pointers. - -Fri Aug 4 22:45:39 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c (main): Fix typo: me -> we. - - * msgfmt.c (output_file_open): Remove this unused variable. - Reported by Jim Meyering. - - * Makefile.in (dist): Remove `copying instead' message. - - * gettextp.c: Start to implement non-Uniforum behaviour. - Implemented new mode where gettext behaves like `echo', - while translating the messages available in the specified test. - New option: -d, -e, -E, also available in normal mode: - -E: ignored. - -e: enable expansion of some escape sequences. - -d: specify text domain to use. - New option: -s: enable `echo' mode. - -Thu Aug 3 18:25:37 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c (usage): - Fix typo: anormalies -> anomalies. - Reported by Karl Anders O/ygard. - -Wed Aug 2 18:51:08 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (ID, TAGS): Do not use $^. - - * xgettext.c (write-header): Add `Content-Type' field. - -Tue Aug 1 20:07:58 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (distclean): Remove ID file. - - * Makefile.in (TAGS, ID): Use $^ as command argument. - (TAGS): Give etags -o option t write to current directory, - not $(srcdir). - (ID): Use $(srcdir) instead os $(top_srcdir)/src. - -Mon Jul 31 20:57:48 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c (process_po_file): - Quote msgstr in message "empty `msgstr' entry ignored". - Report by Karl Anders O/ygard. - -Sun Jul 30 12:14:29 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (LIBS): Always use ../intl/libintl.a. - (all): Always depend on ../intl/libintl.a. - -Tue Jul 25 00:15:01 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c (process_po_file): Correct problem with empty lines. - -Sun Jul 23 22:47:56 1995 Ulrich Drepper <drepper@myware> - - * msgfmt.c (process_po_file): - Give a message when a sole msgid is found at the end of file. - -Wed Jul 19 01:52:13 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (PROGRAMS): Always compile all three programs. - - * gettextp.c: Include libgettext.h explicitly, in addition to - libintl.h. On system having libintl.h provided by the C library - this assures to have the prototypes for the function defined in - GNU gettext library. - Use __bindtextdomain and __dgettext instead of bindtextdomain and - dgettext resp. - Swap arguments in bindtextdomain call. - -Tue Jul 18 23:57:16 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c (add_id_str): - `free(msgstr)' can fail on system not allowing free(0). - Reported by Francesco Potorti`. - -Tue Jul 18 19:43:41 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c (getpwuid): - Define prototype if !defined _POSIX_VERSION. - - * hash.c: Don't include malloc.h and string.h because it will be - done in system.h. - - * msgfmt.c: Don't include malloc.h because it will be done in - system.h. - -Sat Jul 15 00:45:31 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c (main): - Disable line_comment option when omit_header is selected. - (write_out_domain): Don't write empty line if !line_comment. - - * Makefile.in (DISTFILES): - Due shorted file names now distribute tupdate.in. - (install, clean): Handle tupdate, not tupdate.perl. - - * tupdate.in: Rename tupdate.perl.in to tupdate.in to fit in 14 - character file systems. - -Thu Jul 13 22:21:22 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (install): Test whether Perl was found before - installing. - - * tupdate.perl.in: Make die message more GNU-like. - - * gettextp.c (usage): - Protect prototypes with __P and use K&R form for parameters. - - * xgettext.c (main): - Don't use 100u; poor K&R compilers need (unsigned) 100. - - * open-po.c (xstrdup): Protect prototype with __P. - - * msgfmt.c (usage, new_domain, process_po_file, compare_id, - write_table, check_pair): Protect prototypes with __P. - - * hash.c (xmalloc): Protect prototype with __P. - -Thu Jul 13 01:39:47 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (check): New no-op goal. - -Wed Jul 12 10:40:54 1995 Ulrich Drepper <drepper@myware> - - * tupdate.perl.in: Implement --help and --version options - - * xgettext.c: Add --string-limit option to specify limit on string - length. - Only warned when verbose mode is selected. - Add --verbose option. - Help message now correctly says --version == -V. - -Tue Jul 11 22:57:54 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c (usage): Split help string because it breaks 1024 - byte limit. - - * Makefile.in (install-exec): Install tupdate. - - * xgettext.c (stdlib.h): Protect inclusion by STDC_HEADERS. - (assert): No assertions anymore. - (HAVE_STRTOUL): strtoul is now substituted when not available. - Add warning about too long strings (some systems have limits - for strings in their compiler and/or tools). E.g. Sinix's - gencat program. - - * msgfmt.c (printf.h): Include always - (assert): No assertions anymore (all bugs are gone :-). - (HAVE_STRTOUL): Not needed anymore because we substitute - strtoul if not present. - - * Makefile.in (DISTFILES,distclean): tupdate.perl is now found here. - -Tue Jul 11 01:31:03 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in: msgfmt.o depends on ../lib/printf.h. - - * msgfmt.c: protect inclusion of malloc.h and stdlib.h. - Don't use GCC's `case b ... e:' feature (NeXT's gcc is - gcc-2.xx but does not understand this. Grrr!). - - * open-po.c: Protect inclusion of string.h and stdlib.h. - - * hash.c: Pretty print #define. - (init_hash, insert_entry): Cast result of calloc. - (insert_entry): Remove non-ANSI `(type *) var = ...' by - `*(type **) &var = ...'. - (compute_hashval): Cast constant to unsigned long (default: int). - Has effects on 64-bit machines. - -Tue Jul 4 00:39:58 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c: Don't write "Version:" field for msgid "". - -Mon Jul 3 23:02:04 1995 Ulrich Drepper <drepper@myware> - - * xgettext.c, msgfmt.c: Better comment. - - * Makefile.in: Pretty print with François. - Fix typo in dependencies. - Even more dependency corrections. - Correct dependencies of open-po.c. - Remove unneeded $(srcdir) from Makefile.in dependency. - (LIBS): Correct for building in different directory. - (INCLUDES): Correct for building in different directory. - (DEFS): Rename DEF_MSG_DOM_DIR to LOCALEDIR. - (INCLUDE): Don't use -I paths when not needed. - - * hash.c: Include malloc.c and protect string.h inclusion. - - * gettextp.c: Protect include of stdlib.h declare prototype for - getenv if not __STDC__. - Include system.h for EXIT_FAILURE. - (main, usage): Replace DEF_MSG_DOM_DIR by LOCALEDIR. - - * open-po.c: Include system.h for EXIT_FAILURE. - - * msgfmt.c: Fix typo in !__STDC__ path. - (process_po_file): Change for new .po file format. - - * xgettext.c (main): Rename DEF_MSG_DOM_DIR to LOCALEDIR. - Update to new .po file format because Solaris' msgfmt can only - handle ANSI C style multi-line strings. - -Sun Jul 2 21:31:00 1995 Ulrich Drepper <drepper@myware> - - * gettextp.c: gettextp.c (usage): Fix typo in help message. - Reported by François Pinard. - -Sun Jul 2 02:12:41 1995 Ulrich Drepper <drepper@myware> - - * First official release. This directory contains the - source code for the programs specified in the Uniforum proposal - for internationalization. |