summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2001-09-14 17:32:41 +0000
committerBruno Haible <bruno@clisp.org>2001-09-14 17:32:41 +0000
commite0f22df5c513f253d96877c6b2c6eec026d179d6 (patch)
tree158cbc93443284b486054e5be340fe0af09d7ae7 /src
parent2ecb11c53e32a57384bfe68e4e398c0936aad6d1 (diff)
downloadexternal_gettext-e0f22df5c513f253d96877c6b2c6eec026d179d6.zip
external_gettext-e0f22df5c513f253d96877c6b2c6eec026d179d6.tar.gz
external_gettext-e0f22df5c513f253d96877c6b2c6eec026d179d6.tar.bz2
Implement extract-all in Java mode.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog8
-rw-r--r--src/x-java.h1
-rw-r--r--src/x-java.l14
-rw-r--r--src/xgettext.c1
4 files changed, 23 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 520bdde..fee0975 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,11 @@
+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.
diff --git a/src/x-java.h b/src/x-java.h
index da0ac86..1deecac 100644
--- a/src/x-java.h
+++ b/src/x-java.h
@@ -27,3 +27,4 @@ extern void extract_java PARAMS ((FILE *fp, const char *real_filename,
msgdomain_list_ty *mdlp));
extern void x_java_keyword PARAMS ((const char *keyword));
+extern void x_java_extract_all PARAMS ((void));
diff --git a/src/x-java.l b/src/x-java.l
index ba0ae27..76d5c9f 100644
--- a/src/x-java.l
+++ b/src/x-java.l
@@ -261,6 +261,17 @@ translate_esc (s)
return n;
}
+
+/* options */
+static bool extract_all_strings = false;
+
+void
+x_java_extract_all ()
+{
+ extract_all_strings = true;
+}
+
+
static string_list_ty *java_keywords = NULL;
/**
@@ -423,7 +434,8 @@ extract_java (f, real_filename, logical_filename, mdlp)
case JAVA_FLOW:
/* Did we get something? */
- if (state == STATE_STRING && last_state == STATE_KEYWORD)
+ if (state == STATE_STRING
+ && (last_state == STATE_KEYWORD || extract_all_strings))
{
lex_pos_ty pos;
pos.file_name = logical_file_name;
diff --git a/src/xgettext.c b/src/xgettext.c
index 628e021..2a61815 100644
--- a/src/xgettext.c
+++ b/src/xgettext.c
@@ -221,6 +221,7 @@ main (argc, argv)
break;
case 'a':
x_c_extract_all ();
+ x_java_extract_all ();
break;
case 'c':
if (optarg == NULL)