1 /* xgettext Scheme backend. 2 Copyright (C) 2004, 2006, 2014, 2018, 2020 Free Software Foundation, Inc. 3 Written by Bruno Haible <bruno@clisp.org>, 2004. 4 5 This program is free software: you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <https://www.gnu.org/licenses/>. */ 17 18 19 #include <stdio.h> 20 21 #include "message.h" 22 #include "xg-arglist-context.h" 23 24 25 #ifdef __cplusplus 26 extern "C" { 27 #endif 28 29 30 #define EXTENSIONS_SCHEME \ 31 { "scm", "Scheme" }, \ 32 33 #define SCANNERS_SCHEME \ 34 { "Scheme", extract_scheme, NULL, \ 35 &flag_table_scheme, &formatstring_scheme, NULL }, \ 36 37 /* Scan a Scheme file and add its translatable strings to mdlp. */ 38 extern void extract_scheme (FILE *fp, const char *real_filename, 39 const char *logical_filename, 40 flag_context_list_table_ty *flag_table, 41 msgdomain_list_ty *mdlp); 42 43 44 /* Handling of options specific to this language. */ 45 46 extern void x_scheme_extract_all (void); 47 extern void x_scheme_keyword (const char *name); 48 49 extern void init_flag_table_scheme (void); 50 51 52 #ifdef __cplusplus 53 } 54 #endif 55