.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / table / node_modules / is-fullwidth-code-point / index.js
diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/table/node_modules/is-fullwidth-code-point/index.js b/.config/coc/extensions/node_modules/coc-prettier/node_modules/table/node_modules/is-fullwidth-code-point/index.js
new file mode 100644 (file)
index 0000000..671f97f
--- /dev/null
@@ -0,0 +1,50 @@
+/* eslint-disable yoda */
+'use strict';
+
+const isFullwidthCodePoint = codePoint => {
+       if (Number.isNaN(codePoint)) {
+               return false;
+       }
+
+       // Code points are derived from:
+       // http://www.unix.org/Public/UNIDATA/EastAsianWidth.txt
+       if (
+               codePoint >= 0x1100 && (
+                       codePoint <= 0x115F || // Hangul Jamo
+                       codePoint === 0x2329 || // LEFT-POINTING ANGLE BRACKET
+                       codePoint === 0x232A || // RIGHT-POINTING ANGLE BRACKET
+                       // CJK Radicals Supplement .. Enclosed CJK Letters and Months
+                       (0x2E80 <= codePoint && codePoint <= 0x3247 && codePoint !== 0x303F) ||
+                       // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A
+                       (0x3250 <= codePoint && codePoint <= 0x4DBF) ||
+                       // CJK Unified Ideographs .. Yi Radicals
+                       (0x4E00 <= codePoint && codePoint <= 0xA4C6) ||
+                       // Hangul Jamo Extended-A
+                       (0xA960 <= codePoint && codePoint <= 0xA97C) ||
+                       // Hangul Syllables
+                       (0xAC00 <= codePoint && codePoint <= 0xD7A3) ||
+                       // CJK Compatibility Ideographs
+                       (0xF900 <= codePoint && codePoint <= 0xFAFF) ||
+                       // Vertical Forms
+                       (0xFE10 <= codePoint && codePoint <= 0xFE19) ||
+                       // CJK Compatibility Forms .. Small Form Variants
+                       (0xFE30 <= codePoint && codePoint <= 0xFE6B) ||
+                       // Halfwidth and Fullwidth Forms
+                       (0xFF01 <= codePoint && codePoint <= 0xFF60) ||
+                       (0xFFE0 <= codePoint && codePoint <= 0xFFE6) ||
+                       // Kana Supplement
+                       (0x1B000 <= codePoint && codePoint <= 0x1B001) ||
+                       // Enclosed Ideographic Supplement
+                       (0x1F200 <= codePoint && codePoint <= 0x1F251) ||
+                       // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane
+                       (0x20000 <= codePoint && codePoint <= 0x3FFFD)
+               )
+       ) {
+               return true;
+       }
+
+       return false;
+};
+
+module.exports = isFullwidthCodePoint;
+module.exports.default = isFullwidthCodePoint;