﻿# ***************************************************************************
# *
# *  Copyright (C) 2004-2016, International Business Machines
# *  Corporation; Unicode, Inc.; and others.  All Rights Reserved.
# *
# ***************************************************************************
# File: az_Cyrl_az_BGN.txt
# Generated from CLDR 
#

#
########################################################################
# BGN/PCGN 1993 Agreement
#
# Azerbaijani is the official language of Azerbaijan. In 1991, the
# Azerbaijani government adopted a Roman alphabet to replace the
# existing Cyrillic alphabet. The Azerbaijani Cyrillic alphabet
# contains nine letters not present in the Russian alphabet:
# Ғғ, Әә, Јј, Ҝҝ, Өө, Үү, Һһ, Ҹҹ, and ’. Four obsolete letters
# Йй, Ээ, Юю and Яя are also given.
#
# The Azerbaijani Alphabet as defined by the BGN (Page 13):
#
#   АБВГҒДЕӘЖЗИЫЈКҜЛМНОӨПРСТУҮФХҺЧҸШЙЭЮЯ
#   абвгғдеәжзиыјкҝлмноөпрстуүфхһчҹш’йэюя
#
# Originally prepared by Michael Everson <everson@evertype.com>
########################################################################
#
# MINIMAL FILTER: AzerbaijaniCyrl-Latin
#
:: [АБВГҒДЕӘЖЗИЫКҜЛМНОӨПРСТУҮФХҺЧҸШЙЭЮЯабвгғдеәжзиыкҝлмноөпрстуүфхһчҹш’йэюя] ;
:: NFD (NFC) ;
#
#
########################################################################
#
########################################################################
#
# Define All Transformation Variables
#
########################################################################
#
$prime  = ’ ;
$wordBoundary =  [^[:L:][:M:][:N:]] ;
$upperConsonants = [БВГҒДЖЗЈКҜЛМНПРСТФХҺЧҸШЙ] ;
$lowerConsonants = [бвгғджзјкҝлмнпрстфхһчҹш’й] ;
$consonants = [$upperConsonants $lowerConsonants] ;
$upperVowels = [АЕӘИЫОӨУҮЭЮЯ] ;
$lowerVowels = [аеәиыоөуүэюя] ;
$vowels = [$upperVowels $lowerVowels] ;
$lower = [$lowerConsonants $lowerVowels] ;
#
#
# Use this $wordBoundary until bug 2034 is fixed in ICU:
# http://bugs.icu-project.org/cgi-bin/icu-bugs/transliterate?id=2034;expression=boundary;user=guest
#
#
#
########################################################################
#
########################################################################
#
# Start of Alphabetic Transformations
#
########################################################################
А → A ; # CYRILLIC CAPITAL LETTER A
а → a ; # CYRILLIC SMALL LETTER A
Б → B ; # CYRILLIC CAPITAL LETTER BE
б → b ; # CYRILLIC SMALL LETTER BE
В → V ; # CYRILLIC CAPITAL LETTER VE
в → v ; # CYRILLIC SMALL LETTER VE
Г → Q ; # CYRILLIC CAPITAL LETTER GHE
г → q ; # CYRILLIC SMALL LETTER GHE
Ғ → Ğ ; # CYRILLIC CAPITAL LETTER GHE WITH STROKE
ғ → ğ ; # CYRILLIC SMALL LETTER GHE WITH STROKE
Д → D ; # CYRILLIC CAPITAL LETTER DE
д → d ; # CYRILLIC SMALL LETTER DE
Е → E ; # CYRILLIC CAPITAL LETTER DE
е → e ; # CYRILLIC SMALL LETTER DE
#
########################################################################
#
# BGN Page 14 Note 1
#
# The special letter Ə ə, known as schwa, should be reproduced in that
# form whenever encountered. In those instances when it cannot be
# reproduced, however, the letter Ä ä may be substituted for it.
#
########################################################################
#
Ә → Ə; # CYRILLIC CAPITAL LETTER SCHWA
ә → ə; # CYRILLIC SMALL LETTER SCHWA
#
#
# Alternative rule when schwa is not available. To apply uncomment the
# following by removing the '#' mark at the start of the line and insert
# before the two rule lines above.
#
# Ә → Ä; # CYRILLIC CAPITAL LETTER SCHWA
# ә → ä; # CYRILLIC SMALL LETTER SCHWA
#
########################################################################
#
# End BGN Page 14 Note 1
#
########################################################################
Ж → J ; # CYRILLIC CAPITAL LETTER ZHE
ж → j ; # CYRILLIC SMALL LETTER ZHE
З → Z ; # CYRILLIC CAPITAL LETTER ZE
з → z ; # CYRILLIC SMALL LETTER ZE
И → İ ; # CYRILLIC CAPITAL LETTER I
и → i ; # CYRILLIC SMALL LETTER I
Ы → I ; # CYRILLIC CAPITAL LETTER YERU
ы → ı ; # CYRILLIC SMALL LETTER YERU
Ј → Y ; # CYRILLIC CAPITAL LETTER JE
ј → y ; # CYRILLIC SMALL LETTER JE
К → K ; # CYRILLIC CAPITAL LETTER KA
к → k ; # CYRILLIC SMALL LETTER KA
Ҝ → G ; # CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE
ҝ → g ; # CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE
Л → L ; # CYRILLIC CAPITAL LETTER EL
л → l ; # CYRILLIC SMALL LETTER EL
М → M ; # CYRILLIC CAPITAL LETTER EM
м → m ; # CYRILLIC SMALL LETTER EM
Н → N ; # CYRILLIC CAPITAL LETTER EN
н → n ; # CYRILLIC SMALL LETTER EN
О → O ; # CYRILLIC CAPITAL LETTER O
о → o ; # CYRILLIC SMALL LETTER O
Ө → Ö ; # CYRILLIC CAPITAL LETTER BARRED O
ө → ö ; # CYRILLIC SMALL LETTER BARRED O
П → P ; # CYRILLIC CAPITAL LETTER PE
п → p ; # CYRILLIC SMALL LETTER PE
Р → R ; # CYRILLIC CAPITAL LETTER ER
р → r ; # CYRILLIC SMALL LETTER ER
С → S ; # CYRILLIC CAPITAL LETTER ES
с → s ; # CYRILLIC SMALL LETTER ES
Т → T ; # CYRILLIC CAPITAL LETTER TE
т → t ; # CYRILLIC SMALL LETTER TE
У → U ; # CYRILLIC CAPITAL LETTER U
у → u ; # CYRILLIC SMALL LETTER U
Ү → Ü ; # CYRILLIC CAPITAL LETTER STRAIGHT U
ү → ü ; # CYRILLIC SMALL LETTER STRAIGHT U
Ф → F ; # CYRILLIC CAPITAL LETTER EF
ф → f ; # CYRILLIC SMALL LETTER EF
Х → X ; # CYRILLIC CAPITAL LETTER HA
х → x ; # CYRILLIC SMALL LETTER HA
Һ → H ; # CYRILLIC CAPITAL LETTER SHHA
һ → h ; # CYRILLIC SMALL LETTER SHHA
Ч → Ç ; # CYRILLIC CAPITAL LETTER CHE
ч → ç ; # CYRILLIC SMALL LETTER CHE
Ҹ → C ; # CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE
ҹ → c ; # CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE
Ш → Ş ; # CYRILLIC CAPITAL LETTER SHA
ш → ş ; # CYRILLIC SMALL LETTER SHA
#
########################################################################
#
# BGN Page 13 Rule 33, maps the symbol onto itself and
# is ignored here for computational efficiency.
#
# $prime → $prime ; # RIGHT SINGLE QUOTATION MARK
#
########################################################################
#
########################################################################
#
# BGN Page 14 Note 2:
#
# The obsolete characters й, э, ю, and я should be romanized ẏ, ė,
# yu\u0307, and yȧ.
#
########################################################################
#
Й → Ẏ ; # CYRILLIC CAPITAL LETTER HARD SIGN
й → ẏ ; # CYRILLIC SMALL LETTER HARD SIGN
Э → Ė ; # CYRILLIC CAPITAL LETTER SOFT SIGN
э → ė ; # CYRILLIC SMALL LETTER SOFT SIGN
Ю} $lower → Yu\u0307 ; # CYRILLIC CAPITAL LETTER YU
Ю → YU\u0307 ; # CYRILLIC CAPITAL LETTER YU
ю → yu\u0307 ;  # CYRILLIC SMALL LETTER YU
Я} $lower → Yȧ ; # CYRILLIC CAPITAL LETTER YA
Я → YȦ ; # CYRILLIC CAPITAL LETTER YA
я → yȧ ; # CYRILLIC SMALL LETTER YA
#
#
########################################################################
#
# End BGN Page 14 Note 2.
#
########################################################################

