시스템 언어로 en_US를 사용하고 날짜 형식으로 pl_PL을 사용하고 있습니다. 시스템 전체에서 잘 작동하며 date
올바른 형식의 날짜를 제공합니다. 또한 GUI 언어 설정에서 폴란드어를 시간 형식으로 표시합니다.
하지만 모든 브라우저(Chrome, Chromium, Firefox)에는 US 형식이 있습니다! 예를 들어 날짜 입력, JS의 날짜 등...
console.log(new Date().toLocaleString())
// shows 9/26/2021, 3:29:46 PM
// should be 26.09.2021, 15:29:46
지역 설정:
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=pl_PL.UTF-8
LC_TIME=pl_PL.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=pl_PL.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=pl_PL.UTF-8
LC_NAME=pl_PL.UTF-8
LC_ADDRESS=pl_PL.UTF-8
LC_TELEPHONE=pl_PL.UTF-8
LC_MEASUREMENT=pl_PL.UTF-8
LC_IDENTIFICATION=pl_PL.UTF-8
LC_ALL=
이 사용법을 재현하려면 다음을 수행하십시오.https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_tolocalestring, 또는 index.html
다음 이름의 파일을 생성합니다.
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
Hi!
<script>
console.log(new Date().toLocaleString())
</script>
</body>
</html>
그런 다음 LC_ALL
시도하려는 값과 브라우저 조합을 사용하여 이 파일을 엽니다.
LC_ALL=el_GR.utf8 firefox index.html
그런 다음 자바스크립트 콘솔(보통 을 눌러 사용 가능 F12)을 보면 날짜 형식이 LC 설정을 무시하는 것을 볼 수 있습니다.
나는 또한 Windows 컴퓨터에서 언어에 대해 en을, 날짜에 대해 pl을 가지고 있는데 잘 작동합니다. 리눅스는 왜 이것을 할 수 없습니까?
나는 이 문제를 1년 동안 다루어 왔습니다. Google에서 찾은 것은 비슷한 문제를 겪고 있지만 해결 방법이 없거나 시스템의 날짜 형식에 문제가 있는 사람들이었습니다.
시스템: 리눅스 민트 20 Xfce