1/* GNU gettext - internationalization aids 2 Copyright (C) 1995-1998, 2000-2003, 2006 Free Software Foundation, Inc. 3 4 This file was written by Peter Miller <millerp@canb.auug.org.au> 5 6 This program is free software: you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 3 of the License, or 9 (at your option) any later version. 10 11 This program is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 18 19#ifndef _WRITE_PO_H 20#define _WRITE_PO_H 21 22#include "ostream.h" 23#include "message.h" 24 25#include <stdbool.h> 26 27 28#ifdef __cplusplus 29extern "C" { 30#endif 31 32 33/* These functions are used to output a #, flags line. */ 34extern const char * 35 make_format_description_string (enum is_format is_format, 36 const char *lang, bool debug); 37extern bool 38 significant_format_p (enum is_format is_format); 39 40 41/* These functions output parts of a message, as comments. */ 42extern void 43 message_print_comment (const message_ty *mp, ostream_t stream); 44extern void 45 message_print_comment_dot (const message_ty *mp, ostream_t stream); 46extern void 47 message_print_comment_filepos (const message_ty *mp, ostream_t stream, 48 bool uniforum, size_t page_width); 49extern void 50 message_print_comment_flags (const message_ty *mp, ostream_t stream, 51 bool debug); 52 53/* These functions set some parameters for use by 'output_format_po.print'. */ 54extern void 55 message_page_width_ignore (void); 56extern void 57 message_print_style_indent (void); 58extern void 59 message_print_style_uniforum (void); 60extern void 61 message_print_style_escape (bool flag); 62 63/* Describes a PO file in .po syntax. */ 64extern DLL_VARIABLE const struct catalog_output_format output_format_po; 65 66 67#ifdef __cplusplus 68} 69#endif 70 71 72#endif /* _WRITE_PO_H */ 73