Microsoft не делает это легким для вас. Файл NLS, упомянутый в вопросе, содержит информацию о локали, но он находится в HEX. Даже с шестнадцатеричным редактором, содержимое далеко не читаемо человеком. Я решил воспользоваться альтернативной стратегией, вдохновленной ответом r0ca.
Существует более точный список доступных локалей, опубликованных Microsoft . К сожалению, даже этот список не совсем прав. (Я установил все доступные локали, и у меня есть Nothern Sotho, которого нет в списке Microsoft, но нет традиционного испанского, современного испанского или македонского. Украинский присутствует в списке дважды.)
Имена не совсем верны в списке Microsoft.
Как правило, имена должны иметь форму «Language» или «Language_Country Name», например «English» или «English_United Kindom»
Это означает, что подчеркивания после первых должны быть заменены пробелами, а имена людей должны быть заменены названиями стран, например, «Malay_Brunei_Darussalam» становится «Malay_Brunei Darussalam», «Dutch_Belgian» становится «Dutch_Belgium»
Есть много других странностей. Латинские, кириллические и некоторые другие слова должны быть заключены в скобки, например, "Serbian_Cyrillic_Bosnia_Herzegovina" становится "Сербской (кириллицей) _Босния и Герцеговина"
Точно так же "Sami_Inari" становится "Sami (Inari) _Finland")
Есть еще много примеров того, как угадывать правильные названия стран "English_Philippines" становится "English_Republic of Philippines"
Я понял большинство этих исключений, изменив локаль Windows с панели управления, затем загрузив R и набрав
Sys.getlocale()
К сожалению, этот метод в настоящее время не работает с индийскими локалями (плюс несколько других). Смотрите отчет об ошибке здесь .