summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorSuren A. Chilingaryan <csa@dside.dyndns.org>2005-08-02 04:43:01 +0000
committerSuren A. Chilingaryan <csa@dside.dyndns.org>2005-08-02 04:43:01 +0000
commit8b75f9bb6a09d54d634ff661655659951378aa2c (patch)
tree611f800f33ca919d37c724957fcc8c2b2bccb342 /examples
parente3f702e83a26468ee44f3f342a7a40a252f4603c (diff)
downloadlibrcc-8b75f9bb6a09d54d634ff661655659951378aa2c.tar.gz
librcc-8b75f9bb6a09d54d634ff661655659951378aa2c.tar.bz2
librcc-8b75f9bb6a09d54d634ff661655659951378aa2c.tar.xz
librcc-8b75f9bb6a09d54d634ff661655659951378aa2c.zip
Language autodetection
- rccConfigRecode function's are added - Language autodetection using aspell is added - Translation in 3 modes: "To English Language", "Skip English Translation", "Full" - Example2 to demonstrate translation possibilities
Diffstat (limited to 'examples')
-rw-r--r--examples/Makefile.am3
-rw-r--r--examples/example2.c13
-rw-r--r--examples/input-russian.txt2
-rw-r--r--examples/rcc-gtk-config.c6
4 files changed, 14 insertions, 10 deletions
diff --git a/examples/Makefile.am b/examples/Makefile.am
index 99b7506..710b7dc 100644
--- a/examples/Makefile.am
+++ b/examples/Makefile.am
@@ -20,6 +20,9 @@ endif
EXTRA_DIST= input-russian.txt rcc.xml rcc-example.xml mpg123-rcc.patch
+test: example2
+ cat input-russian.txt | ./example2
+
test-russian: example2
cat input-russian.txt | ./example2 ru
diff --git a/examples/example2.c b/examples/example2.c
index cc4a3fa..5ef3efb 100644
--- a/examples/example2.c
+++ b/examples/example2.c
@@ -24,27 +24,26 @@ int main(int argc, char *argv[]) {
rccInit();
rccInitDefaultContext(NULL, 0, 0, classes, 0);
rccInitDb4(NULL, "example", 0);
- rccSetOption(NULL, RCC_OPTION_TRANSLATE, 1);
-
-// rccExternalInit();
-// rccExternalFree();
+ rccSetOption(NULL, RCC_OPTION_TRANSLATE, RCC_OPTION_TRANSLATE_FULL);
current_language_id = rccGetCurrentLanguage(NULL);
english_language_id = rccGetLanguageByName(NULL, "en");
if (argc>1) rccSetLanguageByName(NULL, argv[1]);
+ else rccSetOption(NULL, RCC_OPTION_AUTODETECT_LANGUAGE, 1);
language_id = rccGetCurrentLanguage(NULL);
language = rccGetCurrentLanguageName(NULL);
if (language) printf("Current Language: %s\n\n", language);
- else printf("Unable Detect Language\n\n");
+ else {
+ printf("Unable Detect Language, using english\n\n");
+ rccSetLanguageByName(NULL, "en");
+ }
while (fgets(buf,255,stdin)) {
if (strlen(buf)<2) break;
- rccSetLanguage(NULL, language_id);
rccstring = rccFrom(NULL, 0, buf);
if (rccstring) {
- rccSetLanguage(NULL, english_language_id);
recoded = rccTo(NULL, 1, rccstring);
if (recoded) {
printf(recoded);
diff --git a/examples/input-russian.txt b/examples/input-russian.txt
index 8ea6e44..b89c105 100644
--- a/examples/input-russian.txt
+++ b/examples/input-russian.txt
@@ -2,3 +2,5 @@
ïðèâåò
¯à¨¢¥â
привет
+Good Morning
+Guten Abend
diff --git a/examples/rcc-gtk-config.c b/examples/rcc-gtk-config.c
index d0775a6..7758f09 100644
--- a/examples/rcc-gtk-config.c
+++ b/examples/rcc-gtk-config.c
@@ -38,15 +38,15 @@ int main (int argc, char *argv[])
if (argc<1) config = argv[0];
else config = argv[1];
+ gtk_set_locale ();
+ gtk_init (&argc, &argv);
+
rccInit();
rccUiInit();
ctx = rccCreateContext(NULL, 0, 0, classes, 0);
rccLoad(ctx, config);
uictx = rccUiCreateContext(ctx);
- gtk_set_locale ();
- gtk_init (&argc, &argv);
-
window1 = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_policy(GTK_WINDOW (window1), FALSE, FALSE, TRUE);
gtk_window_set_title (GTK_WINDOW (window1), "LibRCC Config");