Hacker News new | past | comments | ask | show | jobs | submit login
Secrets of the Fn Key (tidbits.com)
82 points by alwillis on Dec 4, 2023 | hide | past | favorite | 51 comments



I have a bone to pick with the use of Fn-F to go full-screen in TV.app, Quicktime etc.: it's a stupid shortcut. For years, the built-in video apps used Cmd-F...i.e. using the same modifier they continue to use for all other shortcuts. I can't understand why Apple changed it. It's inconsistent both compared to long-established convention and compared to all other shortcuts. And it relies on a key that your keyboard might not even have.

Now if you're using an external keyboard that doesn't have a Fn key built by Apple, there's no way to go fullscreen from the keyboard (until you add the shortcut in the Keyboard section of System Settings).

At least VLC knows the score and keeps Full Screen mapped to Cmd-F. Sadly, iTerm now uses the new convention.


Because ⌘F is Find in every app, and Fn F is Full Screen in every app. There isn't really a reason to change those two for any particular apps.


It used to be ⌘^f on macOS to fullscreen any window. Now it's fn-f which is nowhere near as convenient on all of Apple's keyboards.

https://www.apple.com/shop/product/MQ052LL/A/magic-keyboard-...

The fn key is to the right of delete, it's not terribly suitable for use in key combinations. This seems ill-chosen on Apple's part.


Apple famously doesn’t care about things that are non-default settings/customizations/off-the-beaten-track. The standard Apple keyboard is a 60% keyboard (Bluetooth or laptop). And on those keyboards, fn is in the bottom left corner, which is fine for keyboard shortcuts.


>There isn't really a reason...

Direct quote of parent giving the reason: "if you're using an external keyboard that doesn't have a Fn key built by Apple, there's no way to go fullscreen from the keyboard"


Oh, so it's Apple that I have to blame for this abomination and my pet peeve ever since I first saw a ThinkPad? I never would've thought - until now, I believed that such a silly annoyance must've been invented by one of the PC vendors.

There's a lot I could rant about this, but instead, I'll just express my sincere thanks to whoever invented the "FnLock" function, which is the very first thing I activate on any new laptop I get.


Thinkpad 500, which was the first laptop to have a Fn key was released 5 years before the PowerBook G3 that had the same. You may carry on blaming IBM.


No it wasn't.

1. The Thinkpad 500 was 1993: https://en.wikipedia.org/wiki/IBM_ThinkPad_500

2. The Thinkpad 300 was a year earlier: https://en.wikipedia.org/wiki/IBM_ThinkPad_300

But the 300 still wasn't the first with a Fn key.

3. Here is an IBM PCjr keyboard from 1986:

https://deskthority.net/wiki/File:Pcjr_front.jpg

Look at top right.


Erm, that PCjr keyboard from 1986 sure as shit isn't a laptop keyboard. I said:

>... which was the first _laptop_ to have a Fn key was released 5 years before the PowerBook G3 that had the same.

I'll happy be stood corrected on the 300 vs. 500 point, 500 being the earliest I could remember.


The most useful (and quite hidden) behavior of the Fn key for me, is using it in a tmux screen with mouse-mode activated, as it allows you to select and copy text through the system text selection.


Not even mentioning that (some) non Mac keyboards have an Fn key too (Thinkpads do for instance). But no secrets are re veiled for those


Pretty sure was Lenovo laptop which has a menu button but stopped labeling it on the keyboard at some point. If you know where it's supposed to be, it still works. Either that or I found a hidden Fn mapping on a Dell laptop.

I ought to write a blog about secrets of the Fn key and omit which hardware it's about to get clicks from everyone (spoiler for those reading the comments first: the article is exclusively about Apple and reveals no secrets)


AFAIK, Apple's keyboards are the only keyboards that actually report the Fn key to the computer. On other keyboards, the Fn key traditionally toggles layer only locally on the keyboard, with the layout defined by the keyboard, not the OS.

One thing close to it (now that it is also the "Globe key"), would be the Emoji key on some Microsoft keyboards, which sends Ctrl + Shift + Alt + Windows + Space. (same as "Office key" + Space)


I think that's covered by "[...] and has become a fixture in the lower-left corner of laptop keyboards ever since." ? But yes, it seems fairly Mac-centric.


If you read it this way, it would seem like the PowerBook from 1998 was the first laptop to have an Fn key. But from what I managed to find, ThinkPads for example have had a function key even before then (although it was labeled Func). See ThinkPad 500 from 1993: https://laptop.pics/ibm-thinkpad-500/


TidBITS has been only about Apple since it's inception 33 years ago.


Question for mac users.. how would you do the shortcut "Ctrl+shift+r" (refresh page and clear cache)?

On a standard keyboard, for me, it's:

- left hand little finger on left ctrl

- left hand ring finger on shift, to the right of little finger

- left hand index finger on r

But with ctrl moved one place in, that doesn't work

Maybe right hand ctrl shift, left hand r?


The shortcut is different on macOS, hence your confusion. The combination is Cmd+Shift+R which is very close to where your fingers are in their resting state. On macOS you generally use Cmd everywhere where you would use Ctrl on Windows.


With the added benefit that CMD+C (copy) and CTRL+C (abort) don’t conflict in a terminal emulator!


My answer to the question is thumb, pinkie, index.

Thumb (cmd, near spacebar), pinkie (shift), index (r).

And this particular key combo is quite comfortable.


Yep, same for me too


> On macOS you generally use Cmd everywhere where you would use Ctrl on Windows.

On every Mac I use, I go into Modifier Keys and switch CMD and CTRL. I started doing this when I first switched from windows to Mac about 20 years ago and have never switched back. It confuses other people when they use my computers, but it is what I'm accustomed to. I especially don't understand how people do CMD+X/C/V - the modifier key is just too close. Doing CTRL+X/C/V is so much more comfortable.


Control C would require leaving the home row. You use left thumb on CMD.


> The combination is Cmd+Shift+R

On Safari, it's actually Cmd+Alt+R (no Shift)

Which was very confusing for me as I couldn't solve a cache issue with the expected Cmd+Shift+R.

Oh, and Pinky on left Alt/Option, Thumb on left Cmd, Index on R. I've never learned to combine right and left modifiers :( Probably gaming has ruined me.


huh that looks even more awkward.

- left hand little finger on shift

- left hand thumb (??) on command

- left hand index finger on R


I think I know what the problem is. Can we see a pic of your hand?


not a mac user, but on macs ctrl in shortcuts is replaced with command. guessing it's

- left thumb on command

- pinky on shift

- index finger on R

...which IMO is more ergonomic and less annoying than the equivalent PC shortcut.


Even though the macOS key-bindings are different, for the sake of answering your question, here is what I do:

1. I remap Caps Lock to Ctrl on every keyboard I can.

2. Left 4th finger on "Ctrl" [Caps Lock].

3. Right 4th finger on "Shift"

4. Left 1st finger on "r"


> As an aside, standard search engines were no help in my research into the Fn key’s first appearance. ChatGPT scored a win, however, by identifying the PowerBook G3 Series on its first try—yes, I confirmed it with keyboard photos

Alas, now that I ask ChatGPT with GPT-4 (“With DALL·E, browsing and analysis” as that is my only GPT-4 option now) “Which Mac first had a Fn key? Please provide a source”, this blog post itself is the source that it recursively cites. I wonder how it knew that information before.


In the "Explore" menu you can select "ChatGPT Classic" which removes the web browsing features (slow and useless features imo). Trying your prompt, it suggests https://apple-history.com is the source of its info. (Which seems to be incorrect)


A handful of these have been present for years (they weren't new in Monterey)-- specifically the ones replicating keys that are not present on Apple's laptop keyboards (Fn+Delete for forward delete, Fn+Up for page up, Fn+Right for Home, etc.).

The ones that map to OS functionality (rather than to other keyboard keys) are definitely new-ish, though-- like Fn+H to show desktop, or Fn+M for the Apple menu.


The Fn key is superfluous.

Four modifiers, Shift, Ctrl, Meta and Alt are enough. Use Alt and Shift to produce more letters like Alt-Y on my keyboard to make « (opening guillemets). If a keyboard has about 48 keys to produce letters or digits, and if you use Shift, Alt and Shift-Alt you can generate 192 different letters or digits, and that's enough.

I reserve Meta for handling the window manager (for me it's sway). Sometimes I use Shift-Meta or Ctrl-Meta or Alt-Meta with the cursor keys. This is simple. Meta is not for applications, it is for the window manager.

Then there are the F1 to F12 keys. I can toggle the brightness keys, either I press F8 to make the display brighter or Fn-F8. I would prefer to use Meta-F8 instead. That's doable, so perhaps I am going to edit my .config/sway/config file to ignore the Fn-Fx keys.

But to toggle the keyboard backlight, I have to press Fn-Space bar, because it is hardcoded in the hardware keyboard controller. Whatever.


> But to toggle the keyboard backlight, I have to press Fn-Space bar, because it is hardcoded in the hardware keyboard controller. Whatever.

  bindsym $mod+Shift+m exec ~/bin/power_backlight_keyboard.sh


  #!/usr/bin/env bash
  
  sys_keyboard_path=/sys/class/leds/tpacpi::kbd_backlight/brightness
  if [ -f $sys_keyboard_path ]; then
   current=$(<$sys_keyboard_path)
   if [ "$current" -eq 0 ]; then
     new=1
   else
     new=0
   fi
   sudo tee ${sys_keyboard_path} <<<  ${new} >/dev/null
  fi


Most third party keyboards cannot emulate the Globe key. Apple would only recognize it if the USB PID/VID matches real Apple USB keyboards, which third party keyboards are not allowed to use.


We got Emacs style text edit on all web type in boxes on unix because the x11 text element used in the browser had that wired in.

I wish we'd got the same for Fn key interactions over view


On my thinkpad (which has PageUp and PageDown around the Up arrow), I've remapped Fn to provide direct access to a spare Page Up key: this way, I can read content (mostly paging down with the space bar, and eventually going up) from either side of the keyboard!

It's handy when flinging an arm over the back of the chair or holding a mug.


Yes! Someone else talking about this computer use scenario!

In my case, I put an apple magic mouse scrollball between Esc and F1 on a keyboard a decade ago, and still use this. (google `apple scroll ball keyboard` if interested)

(A recent oddity I noticed is that Firefox ignores up/down scroll if mouse isn't over the window, but side-to-side scroll still works.)


> Yes! Someone else talking about this computer use scenario!

When I was using a surface that didn't even have 1 page up key on the bottom row, I was also remapping the unchorded shift keys, and created a chorded mapping for enter so essentially: - caps lock is Esc when alone, Control_L when chorded - enter is Enter when alone, Control_R when chorded - shift_l is Page Up when alone, Shift_L when chorded - shift_r is Page Down when alone, Shift_L when chorded

It was very efficient: doing Control L with one hand was much easier from the right hand side


>mostly paging down with the space bar

Shift-Space also works as PageUp.


That requires 2 fingers, which is too complicated when I'm deep into reading something.

But TBH I've previously remapped the shift keys as extra page up, since when pressed and released they do nothing which is a waste for such a big key that's so easy to reach!


Unfortunately, that's not standard everywhere. I've found that some CLI applications go the route of space and B being the pager buttons, but I haven't found keybinds for paging in a bare TTY.


I have a kensington expert mouse (big finger operated trackball), and I find the scroll ring very enjoyable for that.


Ha ! I personally use the trackpoint from my lenovo laptop (mouse buttons are over the trackpad). Index and thumb.


Secrets of the FN key for average mac users*


The design of the Apple keyboard is a mess, and anyone claiming that Apple is good at UX should think again.


Looks like it originated in ThinkPad/1992. eg https://en.wikipedia.org/wiki/IBM_ThinkPad_701


heh, I got like 4k karma on Stack Oveflow for posting basically this for the terminal.


Well well, Fn-C that!


Fn-A, Peter


hidden*


It's in a reference to the article, where the shortcuts are hidden at the very end of the long-winded text.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: