@heroiclands/fonts 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +56 -5
- package/fonts/KhelathiZethuGlyphs-Regular.ttf +0 -0
- package/fonts/KhelathiZethuGlyphs-Regular.woff2 +0 -0
- package/fonts/PirzathCarved-Regular.ttf +0 -0
- package/fonts/PirzathCarved-Regular.woff2 +0 -0
- package/fonts/PirzathHand-Regular.ttf +0 -0
- package/fonts/PirzathHand-Regular.woff2 +0 -0
- package/fonts/QalezuHand-Regular.ttf +0 -0
- package/fonts/QalezuHand-Regular.woff2 +0 -0
- package/fonts/SemaronKuriale-Regular.ttf +0 -0
- package/fonts/SemaronKuriale-Regular.woff2 +0 -0
- package/fonts/ThuravarkCarved-Regular.ttf +0 -0
- package/fonts/ThuravarkCarved-Regular.woff2 +0 -0
- package/fonts.css +44 -0
- package/fonts.json +4338 -0
- package/keyboards/emacs/heroiclands-pirzath.el +93 -0
- package/keyboards/emacs/heroiclands-qalezu.el +130 -0
- package/keyboards/emacs/heroiclands-semaron.el +99 -0
- package/keyboards/emacs/heroiclands-thuravark.el +69 -0
- package/keyboards/emacs/heroiclands-zethu.el +332 -0
- package/keyboards/linux/hl_pirzath +50 -0
- package/keyboards/linux/hl_qalezu +49 -0
- package/keyboards/linux/hl_semaron +45 -0
- package/keyboards/linux/hl_thuravark +43 -0
- package/keyboards/macos/HeroicLands.bundle/Contents/Info.plist +44 -0
- package/keyboards/macos/HeroicLands.bundle/Contents/Resources/HL Pirzath.keylayout +203 -0
- package/keyboards/macos/HeroicLands.bundle/Contents/Resources/HL Qalezu.keylayout +241 -0
- package/keyboards/macos/HeroicLands.bundle/Contents/Resources/HL Semaron.keylayout +208 -0
- package/keyboards/macos/HeroicLands.bundle/Contents/Resources/HL Thuravark.keylayout +197 -0
- package/keyboards/pirzath.md +86 -0
- package/keyboards/qalezu.md +123 -0
- package/keyboards/semaron.md +91 -0
- package/keyboards/thuravark.md +61 -0
- package/keyboards/windows/pirzath.klc +0 -0
- package/keyboards/windows/qalezu.klc +0 -0
- package/keyboards/windows/semaron.klc +0 -0
- package/keyboards/windows/thuravark.klc +0 -0
- package/keyboards/zethu.md +320 -0
- package/package.json +5 -3
- package/encoding/khelathi-zethu-glyphs.json +0 -483
- package/encoding/qalezu-hand.json +0 -108
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
;;; heroiclands-pirzath.el --- Type Pirzath with Quail -*- lexical-binding: t; -*-
|
|
2
|
+
|
|
3
|
+
;; Copyright (c) 2026 Tom Rodriguez ("Toasty") — <toasty@heroiclands.org>
|
|
4
|
+
;; SPDX-License-Identifier: OFL-1.1
|
|
5
|
+
|
|
6
|
+
;;; Commentary:
|
|
7
|
+
|
|
8
|
+
;; An input method for the code points of Pirzath Carved, Pirzath Hand, Pirzath Hand Lifted.
|
|
9
|
+
;; Generated by tools/keyboards.py from fonts.json. Put this directory on
|
|
10
|
+
;; `load-path', evaluate (require 'heroiclands-pirzath), then M-x set-input-method.
|
|
11
|
+
|
|
12
|
+
;;; Code:
|
|
13
|
+
|
|
14
|
+
(require 'quail)
|
|
15
|
+
|
|
16
|
+
(quail-define-package
|
|
17
|
+
"heroiclands-pirzath" "Pirzath" "HL-Pir" t
|
|
18
|
+
"Type Pirzath Carved, Pirzath Hand, Pirzath Hand Lifted with the same keys as the macOS layout.
|
|
19
|
+
A letter types itself, Shift types the capital or the digraph on that key,
|
|
20
|
+
and Option has no Emacs key: Option+x is \\ and then the key
|
|
21
|
+
that x types, so Option+Shift+a is \\A.
|
|
22
|
+
The cheatsheet keyboards/pirzath.md lists every key."
|
|
23
|
+
nil t nil nil nil nil nil nil nil nil t)
|
|
24
|
+
|
|
25
|
+
(quail-define-rules
|
|
26
|
+
("a" #xF0000)
|
|
27
|
+
("e" #xF0001)
|
|
28
|
+
("i" #xF0002)
|
|
29
|
+
("o" #xF0003)
|
|
30
|
+
("u" #xF0004)
|
|
31
|
+
("p" #xF0005)
|
|
32
|
+
("b" #xF0006)
|
|
33
|
+
("f" #xF0007)
|
|
34
|
+
("v" #xF0008)
|
|
35
|
+
("m" #xF0009)
|
|
36
|
+
("t" #xF000A)
|
|
37
|
+
("d" #xF000B)
|
|
38
|
+
("n" #xF000C)
|
|
39
|
+
("k" #xF000D)
|
|
40
|
+
("g" #xF000E)
|
|
41
|
+
("s" #xF000F)
|
|
42
|
+
("z" #xF0010)
|
|
43
|
+
("h" #xF0011)
|
|
44
|
+
("l" #xF0012)
|
|
45
|
+
("r" #xF0013)
|
|
46
|
+
("j" #xF0014)
|
|
47
|
+
("q" #xF0015)
|
|
48
|
+
("w" #xF0016)
|
|
49
|
+
("y" #xF0017)
|
|
50
|
+
("'" #xF0018)
|
|
51
|
+
("T" #xF0020)
|
|
52
|
+
("D" #xF0021)
|
|
53
|
+
("K" #xF0022)
|
|
54
|
+
("G" #xF0023)
|
|
55
|
+
("S" #xF0024)
|
|
56
|
+
("Z" #xF0025)
|
|
57
|
+
("X" #xF0026)
|
|
58
|
+
("C" #xF0027)
|
|
59
|
+
("N" #xF0028)
|
|
60
|
+
("Y" #xF0029)
|
|
61
|
+
("H" #xF002A)
|
|
62
|
+
("A" #xF0030)
|
|
63
|
+
("U" #xF0031)
|
|
64
|
+
("E" #xF0032)
|
|
65
|
+
("O" #xF0033)
|
|
66
|
+
("W" #xF0034)
|
|
67
|
+
("0" #xF0040)
|
|
68
|
+
("1" #xF0041)
|
|
69
|
+
("2" #xF0042)
|
|
70
|
+
("3" #xF0043)
|
|
71
|
+
("4" #xF0044)
|
|
72
|
+
("5" #xF0045)
|
|
73
|
+
("6" #xF0046)
|
|
74
|
+
("7" #xF0047)
|
|
75
|
+
("8" #xF0048)
|
|
76
|
+
("9" #xF0049)
|
|
77
|
+
("\\0" #xF004A)
|
|
78
|
+
("\\1" #xF004B)
|
|
79
|
+
("\\2" #xF004C)
|
|
80
|
+
("\\3" #xF004D)
|
|
81
|
+
("\\4" #xF004E)
|
|
82
|
+
("\\5" #xF004F)
|
|
83
|
+
("." #xF0050)
|
|
84
|
+
("," #xF0051)
|
|
85
|
+
("!" #xF0052)
|
|
86
|
+
("-" #xF0053)
|
|
87
|
+
("<" #xF0054)
|
|
88
|
+
(">" #xF0055)
|
|
89
|
+
("\\e" #xF0060))
|
|
90
|
+
|
|
91
|
+
(provide 'heroiclands-pirzath)
|
|
92
|
+
|
|
93
|
+
;;; heroiclands-pirzath.el ends here
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
;;; heroiclands-qalezu.el --- Type Qalezu with Quail -*- lexical-binding: t; -*-
|
|
2
|
+
|
|
3
|
+
;; Copyright (c) 2026 Tom Rodriguez ("Toasty") — <toasty@heroiclands.org>
|
|
4
|
+
;; SPDX-License-Identifier: OFL-1.1
|
|
5
|
+
|
|
6
|
+
;;; Commentary:
|
|
7
|
+
|
|
8
|
+
;; An input method for the code points of Qalezu Hand.
|
|
9
|
+
;; Generated by tools/keyboards.py from fonts.json. Put this directory on
|
|
10
|
+
;; `load-path', evaluate (require 'heroiclands-qalezu), then M-x set-input-method.
|
|
11
|
+
|
|
12
|
+
;;; Code:
|
|
13
|
+
|
|
14
|
+
(require 'quail)
|
|
15
|
+
|
|
16
|
+
(quail-define-package
|
|
17
|
+
"heroiclands-qalezu" "Qalezu" "HL-Qal" t
|
|
18
|
+
"Type Qalezu Hand with the same keys as the macOS layout.
|
|
19
|
+
A letter types itself, Shift types the capital or the digraph on that key,
|
|
20
|
+
and Option has no Emacs key: Option+x is \\ and then the key
|
|
21
|
+
that x types, so Option+Shift+a is \\A.
|
|
22
|
+
The cheatsheet keyboards/qalezu.md lists every key."
|
|
23
|
+
nil t nil nil nil nil nil nil nil nil t)
|
|
24
|
+
|
|
25
|
+
(quail-define-rules
|
|
26
|
+
("l" #x1EA00)
|
|
27
|
+
("r" #x1EA01)
|
|
28
|
+
("t" #x1EA02)
|
|
29
|
+
("d" #x1EA03)
|
|
30
|
+
("z" #x1EA04)
|
|
31
|
+
("s" #x1EA05)
|
|
32
|
+
("g" #x1EA06)
|
|
33
|
+
("k" #x1EA07)
|
|
34
|
+
("n" #x1EA08)
|
|
35
|
+
("T" #x1EA09)
|
|
36
|
+
("m" #x1EA0A)
|
|
37
|
+
("q" #x1EA0B)
|
|
38
|
+
("K" #x1EA0C)
|
|
39
|
+
("G" #x1EA0D)
|
|
40
|
+
("h" #x1EA0E)
|
|
41
|
+
("S" #x1EA0F)
|
|
42
|
+
("p" #x1EA10)
|
|
43
|
+
("b" #x1EA11)
|
|
44
|
+
("f" #x1EA12)
|
|
45
|
+
("w" #x1EA13)
|
|
46
|
+
("y" #x1EA14)
|
|
47
|
+
("'" #x1EA15)
|
|
48
|
+
("C" #x1EA16)
|
|
49
|
+
("\\l" #x1EA17)
|
|
50
|
+
("\\r" #x1EA18)
|
|
51
|
+
("\\t" #x1EA19)
|
|
52
|
+
("\\d" #x1EA1A)
|
|
53
|
+
("\\z" #x1EA1B)
|
|
54
|
+
("\\s" #x1EA1C)
|
|
55
|
+
("\\g" #x1EA1D)
|
|
56
|
+
("\\k" #x1EA1E)
|
|
57
|
+
("\\n" #x1EA1F)
|
|
58
|
+
("A" #x1EA20)
|
|
59
|
+
("\\m" #x1EA21)
|
|
60
|
+
("\\q" #x1EA22)
|
|
61
|
+
("B" #x1EA23)
|
|
62
|
+
("D" #x1EA24)
|
|
63
|
+
("\\h" #x1EA25)
|
|
64
|
+
("E" #x1EA26)
|
|
65
|
+
("\\p" #x1EA27)
|
|
66
|
+
("\\b" #x1EA28)
|
|
67
|
+
("\\f" #x1EA29)
|
|
68
|
+
("\\w" #x1EA2A)
|
|
69
|
+
("\\y" #x1EA2B)
|
|
70
|
+
("F" #x1EA2C)
|
|
71
|
+
("0" #x1EA2D)
|
|
72
|
+
("1" #x1EA2E)
|
|
73
|
+
("2" #x1EA2F)
|
|
74
|
+
("3" #x1EA30)
|
|
75
|
+
("4" #x1EA31)
|
|
76
|
+
("5" #x1EA32)
|
|
77
|
+
("6" #x1EA33)
|
|
78
|
+
("7" #x1EA34)
|
|
79
|
+
("8" #x1EA35)
|
|
80
|
+
("9" #x1EA36)
|
|
81
|
+
("." #x1EA37)
|
|
82
|
+
("," #x1EA38)
|
|
83
|
+
("\\L" #x1ECC0)
|
|
84
|
+
("\\R" #x1ECC1)
|
|
85
|
+
("\\T" #x1ECC2)
|
|
86
|
+
("\\D" #x1ECC3)
|
|
87
|
+
("\\Z" #x1ECC4)
|
|
88
|
+
("\\S" #x1ECC5)
|
|
89
|
+
("\\G" #x1ECC6)
|
|
90
|
+
("\\K" #x1ECC7)
|
|
91
|
+
("\\N" #x1ECC8)
|
|
92
|
+
("H" #x1ECC9)
|
|
93
|
+
("\\M" #x1ECCA)
|
|
94
|
+
("\\Q" #x1ECCB)
|
|
95
|
+
("I" #x1ECCC)
|
|
96
|
+
("J" #x1ECCD)
|
|
97
|
+
("\\H" #x1ECCE)
|
|
98
|
+
("L" #x1ECCF)
|
|
99
|
+
("\\P" #x1ECD0)
|
|
100
|
+
("\\B" #x1ECD1)
|
|
101
|
+
("\\F" #x1ECD2)
|
|
102
|
+
("\\W" #x1ECD3)
|
|
103
|
+
("\\Y" #x1ECD4)
|
|
104
|
+
("M" #x1ECD5)
|
|
105
|
+
("N" #x1ECD6)
|
|
106
|
+
("O" #x1ECD7)
|
|
107
|
+
("P" #x1ECD8)
|
|
108
|
+
("Q" #x1ECD9)
|
|
109
|
+
("R" #x1ECDA)
|
|
110
|
+
("U" #x1ECDB)
|
|
111
|
+
("V" #x1ECDC)
|
|
112
|
+
("W" #x1ECDD)
|
|
113
|
+
("X" #x1ECDE)
|
|
114
|
+
("Y" #x1ECDF)
|
|
115
|
+
("Z" #x1ECE0)
|
|
116
|
+
("\\A" #x1ECE1)
|
|
117
|
+
("\\C" #x1ECE2)
|
|
118
|
+
("\\E" #x1ECE3)
|
|
119
|
+
("\\I" #x1ECE4)
|
|
120
|
+
("\\J" #x1ECE5)
|
|
121
|
+
("\\O" #x1ECE6)
|
|
122
|
+
("\\U" #x1ECE7)
|
|
123
|
+
("\\V" #x1ECE8)
|
|
124
|
+
("\\X" #x1ECE9)
|
|
125
|
+
("\\)" #x1ECEA)
|
|
126
|
+
("\\!" #x1ECEB))
|
|
127
|
+
|
|
128
|
+
(provide 'heroiclands-qalezu)
|
|
129
|
+
|
|
130
|
+
;;; heroiclands-qalezu.el ends here
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
;;; heroiclands-semaron.el --- Type Semaron with Quail -*- lexical-binding: t; -*-
|
|
2
|
+
|
|
3
|
+
;; Copyright (c) 2026 Tom Rodriguez ("Toasty") — <toasty@heroiclands.org>
|
|
4
|
+
;; SPDX-License-Identifier: OFL-1.1
|
|
5
|
+
|
|
6
|
+
;;; Commentary:
|
|
7
|
+
|
|
8
|
+
;; An input method for the code points of Semaron Kuriale.
|
|
9
|
+
;; Generated by tools/keyboards.py from fonts.json. Put this directory on
|
|
10
|
+
;; `load-path', evaluate (require 'heroiclands-semaron), then M-x set-input-method.
|
|
11
|
+
|
|
12
|
+
;;; Code:
|
|
13
|
+
|
|
14
|
+
(require 'quail)
|
|
15
|
+
|
|
16
|
+
(quail-define-package
|
|
17
|
+
"heroiclands-semaron" "Semaron" "HL-Sem" t
|
|
18
|
+
"Type Semaron Kuriale with the same keys as the macOS layout.
|
|
19
|
+
A letter types itself, Shift types the capital or the digraph on that key,
|
|
20
|
+
and Option has no Emacs key: Option+x is \\ and then the key
|
|
21
|
+
that x types, so Option+Shift+a is \\A.
|
|
22
|
+
The cheatsheet keyboards/semaron.md lists every key."
|
|
23
|
+
nil t nil nil nil nil nil nil nil nil t)
|
|
24
|
+
|
|
25
|
+
(quail-define-rules
|
|
26
|
+
("A" #xF0200)
|
|
27
|
+
("B" #xF0201)
|
|
28
|
+
("D" #xF0202)
|
|
29
|
+
("E" #xF0203)
|
|
30
|
+
("F" #xF0204)
|
|
31
|
+
("G" #xF0205)
|
|
32
|
+
("H" #xF0206)
|
|
33
|
+
("I" #xF0207)
|
|
34
|
+
("J" #xF0208)
|
|
35
|
+
("K" #xF0209)
|
|
36
|
+
("L" #xF020A)
|
|
37
|
+
("M" #xF020B)
|
|
38
|
+
("N" #xF020C)
|
|
39
|
+
("O" #xF020D)
|
|
40
|
+
("P" #xF020E)
|
|
41
|
+
("R" #xF020F)
|
|
42
|
+
("S" #xF0210)
|
|
43
|
+
("T" #xF0211)
|
|
44
|
+
("U" #xF0212)
|
|
45
|
+
("V" #xF0213)
|
|
46
|
+
("W" #xF0214)
|
|
47
|
+
("Y" #xF0215)
|
|
48
|
+
("Z" #xF0216)
|
|
49
|
+
("\\A" #xF0220)
|
|
50
|
+
("\\E" #xF0221)
|
|
51
|
+
("\\I" #xF0222)
|
|
52
|
+
("\\O" #xF0223)
|
|
53
|
+
("\\U" #xF0224)
|
|
54
|
+
("a" #xF0230)
|
|
55
|
+
("b" #xF0231)
|
|
56
|
+
("d" #xF0232)
|
|
57
|
+
("e" #xF0233)
|
|
58
|
+
("f" #xF0234)
|
|
59
|
+
("g" #xF0235)
|
|
60
|
+
("h" #xF0236)
|
|
61
|
+
("i" #xF0237)
|
|
62
|
+
("j" #xF0238)
|
|
63
|
+
("k" #xF0239)
|
|
64
|
+
("l" #xF023A)
|
|
65
|
+
("m" #xF023B)
|
|
66
|
+
("n" #xF023C)
|
|
67
|
+
("o" #xF023D)
|
|
68
|
+
("p" #xF023E)
|
|
69
|
+
("r" #xF023F)
|
|
70
|
+
("s" #xF0240)
|
|
71
|
+
("t" #xF0241)
|
|
72
|
+
("u" #xF0242)
|
|
73
|
+
("v" #xF0243)
|
|
74
|
+
("w" #xF0244)
|
|
75
|
+
("y" #xF0245)
|
|
76
|
+
("z" #xF0246)
|
|
77
|
+
("\\a" #xF0248)
|
|
78
|
+
("\\e" #xF0249)
|
|
79
|
+
("\\i" #xF024A)
|
|
80
|
+
("\\o" #xF024B)
|
|
81
|
+
("\\u" #xF024C)
|
|
82
|
+
("\\t" #xF0250)
|
|
83
|
+
("\\T" #xF0251)
|
|
84
|
+
("0" #xF0258)
|
|
85
|
+
("1" #xF0259)
|
|
86
|
+
("2" #xF025A)
|
|
87
|
+
("3" #xF025B)
|
|
88
|
+
("4" #xF025C)
|
|
89
|
+
("5" #xF025D)
|
|
90
|
+
("6" #xF025E)
|
|
91
|
+
("7" #xF025F)
|
|
92
|
+
("8" #xF0260)
|
|
93
|
+
("9" #xF0261)
|
|
94
|
+
("." #xF0268)
|
|
95
|
+
("`" #xF0270))
|
|
96
|
+
|
|
97
|
+
(provide 'heroiclands-semaron)
|
|
98
|
+
|
|
99
|
+
;;; heroiclands-semaron.el ends here
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
;;; heroiclands-thuravark.el --- Type Thuravark with Quail -*- lexical-binding: t; -*-
|
|
2
|
+
|
|
3
|
+
;; Copyright (c) 2026 Tom Rodriguez ("Toasty") — <toasty@heroiclands.org>
|
|
4
|
+
;; SPDX-License-Identifier: OFL-1.1
|
|
5
|
+
|
|
6
|
+
;;; Commentary:
|
|
7
|
+
|
|
8
|
+
;; An input method for the code points of Thuravark Carved.
|
|
9
|
+
;; Generated by tools/keyboards.py from fonts.json. Put this directory on
|
|
10
|
+
;; `load-path', evaluate (require 'heroiclands-thuravark), then M-x set-input-method.
|
|
11
|
+
|
|
12
|
+
;;; Code:
|
|
13
|
+
|
|
14
|
+
(require 'quail)
|
|
15
|
+
|
|
16
|
+
(quail-define-package
|
|
17
|
+
"heroiclands-thuravark" "Thuravark" "HL-Thu" t
|
|
18
|
+
"Type Thuravark Carved with the same keys as the macOS layout.
|
|
19
|
+
A letter types itself, Shift types the capital or the digraph on that key,
|
|
20
|
+
and Option has no Emacs key: Option+x is \\ and then the key
|
|
21
|
+
that x types, so Option+Shift+a is \\A.
|
|
22
|
+
The cheatsheet keyboards/thuravark.md lists every key."
|
|
23
|
+
nil t nil nil nil nil nil nil nil nil t)
|
|
24
|
+
|
|
25
|
+
(quail-define-rules
|
|
26
|
+
("a" #xF0100)
|
|
27
|
+
("e" #xF0101)
|
|
28
|
+
("i" #xF0102)
|
|
29
|
+
("o" #xF0103)
|
|
30
|
+
("u" #xF0104)
|
|
31
|
+
("b" #xF0105)
|
|
32
|
+
("d" #xF0106)
|
|
33
|
+
("f" #xF0107)
|
|
34
|
+
("g" #xF0108)
|
|
35
|
+
("h" #xF0109)
|
|
36
|
+
("j" #xF010A)
|
|
37
|
+
("k" #xF010B)
|
|
38
|
+
("l" #xF010C)
|
|
39
|
+
("m" #xF010D)
|
|
40
|
+
("n" #xF010E)
|
|
41
|
+
("p" #xF010F)
|
|
42
|
+
("r" #xF0110)
|
|
43
|
+
("s" #xF0111)
|
|
44
|
+
("t" #xF0112)
|
|
45
|
+
("v" #xF0113)
|
|
46
|
+
("w" #xF0114)
|
|
47
|
+
("z" #xF0115)
|
|
48
|
+
("T" #xF0120)
|
|
49
|
+
("D" #xF0121)
|
|
50
|
+
("K" #xF0122)
|
|
51
|
+
("G" #xF0123)
|
|
52
|
+
("H" #xF0124)
|
|
53
|
+
("N" #xF0125)
|
|
54
|
+
("0" #xF0130)
|
|
55
|
+
("1" #xF0131)
|
|
56
|
+
("2" #xF0132)
|
|
57
|
+
("3" #xF0133)
|
|
58
|
+
("4" #xF0134)
|
|
59
|
+
("5" #xF0135)
|
|
60
|
+
("6" #xF0136)
|
|
61
|
+
("7" #xF0137)
|
|
62
|
+
("8" #xF0138)
|
|
63
|
+
("9" #xF0139)
|
|
64
|
+
("." #xF0140)
|
|
65
|
+
("\\e" #xF0148))
|
|
66
|
+
|
|
67
|
+
(provide 'heroiclands-thuravark)
|
|
68
|
+
|
|
69
|
+
;;; heroiclands-thuravark.el ends here
|