Eclipse Cuneiform

Tuesday, September 10, 2024 - 11:05 by Blake Madden
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project
Proposal State
Community Review
Background

I formerly worked in the localization field. Having a tool like this back then would have been highly useful.

I currently use it for my own projects, and has proven helpful for finding i18n issues.

Scope

Eclipse Cuneiform provides a command-line and GUI application for finding and testing internationalization and localization issues in source code and translation catalogs. This includes locating:

  • strings not available for localization
  • strings exposed for translation that shouldn't be
  • issues with translations (e.g., broken printf() syntax)

Pseudo-translation support for localization integration testing is also included (currently gettext *.po files)

Both the command-line and GUI versions will be available for the following platforms:

  • Windows 7 or above
  • macOS 10.15 or above
  • Linux
  • FreeBSD
Description

Eclipse Cuneiform offers support for analyzing C/C++, Java, and C# source code to identify internationalization (i18n) issues. Additionally, Eclipse Cuneiform assists in reviewing and pseudo-translating translation catalogs, including gettext (.po files), Java .properties files, XLIFF files, and .NET formats like .resx and .xaml. We also provide support for reviewing Windows resource files (.rc).

Why Here?

This could be a useful stand-alone development tool for both the C++ and Java community. Also, this could conceivably be made into an Eclipse plugin.

Future Work

Adding support for reviewing Java properties and source code files.

Pseudo-translation support for Java properties files, along with other translation resource formats (*.resx, *.xaml, *.xliff).

Discussing the project on Linkedin (they have localization communities) is my current promotional idea.

Project Scheduling

An initial contribution is ready, which supports C++ source files, gettext PO catalog files, and Windows RC files review.

Pseudo-translation of gettext PO files is also ready.

Project Leads
Committers
Interested Parties

Language Service Providers (LSPs)
Software Development organizations
Freelance translators

Initial Contribution

I own the code, except for two submodules (which use the Boost and MIT licenses).

The GUI component of this program needs to be built with wxWidgets, which is wxWindows licensed (basically, LGPL).

Source Repository Type