PC52  Yaniv Feinberg Senior SDE Microsoft Corporation  Erik Fortune Principal Dev Lead Microsoft Corporation.

Download Report

Transcript PC52  Yaniv Feinberg Senior SDE Microsoft Corporation  Erik Fortune Principal Dev Lead Microsoft Corporation.

PC52
 Yaniv Feinberg
Senior SDE
Microsoft Corporation
 Erik Fortune
Principal Dev Lead
Microsoft Corporation
Non-English
Speakers
91.5%
Other English
Speakers
3.4%
Native English
Speakers
5.1%



Developers rely on
system settings to
guess the language
of a user’s text
• Windows needs reliable user language detection to help
developers provide appropriate user experiences
• Users compute in more than one language, so we need
more than just a one-size-fits-all system setting
Gaps in developer
support for key markets
like India, China, and
Eastern Europe
• Windows needs market-relevant features
targeted towards users in these emerging markets
• Developers can use these features to extend
the reach of their applications into
emerging technology markets
Developers have to build
and deploy their own
advanced linguistic
functionality
• Windows needs more centralized APIs to provide
scalable, world-ready linguistic support
• These APIs need to be easy to learn and use
New globalization functionality for developers
Language detection
• Detect the language of a user’s text
Script Detection
• Detect the writing system of a user’s text
Transliteration
• Convert text from one writing system to another

Scenarios
Usage
highlights in
Windows 7
• Word processing: Word breakers and
proofing tools can be customized for user’s language
• Search: Faster index searches
based on language of query
• Content targeting: Display dynamic content
to users based on their language preference
•
•
•
•
Support for 100+ languages
Support for mixed language scenarios
Support for short strings (single sentence detection)
Available through ELS APIs
Scenarios
Usage
highlights in
Windows 7
• Enable smart font selection
• Prevent spoofing: Make sure that the
characters users think they are seeing are
the ones they are actually seeing
• Supports every script encoded in the most recent
version of Unicode (Unicode 5.1)
• Supports text analysis by range, where individual writing
systems are detected in the string and labeled
Language And
Script Detection
 Yaniv Feinberg
Senior SDE
Windows International
Scenarios
• Chinese Simplified <> Traditional conversion helps
Chinese speakers talk to each other
• Helps users understand the pronunciation of strings that
are written in an unfamiliar writing system
Usage
highlights in
Windows 7
• Callers can select a specific or all possible transliterations
• Provides linguistic coverage for Traditional
Chinese<>Simplified Chinese, as well as Cyrillic, Bengali,
Malayalam, and Devanagari >Latin
• Available through ELS APIs
Instant
Messaging
 Yaniv Feinberg
Senior SDE
Windows International


• Get list of services that the application cares about
Enumerate
• Send text to platform and ask services for ranges of text
that they recognize
Recognize
• Return text results
Results








Application
Layer
Applications
Russian text, Transliteration
Russian text, all services
Platform
Layer
Service
Layer
Latin form
ELS Platform
Latin form
Cyrillic
Transliteration
Script
Detection
Russian
Language
Detection
Future
Services






Erik Fortune
Principal Dev Lead
Microsoft Corporation












M


U
I
en-US binary
Code
en-US MUI File
Language Neutral
Resources (en-US)
Binary
ja-JP binary
Code
ja-JP MUI File
Language Neutral
Resources (ja-JP)
Binary





















UI Language Fallback List Example
fr-FR,
es-ES
Thread
Preferred
fr-FR
es-ES
de-DE
ar-SA

en-US
ca-ES

fr-FR
es-ES
Process
Preferred
User
Preferred
System
Preferred
System
Default
de-DE
ar-SA
en-US
ca-ES
Fully Merged Preferred UI Language List
fr-FR
es-ES









Recommendation













<?xml version="1.0" encoding="utf-8"?>
<localization>
<resources>
<win32Resources fileType="Application">
<neutralResources>
<resourceType typeNameId="#16" />
</neutralResources>
<localizedResources>
<resourceType typeNameId="#2" itemId="5 6 7 8 9 10 11
12" itemName="HTML PRI" />
<resourceType typeNameId="#4" />
<resourceType typeNameId="#16" />
</localizedResources>
</win32Resources >
</resources>
</localization>








RC Compiler (Source Localization)
Source
code
Compiler
Compiled
.OBJ file
Linker
Localization
LN PE file
(foo.exe)
Compiled LN
resources
.RC files
.RC files
Localized
.RC files
RC.exe
RC Config
file
Compiled
Localized
resources
Linker
MUI files
(foo.exe.mui)
RC Compiler (PE Localization)
Source
code
Compiler
Compiled
.OBJ file
Linker
LN PE file
(foo.exe)
Compiled LN
resources
.RC file
RC.exe
RC Config
file
Localization
Compiled
localizable
source
resources
Linker
MUI file
(foo.exe.mui)
MUIRCT (PE Localization)
Source
code
Compiler
And
Linker
LN PE File
(foo.exe)
Executable
(foo.exe)
MUIRCT.
exe
.RC file
RC Config
file
MUI file
(foo.exe.mui)
Localization



















Redirection






Probing












www.microsoftpdc.com
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.














































http://msdn.microsoft.com/GoGlobal



[email protected]
[email protected]