惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Project Zero
Project Zero
B
Blog RSS Feed
爱范儿
爱范儿
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
阮一峰的网络日志
阮一峰的网络日志
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
D
Docker
B
Blog
大猫的无限游戏
大猫的无限游戏
V
Vulnerabilities – Threatpost
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
Schneier on Security
Spread Privacy
Spread Privacy
NISL@THU
NISL@THU
博客园 - 【当耐特】
IT之家
IT之家
云风的 BLOG
云风的 BLOG
L
Lohrmann on Cybersecurity
V
V2EX
Latest news
Latest news
S
Secure Thoughts
C
Check Point Blog
N
Netflix TechBlog - Medium
N
News | PayPal Newsroom
C
Cybersecurity and Infrastructure Security Agency CISA
The Register - Security
The Register - Security
The Cloudflare Blog
博客园_首页
博客园 - 三生石上(FineUI控件)
L
LINUX DO - 最新话题
W
WeLiveSecurity
G
GRAHAM CLULEY
量子位
T
The Exploit Database - CXSecurity.com
Security Latest
Security Latest
C
Cisco Blogs
Security Archives - TechRepublic
Security Archives - TechRepublic
GbyAI
GbyAI
A
Arctic Wolf
Attack and Defense Labs
Attack and Defense Labs
博客园 - 叶小钗
SecWiki News
SecWiki News
Vercel News
Vercel News
Engineering at Meta
Engineering at Meta
S
Security @ Cisco Blogs
小众软件
小众软件
N
News and Events Feed by Topic
WordPress大学
WordPress大学

Unsung

The surprising richness of GarageBand – Unsung “The pipeline of future experts is thinning from both ends.” – Unsung “It took months to find appliances that didn’t need apps to function.” – Unsung Day for night – Unsung “But obviously, that’s just silly stuff.” – Unsung Within or without – Unsung A few interesting modern pixel fonts – Unsung Google Docs shortcut onboarding – Unsung “Why pay for an orchestra when your computer can do it all?” – Unsung Lisa’s copy (and cut, and paste) – Unsung “This is a common tell in web apps, and we did a lot of work to eliminate it.” – Unsung Chrome’s abnormal tab search – Unsung “Some say it sounds like an alto saxophone.” – Unsung Shallow breathing – Unsung “If you just ignore those pesky impossible details, the demo looks deceptively simple.” – Unsung “Accents are an opportunity, not a burden.” – Unsung Less doesn’t need more – Unsung “Easy to use,” the hard parts – Unsung “We accepted this gradual bloat, but that’s not progress.” – Unsung Safari and system design, pt. 1 – Unsung “193 hours of attempts (and practice)” – Unsung Not a radio pharma ad – Unsung “Cryptic mode was born from a hard constraint.” – Unsung Speaking of wiggling the mouse – Unsung “This is where your mouse becomes a cryptographic instrument.” – Unsung Mailbag: Photoshop’s focus post – Unsung Rug pulled – Unsung Save For Web claws – Unsung “Nothing short of a magic trick” – Unsung “They did the bare minimum and moved on.” – Unsung A preview of the future – Unsung Peaked in 2015 – Unsung “There seems to be a file that is just filled with undecipherable Morse.” – Unsung “This was a user-friendly computer.” – Unsung “Watchmaker’s delicate precision and ornate mechanical intent” – Unsung “Traditionally, fonts were just shapes.” – Unsung “Who thinks about a screwdriver?” – Unsung The land where time stood still – Unsung The vision of persistence – Unsung The 1990s called and they want their dialog box back – Unsung “Have you ever been annoyed by your Mac’s media keys?” – Unsung Early names – Unsung Mouse pointer as a mere mortal – Unsung “Examining the changelog in its entirety would be a massive task, given that it was now over 200,000 words long.” – Unsung CleanShot’s onboarding via settings – Unsung The tortoise and the hare live on – Unsung “The Helvetica of music notation” – Unsung Photoshop’s challenges with focus, pt. 2 – Unsung About Unsung: Thanks for your feedback! – Unsung Book review: Shadow of the Colossus (Boss Fight Books) – Unsung UI art from 4096 – Unsung Tactical dark modes – Unsung What deserves a second chance – Unsung “The cheatsheet you won’t need.” – Unsung “That’s how floating point errors and triangle numbers solved a mystery.” – Unsung “Plain text has been around for decades and it’s here to stay.” – Unsung Abort, Retry, No, Thanks – Unsung “The deeper you look, the more it starts to feel like a platform.” – Unsung Out of touch – Unsung Recency bias (non-derogatory) – Unsung “You could key smash, and it would type out the thing.” – Unsung “The fancy software figures it out for you.” – Unsung Got your back, pt. 5 – Unsung If a feature falls in a forest – Unsung “The system is so twisted that even Apple itself begs for these reviews from its own apps.” – Unsung “It can be really disorienting to scroll around a fully monochrome hexdump.” – Unsung Raycast’s confetti cannon – Unsung The edge not taken – Unsung “Area connected to a given node in a multi-dimensional array with some matching attribute” – Unsung “Use links, don’t talk about them.” – Unsung Unsung @ 250: Please send me your feedback! – Unsung Unsung @ 250: Nine design details – Unsung Unsung @ 250: Goals and principles – Unsung “To build a thing that immediately feels like you’ve had it forever is very hard to do.” – Unsung “Should be no trouble at all for a driver to understand.” – Unsung Thoughtful file dropping in Wakamaifondue – Unsung “Rather than trying to fix this mistake, the developers leaned into it hard in the sequel.” – Unsung The beauty and the terror of oddly-specific commands – Unsung “We can have the best of all worlds.” – Unsung In search for a more precise cursor – Unsung “Deere charges six figures for a tractor. But the farmers were still the product.” – Unsung Is this the latest? – Unsung “So I wrote a script that takes monthly screenshots of Google and Apple Maps.” – Unsung Only time will tell – Unsung “Approximately 21 times the estimated age of the universe” – Unsung “We’re trying to copy this old machine, weirdness and all.” – Unsung “Software is a unique art because it is so reactive.” – Unsung Blink comparators in photo editing apps – Unsung “Prototyping turned into an excuse for not thinking” – Unsung “Every step they take, in every single direction, is right on top of a rake.” – Unsung “Subtle line between animations that help and animations that hurt” – Unsung “And if I were to end this story here, this would be a great story.” – Unsung “If you use your computer to do important work, you deserve fast software.” – Unsung “It moved too slowly to be an asteroid.” – Unsung Linear’s clever internal redesign UI – Unsung “I’m hoping that the listeners out there, when they hear it, they’ll feel seen.” – Unsung For your consideration: Tab to fix spelling – Unsung Anachronisms – Unsung Testing tip: Enable the zoom peek gesture – Unsung Book review: Maintenance: Of Everything (Part One) – Unsung
Why do Macs ask you to press random keys when connecting a new keyboard? – Unsung
Marcin Wichary · 2026-04-06 · via Unsung

You might have seen this, one of the strangest and most primitive experiences in macOS, where you’re asked to press keys next to left Shift and right Shift, whatever they might be.

Perhaps I can explain.

There are three main international keyboard layout variants in common use: American (ANSI, with a horizontal Enter), European (ISO, with a vertical Enter), and Japanese (JIS, with a square-ish Enter).

The shape of Enter and the shuffling of the surrounding keys is not the only difference. It’s also that the European layout has historically always had one more key – shoved in between Shift and Z – and the Japanese layout a few more.

But the main challenge is that a keyboard doesn’t have a way to tell the host computer what are its exact keys and where they’re located.

So, pressing the thing next to the left Shift can help Apple understand whether the keyboard is American or Japanese (always Z) or European (something else, but never Z). And pressing the thing next to the right Shift differentiates JIS (where it’s the _ key) from another keyboard (always /).

What I called “primitive” just above is actually clever in its approach. The legend of the key next to left Shift varies per locale (you can compare here), so the system can’t just tell you to press the < > key – and besides, asking the user to find a key that might not exist is a lot more stressful. And, identifying the keyboard by choosing a layout visually wouldn’t work either, since there are a million of layout variations – imagine having a split or a compact keyboard!

But it still is primitive, because it will still open up even if the keyboard you connect isn’t really a typing keyboard…

…or even if it doesn’t have any keys at all. (Some peripherals like credit card readers and two-factor dongles identify as keyboards as they transfer information by sending keystrokes.)

But: Why does it matter? What happens if you select the wrong layout or ignore the dialog?

If you mix up America and Europe, the difference should be largely cosmetic. After all, you still have to choose the keyboard language. People in, say, Germany will likely choose the appropriate locale, and the keys will do the right thing. However, also selecting the correct physical layout will properly display it in a few places, which can be helpful:

Japanese keyboards are more interesting, because they still have an English “mode” and the legends on a lot of the keys in that mode are different than on those on American and European keyboards – yet, the keys when pressed appear exactly the same (have the same “scan codes”) to the connected computer:

So knowing whether the keyboard is “US in the US” or “US in Japan” is important not just to place keys in the right position visually in a few places in macOS, but also for those keys to output what they actually show:

By the way, Apple’s own keyboards do not pop up this dialog. This is because while a keyboard can not do much when connected, it can at least send a vendor and model identification numbers, and Apple knows which of its keyboards sport what physical layout.

Why doesn’t macOS do that for third-party keyboards? They might, for some well-behaving ones; I don’t actually know. Unfortunately, the vendor/​model identification is a wild west and a lot of the keyboards I have identify simply as “unknown,” so building up an all-encompassing keyboard layout database is not really possible.

Either way, I mostly wanted to share why the dialog exists. Mind you, I don’t love it in that its language could be better and at one point it breaks a cardinal rule of reorienting options, which makes it hard to remember “oh yeah, it was the first scary setting that worked before.”

But overall, I thought it is a clever solution to a surprisingly hard problem. Sometimes primitive is better than nothing.