Gogo Message Properties Synchronizer

A tool for synchronizing message.message properties files.

License

License

GroupId

GroupId

nl.gogognome
ArtifactId

ArtifactId

messagepropertiessynchronizer
Last Version

Last Version

1.0.2
Release Date

Release Date

Type

Type

jar
Description

Description

Gogo Message Properties Synchronizer
A tool for synchronizing message.message properties files.
Project URL

Project URL

https://github.com/gogognome/gogomessagepropertiessynchronizer
Source Code Management

Source Code Management

https://github.com/gogognome/gogomessagepropertiessynchronizer

Download messagepropertiessynchronizer

How to add to project

<!-- https://jarcasting.com/artifacts/nl.gogognome/messagepropertiessynchronizer/ -->
<dependency>
    <groupId>nl.gogognome</groupId>
    <artifactId>messagepropertiessynchronizer</artifactId>
    <version>1.0.2</version>
</dependency>
// https://jarcasting.com/artifacts/nl.gogognome/messagepropertiessynchronizer/
implementation 'nl.gogognome:messagepropertiessynchronizer:1.0.2'
// https://jarcasting.com/artifacts/nl.gogognome/messagepropertiessynchronizer/
implementation ("nl.gogognome:messagepropertiessynchronizer:1.0.2")
'nl.gogognome:messagepropertiessynchronizer:jar:1.0.2'
<dependency org="nl.gogognome" name="messagepropertiessynchronizer" rev="1.0.2">
  <artifact name="messagepropertiessynchronizer" type="jar" />
</dependency>
@Grapes(
@Grab(group='nl.gogognome', module='messagepropertiessynchronizer', version='1.0.2')
)
libraryDependencies += "nl.gogognome" % "messagepropertiessynchronizer" % "1.0.2"
[nl.gogognome/messagepropertiessynchronizer "1.0.2"]

Dependencies

compile (2)

Group / Artifact Type Version
org.slf4j : slf4j-api jar 1.7.12
commons-cli : commons-cli jar 1.3.1

test (1)

Group / Artifact Type Version
junit : junit jar 4.11

Project Modules

There are no modules declared in this project.

gogo message properties synchronizer

A tool for synchronizing message.message properties files.

Maven Central

Introduction

When working with multiple developers on a software product that supports multiple languages, synchronizing translations in several message properties files can be tedious. Choose one message properties file as source (for example the file containing the English messages) and use this tool to synchronize this file with the properties files for the other languages.

The tool compares the source file with another properties file, the destination file. The destination file wil be updated so that it contains the same properties as the source file. Messages that were already present in the destination are not changed. New messages are prefixed with a todo message so that translates can easily identify lines to be translated. Comments can be translated as long as the number of comment lines does not change.

Build instructions

After cloning this project type mvn install from the command prompt in the directory containing the file pom.xml. After a couple of seconds /target/messagepropertiessynchronizer-1.0.0.jar is created.

Usage

usage: java -jar gogomessagepropertiessynchronizer-1.0.jar -d <destination
       file> [-h] -s <source file> [-t <arg>]
 -d,--destination <destination file>   destination message properties
 -h,--help                             prints this message
 -s,--source <source file>             source message properties
 -t,--todo <arg>                       todo message to be inserted in
                                       added lines

Example

If messages.properties looks like this:

# Group 1
line=Line
square=Square
circle=Circle

# Group 2
red=Red
green=Green
blue=Blue

and messages_nl.properties looks like this:

# Groep 1
line=Lijn
circle=Cirkel

# Groep 2
yellow = Geel
green = Groen
blue = Blauw

Then after executing the command java -jar gogomessagepropertiessynchronizer-1.0.jar -s messages.properties -d messages_nl.properties message_nl.properties looks like this:

# Groep 1
line=Lijn
square=<TODO TRANSLATE>Square
circle=Cirkel

# Groep 2
red=<TODO TRANSLATE>Red
green = Groen
blue = Blauw

Versions

Version
1.0.2
1.0.1
1.0.0