Hi there,
in three letters: wow! A more detailed assessment follows.
_*
Apertium Caffeine*_
Apertium Caffeine is a small, user-oriented Apertium client, similar
in concept to apertium-tolk, but which has some great advantages over it:
* It doesn't depend on anything external and is written in Java.
This means that it is completely platform-independent (it can work
on Linux, OS X as well as Windows) and its only requirement is a
Java VM (i.e. you don't need a separate installation of Apertium
or its language pairs). Since Java uses UTF-16 internally, we
shouldn't be having any encoding problem neither.
* It manages language pairs within the app. In other words, you can
install, uninstall and even update language pairs from the app
itself in a simple, user-friendly way.
Cool. Works like a charm. A minor quibble: I said I wanted it installed
in /tmp and it decided that every file in there was an already installed
language pair. Perhaps a regex identifying language pairs by name would
be very helpful.
* Some other features for a better user experience that you will
find as you use the program: highlighting of unknown and ambiguous
words, full language names...
Haven't checked these yet.
The source code can be found here
<https://apertium.svn.sourceforge.net/svnroot/apertium/branches/gsoc2012/artetxem/apertium-caffeine/>,
but you can also download and test the ready-to-use JAR here
<https://apertium.svn.sourceforge.net/svnroot/apertium/branches/gsoc2012/artetxem/apertium-caffeine.jar>.
_*Apertium plug-in for OmegaT*_
This is something that some of you suggested in the other thread and I
have implemented as a proof of concept of how easy can lttoolbox-java
be integrated in bigger Java projects. It shares most of its code with
Apertium Caffeine, including the ability to manage language pairs
within the app and, of course, it works offline.
The source code can be found here
<https://apertium.svn.sourceforge.net/svnroot/apertium/branches/gsoc2012/artetxem/apertium-omegat/>,
and the ready-to-use JAR here
<https://apertium.svn.sourceforge.net/svnroot/apertium/branches/gsoc2012/artetxem/apertium-omegat.jar>.
If you want to try it, simply copy the JAR to the plugins directory of
your OmegaT installation. The next time that you launch OmegaT, you
will see a new option at Options -> Machine Translate called "Apertium
(offline)", which has to be checked to activate the plug-in. If you
want to configure the plug-in or manage language pairs, go to Options
-> Apertium settings.
The menu appearde but this one crashed on me: I think the problem is
that I had a previous installation somewhere else (they use the same
.java/.userPrefs/org/apertium/ . I remove these.
Then on launching OmegaT I get a dialog that may be confusing for some,
as it does not identify itself as an Apertium warning. It should...
It kindly asks me to decide where to install itself, and where to
install language pairs. Then I open a project, mark "Apertium offline"
in the Machine Translation options, and it crashes.
java.lang.IndexOutOfBoundsException: Index: 13, Size: 7
at java.util.ArrayList.rangeCheck(ArrayList.java:571)
at java.util.ArrayList.remove(ArrayList.java:412)
at
org.apertium.lttoolbox.process.State.nodeStatePool_get(State.java:101)
at org.apertium.lttoolbox.process.State.copy(State.java:145)
at org.apertium.lttoolbox.process.State.copy(State.java:158)
at
org.apertium.lttoolbox.process.FSTProcessor.analysis(FSTProcessor.java:857)
at org.apertium.lttoolbox.LTProc.doMain(LTProc.java:287)
at org.apertium.pipeline.Dispatcher.doLTProc(Dispatcher.java:259)
at org.apertium.pipeline.Dispatcher.dispatch(Dispatcher.java:333)
at org.apertium.Translator.translate(Translator.java:305)
at
org.omegat.plugin.machinetranslators.ApertiumTranslate.translate(ApertiumTranslate.java:62)
at
org.omegat.core.machinetranslators.BaseTranslate.getTranslation(BaseTranslate.java:64)
at
org.omegat.gui.exttrans.MachineTranslateTextArea$FindThread.search(MachineTranslateTextArea.java:128)
at
org.omegat.gui.exttrans.MachineTranslateTextArea$FindThread.search(MachineTranslateTextArea.java:103)
at
org.omegat.gui.common.EntryInfoSearchThread.run(EntryInfoSearchThread.java:95)
I try again and it works. Very nice.
There is one thing that could be easily solved. Víctor Sánchez (cc-ed)
maybe can help you. When one uses the Apertium webservice from inside
OmegaT, we avoid translating the tags (<u0>, etc.). Some minor changes
were made to the code that calls Apertium as a webservice (you'll easily
find them, but if not, I can help) and some changes were made in the
webservice itself (Víctor can help here). I think it is a matter of
using some regular expressions to hide these in some way...
You should consider sending a message to the OmegaT list. I can help
here, as I am subscribed. I think this is very, very important! And
perhaps you can get OmegaT people to help with some of the issues.
It is important to note that these settings as well as the installed
language pairs are shared with Apertium Caffeine, which means that, if
you install, uninstall or update a language pair, the changes will be
reflected in both programs. This is a design decision that I took, but
it would be simple to make them independent if you prefer it.
Oops I hadn't read that. I think it would be nice to have separate
options, yes.
Please, note that both are still under development, so you might find
that some stuff is not working as it should. Most notably, the
maintenance of online language pair packages is being discussed in
another thread, and we haven't taken a definitive solution yet, so
both apps are currently using some testing language pairs that I keep
in my branch.
Nice. We should solve this.
In case you try them and find some bug, or have any suggestion, please
write about it!
Just did.
Eskerrik asko
Mikel
--
Mikel L. Forcada (http://www.dlsi.ua.es/~mlf/)
Departament de Llenguatges i Sistemes Informàtics
Universitat d'Alacant
E-03071 Alacant, Spain
Phone: +34 96 590 9776
Fax: +34 96 590 9326
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Apertium-stuff mailing list
Apertium-stuff@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/apertium-stuff