/
locale.go
64 lines (60 loc) · 1.27 KB
/
locale.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
// +build !windows
package fasttime
import (
"os"
"strings"
)
var dateFormat, timeFormat = func() (string, string) {
lang := os.Getenv("LC_TIME")
if lang == "" {
lang = os.Getenv("LC_ALL")
}
if i := strings.IndexByte(lang, '.'); i > 0 {
lang = lang[:i]
}
if lang == "" {
lang = os.Getenv("LANG")
}
switch lang {
case "en_AG":
return "%d/%m/%y", "%H:%M:%S"
case "en_AU":
return "%d/%m/%y", "%H:%M:%S"
case "en_BW":
return "%d/%m/%Y", "%H:%M:%S"
case "en_CA":
return "%Y-%m-%d", "%I:%M:%S %p"
case "en_DK":
return "%Y-%m-%d", "%H:%M:%S"
case "en_GB":
return "%d/%m/%y", "%H:%M:%S"
case "en_HK":
return "%A, %B %d, %Y", "%I:%M:%S %Z"
case "en_IE":
return "%d/%m/%y", "%H:%M:%S"
case "en_IL":
return "%d/%m/%y", "%H:%M:%S"
case "en_IN":
return "%A %d %B %Y", "%I:%M:%S %Z"
case "en_NG":
return "%d/%m/%Y", "%H:%M:%S"
case "en_NZ":
return "%d/%m/%y", "%H:%M:%S"
case "en_PH":
return "%A, %d %B, %Y", "%I:%M:%S %Z"
case "en_SC":
return "%m/%d/%y", "%H:%M:%S"
case "en_SG":
return "%d/%m/%Y", "%H:%M:%S"
case "en_US":
return "%m/%d/%Y", "%I:%M:%S %p"
case "en_ZA":
return "%d/%m/%Y", "%H:%M:%S"
case "en_ZM":
return "%d/%m/%y", "%H:%M:%S"
case "en_ZW":
return "%d/%m/%Y", "%H:%M:%S"
default:
return "%m/%d/%Y", "%H:%M:%S"
}
}()