Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
203be55
Add names for open-headed arrows
zacharie-moughanim Mar 8, 2025
cbd98e8
Merge branch 'typst:main' into main
zacharie-moughanim Mar 31, 2026
1dafd7b
Add the symbol representing a whitespace
zacharie-moughanim Mar 31, 2026
57758e8
Add all control symbols in comment, without names
zacharie-moughanim Apr 8, 2026
f28fa3a
Attempt at naming printable characters reprensenting control characters
zacharie-moughanim Apr 10, 2026
e329d2c
Group by common prefixes
zacharie-moughanim Apr 10, 2026
c77bb2b
Update CHANGELOG
zacharie-moughanim Apr 10, 2026
0346b5e
Replace shorthand for full words in control symbols
zacharie-moughanim Apr 11, 2026
87d75a9
Replace names in control submodule by abbreviations
zacharie-moughanim Apr 17, 2026
013383b
Add keyboard two symbols for space and delete
zacharie-moughanim Apr 17, 2026
4c50d3d
Remove numbers in device control symbol names
zacharie-moughanim Apr 17, 2026
51205ed
changename of visible space from space to spacebar
zacharie-moughanim Apr 17, 2026
660f3bb
Add comment and update changelog
zacharie-moughanim Apr 17, 2026
07f273f
nit
zacharie-moughanim Apr 17, 2026
3510eba
nit
zacharie-moughanim Apr 17, 2026
f8df219
Remove delete
zacharie-moughanim Apr 17, 2026
c75eab0
Merge branch 'typst:main' into main
zacharie-moughanim May 10, 2026
050cb9e
First attempt at naming keyboard labels symbols
zacharie-moughanim May 10, 2026
9968a54
Udate CHANGELOG
zacharie-moughanim May 10, 2026
0777363
Remove comment + nit
zacharie-moughanim May 10, 2026
646da5e
Switch order of change in CHANGELOG
zacharie-moughanim May 10, 2026
80b1cb1
Add trailing blank line
zacharie-moughanim May 10, 2026
c4031b1
Add variation selector text
zacharie-moughanim May 10, 2026
a9a97af
Add more variation selector text
zacharie-moughanim May 10, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
103 changes: 100 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,6 @@
- Currency
- `riyal`: ⃁

- Keyboard labels
- `spacebar`: ␣

- Control (Printable symbols representing non-printable characters)
- `nul`: ␀
- `soh`: ␁
Expand Down Expand Up @@ -122,6 +119,106 @@
- `del`: ␡
- `nl`: ␤

- Keyboard labels (in submodule `keyboard`)
- `linefeed`: ↴
- `home` ↸
- `home.alt` ⭶
- `home.corner` ⇱
- `home.phone` ⌂
- `end`: ⇲
- `end.alt`: ⭸
- `tab`: ↹
- `tab.alt`: ⭾
- `tab.alt.v`: ⭿
- `tab.l`: ⇤
- `tab.l.alt`: ⭰
- `tab.r`: ⇥
- `tab.r.alt`: ⭲
- `tab.t`: ⤒
- `tab.t.alt`: ⭱
- `tab.b`: ⤓
- `tab.b.alt`: ⭳
- `pageup`: ⇞
- `pagedown`: ⇟
- `shift`: ⇧
- `capslock`: ⇪
- `capslock.pedestal`: ⇫
- `capslock.pedestal.struck`: ⇬
- `capslock.struck`: ⮸
- `numlock`: ⇭
- `scroll`: ⇳
- `space`: ␣
- `del`: ␥
- `cmd`: ⌘
- `enter`: ⌤
- `enter.alt`: ⎆
- `option`: ⌥
- `erase.r`: ⌦
- `erase.l`: ⌫
- `clear`: ⌧
- `keyboard`: ⌨
- `keyboard.mouse`: 🖦
- `keyboard.wired`: 🖮
- `insert`: ⎀
- `underline.continuous`: ⎁
- `underline.discontinuous`: ⎂
- `emph`: ⎃
- `center`: ⎅
- `alt`: ⎇
- `control`: ⎈
- `break`: ⎊
- `esc`: ⎋
- `esc.alt`: ⮹
- `undo`: ⎌
- `decimalsep`: ⎖
- `prevpage`: ⎗
- `nextpage`: ⎘
- `printscreen`: ⎙
- `clearscreen`: ⎚
- `return`: ⏎
- `return.l`: ⮐
- `return.r`: ⮑
- `return.alt`: ↵
- `newline.l`: ⮒
- `newline.r`: ⮓
- `newline.alt`: ↵
- `eject`: ⏏
- `forward`: ⏵
- `forward.fast`: ⏩
- `backwards.fast`: ⏴
- `backwards`: ⏪
- `nexttrack`: ⏭
- `prevtrack`: ⏮
- `playpausetoggle`: ⏯
- `alarm`: ⏰
- `stopwatch`: ⏱
- `timer`: ⏲
- `hourglass`: ⏳
- `increase`: ⏶
- `decrease`: ⏷
- `pause`: ⏸
- `pause.alt`: ⎉
- `stop`: ⏹
- `record`: ⏺
- `shuffle`: 🔀
- `repeat`: 🔁
- `repeat`: 🔂
- `reload`: 🔃
- `reload`: 🔄
- `brightness.decrease`: 🔅
- `brightness.increase`: 🔆
- `speaker`: 🔈
- `speaker.mute`: 🔇
- `speaker.decrease`: 🔉
- `speaker.increase`: 🔊
- `power`: ⏻
- `power.on`: ⏽
- `power.off`: ⭘
- `power.on.off`: ⏼
- `power.sleep`: ⏾
- `pageup`: ⭻
- `pagedown`: ⭽

### New in `emoji`

- `bigfoot`: 🫈
Expand Down
112 changes: 109 additions & 3 deletions src/modules/sym.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1266,9 +1266,6 @@ errorbar
.circle.stroked ⧲
.circle.filled ⧳

// Keyboard labels.
spacebar ␣

gender {
female ♀\vs{text}
.double ⚢
Expand Down Expand Up @@ -1323,3 +1320,112 @@ control {
del ␡ // DELete
nl ␤ // New Line
}

// Characters commonly used as keyboards labels
keyboard {
linefeed ↴
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this symbol present on actual keyboards?

home ↸
.alt ⭶
Comment on lines +1327 to +1328
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't like that we have two subtly different symbols for the same thing. How did you choose which one to be the .alt variant? Also, why not simply ↖ as suggested by French Wikipédia?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As explained in the linked document, the default one is in a group called "Keyboard symbols and circle arrows" while the other is in a random group (here, "triangle-headed arrows"), but both mention the "home key" and are cross-referenced. So they clearly meant to describe the same key, but the first one is primarily meant to be a key label.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Then I think let's only keep U+21B8 and remove the .alt variant. The way I understand it, U+2B76, as a specifically triangle-headed arrow, is a more specific version of U+21B8, a generic arrow.

.corner ⇱
.phone ⌂
Comment on lines +1329 to +1330
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There could be many more variations (like ↖ which I noted previously).

In general, I feel like if a semantic name doesn't fit a single symbol (with perhaps a few variants, like phi and phi.alt), it would be better to simply abandon the semantic name and use descriptive names for all variants instead.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The difference is that ↖ is not described as "home" in the unicode chart. But if you want we can remove home altogether.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that would be better indeed. If the need for a keyboard.home symbol arises in the future, we can always add it at that point.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one specifically is not used as a common keyboard key symbol so I don't think it belongs here.

end ⇲
.alt ⭸
Comment on lines +1331 to +1332
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is the default for this one not the same as for home?

tab ↹
.alt ⭾
.alt.v ⭿
.l ⇤
.l.alt ⭰
.r ⇥
.r.alt ⭲
.t ⤒
.t.alt ⭱
.b ⤓
.b.alt ⭳
Comment on lines +1333 to +1343
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have evidence for any variant other than tab and tab.alt being used in practice?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My Apple keyboard has U+21E5 on it.

pageup ⇞
pagedown ⇟
shift ⇧
capslock ⇪
.pedestal ⇫
.pedestal.struck ⇬
.struck ⮸
Comment on lines +1347 to +1350
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

numlock ⇭
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have evidence of this symbol being used on actual contemporary keyboards? I personally don't associate any symbol with the Num Lock key.

scroll ⇳
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this a real keyboard key?

space ␣
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this even present on actual keyboards? I feel like most keyboards simply do not have any symbol on the space bar.

del ␥
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have evidence of contemporary real world keyboards that use this symbols?

erase
.r ⌦
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this present on any real world keyboard?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mine uses a filled version of U+2326 with a white cross for delete, next to "delete" written out on the key.

.l ⌫
cmd ⌘
enter ⌤
.alt ⎆
Comment on lines +1359 to +1360
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think most people associate the Enter key with any of those symbols.

option ⌥
clear ⌧
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this a real key on contemporary keyboards?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My Apple keyboard has it (U+2327, tho the X slightly pokes out). But I have no clue what it was meant to represent, since I'm using this keyboard on Linux, where it maps to num lock.

keyboard ⌨\vs{text}
.mouse 🖦
.wired 🖮
Comment on lines +1363 to +1365
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this fits in a submodule dedicated to keyboard key symbols.

insert ⎀
underline
.continuous ⎁
.discontinuous ⎂
emph ⎃
center ⎅
Comment on lines +1366 to +1371
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have evidence of contemporary keyboards that have dedicated keys for those functions?

alt ⎇
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have evidence of contemporary keyboards that use this symbol?

control ⎈
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have evidence of contemporary keyboards that use this symbol?

break ⎊
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What key is that?

esc ⎋
.alt ⮹
undo ⎌
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

decimalsep ⎖
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What key is that?

prevpage ⎗
nextpage ⎘
Comment on lines +1379 to +1380
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feels redundant with pageup and pagedown.

printscreen ⎙
clearscreen ⎚
Comment on lines +1381 to +1382
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are those symbols used on any real world contemporary keyboard?

return ⏎
.alt ↵
.l ⮐
.r ⮑
Comment on lines +1385 to +1386
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think those can be excluded for now.

newline
.alt ↵
.l ⮒
.r ⮓
Comment on lines +1387 to +1390
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there any contemporary keyboard that has a separate key for newline that is not just the Enter key?

eject ⏏\vs{text}
// Music/Video player buttons
forward ⏵
.fast ⏩\vs{text}
backwards ⏴
.fast ⏪\vs{text}
nexttrack ⏭\vs{text}
prevtrack ⏮\vs{text}
playpausetoggle ⏯\vs{text}
alarm ⏰\vs{text}
stopwatch ⏱\vs{text}
timer ⏲\vs{text}
hourglass ⏳\vs{text}
increase ⏶
decrease ⏷
pause ⏸\vs{text}
.alt ⎉
stop ⏹\vs{text}
record ⏺\vs{text}
shuffle 🔀
repeat 🔁
.once 🔂
reload 🔃
.alt 🔄
Comment on lines +1391 to +1414
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think let's exclude those from this PR. they can be added in a separate PR so that this one can focus on actual keyboard symbols.

// Adjust sound and brightness
brightness
.decrease 🔅
.increase 🔆
speaker 🔈\vs{text}
.mute 🔇
.lower 🔉
.higher 🔊
Comment on lines +1415 to +1422
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like those symbols can be interpreted in a more general way than just keyboard symbols. Let's add them in a separate PR.

// Power symbols
power ⏻
.on ⏽
.off ⭘
.on.off ⏼
.sleep ⏾
Comment on lines +1423 to +1428
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Those are redundant with sym.power.standby, sym.power.on, sym.power.off, sym.power.on.off and sym.power.sleep. also they are not keyboard symbols, so I don't think they belong here.

pageup ⭻
pagedown ⭽
}
Loading