CleverRaven / CleverRaven/Cataclysm-DDA
Case-insensitive Unicode search does not work in Windows MinGW builds
- Dominant language
- C++
- Stars
- 13.1k
- Forks
- 4.6k
- Avg merge
- 2d 1h
- Merged PRs (30d)
- 200
Description
# Describe the bug
Case-insensitive Unicode search does not work in Windows MinGW builds
# Steps To Reproduce
1. Switch language to Russian, restart the game
2. Load any world, debug learn all recipes
3. Open crafting menu, enter `катана`, see 1 result
4. Enter `Катана`, see no matches
Similar behavior can be seen in keybindings menu when searching `меню` vs `Меню`.
# Expected behavior
Both searches give 1 match, as on Visual Studio build
# Screenshots
`катана`

`Катана`

`Катана` on my local VS build

# Versions and configuration
- OS: Windows
- OS Version: 10.0 1909
- Game Version: 0.E-10395-g4525b4f [64-bit] (aka build [11581](https://github.com/CleverRaven/Cataclysm-DDA/releases/tag/cdda-jenkins-b11581))
- Graphics Version: Tiles
- Game Language: Русский [ru]
- Mods loaded: [
Тёмные Дни Впереди [dda],
Отключить потребности у NPC [no_npc_food],
Бионические профессии [package_bionic_professions]
]
# Additional context
Problem with `std::locale`? Brief googling showed that MinGW supported only `C`/`POSIX` C++ locales in the past, not sure if that changed.
Contributor guide
Research direction
No source files or tests are named in the report. Reproduce the Russian crafting and keybindings searches on MinGW, compare them with the Visual Studio build, then trace the shared search and Unicode case-folding path; done means both lowercase and uppercase Russian queries return the same matches.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- localization, search
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100