Keyboard differences between Windows and Macs (unsung.aresluna.org)

313 pointsby sohkamyung19 hours ago254 comments

RobGR 17 hours ago

This is a really interesting and complete writeup.

I have been helping someone who has little experience with Windows or Mac, but used DOS for years ( until pretty recently ) and I've set them up with a simple Debian Linux running XFCE4 as the desktop. I've found that I have to teach them and also document a lot of basic computer idioms -- Control-C / X / A / V to copy, cut, select all, paste; but also more basic things, like the fact there are two pointers on the screen -- one for the mouse and one for the keyboard -- if you slide the mouse pointer to a specific point and press a keyboard key, the new key will not appear where the arrow is, it will appear where the text cursor is.

A big one was tabs. I had to get a couple of manilla folders and show them the actual tabs, and hold it up next to the browser with several tabs, and suddenly it snapped with them what the interface was trying to represent.

Control-A will select all of a web page, unless you are in the text entry box of a form, then it selects just the things in that text entry box.

I started writing this up in a little manual, it got to a dozen pages fast, and I haven't put very much in it.

If anyone knows of a place where some portion of all of this is written down, post a link !

somat 15 hours ago

In the obscure ui choices department, I am that weirdo who uses openbsd as a desktop system, At one point not thinking I did ctrl+a in a firefox textentry and much to my surprise it did the right thing and moved the cursor to the beginning of the line.

I had no idea using unix vs windows cursor movement was even an option, because linux never picks the correct method, Still have no clue how it is set(a gtk option? but qt apps are set the same.) But salutes to whatever obsd porter picked it, really made my day.

lloeki 15 hours ago

GNOME:

    gsettings set org.gnome.desktop.interface gtk-key-theme-name 'Emacs'
or GTK:

     ~/.config/gtk-3.0/settings.ini
     ~/.config/gtk-4.0/settings.ini


    [Settings]
    gtk-key-theme-name = Emacs
I have it enabled but it can be very confusing: depending on whether you're in a text field or not, in say a browser, ^W will mean delete word or close tab. And sure enough closing a tab will sometimes but not always focus the URL box of the previous tab.

There used to be an obscure internal GTK setting to properly separate control plane from command plane like on (then named) Mac OS X but IIRC it's long gone / hardcoded to only GTK on macOS.

EDIT: Found it, GTK up to 3 had proper <Primary> vs <Control>. In what I would consider to be a fatal regression, GTK 4 just aliases <Control> and <Primary>, leaving the apps to do the work.

https://gaphor.org/2022/12/10/gtk4-macos-keybindings/

1718627440 4 hours ago

> In what I would consider to be a fatal regression, GTK 4 just aliases <Control> and <Primary>, leaving the apps to do the work.

Gtk4 makes some many dumb decisions, that I always code new programs against Gtk3. They also deleted so many useful widgets and essentially said "We don't care implement it yourself". I can't afford my programs to become unusable just because they completely lost the plot, so I intend to keep using Gtk3 forever.

fingerlocks 13 hours ago

Ctrl+a to carriage return the cursor seems work universally everywhere on a Mac. It even works on Microsoft products, incredible coming from the company that poorly reinvents everything and completely disrespects the default behaviors.

I always find this curious, is readline implemented at the hardware level or something? There’s just no effing way that was a priority ticket on Microsoft Teams given all the obnoxious weirdness of their chat text field.

And bizarrely, ctrl+k, ctrl+w, and ctrl+e are more seldom. Maybe 50-50 chance for those. But trusty ctrl+a is always there.

moses-palmer 13 hours ago

I have been using Linux / GNOME as my primary environment for the last 20 years, but at my current job, that was not an option, so I'm on macOS.

I tried for a week to get used to the unfamiliar key bindings for text input, but then I gave up—I'm a vim user after all!—and found a system setting to use the bindings I am more familiar with. This was picked up by many applications, but notably _not_ by the Microsoft suite, which appears to have the default macOS bindings hard coded...

bananaflag 11 hours ago

To me Ctrl+A was always "Select All", and it worked reliably on every system I had (except once when at my office I had a computer with unix bindings and the administrator told me he can't change them so I only used my laptop).

tpmoney 5 hours ago

It’s an OS level thing (well, OS + standard widget library). As long as the app is using a native macOS text field, the OS has (and has since I think the first versions of osx) support for basic emacs movement keys, no extra effort on the app developers part.

dotancohen 12 hours ago

Another surprise was discovering that Ctrl-J adds a newline in Claude Code. I'm fairly certain this is a feature of the environment, not CC, but it works everywhere I've tried it. KDE Konsole on Debian.

mjbrusso 11 hours ago

It's the Carret Notation: https://en.wikipedia.org/wiki/Caret_notation

1718627440 4 hours ago

That's because C-J IS ANSI Carriage Return. It's basically the absence of any special treatment.

JdeBP 2 hours ago

You meant ASCII Line Feed, ne?

1718627440 28 minutes ago

Yes, shame on me. Should have conducted ascii(7) before making bold statements.

       Oct   Dec   Hex   Char                        Oct   Dec   Hex   Char
       ────────────────────────────────────────────────────────────────────────
       000   0     00    NUL '\0' (null character)   100   64    40    @
       001   1     01    SOH (start of heading)      101   65    41    A
       002   2     02    STX (start of text)         102   66    42    B
       003   3     03    ETX (end of text)           103   67    43    C
       004   4     04    EOT (end of transmission)   104   68    44    D
       005   5     05    ENQ (enquiry)               105   69    45    E
       006   6     06    ACK (acknowledge)           106   70    46    F
       007   7     07    BEL '\a' (bell)             107   71    47    G
       010   8     08    BS  '\b' (backspace)        110   72    48    H
       011   9     09    HT  '\t' (horizontal tab)   111   73    49    I
       012   10    0A    LF  '\n' (new line)         112   74    4A    J
       013   11    0B    VT  '\v' (vertical tab)     113   75    4B    K
       014   12    0C    FF  '\f' (form feed)        114   76    4C    L
       015   13    0D    CR  '\r' (carriage ret)     115   77    4D    M

eddyg 10 hours ago

macOS supports emacs-like bindings natively: Ctrl-A/Ctrl-E for line start/end, Ctrl-K to kill, Ctrl-Y to yank, Ctrl-F/Ctrl-B for forward/back, etc.

They are defined in /System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict. You can create ~/Library/KeyBindings/DefaultKeyBinding.dict to augment or override those.

Anything built on AppKit that uses the standard text system (NSTextView, NSTextField, and the field editors that back them) supports those bindings “for free”.

For non-native apps, Karabiner Elements⁽¹⁾ is the answer, using a config like this⁽²⁾.

⁽¹⁾ https://karabiner-elements.pqrs.org/

⁽²⁾ https://github.com/pdelfino/karabiner-config

1718627440 4 hours ago

> because linux never picks the correct method

Because linux is not an operating system. A specific operating system will have some specific behaviour.

californical 15 hours ago

I don’t have any resources but this is fascinating to read about, thanks for sharing! So many things we just assume make sense which really don’t.

Their misunderstanding of not being able to hover their cursor over something and interact using the keyboard honestly has me wondering why I thought the real way was intuitive, their logic there makes sense

hans_castorp 15 hours ago

A friend of mine used to give computer courses back in the 90s (to people that had never used a computer before).

At one point he said "You need to move the mouse up" and one of the participants actually lifted the mouse physically from the desk - which was perfectly correct for someone not being used to computers.

I always remember this when I think "isn't this obvious?" with regards to usage patterns on computers.

dsego 12 hours ago

I remember that a lot of older folks had trouble understanding when to use a single click and when a double click. Clicking twice rapidly was also difficult for them, and they would consistently jerk the mouse and drag things around. Having every part of the interface in earlier windows draggable and reactive made this even more frustrating, since for them things would just disappear from the desktop.

neutronicus 4 hours ago

Double-click is difficult for my six-year-old, too.

ASalazarMX an hour ago

That's why you let them play kid's games that use single and double clicks, they'll develop that dexterity before you know it.

ubermonkey 9 hours ago

"which was perfectly correct for someone not being used to computers."

I disagree.

Even someone with no experience with computers understands, generally speaking, that the mouse is tracking the surface of the desk somehow. I have had this conversation many times (or did, back in the 1990s when mice were more novel for most people). Nobody picked it up.

The ones who do in these anecdotes are, IMO, examples of the sort of people who absolutely shut their brains off in protest when asked to work with new tech. I have been blessed in that I have only very, very rarely been asked to work with or even know such people.

vijucat 9 hours ago

During my M.Tech in Comp. Sci, I was requested to volunteer to be a lab assistant in a diploma course in programming in C for non-technical people. A Ph.D. in Philosophy was complaining that his program was not compiling. He wrote "exist(0)" instead of "exit(0)". I found this so interesting. Existentialism was on his mind, I guess. The program clearly exits by not existing any more? Can't argue with that!

I corrected him and went on my rounds. I remember that a bank manager was the best of the batch. By the time I circled back to my philosophy friend, he quietly changed "exit()" back to "exist()" and the program was not compiling again! This anecdote stayed in my mind.

ryandrake 8 hours ago

Not gonna lie, exist(0) sounds badass and ought to be a system API of some kind.

cosmojg 5 hours ago

Sounds like a great name for a post-rock digicore/hyperpop midwest emo band.

1718627440 4 hours ago

It would fit Prolog. You terminate the program, by proving that it doesn't exist.

SanjayMehta 8 hours ago

There were plenty of stories back in the day about assistants being asked to copy a floppy.

Some used a photocopier.

mixmastamyk 15 hours ago

Were they the old tabs that looked like tabs, or the newer tabs that look like buttons?

RobGR 4 hours ago

The tabs in question covered modern Firedox, xfce4-notes-plugin, and I think gedit. It was the concept of tabs, not the appearance. None of them looked that much like the tab on a manilla file folder.

TacticalCoder 13 hours ago

> have been helping someone who has little experience with Windows or Mac, but used DOS for years ( until pretty recently ) ...

The year is 2026. Who the heck has been using DOS (!?) until "pretty recently"? On what machine?

petepete 13 hours ago

Maybe the GP is friends with George RR Martin.

This is perhaps an indirect confirmation that The Winds of Winter is back on track.

gen2brain 12 hours ago

Well, not really DOS, but company where I did migration (15+ years ago) from 4GL and AIX to Linux and Aubit 4GL did exactly that. They all used HyperTerminal (after me, putty) to connect and start all sorts of apps, think, SQL AND UI at the same time, terminal apps, with keyboard shortcuts that MUST be exactly the same, otherwise you would have mutiny.

They are sold a few years ago, new owner just needs a good (and huge) location in the city, if they continued, nothing would change for people working there. They saw Windows as something just for minesweeper and solitaire, nothing else.

mrkstu 6 hours ago

My travel agent wife was unhappy when they GUIfied Sabre. Luckily there was enough complaints they brought back some terminal access/shortcuts for the ‘advanced’ users…

mschuster91 11 hours ago

> Who the heck has been using DOS (!?) until "pretty recently"? On what machine?

Not "DOS" in the classical sense, but a good corporate travel agent will probably spend the majority of their day in Amadeus or Sabre on a terminal emulator app - and be much, MUCH faster than clicking around in web portals.

TacticalCoder 9 hours ago

Yes I don't disagree... Up to not long ago I knew employees at at least one bank still having one DOS app to navigate between customers' bank accounts (with all the family links / various accounts) and it was fast and quick.

But that's quite different from "someone using only DOS up to only 2026".

RobGR 3 hours ago

A school teacher at a small charter school, teaching various levels of math and a few foreign languages. This person was pretty technically proficient - they used a linux to access the web, but it was set up to boot a browser in to full-screen kiosk mode, and they pretty much just searched webpages and printed things out sometimes, no email really.

The DOS was DRDOS 7.22, and it was very elaborately set up -- it boots from a CDROM or USB flash disk as a live disk. On the disk is every assignment, homework, or test for any of the various courses he taught, carefully organized. They are in WordPerfect 5.1 with a few graphics in another program, and a graphing ( as in X-Y cartesian plots ) program also, all ancient freeware DOS. The three programs come up instantly on boot in different terminate-and-stay-resident screens, that you switch to with a control-alt combo, very like switching terminals in text mode linux.

This meant he could take a CDROM to school, pop it in the horibly slow and ad-laden windows computer some government program had given the school for free, boot, disconnect the printer from the network to the constarnation of other teachers and plug in a USB cable, and print his assignments, and never bring back viruses. The students when they learned of this situation would search out old viruses on the web and try to infect everything.

But using windows and mac was pretty limited to a little bit of browsing, and occasionally going to a dedicated machine with the right program already set up, to enter grades and time sheets and etc.

lightedman 3 hours ago

I'm still using DOS to control a galvo-steered LASER animation system from 30 years ago. 133MHz Pentium, non-MMX, 16MB RAM, 16MB Voodoo3.

II2II 10 hours ago

> if you slide the mouse pointer to a specific point and press a keyboard key, the new key will not appear where the arrow is, it will appear where the text cursor is.

Out of curiosity: were they unfamiliar with the mouse, or were there programs that used a single cursor for both the keyboard and mouse? (I am aware that many text mode programs used a block for both cursors, but haven't seen a program where the two functions were combined.)

RobGR 4 hours ago

They were familar with a mouse from DOS based drawing and diagram programs. Most of those did not have keyboard and mouse input active at once, you were using the mouse, or you were in a different mode to enter text. Some of them had one pointer, so you could be typing, bump the mouse, and put characters in the wrong place.

chris_st 7 hours ago

> the fact there are two pointers on the screen -- one for the mouse and one for the keyboard -- if you slide the mouse pointer to a specific point and press a keyboard key, the new key will not appear where the arrow is, it will appear where the text cursor is.

I remember using an (early?) Apollo computer that worked that way... I was warned by the person showing me, and a bit later he accidentally bumped the mouse while I was typing! Letters all over...

I believe this was in the era before X windows took off for unix boxes. I miss SunTools - it was nice and simple.

JdeBP 2 hours ago

Focus follows mouse was a thing in the X11 era too. We are still in the X11 era, and it is still a thing. (-: Until X11 window managers like IceWM vanish entirely, it will remain a thing.

* https://ice-wm.org/manual/#focus-models

Duanemclemore 4 hours ago

Anecdotally, when I use simple command idioms like ctl-tab to change tabs, alt-tab to change applications, or press alt in an application to bring up the single letter shortcuts for navigating menus my students are blown away.

I have to actively teach them how to use and navigate file folders, how to make an appointment in Outlook, and other fundamental user operations. I don't blame them, I blame the developers primarily of browser based cloud apps and OS's.

Edited to add: this includes using ctl and arrows to move by whole words, etc. fundamental stuff in the apps they would have been using since a young age. Not to mention how to use the fn key to access the other functions of Function keys, and fn-esc to switch the behavior globally on their laptops.

szszrk 15 hours ago

> and Macs offer ⌘ Command, ⌥ Option, ⌃ Control, and ⇧ Shift

This is traumatizing for me. I tried to switch to a mac for home use and failed because of keyboard handling. Using Polish diacritics (made with right alt) wasn't obvious at first. I was able to switch keyboard settings to mimic Linux/Windows, but it's just not there. Control and Command confusion haunts me. I dropped the platform because of this and know a few people who stayed on iphones, but also dropped Macs because of keyboard.

I once tried to "find myself" on linkedin search bar on someone else's Mac. I though "I got this, I'm a mac user now!" and managed to close the browser tab and open some random programs...

I admire people who jump between those platforms. Even more for languages that don't have standardized alphabet mappings, like Bulgarian (it seems they don't have consensus there).

piva00 15 hours ago

It's just a matter of practice in the end.

I had the same issue when I first started using a Mac decades ago (coming from being a Linux and Windows user), would get confused with Cmd and default to Ctrl, not understanding how to use diacritics, etc. A few weeks to a couple of months later and it was fine.

Nowadays I very much miss macOS diacritics shortcuts when using Windows, I only have a Windows PC for games with a Swedish/English keyboard but need to write in Portuguese sometimes, I have no idea how to use diacritics on Win11 while my keyboard is set to English, and much prefer the macOS way with Option + [N | E | I | C] (for ˜, ´, ˆ, ç) using any keyboard language, it just works. On Windows I need to change the whole keyboard language to be able to access diacritics easily, no shortcuts such as those.

dcminter 13 hours ago

It's definitely a matter of what you're familiar with. As a Linux user I'm able to use the "Compose Character" key (I map the right-hand Ctrl key to it) and then use that to write diacritics just as I used to in my university computer lab in the '90s on DEC VT220 terminals!

It's quite a good system: you press compose-character and then two letters to be combined. E.g. CC/o/" gives ö and CC/a/o gives å and so on. If you don't know the exact combination, you can usually guess within one or two attempts e.g. just now trying to get ç I guessed CC/c/s (š) and then CC/c/c (č) before getting it right with CC/c/,

Apropos of Swedish keyboards, though, when a Mac is inflicted on me, the horrible contortions necessary to get all the usual programming bracket symbols ({[]}) are infuriating. They're a lot less annoying on a Swedish PC keyboard.

pitkali 12 hours ago

I used a Mac for a long time, but since Polish uses diacritics heavily, the default position of Option was just terrible for touch typing. I have always simply swapped Option and Command because of that. That was always there in the system's keyboard settings, so no extra tools were needed.

It was only when I moved to overriding CapsLock that I installed Karabiner.

piva00 11 hours ago

That's not too different from macOS's approach, instead of compose-character you learn the shortcuts for composing with the diacritics or special characters. After I learnt them it has always been quite efficient, I can write in Swedish or Portuguese without thinking.

Just curious why compose-character combo for å is a/o though, it would make more sense to me to be a/a.

> Apropos of Swedish keyboards, though, when a Mac is inflicted on me, the horrible contortions necessary to get all the usual programming bracket symbols ({[]}) are infuriating.

Absolutely agree, I never use the Swedish software layout even on keyboards which are physically using a Swedish layout, it's maddening finding the {[]}-_+=@ chars...

dcminter 8 hours ago

> it would make more sense to me to be a/a

Yep, but I think it's intended to be a visual mnemonic. å looks like a tiny 'o' over the top of an 'a' even though that's not the letter combination it originated with.

> it's maddening finding the {[]}-_+=@ chars...

The series of RSI inducing vulcan neck pinches required to write C-like languages on a Nordic Mac layout drives me a bit mad, but I do have it in my body memory now when needs must!

I toy with the idea of designing my own 40%-ish keyboard just so I only have myself to blame for bad layout :)

pitkali 12 hours ago

I distinctly remember using Microsoft Keyboard Layout Creator way back to replicate Mac way of entering some typographically correct punctuation on top of Polish layout. You could make your own custom layout as well.

However, when I still used Windows 11, I remember there being a variant of US keyboard layout built into the system that included Mac-like way of entering international diacritics. I no longer have access to a machine with Windows, but a quick Google search suggests United States – International might be what you're looking for.

jonahrd 10 hours ago

I always use this, maybe it'll help you: https://andrewdunning.ca/Mac-Keyboard-Layouts-for-Windows/

ryandrake 8 hours ago

Yea, having trained my muscle memory for at least 10 years on macs, my daily driver desktop is finally a modern Linux distro, and I'm having the most trouble with un-learning the ⌘ shortcuts. On Linux, sometimes "copy/paste" is CTRL-C/V, sometimes it's SHIFT-CTRL-C/V (meaning I need to position my pinky AND ring finger like I'm playing guitar or something). In terminals it's never CTRL-C/V, and once in a while there is an application where it's something bonkers. I kind of miss the universal ⌘ shortcuts that the entire macOS system and all 3rd party apps followed.

weaksauce 4 hours ago

i'd suggest trying out toshy... it's a game changer for linux. you get almost all of the mac keyboard shortcuts working out of the box. there's a few rough edges sometimes but generally it feels like you're using a mac wrt shortcuts. even stuff like diacritics and textbox emacs shortcuts work if you want.

baxuz 14 hours ago

Been using this layout for the past 12 years:

https://github.com/ivancuric/mac-hr-sane-layout

grujicd 13 hours ago

That's not a developer friendly keyboard. For menu years I'm using Dejan Vesic's keyboard on PC where programming symbols are used as primary and you get ex-yu šć latin chars via AltGr. Works great if you're 90% coding, and occassionaly write something in native language. If you have to type more, you switch the keyboard to "non-programming" layout. I tried to bring this mapping to Mac, but with limited success - I could map AltGr to right "option" key, so not to the closest button to the space ("Command"). When I switch Mac/PC there's some time to readjust muscle memory.

grujicd 13 hours ago

In a similar boat. I quickly remapped the Mac keyboard to work as close as possible to a Win one, and it helped. But it's a leaky abstraction. And now, as some of the modifier keys are swapped, it's always confusing when I see a shortcut in a menu, never sure what to press. So I'm using fewer shortcuts than on a Win. So, for those who are 100% transitioning to Mac, my suggestion is to bite the bullet and adopt the Mac way. But for those who still live in both worlds (like me), I don't have a good answer, just that it's a constant struggle even after few years.

Gareth321 9 hours ago

I tried to keep the keys mostly the same but the one I could never get used to was command + c/v/f/etc. It's just too awkward a combo for fingers. Using pinky for control on the left was much better ergonomics. So I swapped control and command keys.

pupppet 8 hours ago

I’ve done the exact same thing. I remember switching to Mac 20 years ago and the very first time I contorted my hand to use the copy shortcut and thinking…lol nope.

tpmoney 5 hours ago

This definitely must just be a “what you’re used to” because I find using ctrl for a modifier to be far more “contorting” than moving my thumb a bit to the left or right of where it’s already naturally sitting for the space bar, and my thumb is a “stronger” finger than the pinky so it also just feels easier on the hand. So much so infact that I remapped the right hand command key to ctrl in emacs (with the usual capslock-> ctrl remapping for the left hand) just to make it more comfortable.

pupppet 2 hours ago

You're probably right!

where-group-by 13 hours ago

I have been using Mac since 2018 daily on my day job and I still get confused by the symbols. I wish there was some system option to always display them as words or abbreviations (CMD etc) instead.

But I did get used to the navigation and basic shortcuts after a while. Using the terminal/keyboard/IDE shortcuts (which I can set up myself) for most of the work helps a lot.

Finder is still terrible though.

klodolph 13 hours ago

Finder has its whole set of keyboard navigation shortcuts, like command + up arrow to go to parent, command + down arrow to open, ⌘3 for column view, ⌘⇧D for desktop, ⌘⇧H for home, ⌘⇧G for "go to"… I am very fond of the Finder’s navigation and as a long-time Mac user it still feels pretty clunky to try and get around on Windows. Both Windows and Mac are getting worse but it seems like Microsoft is making it worse faster, with OneDrive.

A lot of the Finder shortcuts work in the save / open dialogs in apps, although they broke some of the ergonomics of those dialogs years back.

LgWoodenBadger 9 hours ago

They're written underneath the symbols on most (all?) Mac keyboards. At the very least, it's that way on my current MacBook, and my previous. I think they're also written on the magic keyboard I have as well.

timpera 13 hours ago

Same experience for me. I've ended up using Karabiner-Elements. With less than 10 rules (half of which are only for the browser), you can replicate the Windows layout on your Mac, it makes everything much easier.

KronisLV 12 hours ago

Feel free to share yours, I’m very interested!

timpera 12 hours ago

This is for a Macbook Neo, your mileage may vary: fn (globe) -> left_command gives you a Windows-like Ctrl key for most of your keyboard shortcuts. This works way better than changing it in the macOS settings.

You can then left_command -> right_option, then use that "right_option" key in Raycast (to get PowerToys Command Palette fonctionality) and in AltTab (Windows-like multitasking).

If you use Raycast, you can easily assign the Windows key+. to emojis and Windows key+V to the clipboard history, like on Windows. If you don't, you can also do it with the system tools in Karabiner.

Moving between words was probably the thing that frustrated me the most, because on Mac it uses Option instead of Command, for some reason. Cmd+Left/Right -> Option+Left/Right gives you Windows-like word jump. Cmd+Backspace -> Option+Backspace allows you to remove a word using the Ctrl+Backspace keys, like on Windows. Same thing with Cmd+DeleteForward -> Option+DeleteForward. Unlike DefaultKeyBinding.dict modifications, which people online tend to suggest, it works in all apps (including Electron ones).

In my Chromium browser (Edge), I like to remap Cmd+H -> Cmd+Y (history), Cmd+J -> Cmd+Option+L (downloads), and Cmd+Tab -> Ctrl+Tab (tab switching). I'm not sure why Chromium uses such vastly different shortcuts on the two platforms.

For the latter, that only apply when your browser is open, I suggest creating the "Complex Modifications" rules using AI, because formatting can be tricky.

Once set up, it's easy to transfer rules between computers by exporting your settings in Karabiner, so you only have to do it once.

I still think that, if you're switching permanently, it would be better to relearn everything, because these patches can make it confusing to learn new shortcuts. But it's been a lifesaver for me, since I switch between Windows and Mac every day.

gcau 12 hours ago

Hate this. The Apple magic keyboard is my favourite keyboard (least amount of travel/force, for speed and to be easy on my hands/wrists), and I'm paying a yearly license for a software (magic utilities) to remap the keys properly on windows. On a Mac, forget about remapping them, it doesn't work.

Gareth321 9 hours ago

This is exactly the kind of software you could consider vibe coding. I think there are also free apps like Karabiner-Elements, though maybe not as polished.

weaksauce 4 hours ago

karabiner-elements works very well to remap keys in macos even in very complex ways if you want. (multimodal ways held does something with other key presses but pressed by itself would emit a different code like esc or capslock)

moogleii 9 hours ago

It took me about 1 month of pain to convert. But now I find cmd far more logical than ctrl. Ctrl asks you to give up a pinky, a home key finger, to execute common chords - far more critical than a thumb, which is already designated for space and chord/modifier keys anyway, on both Windows or Mac. As a result, Windows requires two hands or awkward movement to hit something like ctrl-a, ctrl-z, ctrl-q, etc. The equivalent on Mac can all be one-handed.

tpmoney 5 hours ago

It also has the benefit of (mostly) separating OS wide keyboard shortcuts from terminal commands. Copying text is always “CMD-c”, and not “usually CTRL-c, except in a terminal where it’s actually CTRL-Shift-c, because otherwise that would interfere with terminal control characters”

1718627440 4 hours ago

The "proper" CUA shortcuts work in the terminal too. (Ctrl/Shift-Ins)

platevoltage 2 hours ago

This. This is why Mac makes sense to me.

zamadatix an hour ago

> Ctrl asks you to give up a pinky, a home key finger, to execute common chords - far more critical than a thumb

Am I particularly odd for only using my thumb for space?

I use left-pinky to press either the left-ctrl or left-command. This naturally places left-ring on top of shift for ctrl+shift combos on Windows but I usually use right-shift on command+shift commands with right-pinky. Any keys I press on the right side of the keyboard during this cord are done normally since my right hand remains on the home row the entire time, on the left side I'll typically then use left-index to press the other key.

If I use left-thumb for left-command instead then I can only figure a way that involves moving that hand completely away from the home row and for shift combos I then can't reach most keys and need to move right-hand off the home position. If I use right-thumb for right command I end up with the same in the inverse. I guess one could pick the opposite command based on the keys you needed to press after but it seems like an extra thing to remember + still results in more overall movement.

It's funny how I must have typed at least many 10s of millions of keys by now and never really thought about how I type key combos.

burningChrome 7 hours ago

Back in the day when I was doing contract work and hopping around a lot, I often had to switch between windows and mac. One of the issues I always ran into was the not necessarily the keys, but where they were positioned.

Doing something basic on a mac like Copying (Ctrl + C) and Pasting (Ctrl + V) had to be done with ⌘ Command. So instead of using my pinky in natural resting by simply shifting my palm down which I was used to. Using the ⌘ Command, I had to use my thumb instead and it was always a weird shift. Having used Windows most of my life, I always had to look down to make sure I was on the right keys on a Mac.

I've tried a few times to go back, but its always been such an unnatural feeling that I just avoid it now like you do.

robertoandred 4 hours ago

How does your pinky naturally rest on Control? Your pinky should be resting on A. Your thumb rests on Space, which makes shifting it to hit Command easy.

bhandziuk 3 hours ago

Just depends on what's happening. I'm not the person you are replying to but I do the same thing. My pinky will rest on A-ish area when typing but then down on Ctrl when I'm coding because access to many navigational shortcuts is faster there and I'm doing more reading/navigating than typing

starkrights 3 hours ago

Mine does! I presume it’s because I learned to type purely off of playing social multiplayer video games that frequently used WASD+shift/ctrl, but to this day my default left hand position on the keyboard is AWD+pinky on ctrl and thumb on space bar.

I can consistently hit ~140wpm on artificial typing tests too!

That said, I didn’t have your parent comment’s issues with the command key swap either. I’ve used windows all my life but had to daily drive a Macbook starting in ~September of last year. It was a bit of a curve, but after maybe a month of lectures I think I was fully accustomed to the thumb cmd.

I guess I also regularly use ctrl+alt cmds on windows, which is pretty similar in position. These days I daily drive windows and Mac in the same day- hell I even remote into windows from macOS, which can be kinda fucky, but I do it regularly enough that I’m pretty tuned to what keys to hit.

lightedman 2 hours ago

"How does your pinky naturally rest on Control?"

30 years of WASD gaming will do that.

Quothling 5 hours ago

I've programmed my work keyboard to swap the places of the left windows key and left ctrl. I'll never go back to pressing ctrl with my little finger instead of my thumb again!

I've even been rebellious enough to swap the left ctrl to a command button.

theodpHN 17 hours ago

In a similar vein, the "Costs of Switching Schoolchildren Between Windows, Chrome, Mac?" (https://slashdot.org/submission/17349696/costs-of-switching-...) begins:

If you've ever made the jump from PC to Mac (or vice versa) at work or home, you're painfully aware that there are very real costs of switching platforms in terms of lost knowledge and productivity. In addition to flushing years of accumulated knowledge down the toilet — goodbye Outlook-Teams-OneDrive-SharePoint-Excel-Word-PowerPoint-VBA, hello GMail-Workspace-GDrive-Sheets-Docs-Slides — there's also the matter of a thousand UI and other "paper cuts" to contend with ("Why are you looking for a 'prt sc' key," condescendingly replies a Mac aficionado in response to a question from a former Windows user, "when Shift+Command+3 is so intuitive?").

MrGilbert 17 hours ago

Painfully? I love the stimulation of my brain to learn something new. It didn’t really hurt.

disillusioned 16 hours ago

It hurts _all the time_ for me.

I've used a Windows PC my entire life. 35 years of PC.

I use my MBP M2 Pro when I travel, and for about 6 weeks every summer, and it's like pouring lemon juice into a paper cut the entire time.

Specifically, my concerns are around this exact matter: I have such muscle memory attached to, say, slamming my pinky across L-Ctrl+L-Shift+left arrow in order to quickly select just the previous word from the cursor.

This is something I do... I don't know, at least once a paragraph, as I very very quickly type and then realize I've introduced some basic typo that I need to nuke the previous word to address.

Doing this on Mac keyboards is Shift + Option + Left Arrow and... it's hell. It's absolute hell. Mashing that extreme corner shortcut with my pinkie is so baked in that there's just... no reasonable way for me to reprogram my brain to do that on a Mac.

Similarly, I have a stroke every time I try to mentally remap what things use control and what uses command. And while I could potentially remap the fn key on an MBP keyboard, I tend to use my Logitech K800 on both systems, so instead try to remap control to ALSO be command to basically get me as close to muscle memory as possible for things that need the command + shift. Since control is relatively rarely used, I think I just remapped it to caps lock. Though boy does that screw me in tmux.

Either way, when I'm typing extremely fast, being able to reliably navigate the caret and jumping around words, whole lines, etc. is just something I simply cannot get anywhere close to on a Mac and I die a tiny death every time I try.

Pavilion2095 11 hours ago

It depends on the context. If you're a PC user and you got a Mac at your new job, there are likely more important things to learn.

crabbone 15 hours ago

This is a bit exaggerated... It's not really painful. I worked in a newspaper. The whole designers department moved to PCs when OS10 (a.k.a. OSX) came out. This also coincided with moving from QuarkXPress to InDesign.

Some nice things had been lost, some nice things had been found. Maybe it's also because OSX was also somewhat of a downgrade from OS8/OS9 in terms of user experience. Especially, Finder became a lot worse. So, people didn't feel very motivated to upgrade, and it made the switch easier... But, overall, there was very little struggle, the time we'd spend setting up the newspaper / magazine for print didn't really change.

Well... now, when I think about it, most of us used PCs at home. So, maybe it's not a fair comparison. But, even people who had Macs as their home / personal computers didn't seem to have any issue with the switch.

I think, some people kept the keyboards that came with G3/G4 (the clear heavy plastic ones with black key caps). They could be used with PCs. People didn't keep them to preserve the Mac-style layout (it wouldn't work anyways iirc), they just liked the quality of the physical product and accepted that some keys won't work the same way they did on a Mac.

Even though you could connect Mac mouse to a PC, I don't think anyone used that.

bob1029 15 hours ago

> If you've ever made the jump from PC to Mac (or vice versa) at work or home

I make this "jump" about 20 times per day. I have iOS, MacOS and 2 windows machines at the moment. Very frequently I will RDP into the windows machines from the MacBook.

> goodbye Outlook-Teams-OneDrive-SharePoint-Excel-Word-PowerPoint-VBA

https://www.microsoft.com/en-us/microsoft-365/mac/microsoft-...

Maybe it used to be hard to do this and I just got used to it. I have made zero attempts to normalize anything.

hobo123 11 hours ago

This is HN, so you probably spent a fair amount of time in different computing environments.

Beginners have to learn every system from scratch, in the limited time they spend on the computer.

Steltek 9 hours ago

Linux for home. Mac for work. At least once a night I try to jump to the address bar in Firefox and accidentally lock the screen instead (win/cmd-L).

The Mac boosters here would be hilariously quaint if it wasn't so frustrating. Docker images that only work on macOS Docker and break on regular Linux. Quips like "Mac is so much more reliable, just use a Mac for Docker!" that I think are genuine opinion rather than a smug joke.

Between this, AI, and all the other brain rot trends, working in tech is so depressing these days.

bombcar 18 hours ago

The delete key thing comes from how Windows descends from DOS which always had the cursor ON a character (blinking box kind of thing) whereas the Mac had the cursor as a thin line BETWEEN characters.

Technically DOS could have had "backspace" (delete the character BEFORE the cursor), "delete" (delete the character on/under the cursor), and "forward delete" (delete the next character AFTER the cursor).

dotancohen 43 minutes ago

  > Just swapping the key caps is not enough. The keyboard also has to swap the scan codes it sends, since the code for Alt is the same as the code for ⌥, and the code for ⌘ is the same as the code for ⊞.
Alt and ⌥ are on the same location on the keyboard, likewise ⌘ and ⊞ are on the same location on the keyboard. So it seems that just swapping key caps should be enough to get proper support.

IgorPartola 18 hours ago

Mac got the Command key right. Windows got the Home and End keys right. Wish we could have both on one system.

Razengan 15 hours ago

I love that on macOS all in-app shortcuts are consistently Command+Something, like Q for Quit, W to close a window, and Control is usually for system-wide shortcuts, and Shift/Alt/Option is exactly what it says on the tin: modifiers for alternative behavior. You usually won't see Alt/Option on its own for any shortcut..

..while Windows is all over the place. Like why the heck is Alt+F4 used for quitting an app?? What does 4 stand for here? Death in Japanese and Chinese!?

mixmastamyk 15 hours ago

CUA is a union of Mac like mnemonic command keys on Ctrl plus another set (from IBM/Motif perhaps) that use shift+insert,delete etc.

Alt+F4 through Alt+F9 are for Window Menu operations, like minimize, max. etc. Some besides Alt+F4:Close still work on older window managers, I remember SGI supported all of them.

Newer ones tend to hide or even disable the whole menu! Even Windows as it is further lobotomized.

pasc1878 9 hours ago

CUA is from IBM and Motif is using CUA.

The shift+insert,delete etc. are from MSDOS as far as I used them – they might have been copied from a previous OS.

artpar 15 hours ago

> I love that on macOS all in-app shortcuts are consistently Command+Something, like Q for Quit, W to close a window

Yeah consistency is great, similarly cmd+t closes a tab, wait cmd+w closes a tab not a window. and cmd+w in vlc does not close vlc, cmd+w in finder does close the window.

Razengan 12 hours ago

You're thinking only halfway

> similarly cmd+t closes a tab, wait cmd+w closes a tab not a window.

Because tabs are windows, and most multi-window-capable apps have the option to use tabs instead.

> and cmd+w in vlc does not close vlc

Again, in multi-window apps, closing the last window does not necessarily quit the app, but it's optional.

artpar 10 hours ago

Consistent but optional, sounds inconsistent to me. Anyways that was 1 example, here's some more.

⌘R Reload in Safari; reply in Mail; reveal an alias's original in Finder

⌘L Address bar in browsers; message filter in Mail; clear to previous mark in Terminal.

⌘I File info in Finder; italics in text; inspector in Terminal.

I can keep going. This is not to say windows/osx is worse or better, just that claims of consistency are not suitable on either

storoj 9 hours ago

"B" is "buy" in Counter-Strike, and "B" ls "look back" in a racing game.

What kind of consistency did you expect across Mail App and Safari? How do you "Reply" in browsers?

artpar 9 hours ago

I am not expecting any consistency. I am expecting a claim of consistency NOT to be made for keyboard shortcuts either on osx or windows.

idkdksmfkmdf 9 hours ago

Okay so you’re being pedantic just for the sake of it. The shortcuts are about as consistent as they can be given the circumstances.

WernerKintsel 14 hours ago

This is so hilariously wrong.

Apple commands are not always Command+Something. Go ahead, try to reopen the last closed tab on anything you're using, with the keyboard. Whooops, you pressed three keys. Also try to take a partial screen shot or record the screen. Hey, buddy, what the heck? Why did you press 4 and 5? What do 4 and 5 even mean?

Razengan 13 hours ago

You really didn't have to create a new account to say all that

> not always Command+Something. Go ahead, try to reopen the last closed tab on anything you're using, with the keyboard. Whooops, you pressed three keys.

Not always JUST Command duh. It still includes Command champ; the rest are modifiers.

I mean just ask any AI to list out all the common shortcuts for macOS and for Windows, then see which is more consistent.

> partial screen shot or record the screen ... Why did you press 4 and 5? What do 4 and 5 even mean?

4 alludes to the 4 corners of a rectangle, and 5 includes the time dimension, of course :)

kalleboo 13 hours ago

Same reason your main drive in Windows is "C:" - history.

The command-shift shortcuts (function keys as they were called) were added in the 80's as such:

Command-Shift-1: Eject internal floppy

Command-Shift-2: Eject external floppy

Command-Shift-3: Take screenshot

In the System 7 era in the mid-90's, Command-Shift-4 to select an area to take a screenshot of was added.

Back then you could also install FKEY code resources into the system file to add custom ones, there was a small ecosystem of freeware/shareware function keys with useful shortcuts people would install.

simonask 13 hours ago

Have a cup of coffee, then come back and read your comment again.

vips7L 13 hours ago

Ctrl-W will close your window on Windows and end the program if it’s the only window open.

JdeBP an hour ago

It's [Alt]+[F4] because before being translated to a GUI setting where [Alt] modifiers denoted things that were the same across all applications, or at least 'system key' events, it was actually plain [F4] to 'save and exit'. This was notably the case in some PC-DOS text editors.

Common User Access (CUA) in 1987 came from the world of IBM mainframes to IBM-involved microcomputer operating systems like PC-DOS and OS/2, and was the idea that there would be a common set of function keys across all 'panels' in Systems Application Architecture (SAA) applications.

Fun fact: CUA didn't originally define [F4] with its current meaning, and it was actually [F3] to exit, after [F1] for help and [F2] for toggling between two sets of function key bindings. But notice how [F5] was refresh all along.

* https://web.archive.org/web/20001117223900/http://publib.bou...

* https://web.archive.org/web/20001102070751/http://publib.bou...

AdamN 15 hours ago

For those ctrl+a and ctrl+e are the way to go.

kluc 14 hours ago

Just a note - first time I see this and you just made my day, as Home/End behaviour on Mac was driving me crazy since I switched 7 YEARS AGO

AdamN 14 hours ago

Nice! Then you might really like ctrl+k. Go to the middle of the line and it will delete everything from the cursor to the end of the line.

Also Option and the right and left arrows to move from one word to the next. I don't really use this one much though

1718627440 4 hours ago

> Then you might really like ctrl+k. Go to the middle of the line and it will delete everything from the cursor to the end of the line.

Actually it stands for _K_ill (opposite of _Y_ank), so you can get it back later too. Not sure, if that is also the case on Mac.

aldanor 13 hours ago

And c-n / c-p - with those you barely ever need arrow keys

baxuz 14 hours ago

Dunno. I prefer the mod+arrow keys or terminal shortcuts to 4 new keys

oniony 10 hours ago

I've kinda got used to Fn-Left and Fn-Right for home and end now. It has taken a very long time though.

dchest 8 hours ago

Mac equivalents to Windows Home and End are Cmd-ArrowUp and Cmd-ArrowDown. Fn-Left and Fn-Right are Mac-flavored Home/End, which don't move the text cursor, but scroll the text container, keeping cursor in its original place (although there's no distinction when viewing documents, e.g. in a web browser).

oniony 7 hours ago

Crazy, I hadn't appreciated that.

So:

  Fn-Left = scroll to top
  Fn-Right = scroll to bottom
  Fn-Up = scroll page up
  Fn-Down = scroll page down

  ⌘-Up = cursor to top
  ⌘-Down = cursor to bottom
  ⌘-Left = cursor to start of line
  ⌘-Right = cursor to end of line

tpmoney 5 hours ago

And also option-left/right moves the cursor by word, and option-up/down moves (I think I almost never use it) by paragraph.

karhuton 18 hours ago

Asahi and GNOME teams, please take this as an guide to implement ”Mac input compatibility mode”!

Dual booting between a MacOS and Linux is a painful process of manual keyboard and shorcut overrides to get the linux side somewhat to the (better) mac way of doing this.

coreyh14444 16 hours ago

Omarchy does a pretty good job of this. Super+C, Super+V works everywhere, even the terminal in a consistent way. But there are exceptions to super acting like MacOS command, like if you want to select all, then copy you have to do the Ctrl+A, Super+C jujitsu.

computerfriend 15 hours ago

How did they configure this, do you know?

kqr 16 hours ago

> What Windows calls ⏎ Enter, Mac calls ⏎ Return.

I'm not an Apple person at all, but this is one of the hills I die on. The "Enter" key is for entering data, submitting a field, etc. The "Return" key is for returning the carriage, i.e. starting a new line. Importantly, those two are different functions! The only keys that exist twice on the keyboard are modifier keys (Ctrl, Shift, sometimes Super and Alt). The Return or Enter keys do not need to exist twice. Clearly these are meant to be two different functions, because they are two different keys on the keyboard.

To my wife's annoyance, I teach my children the correct names for these keys.

compounding_it 16 hours ago

The arrows on newer keyboards are gone. Now it's just text. I wonder if that changes anything because Enter doesn't really sit well with the arrow next to it as entering data need not necessarily cause a carriage return.

AdamN 15 hours ago

The carriage return is moving the typehead to the beginning of the line, not starting a new one.

Line feed is the command that is incrementing to the new line.

Those two commands almost always run together so it quickly became possible to invoke with a single CRLF command (in ancient computer times)

kqr 15 hours ago

I know, and the Return key both returns the carriage and feeds the paper forward a line on teletypes. Hence the symbol ⏎, indicating "down and to the left" (for LTR languages.)

tomtomtom777 11 hours ago

The symbol is a bit awkward in conjunction with the name "Carriage Return" though, because the Carriage returns to the right. (assuming left-to-right writing)

oniony 10 hours ago

You know I have literally never noticed that, but you're right. The carriage slides over to the right, leaving the levels to hit the left side of the paper.

1718627440 4 hours ago

Why it just shows what happens on the paper?

ketzu 13 hours ago

> The only keys that exist twice on the keyboard are modifier keys

> The Return or Enter keys do not need to exist twice

I use the doubled enter key much more than i have ever used the secondary modifier keys.

It is very convenient for quickly entering numeric only data with one hand, especially as it is the hand that would naturally use the big enter key.

Gareth321 9 hours ago

I have a delightful image in my mind of you explaining to the kids over breakfast the nuances of enter and return, and how Steven Jobs should burn in hell for confusing generations of Mac users.

rgoulter 9 hours ago

> The only keys that exist twice on the keyboard are...

I wouldn't take "the standard 104 keyboard layout" as a respectable design.

- If the modifier keys exist twice, then why aren't they placed symmetrically?

- Most users use a mouse with the right hand; yet the numpad is placed on the right side of the keyboard (which means it's even further away). e.g. placing keyboard in front of you in the screen then means the mouse needs to be way off centre.

- That the letters remain asymmetrical shows adherence to tradition/familiarity over improving a good design.

- The spacebar doesn't need to be >6x the size of other keys.

- Caps Lock can be useful but isn't significant enough to be worth putting where it is.

I mean. I can agree with distinguishing "Return" and "Enter". But I wouldn't refer to the typical keyboard layout as if it's a well thought out design.

agys 14 hours ago

When I switched from Win to Mac 20+ years ago I immediately noticed how much more ergonomic cmd-C was versus ctrl-C… for the latter the thumb has to fold under the palm of hand.

Not even mentioning the general well thought out and more logical key-combinations.

The strangest key for the switch was return for file rename… I now miss it on every other system that hasn't mapped it like this.

mb_thd 13 hours ago

I guess your ctrl-C experience depends on which fingers you use to press those buttons? For me it's the other way around. cmd-C feels awkward to press and ctrl-c feels comfortable.

agys 13 hours ago

Thumb + index?

europoorean 13 hours ago

Pinky + index for control C etc

Also Pinky finger to crouch in Medal of Honor, etc :-)

Control has always been in the bottom left corner (until certain laptops started putting Fn there)

in_a_hole 13 hours ago

MacOS natively lets you remap the modifier keys, I have the Ctrl and Fn keys switched. It's input source dependent as well so I have it do this for the built-in keyboard only.

Gareth321 9 hours ago

I will echo the other user. Pinky + index is far more comfortable on Windows keyboards than thumb + index on command + c on Macs.

xdennis 12 hours ago

Interesting, that makes no sense to me. I assume you don't touch type.

If you touch type, you hold your 4 fingers on ASDF. If you want to press Ctrl+C, you move your pinky to Ctrl and press C with the index finger or middle finger.

On Macintosh, you have to hold your pinky much too close to the index finger to press Command+C which are very close.

If, instead, you use thumb and index that also puts the thumb in an awkward position because you have to cross the fingers (Command is to the left of C)

What fingers do you use?

robertoandred 4 hours ago

Why would you use a pinky? Thumb to the left to Command, index finger down to C.

whywhywhywhy 11 hours ago

Prefer the positioning of cmd so much I flash all my keyboards firmwares on my windows and Linux machines to have ctrl beside space and super in the far corner.

Genuinely find it better ergonomically because it’s closer to where all the keys it’s pressed with are.

Far corner ctrl makes me use my pinky and splay my hand for it while beside space ctrl feels more natural for a thumb

pasc1878 9 hours ago

The NeXT was even better.

The cmd key was a thin key of full width below the space bar. https://deskthority.net/viewtopic.php?t=12260

Although having the Help key where ⌘ is now was not that useful.

koziserek 4 hours ago

and then, some of us discovered that we can remap ctrl to be under right thumb or caps

jerrac 4 hours ago

I've been forced off of Linux at work. It was Windows or OSX, so I went OSX. I have not been impressed. Partially because 20 years of using certain shortcuts is not a habit that is fun to break. Especially when I go back home and can use Linux again.

I've been looking for a good Karabiner setup that makes things work like base Ubuntu (gnome shell shortcuts). Haven't found one yet. Anyone know of a good one?

Especially one that fixes ctrl-arrow keys so they go word by word, and ctrl-shift-home/end so it only selects the 1 line instead off going all the way to the top or bottom.

Thanks!

Also, the original post is going to be a huge help for a lot of people. So if the author happens to read this, thanks!

pornel 3 hours ago

It hurts both ways. I'm trying to switch to Linux, but the lack of separation between Ctrl-C for Copy and Ctrl-C for break drives me mad. Similarly Ctrl-A for start of line vs Select All, end of line and search pasteboard (there's no search pasteboard!!!)

jerrac 2 hours ago

It should be a standard that the different OS's support switching between methods. If you like the OSX way, then you should be able to use it. If I don't like it, then I shouldn't have to use it.

At least on Linux you have some more choices, maybe not specifically the finer details of the keyboard stuff, but there are a bunch of things that OSX does that I really dislike. On Linux, I could change them. OSX, so far, most have been either not changeable, or appear to my newbie eyes unchangeable.

olyjohn 19 hours ago

The demo keyboards in the article, I'm pretty sure are wrong.

The "Start" or Windows key is the same as the "Command" key

"Alt" is the same key as "Option"

This is how every keyboard I've ever used has worked. This is usually how they work when you plug a PC keyboard into a Mac or vice-versa.

rahimnathwani 18 hours ago

That's how it is by default but doesn't approximately everyone, when they first plug a non-Mac external keyboard into their Mac, immediately go to System Settings -> Keyboard -> Modifier keys and switch Command with Option?

Otherwise it would be really confusing when you switch from your external keyboard to the laptop keyboard.

myelin 15 hours ago

Yes! Super frustrating that Apple didn't map Alt->Command and Win->Option so the keys would be in the same place on laptop and external keyboards.

fasola 5 hours ago

It isn’t Apple’s fault (their keys predate Windows), and it isn’t really Microsoft’s fault either – when they were adding Windows key, the Alt key and its scancode already existed, too. Both companies were doing rational things that benefitted the users at the time.

sitharus 18 hours ago

Logitech in particular do this. Their keyboards adapt to the OS so the keys are in the right place, not sure if this needs their drivers or not though.

larusso 18 hours ago

Most newer keyboards I know have a toggle so the CMD and ALT switch in software. I had to switch from Mac to Win and Linux so often that I simply kept my CMD key where Super or Win is located and got used to it. Still sometimes weird when I use an actual Mac keyboard.

pchew 17 hours ago

I do this as well as swap command/option on the built in keyboards. It works great for me switching between my own computers/OSes but always a second of re-calibration when I touch someone else's Macbook.

happymellon 16 hours ago

Personally the biggest problem (outside the Ctrl/cmd c/v conflict) is that as a UK ISO user, Macs botched the key on the top left, next to the 1.

I subsequently have to set my Mac keyboard layout to PC to fix backticks and remove that key that is never used, and rely on my touch typing. It does also mean that no one will ever try to type on my laptop.

CaRDiaK 15 hours ago

This irks me also, more than I'd normally admit. A couple of solutions I discovered over the years; one is to use `hidutil property --set` from the command line for UserKeymappings to overwrite the non us backslash to the backtick (I can't remember the specific codes for the keys, but you can find them online), however, this was cumbersome when occasionally using an external keyboard (I prefer ISO over ANSI) or if you restart the machine.

Eventually I settled on Karabiner Elements, an app that lets you create a simple modification specifically to target the Mac internal keyboard where you can map `non_us_backslash` (that strange unused key) to `grave_accent_and_tilde` which fixes this.

Xiol 15 hours ago

I do the same. The British PC layout is relatively recent as well, since when I had a Mac in 2013 it didn't exist, and the keyboard layout was the main factor why I ditched it.

Back on Mac now with British PC and it's much less frustrating to use the keyboard. Plenty of other frustrations instead. I'd prefer to be on Linux but the hardware is just too good.

wpm 18 hours ago

> A small group of vocal users love these.

That's me! readline everywhere by default is fantastic and should be immediately copied by every Linux DE!

dunham 7 hours ago

I think of those as emacs keys. Glad they work everywhere, but I suspect that someday they will go away.

wpm 5 hours ago

They still work on iOS when you have a keyboard plugged in, so someone in Cupertino has my back!

Tepix 14 hours ago

I like these types of articles.

One note:

> Access to extra characters

For German keyboard layouts, there exists „Erweiterte Tastaturbelegung 1“ standardised in DIN 2137-01:2023-08. It's available in Windows 11 (since 24H2) and also in Debian Linux for example. It lets you enter all characters from European alphabets plus some nice extra ones. <https://de.wikipedia.org/wiki/E1_(Tastaturbelegung)> has the details.

stronglikedan 4 hours ago

No mention of the RSI caused by the Mac control key being in a place where a user has to scrunch up their hand unnaturally just to perform the most common control commands, copy and paste?

asdff 3 hours ago

Because on mac you use the command key for that not control key.

wodenokoto 14 hours ago

> What Windows calls ⏎ Enter, Mac calls ⏎ Return. However, Macs also have an ⌤ Enter, although only on a numeric keypad

Just looked down on my windows keyboard and yes, the return key (the one above the right shift key) says "enter". That did not use to be the case. The return key used to say return and the tall key next to 3 and the numpad used to be the only enter key.

When did that change in PC land? I remember reading nerdy articles about the difference between return and enter.

pests 14 hours ago

The word "enter" has now lost all meaning in my brain, but it does look a little weird on my keyboard. Never paid much attention in my 25+ years of computing.

kalleboo 13 hours ago

Looking at old PC keyboards, from IBM Model M to old Gateway 2000 keyboards from the 90's etc, it's looks like it's always been Enter.

But terminals and UNIX machines were more likely to use "Return", e.g. looking at a DEC VT100 or Sun SPARCstation keyboard.

edit: looks like most of the 8-bit machines like Commodore, Atari also used Return. So Enter was mostly an IBM thing.

SOTGO 9 hours ago

The original IBM PC keyboard just used an arrow. The keyboard that shipped with the PC AT used Enter, while the enhanced keyboard (Model M) used an arrow for ISO layout keyboards, Enter for ANSI keyboards, and I think some variants for non-PC platforms used Field Exit, which was also used by IBM for many keyboards before the PC. I'm not sure what other vendors may have used, I'm sure there are some return keys out there, and for all I know IBM did ship keyboards with Return instead of Enter.

notpushkin 13 hours ago

That was a deep dive indeed! Some notes:

> On a Mac, in simple input fields, ↑ and ↓ jumps to the beginning and end [...] Windows doesn’t have this convention

IIRC it worked for me on Windows (and Linux :-) as well!

I do prefer ⌘←→ as it’s more consistent. Also, ⌥←→ jumps one word back/forward on Mac, the Windows equivalient being ⌃←→.

> On Windows, [refresh is] typically F5, although some browsers now support Ctrl+R, too

Have always supported as far as I can remember :) F5 works on Mac in Firefox (and I think Chromium), but not in Safari.

> On both platforms, Fn+↑↓ does PgUp/ PgDn, and Fn+←→ does Home/End.

This will vary a lot depending on the manufacturer. ThinkPad T420 and other models from that era use those for media keys (which makes sense, they do have physical Home/End/PgUp/Dn keys).

---

Finally, a suggestion to fellow Linux users: try Mac keybindings, it’s amazing (especially if you’re e.g. running Asahi on a Macbook). Not all apps will be happy about this, but at least the KDE ones will generally follow the keybindings you set in the system settings.

notpushkin 13 hours ago

And a weird tangent on deterministic, idempotent elevator buttons [1]:

> I always get a bit nervous when someone tells me that in their country, you can press the elevator button again to unset it.

The way I’ve seen this solved in a lot of countries across SEA is that you unset the elevator button by double-pressing it. It’s not intuitive, and I’ve only discovered it by accident, but it’s deterministic and idempotent: one gesture sets the button, the other unsets it.

[1]: https://unsung.aresluna.org/deterministic-vs-idempotent/

wkjagt 12 hours ago

One thing I prefer on Mac keyboards is how heavily the CMD key is use for things I do often and where it is in relation to my thumb. For copying for example, CMD+C is _right there_. It's been a while since I last had a Mac, and my thumb has learned the CTRL+C stretch, but Mac was easier for that.

novaRom 12 hours ago

Mac's German keyboard was always pain for writing code. This is less relevant today because most of the input has become natural language so no need for brackets and other non alphanumeric symbols (which are terribly painful key combinations on Mac German keyboards).

whywhywhywhy 10 hours ago

Really wish windows and Linux had the same 4 modifier system as Mac, always feels like ctrl is overloaded on Linux and alt wrongly used as a ctrl key in weird scenarios on windows (alt+F4)

glimshe 10 hours ago

I'll take that if you move Fn completely out of they way, preferably far from the lower left corner. As a Windows+Mac user, I map it to <control> because it takes prime real estate and I rarely use it. I hate Fn, to be honest!

whywhywhywhy 9 hours ago

I agree about fn, when I say 4 I mean shift, alt, ctrl, cmd.

muststopmyths 9 hours ago

ctrl-f4 is used in MDI applications to close one document window of a multi-document application. alt-f4 to close the whole application.

Well, I say "is used", but nothing in Windows is consistent anymore. Especially since web browsers started disrespecting the OS shortcuts. Now it seems like every application follows the web browser UI conventions instead of OS ones.

simiones 7 hours ago

Alt+F4 in Windows has always been "close window", not close app. It is even shown on the traditional "application icon" menu on each window, that many new apps are unfortunately doing away with.

kbolino 6 hours ago

> Alt+F4 in Windows has always been "close window", not close app.

Well, if we're talking about traditional Windows behavior, there's no such thing as an app in the first place.

Some programs allowed multiple windows to be open at the same time (e.g. Notepad), and some didn't (e.g. Paint), but for those that did, they spawned each window as its own process. Closing the window closed the process. That two processes shared the same executable had no deeper meaning until Windows XP added taskbar grouping.

garaetjjte 5 hours ago

In Win16 all instances of executable shared memory (that's why there's hInstance in WinMain). But that should be transparent to user if implemented correctly.

Except Excel, which wants to act like single application with multiple windows.

muststopmyths 4 hours ago

Console applications, which do not have win32 windows with message pumps can be closed with alt-f4.

For GUI apps it sends a WM_CLOSE, because that's they way to "close" a GUI application.

For console applications it sends a message through the "Console control handler". Which the console subsystem no longer lets the application properly handle and kills the process summarily anyway.

Note that I keep saying "application" because that has been the terminology in windows forever. "GUI apps" and "console apps" were a thing before mobile.

kbolino 19 minutes ago

This is good detail, but I wasn't comparing to mobile, I was comparing to Macintosh. A native app on Windows has always been more of a loose collection of related files, whereas it is a single file on Macs and is presented as a cohesive unit throughout the operating system. Thus, Cmd+Q was more feasible than a similar shortcut could have been on Windows, and Alt+F4 really was its closest equivalent because Windows didn't organize things the way Mac did.

OroPla 3 hours ago

How is Ctrl overloaded in Linux? Other than copy and paste, what do you use it for globally?

donatj 13 hours ago

> What Windows calls ⏎ Enter, Mac calls ⏎ Return. However, Macs also have an ⌤ Enter, although only on a numeric keypad (previously, it was even there on laptops! [1]). On keyboards without the physical Enter key, you can simulate it via Fn+Return.

[1] https://en.wikipedia.org/wiki/PowerBook_G3#/media/File:Apple...

I have spent literally several minutes scanning this keyboard for a physical Enter (as opposed to Return) and have no idea what the author is talking about.

petu 13 hours ago

First key on the right after space bar.

wpm 5 hours ago

Off topic but man PowerBook G3s were good looking machines, heat/hinge issues aside.

slhck 9 hours ago

What always trips me about the German QWERTZ layout.. I am used to Mac keyboards.

When I want to type an @ on a Windows machine, I accidentally press Windows-L and lock it. For Windows users, when they use a Mac, they might be tempted to press AltGr-Q, which quits the foreground application.

donatj 13 hours ago

> Windows still supports Shift+Delete for cut, Ctrl+Insert for copy, and Shift+Insert for paste. I am not sure how many people use these.

So I grew up using DOS and these were pretty universal across edit/qbasic/word as well as many other third party apps. Not being able to Shift-Insert paste took my brain literally months to get used to when I switched to Mac like twenty years ago.

When I rarely find myself in Windows the muscle memory comes right back.

abhikul0 16 hours ago

Aside for a peculiar trackpad issue:

Does anyone else have problem scrolling diagonally on a page that's a bit zoomed in(like on HN, you zoom in a little to read the threads)? It just doesn't move smoothly and instead does a staircase shape traversal.

This used to occur on all browsers before upgrading to Tahoe, now it's mostly fixed but still persists on Safari.

For reference: https://www.reddit.com/r/MacOS/comments/1hh5yjo/diagonal_tra...

tpmoney 5 hours ago

macOS seems to have a “lock direction” for trackpad scrolling on zoomed in windows. Whether you like this or not is in my experience largely a function of how much you do normally do a diagonal scroll. On the one hand it means if you scrolled in to fill a column, you don’t need to be perfectly precise with staying up and down to scroll up and not also scroll the column off to one side. On the other hand if you don’t start with a very explicitly diagonal scroll, it won’t let you scroll diagonally without stopping and starting again.

PetitPrince 17 hours ago

> Windows still supports Shift+Delete for cut, Ctrl+Insert for copy, and Shift+Insert for paste. I am not sure how many people use these.

Shift inset is handy when ssh-ing intobabtemoyr machine with Python windows.