OmegaT
It is a computer-assisted translation tool, free software written in the Java programming language, originally developed by Keith Godfrey. Its features include customizable segmentation using regular expressions, expressions, translation memory with fuzzy matching and match propagation, glossary matching, dictionary matching, translation memory and reference material searching, and inline spell-checking using Hunspell spelling dictionaries.Download:
You can download it from the official website here. OmegaT is also available on Ubuntu Software Centre. To download it from the terminal type:
sudo apt-get install omegat
Prerequisite:
Built in Java Programming Language, make sure that your device has Java installed. Read here for how to install java.
Run the Application:
After installation to run the application in terminal type:
sudo omegat
Error to face:
Trying to open OmegaT you are most likely to see this error:
Suitable Java Binary not found.
Troubleshoot:
The error: "Suitable Jave binary not found" is displayed because the java (openjdk) version listed in script of OmegaT donot match your version. Suppose I use 1.8.0_66 also known as Java 8. I too get that error. So we need to manual configure the script, update our java version and restart the application.
#!/bin/sh
JAVA_OPTIONS='-Djava.library.path=/usr/lib/jni'
JAVA=$(which java | xargs readlink -f)
echo "$JAVA" | grep -q -e '\(openjdk\|sun\)'
if [ $? -eq 0 ]
then
JAVABIN=$JAVA
elif [ -x /usr/lib/jvm/java-6-openjdk-i386/bin/java ]
then
JAVABIN="/usr/lib/jvm/java-6-openjdk-i386/bin/java"
#KEEP YOUR JAVA VERSION HERE IN THIS LINE
#UNCOMMENT THREE LINES BELOW:
#line1# elif [ -x /usr/lib/java-8-oracle/bin/java ]
#line2# then
#line3# JAVABIN="/usr/lib/jvm/java-8-oracle/bin/java"
elif [ -x /usr/lib/jvm/java-6-sun/bin/java ]
then
JAVABIN="/usr/lib/jvm/java-6-sun/bin/java"
elif [ -x /usr/lib/jvm/java-1.5.0-sun/bin/java ]
then
JAVABIN="/usr/lib/jvm/java-1.5.0-sun/bin/java"
else
echo "Suitable java binary not found."
exit 1
fi
exec $JAVABIN $JAVA_OPTIONS -jar /usr/share/omegat/OmegaT.jar $*
Reference: Java Binary
Java source file is compiled into a binary class file. This feature of Java Programming Language makes Java Ubiquitous, portable and extensible. Java binary files are used in a JVM(Java Virtual Machine for execution. Java bytecode are interpreted using JVM directly. Latest JVM’s convert java bytecode into native code using a just-in-time (JIT) compiler and executes the native code.
Java source file is compiled into a binary class file. This feature of Java Programming Language makes Java Ubiquitous, portable and extensible. Java binary files are used in a JVM(Java Virtual Machine for execution. Java bytecode are interpreted using JVM directly. Latest JVM’s convert java bytecode into native code using a just-in-time (JIT) compiler and executes the native code.
For a simple helloworld program here are the bytecodes in hex forms:
public class HelloWorld { public static void main(String args[]) { System.out.println("Hello World!"); } }
Equivalent Byte Code:
ca fe ba be 00 00 00 32 00 1d 0a 00 06 00 0f 09 00 10 00 11 08 00 12 0a 00 13 00 14 07 00 15 07 00 16 01 00 06 3c 69 6e 69 74 3e 01 00 03 28 29 56 01 00 04 43 6f 64 65 01 00 0f 4c 69 6e 65 4e 75 6d 62 65 72 54 61 62 6c 65 01 00 04 6d 61 69 6e 01 00 16 28 5b 4c 6a 61 76 61 2f 6c 61 6e 67 2f 53 74 72 69 6e 67 3b 29 56 01 00 0a 53 6f 75 72 63 65 46 69 6c 65 01 00 0f 48 65 6c 6c 6f 57 6f 72 6c 64 2e 6a 61 76 61 0c 00 07 00 08 07 00 17 0c 00 18 00 19 01 00 0c 48 65 6c 6c 6f 20 57 6f 72 6c 64 21 07 00 1a 0c 00 1b 00 1c 01 00 0a 48 65 6c 6c 6f 57 6f 72 6c 64 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 4f 62 6a 65 63 74 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 53 79 73 74 65 6d 01 00 03 6f 75 74 01 00 15 4c 6a 61 76 61 2f 69 6f 2f 50 72 69 6e 74 53 74 72 65 61 6d 3b 01 00 13 6a 61 76 61 2f 69 6f 2f 50 72 69 6e 74 53 74 72 65 61 6d 01 00 07 70 72 69 6e 74 6c 6e 01 00 15 28 4c 6a 61 76 61 2f 6c 61 6e 67 2f 53 74 72 69 6e 67 3b 29 56 00 21 00 05 00 06 00 00 00 00 00 02 00 07 00 08 00 01 00 09 00 00 00 1d 00 01 00 01 00 00 00 05 2a b7 00 01 b1 00 00 00 01 00 0a 00 00 00 06 00 01 00 00 00 01 00 09 00 0b 00 0c 00 01 00 09 00 00 00 25 00 02 00 01 00 00 00 09 b2 00 02 12 03 b6 00 04 b1 00 00 00 01 00 0a 00 00 00 0a 00 02 00 00 00 03 00 08 00 04 00 01 00 0d 00 00 00 02 00 0e