Localization of Text Editor using Java Programming



Similar documents
Red Hat Enterprise Linux International Language Support Guide

The Unicode Standard Version 8.0 Core Specification

Quality Assurance in Localization

Microsoft Office 2007 Orientation Objective 1: Become acquainted with the Microsoft Office Suite 2007 Layout

Table Of Contents. iii

Bangla Localization of OpenOffice.org. Asif Iqbal Sarkar Research Programmer BRAC University Bangladesh

National Language (Tamil) Support in Oracle An Oracle White paper / November 2004

Microsoft Word 2007 Module 1

Migrating to Excel 2010 from Excel Excel - Microsoft Office 1 of 1

Introduction to Microsoft Word 2008

Administrator Manual Across Personal Edition v6 (Revision: February 4, 2015)

How to translate VisualPlace


3 What s New in Excel 2007

OX Spreadsheet Product Guide

Basics. a. Click the arrow to the right of the Options button, and then click Bcc.

Python for Series 60 Platform

Generating lesson plans with. Adobe Acrobat

Tips and Tricks SAGE ACCPAC INTELLIGENCE

Content Author's Reference and Cookbook

Right-to-Left Language Support in EMu

Making a Web Page with Microsoft Publisher 2003

VIRTUAL LABORATORY: MULTI-STYLE CODE EDITOR

Hypercosm. Studio.

Exporting Addresses. for Use in Outlook Express

Beyond EDI - How to import data into any JD Edwards table directly from an Excel spreadsheet without creating a custom program Session ID 36350

Mouse and Keyboard Skills

Introduction to the Computer and Word Processing application LEVEL: 1. Switch on computer and demonstrate use of mouse

Word Processing programs and their uses

XTM for Language Service Providers Explained

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Digital Pen & USB Flash Drive. User Guide. December

Enterprise Architecture Modeling PowerDesigner 16.1

Tutorial. for. HG2F/3F/4F Series Operator Interfaces

Getting Started Guide. Chapter 14 Customizing LibreOffice

Microsoft Migrating to Word 2010 from Word 2003

Basic Microsoft Excel 2007

Quick Start Guide. Microsoft Publisher 2013 looks different from previous versions, so we created this guide to help you minimize the learning curve.

MAS 500 Intelligence Tips and Tricks Booklet Vol. 1

Administrator Manual Across Translator Edition v6.3 (Revision: 10. December 2015)

SUDT AccessPort TM Advanced Terminal / Monitor / Debugger Version 1.37 User Manual

Enhanced Formatting and Document Management. Word Unit 3 Module 3. Diocese of St. Petersburg Office of Training Training@dosp.

3 SOFTWARE AND PROGRAMMING LANGUAGES

How to Use Gmail. 1. Using your computer s Internet browser direct yourself to the Gmail website:

Word 2007: Basics Learning Guide

User Manual. Software SmartGUI. Dallmeier electronic GmbH & Co.KG. DK GB / Rev /


Source Code Translation

Chapter 2 Text Processing with the Command Line Interface

QAD Business Intelligence Release Notes

TRANSLATIONS FOR A WORKING WORLD. 2. Translate files in their source format. 1. Localize thoroughly

User Guide. Opening secure from the State of Oregon Viewing birth certificate edits reports in MS Excel

Java CPD (I) Frans Coenen Department of Computer Science

Word basics. Before you begin. What you'll learn. Requirements. Estimated time to complete:

Introduction to Microsoft Word 2003

Computing Concepts with Java Essentials

One Report, Many Languages: Using SAS Visual Analytics to Localize Your Reports

Setting Up OpenOffice.org: Choosing options to suit the way you work

Opening the FTD Document Center. Double-click the FTD Document Center icon on your Windows desktop.

PTC Technical Specialists E-Newsletter Date: January 1, 2008

UHR Training Services Student Manual

Collaborative Tools. Course groups can also use the Collaboration tools for private sessions open only to course group members.

Microsoft Word 2010 Prepared by Computing Services at the Eastman School of Music July 2010

Web Design Project Center Project Center - How to Login

Computer Literacy Syllabus Class time: Mondays 5:00 7:00 p.m. Class location: 955 W. Main Street, Mt. Vernon, KY 40456

Microsoft Word 2010 Training

IBM MaaS360 Mobile Document Editor User Guide

WHAT S NEW IN WORD 2010 & HOW TO CUSTOMIZE IT

Microsoft Dynamics GP. Engineering Data Management Integration Administrator s Guide

A Quick Introduction to SOA

Programming in Access VBA

GETTING STARTED WITH COVALENT BROWSER

Chapter 4: Computer Codes

Collaborating Across Disciplines with Revit Architecture, MEP, and Structure

Mesa DMS. Once you access the Mesa Document Management link, you will see the following Mesa DMS - Microsoft Internet Explorer" window:

Microsoft Access is an outstanding environment for both database users and professional. Introduction to Microsoft Access and Programming SESSION

User's Guide. Using RFDBManager. For 433 MHz / 2.4 GHz RF. Version

1.5 MONITOR. Schools Accountancy Team INTRODUCTION

GOOGLE DRIVE Google Apps Documents Step-by-Step Guide

Teradata SQL Assistant Version 13.0 (.Net) Enhancements and Differences. Mike Dempsey

CRM On Demand. Siebel Marketing On Demand Online Help

Remote Access and Control of the. Programmer/Controller. Version 1.0 9/07/05

Integration of DB oriented CAD systems with Product Lifecycle Management

Metadata Import Plugin User manual

Basics Series-4004 Database Manager and Import Version 9.0

Ohio University Computer Services Center August, 2002 Crystal Reports Introduction Quick Reference Guide

Microsoft Access 2007

Microsoft Excel 2013: Headers and Footers

Maximizing the Use of Slide Masters to Make Global Changes in PowerPoint

Microsoft Office PowerPoint 2013

Pipeline Orchestration for Test Automation using Extended Buildbot Architecture

NetBeans IDE Field Guide

Windows PowerShell Essentials

"Better is the enemy of good." Tips for Translators Who Migrate to Across

Data Tool Platform SQL Development Tools

Network FAX Driver. Operation Guide

Quick Guide to the Cascade Server Content Management System (CMS)

SAS/GRAPH 9.2 ODS Graphics Editor. User s Guide

Migration Manager v6. User Guide. Version

Transcription:

Localization of Text Editor using Java Programming Varsha Tomar M.Tech Scholar Banasthali University Jaipur, India Manisha Bhatia Assistant Professor Banasthali University Jaipur, India ABSTRACT Software localization includes translation of short text strings appearing in user interfaces (UI) into language option. These strings are usually unrelated to the other string in the UI. For translation of UI from English language to Hindi language there are some coding schemes. In this document, one of these coding has been used for a new localized software product development in place of localizing an already existing software product. This paper presents a Localized Text Editor in Hindi language which has been developed using Unicode and Java programming. Each English language string of user interface is replaced with Hindi language string with the help of Unicode of Hindi latter s and symbols. The Unicode is stored into dictionary. This Localized Text Editor facilitates people to work with their own language text editor software. General Terms Localization, Internationalization, Globalization, Universal Code. Keywords Localization (L10N), User Interface (UI), Universal Code (Unicode), Localized Text Editor (LTE). 1. INTRODUCTION Software Localization is demanding research area in the field of natural language processing. A standalone application is developed using Unicode in Java which show the Hindi language UI in place of English language UI. This standalone application is known as Localized Text Editor. Method used for developing LTE is Unicode. Developer uses this scheme because in java there is no other method for generating UI in Hindi. Hind word for each English language button is designed with Unicode directory. Unicode has been generated with the help of Unicode standard version 6.3. For LTE designing each English word is first translated manually into Hindi word and then programmer generate Unicode string corresponding to each letter, vowels, constants and signs. This string generates the complete Hindi word. This developed LTE perform all the functions of standard text editor (Notepad). 2. LOCALIZATION STRATEGIES There are two possible strategies for software localization as: 2.1 For designing a new localized software product: Developer can put every resources needed for localized software product in some type of resource repository. This repository may be Windows resource files,.net assemble files, or a database. This resource repository is easily editable, and also eliminates the need for source code recompiling. The LTE is an example of this strategy. 2.2 For localizing an already existing software product: Developer has the source code (in source language) of the software product that needs to be localized. This strategy reuses the existing software product for the target locale. 3. FUNCTIONALITY AND CONTROL FLOW Designing of a new localized software product (LTE) is done by functioning of various components. Figure 1 shows the complete functionality of Localized Text Editor (LTE) as a combined outcome of functions of different components. 3.1 Developer The developer can use Java platform for developing the localized application. For localization of user interface of Java application developer can select the target locale Hindi using Java code as: currentlocale = new Locale("hindi","INDIA"); Developer has to design the UI for LTE using java programming and develop the code. 3.2 Localization For developing a localized application (LTE) according to strategy Designing a new localized software product, (as above paragraph 3.1) developer can put every resources needed for localized software product in some type of resource repository. For standalone java application they use dictionary file as resource repository, follow the high level architecture and use the Unicode version 6.3.0. 3.2.1 Localization Architecture: The high level architecture for product localization encompasses the different module of complete project as a service. There are two main services for localization project as: Translation and Memory Management. Translation process includes services such as Machine Translation (MT) services, Media Translation and Linguistic services such as spell check. (As shown in figure 2) Every localization project consist a new set of rules, checklists, information sheets and contact details. Whenever one can work on a localization project, he will have some rules or checklists on how to organize the project. There might be a list or questions to ask the user, to get all the information needed for the project. 49

Architecture JAVA Platform Localization Replace UI Unicode DEVELOPER Compile & Run Localized Text Editor Update & Access Dictionary File (Containing Unicode for Hindi language) Figure 1. The overall modular functionality of the Localized Text Editor For example if programmers wish to create a project Localized Text Editor which is a standalone Hindi language Text Editor for local market, then they must follow some rules, checklist in order to organize the project. One rule applied in case of LTE is that every Hindi language string correspond to English language string must be registered with the database including the Unicode. Machine Translation Translation Media Translation Localization Linguistic Services Memory Managment Dictionary/ Database Figure 2: High level architecture for Localization If a user wants to open an already registered product (that is *.txt file) then user click on Qkby > Qkby [kks sys an open dialog box is open to select the file from the list (as shown in figure 4). If a user wants to save the file user click on Qkby >,sls lgsts an open dialog box is open to save the file (as filename.txt). This way the user will work on a Text Editor with her own locale language Hindi for Indian market 3.2.2 Unicode: Computer needs a code that transforms characters into numbers, to store text and numbers that human can understand. The Unicode Standard is a character coding system designed to support the worldwide interchange, processing, and display of the written texts of the diverse languages and technical disciplines of the modern world. In addition, it supports classical and historical texts of many written languages. The Version 6.3.0 is the latest version of the Unicode Standard [1]. Table 1: Different Unicode Transformation Unit Uses 1 byte (8 bits) to encode English characters. It can use a sequence of bytes to UTF-8 encode the other characters. It is widely used in email system. UTF-16 UTF-32 Uses 2 bytes (16 bits) to encode most commonly used characters. If needed, the additional characters can be represented by a pair of 16-bit numbers. Uses 4 bytes (32 bits) to encode the characters. It became apparent that as the Unicode standard grew a 16-bit number is too small to represent all the characters. It is capable of representing every Unicode character as one number. Code Points and Code units are respectively used for the value that a character is given in the Unicode standard and the way to provide an index for where a character is positioned on a plane. For example Code Point to encode the characters, v is U+0905, vk is U+0906, b is U+0908. With UTF-16 each 16-bit number is a code unit. The code units can be transformed into code points. For example, the flat note symbol " " has a code point of U+1D160 and it lives on the second plane of the Unicode standard. It would be encoded using the combination of the following two 16-bit code units: U+D834 and U+DD60 [2]. 3.3 Dictionary File Unicode used to transfer characters into numbers, to store text and numbers that human can understand for computer system. For Java programming Unicode characters can be expressed through Unicode Escape Sequence (USE). USE may appear anywhere in Java source file. USE consists of: 1. A backslash \ 2. A u 3. Four hexadecimal digits (the characters 0 through 9 or a through f or A through F ). Such sequences represent the UTF-16 encoding of a Unicode character. For example the developer can design the Unicode dictionary that consist all the desire code for Hindi language 50

word of LTE with respect to English Language string is as shown in table 2. English language string for Text Editor International Journal of Computer Applications (0975 8887) Table 2: Unicode for Hindi language string of Localized Text Editor (LTE) Hindi language string for Localized Text Editor (LTE) Unicode File Qkby \u095e\u093e\u0907\u0932 New u;k \u0928\u092f\u093e Open [kksys \u095e\u093e\u0907\u0932\u0020\u0916\u094b\u0932\u0947 Save lgsts \u0938\u0939\u0947\u091c\u0947 Save As,sls lgsts \u0910\u0938\u0947\u0020\u0938\u0939\u0947\u091c\u0947 Page Setup iìb lsvvi \u092a\u0943\u0937\u094d\u0920\u0020\u0938\u0947\u091f\u0905\u0 92A Print NkWais \u091b\u093e\u0901\u092a\u0947 Exit ckgj \u092c\u093e\u0939\u0930 Edit laiknu \u0938\u0902\u092a\u093e\u0926\u0928 Undo Igys tslk \u092a\u0939\u0932\u0947\u0020\u091c\u0948\u0938\u093e Cut dkvsa \u0915\u093e\u091f\u0947\u0902 Copy udy djsa \u0928\u0915\u0932\u0020\u0915\u0930\u0947\u0902 Paste fpidk,w \u091a\u093f\u092a\u0915\u093e\u090f\u0901 Delete fevk;sa \u092e\u093f\u091f\u093e\u092f\u0947\u0902 Find <Ww<s \u0922\u0942\u0901\u0922\u0947 Replace izfrlfkkfir \u092a\u094d\u0930\u0924\u093f\u0938\u094d\u0925\u093e\u092a\u 093F\u0924 Select All lhkh pqus \u0938\u092d\u0940\u0020\u091a\u0941\u0928\u0947 Format izk#i \u092a\u094d\u0930\u093e\u0930\u0942\u092a Word Wrap 'kcn osibu Font v{kj \u0905\u0915\u094d\u0937\u0930 Color jax \u0930\u0902\u0917 View n`j; \u0926\u0943\u0936\u094d\u092f Help enn \u092e\u0926\u0926 \u0936\u092c\u094d\u0926\u0020\u0935\u0947\u0937\u094d\u0920\u0 928 About Editor Laiknd dk ifjp; \u0020\u0915\u093e\u0020\u092a\u0930\u093f\u091a\u092f As shown in above table Unicode convert the English language UI into Hindi language UI by Java programming. Similarly developer can develop the LTE with any target language such as: Guajarati, Tamil, Marathi, Punjabi etc using Unicode. We can represent text in any language and even a lot of things that aren t text (mathematical symbol, arrows, emoticons, and more). 4. IMPLEMENTATION Developer implements the software application for Hindi language as target locale and this application is named as Localized Text Editor (LTE). Implementation is done using core Java programming. The result of efficient programming is represented in form of developed java application. Figure 3 shows the developed Localized Text Editor (LTE) with Hindi language as target language. Such editor facilitates the user to work with their own locale environment. Editor has five menu bar option as File, Edit, Format, View and Help (as shown in figure 3). Figure 4 to figure 8 represent the menu item for each menu bar option respectively. The sample screen layouts depicting the same are given bellow. Figure 3: User Interface part of the Localized Text Editor (LTE) 51

Figure 4: Menu bar option File of Localized Text Editor (LTE) Figure 5: Menu bar option Edit of Localized Text Editor (LTE) Figure 6: Menu bar option Format of Localized Text Editor (LTE) 52

Figure 7: Menu bar option View of Localized Text Editor (LTE) Figure 8: Menu bar option Help of Localized Text Editor (LTE) 5. TESTING The framework should also document the different quality measures that are available, in order to judge the quality of the LTE. That s way one can choose the appropriate measures for the project. These quality measures are: Customer satisfaction index (based on the choice of translation terms used), Reliability, Costs of quality activities, Re-work, Test Coverage, Responsiveness (turnaround time) to users, etc. Testing is also a part of quality management. In case of LTE project, developer perform linguistic/terminology testing, localization testing. Linguistic testing: check the grammatical and contextual errors. Localization testing: checks the quality of a product s localization for a particular target culture/locale. Localization testing can be executed only on the localized version of a product. The various graphics, icons, symbols and colors used in the software product must adhere to the cultural conventions of the target locale. Following quality measures mentioned in table 3 may be considered for testing the localized product: Table 3: Various Quality measures for Localized product Quality measures Customer satisfaction index Quality Responsiveness Cost of quality activity Rework Description Is project satisfying the customer with friendly UI? Check the accuracy of terms used. How much time the system will be taken to complete individual task? How much costs are required for test planning, test execution, debugging and fixing? How much effort will be needed for reworked the software? Values obtained* Customer satisfaction index s value lies between 1 and 2. Quality s value lies between 1 and 2. Responsiveness s value lies between 1 and 2. Cost s value lies between 2 and 4. Rework s value lies between 3 and 4. *These values obtained are with respect to LTE. Here number represents 1- very high, 2- high, 3 - neither low nor high, 4 - low, 5 - very low. 53

6. CONCLUSION The purpose of this paper has been explaining the developed Localized Text Editor (LTE) which can be developed using Java programming and Unicode. The LTE is an example of localization of a text editor (commonly having source language English) into target language Hindi. This text editor facilitates the common Indian mass to work with a user friendly environment. It provides all the basic features of a text editor with a more favored interface in Hindi that gives the desired local look-and-feel. It also provides easy way for part of public of India who don t know English, to handle the Editor efficiently. It conclude from analysis that text editor is properly developed and perform all necessary functionality. 7. FUTURE SCOPE There is a scope in the future where the Text Editor can be developed for all Indian local languages as: Guajarati, Marathi, Bengali, and Panjabi etc. The text editor also includes spell checker, auto correction & advance formatting tools in future. The function of this Text Editor is also extended by including import options for various object files such as images, charts etc. 8. REFERENCES [1] www.unicode.org/standard/standard.html [2] www.java.about.com/od/programmingconcepts/a/unicod e.htm [3] M Bhatia and P Dhayani, Localization, Translation Cloud and Virtualization, International Conference on Electrical Engineering and Computer Sciences (EECS), April-2013, Nainital (India). [4] M Bhatia, V Tomar and A Sharma, A survey of Software Localization work, Journal of Global Research in Computer Science, Vol-4, no-8, 2013. [5] M Bhatia, A Sharma and V Tomar, Conceptuality of Software Localization, International Journal of Scientific Research in Computer Science Applications and Management Studies, Vol-2, no-5, 2013. [6] M Bhatia and V Tomar, Service Oriented Architecture Based Framework for Software Localization, International Conference on Emerging trends in Engineering & Applied Sciences, at Rajasthan College of Engineering for Women, Jaipur (Rajasthan, India). [7] R.W. Collins, Software Localization: Issues and Methods, The 9th European Conference on Information Systems, Bled, Slovenia, June 27-29, 2001. [8] M. Rosen, B. Lublinsky, K.T. Smith and M.J. Balcer, Applied SOA, Service Oriented Architecture and Design Strategies, E-Book, published by Wiley Publishing, Inc. [9] W. Asanka, LocConnect: Orchestrating Interoperability in a Service-oriented Localisation Architecture, The International Journal of Localisation, Vol.10 Issue 1. IJCA TM : www.ijcaonline.org 54