우분투 18.04와 20.04 사이의 태국어 정렬 동작이 다릅니다.

우분투 18.04와 20.04 사이의 태국어 정렬 동작이 다릅니다.

vagrant box ubuntu/bionic64 및 Bento/ubuntu-20.04에는 두 개의 가상박스 머신(첫 번째는 ubuntu 18.04이고 두 번째는 ubuntu 20.04)이 있습니다. 시작 후 로케일 en_US.UTF-8을 으로 정의합니다 sudo update-locale LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8. 이제 로케일이 둘 다 동일해야 합니다.

LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

이제 두 개의 특정 태국어 문자열을 정렬해 볼 수 있습니다.

vagrant@bionic:~$ sort << eof
> ธรรมสถาน
> ศาลเจ้า
> eof

위의 내용은 두 LTS에 대해 서로 다른 결과를 반환합니다. 우분투 20.04의 경우:

ธรรมสถาน
ศาลเจ้า

우분투 18.04의 경우:

ศาลเจ้า
ธรรมสถาน

문제를 해결하려고 계속 머리를 부딪혔지만 소용이 없었습니다. 지금까지 내가 찾은 유일한 관련 소스는 다음과 같습니다.ICU 참조 섹션태국/라오스 문자의 특수 처리에 관해서는, 그렇게 모순이 발생할 것이라고는 생각하지 않습니다. 나는 또한 태국어를 할 줄 모르기 때문에 태국어 알파벳의 사전 순서 규칙을 모르고 무엇이 정확하고 무엇이 그렇지 않은지 구분할 수 없습니다.

이 문제의 원인이 무엇인지 아시나요? 두 버전 간의 정렬 순서를 어떻게든 유지할 수 있습니까?

관련 정보