metadata {

authority_id: bgnpcgn
id: 1981
language: iso-639-2:mkd
source_script: Cyrl
destination_script: Latn
name: Romanization for Macedonian (1981)
url: https://github.com/riboseinc/interscript/files/4247920/USBGN_romanization_Macedonian_1981.pdf
creation_date: 1981
description: BGN/PCGN Romanization table for Macedonian.

notes:
  - The character ѓ should be romanized g when it occurs before е and и. In other
    instances, it should be romanized ǵ (Ǵ).
  - The character ќ should be romanized k when it occurs before е and и. In other
    instances, it should be romanized ć.

}

tests {

test "Ѓол", "Đol"
test "Јусек Тепеси", "Jusek Tepesi"
test "Љуги Ќарит", "Ljugi Ćarit"
test "Ќафа Сан", "Ćafa San"
test "Агроплод Ресен", "Agroplod Resen"
test "Алта Чука", "Alta Čuka"
test "Баш Тепе", "Baš Tepe"
test "Браќам", "Braćam"
test "Винарска Визба Агропин", "Vinarska Vizba Agropin"
test "Галичица", "Galičica"
test "Дрењево", "Drenjevo"
test "Енешево", "Eneševo"
test "Иберлија", "Iberlija"
test "Крмзи Су", "Krmzi Su"
test "Лесноски Рид", "Lesnoski Rid"
test "Мала Корабска Врата", "Mala Korabska Vrata"
test "Низок Врв", "Nizok Vrv"
test "Охридско Езеро", "Ohridsko Ezero"
test "Прлиќ", "Prlić"
test "Равна Гора", "Ravna Gora"
test "Сеѓавечкиот Рид", "Seđavečkiot Rid"
test "Трновите Њиве", "Trnovite Njive"
test "Фасов Рид", "Fasov Rid"
test "Црни Камен", "Crni Kamen"
test "Чатал Чешми", "Čatal Češmi"
test "Шехово", "Šehovo"

}

dependency “var-Cyrl”, import: true

stage {

# RULES
sub "Ѓ", "G", after: "еЕиИ"
sub "ѓ", "g", after: "еЕиИ"
sub "Ќ", "K", after: "еЕиИ"
sub "ќ", "k", after: "еЕиИ"
# Those aren't tested.

# CHARACTERS
parallel {
  sub "А", "A"
  sub "Б", "B"
  sub "В", "V"
  sub "Г", "G"
  sub "Д", "D"
  sub "Ѓ", "Đ" # Đ
  sub "Е", "E"
  sub "Ж", "Ž" # Ž
  sub "З", "Z"
  sub "Ѕ", "Dz"
  sub "И", "I"
  sub "Ј", "J"
  sub "К", "K"
  sub "Л", "L"
  sub "Љ", "Lj"
  sub "М", "M"
  sub "Н", "N"
  sub "Њ", "Nj"
  sub "О", "O"
  sub "П", "P"
  sub "Р", "R"
  sub "С", "S"
  sub "Т", "T"
  sub "Ќ", "Ć" # Ć
  sub "У", "U"
  sub "Ф", "F"
  sub "Х", "H"
  sub "Ц", "C"
  sub "Ч", "Č" # Č
  sub "Џ", "Dž" # Dž
  sub "Ш", "Š" # Š
  sub "а", "a"
  sub "б", "b"
  sub "в", "v"
  sub "г", "g"
  sub "д", "d"
  sub "ѓ", "đ" # đ
  sub "е", "e"
  sub "ж", "ž" # ž
  sub "з", "z"
  sub "ѕ", "dz"
  sub "и", "i"
  sub "ј", "j"
  sub "к", "k"
  sub "л", "l"
  sub "љ", "lj"
  sub "м", "m"
  sub "н", "n"
  sub "њ", "nj"
  sub "о", "o"
  sub "п", "p"
  sub "р", "r"
  sub "с", "s"
  sub "т", "t"
  sub "ќ", "ć" # ć
  sub "у", "u"
  sub "ф", "f"
  sub "х", "h"
  sub "ц", "c"
  sub "ч", "č" # č
  sub "џ", "dž" # dž
  sub "ш", "š" # š
}

# POSTRULES
sub any(["Dz", "Lj", "Nj", "Dž"]), upcase, before: any("A".."Z")
sub any(["Dz", "Lj", "Nj", "Dž"]), upcase, after: any("A".."Z")
# Those aren't tested

compose

}