summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/mattn/go-runewidth/runewidth_windows.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/mattn/go-runewidth/runewidth_windows.go')
-rw-r--r--vendor/github.com/mattn/go-runewidth/runewidth_windows.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/vendor/github.com/mattn/go-runewidth/runewidth_windows.go b/vendor/github.com/mattn/go-runewidth/runewidth_windows.go
new file mode 100644
index 00000000..d6a61777
--- /dev/null
+++ b/vendor/github.com/mattn/go-runewidth/runewidth_windows.go
@@ -0,0 +1,28 @@
+// +build windows
+// +build !appengine
+
+package runewidth
+
+import (
+ "syscall"
+)
+
+var (
+ kernel32 = syscall.NewLazyDLL("kernel32")
+ procGetConsoleOutputCP = kernel32.NewProc("GetConsoleOutputCP")
+)
+
+// IsEastAsian return true if the current locale is CJK
+func IsEastAsian() bool {
+ r1, _, _ := procGetConsoleOutputCP.Call()
+ if r1 == 0 {
+ return false
+ }
+
+ switch int(r1) {
+ case 932, 51932, 936, 949, 950:
+ return true
+ }
+
+ return false
+}