Skip to content

Instantly share code, notes, and snippets.

@msoutopico
Created March 19, 2021 12:14
Show Gist options
  • Save msoutopico/3dcc2993014ef8abc2acd702c687f97c to your computer and use it in GitHub Desktop.
Save msoutopico/3dcc2993014ef8abc2acd702c687f97c to your computer and use it in GitHub Desktop.
#!/bin/bash
# Versions
# OmegaT 4.2.0
# openjdk version "1.8.0_252"
# run as:
# bash path/to/xliff_omt2okp_trans2edit.sh -p package_name.omt
path_to_file=$2
echo $path_to_file
proj_pkg=$(basename -- "$2")
#extension="${proj_pkg##*.}"
proj_dir="${proj_pkg%.*}"
#omtjar4="/mnt/c/Program Files/OmegaT/OmegaT.jar"
omtjar5="/mnt/c/Apps/Portable/OmegaT_5.2.0/OmegaT.jar"
#omtjar="/mnt/c/Apps/OmegaT_5.2.0/OmegaT.jar" #/opt/omegat/OmegaT.jar
omt_config="/mnt/c/Users/souto/AppData/Roaming/OmegaT"
omt_plugin="plugin-omt-package-1.6.3.jar"
echo "Parameters"
echo "=========="
echo "OmegaT jar: " $omtjar5
echo "Config folder: " $omt_config
echo "Project: " $proj_dir
# 1.x If necessary, unpack the project (but do not open it in OmegaT)
echo "Unzipping package"
mkdir -p 01_orig; mv $proj_pkg $_
rm -r $proj_dir
unzip -d $proj_dir 01_orig/$proj_pkg
# 2.x Make sure the /target folder is empty
echo "Making sure the /target folder is empty and master TMs are flushed"
sudo rm $proj_dir/*.tmx
sudo rm $proj_dir/target/*
sudo rm $proj_dir/target/.empty
# 3.x Generate target files
echo "Generating target files"
java -jar "$omtjar5" $proj_dir --mode=console-translate
# 4. Disable default XLIFF filter
echo "Disabling default XLIFF filter"
perl -i -pe 's/(?<=<filter className="org.omegat.filters3.xml.xliff.XLIFFFilter" enabled=")true/false/' $proj_dir/omegat/filters.xml
# 5. Disable segmentation in the project settings
echo "Disabling segmentation in the project settings"
perl -i -pe 's/(?<=<sentence_seg>)true/false/' $proj_dir/omegat.project
# 6. Move all files from the /target folder to the /source folder (overwriting the original files)
echo "Moving all files from the /target folder to the /source folder (overwriting the original files)"
mv $proj_dir/target/* $proj_dir/source/
# 8. Delete all /omegat/project_save.tmx* files
echo "Cleaning up the working and reference TMs"
sudo rm $proj_dir/omegat/project_save.tmx*
sudo rm -r $proj_dir/tm/*
# 7. Copy /source folder to the /tm folder and rename it as /orig or similar (all XLIFF files will be in /tm/orig)
echo "Coping /source folder to the /tm folder and rename it as /orig or similar (all XLIFF files will be in /tm/orig)"
mkdir -p $proj_dir/tm/enforce/orig; cp $proj_dir/source/*.xlf $_
# 9. Pack the project again
#java -cp /opt/omegat/OmegaT.jar:/opt/omegat/custom/config/plugins/plugin-omt-package-1.6.0.jar net.briac.omegat.plugin.omt.ManageOMTPackage $proj_dir $proj_dir.omt
echo "Packing the project again"
java -cp "$omtjar5":"$omt_config"/plugins/"$omt_plugin" net.briac.omegat.plugin.omt.ManageOMTPackage --config "$omt_config"/omt-package-config.properties "$proj_dir" "$proj_pkg"
#
#echo "Deleting project folder"
#rm -r $proj_dir
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment