Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

After 20 years of using keyboards, I have, thanks to this comment, discovered the "Home" button.


For Apple 101-key keyboard users, who don’t have a “Home” key: try Cmd+Up (and Cmd+Down.)

Bonus: also try Ctrl+E (and Ctrl+A) in text fields, or on the command-line.

(Both of these carry over to iOS, if you’re curious. I just tested them with the iPad keyboard-folio thing.)


The actual keys are Fn+Left and Fn+End for Home and End (Fn+Up is PageUp, etc). These will also work in Terminal apps or other places that don’t have specific Cmd-Up / Down bindings.


True; but Cmd+Up and Cmd+Down are slightly more universal across the “Apple ecosystem”, given that iOS-specific keyboards don’t have Fn keys, but do support those shortcuts. :)

Interesting aside: the “Globe” key on an iPad keyboard-folio (the one that opens the IME chooser) has some but not all of the properties of an Fn key. Globe+Left and Globe+Right work as PgUp/PgDn, but Globe+Up and Globe+Down do not work as Home/End. (Or maybe they do, but Home/End just aren’t bound in any app I’ve tested? I don’t want to write+deploy an iOS keysym tester just to find this out...)


For the record, Cmd-up/down navigates between prompts in Terminal.app


Lack of a working home/end function is literally the biggest reason I dislike working on a Mac. I don't understand what would be so hard about just having them work like they do on a PC.


Apple sells keyboards with Home/End keys, and they do what you'd expect (e.g. https://www.apple.com/shop/product/MQ052LL/A/magic-keyboard-...). iMacs and Mac Pros come with that type of keyboard.

You can also plug in arbitrary USB keyboards, or pair arbitrary Bluetooth keyboards, to a Mac, and the Home/End keys on those will also do what you'd expect.

Apple just doesn't bother to put Home/End/PgUp/PgDn keys on their laptops — presumably because they find that people don't need them very often; and that, when the keyboard's size is already constrained, people get more value out of fewer, larger keys (while requiring key-chords for some things) vs. more, smaller keys.


> and they do what you'd expect

No, they don't. I expect pressing Home to go to the beginning of the line I am on, and I have to hit Command-Left for that, and Home does nothing of value.


Are Ctrl+e and ctrl+a Emacs conventions?


Yes, emacs navigation keybindings are native in Apple UI.

e.g. ^A ^K to clear an input line


It’s funny. Apple’s UI has taught me how to use emacs instead of the other way around.

I use Ctrl-A and Ctrl-E all the time.


cmd-up/cmd-down go to top/bottom of the document.

cmd-left/cmd-right go to beginning/end of the line.

It seems Word for Mac supports cmd-left/right but not cmd-up/down. Word also supports fn-left (home) and fn-right (end), and fn-opt-left does like ctrl+home on Windows.


This amazes me. Thanks for your honesty, there are probably millions of people who are in the same position. While you're looking down, wouldn't hurt to look at all the different keys and give them a try.


* tries a "Wi-Fi toggle" button, looses internet and is unable to google for help


We laugh, but I had to troubleshoot my dads laptop once upon a time and had to ask him what lights are on on his keyboard. “The airplane light is on”


I had a family member call me in a legitimate panic because her "Gmail got hacked, all of a sudden the whole screen changed and there a bunch of weird code all over the screen!"

Turns out the f12 key was the culprit; took me longer than it should have to realize she was describing the Firefox developer console.


Thanks. And now I have discovered the "End" button!


The first thing I do with any new device is push all the buttons to see what they do.

Push, push-and-hold, and push multiple times quickly.


> wouldn't hurt to look at all the different keys and give them a try.

TIL Enter key toggles comment collapsing.


More generally Enter acts as a left-click on whatever element has focus in the browser. If you press tab, you cycle the focus to the next link/input/button/whatever. Shift+tab cycles through them in reverse order. If a normal hyperlink has focus, you can do things like CMD+Enter (MacOS) or CTRL+Enter (Windows) to open it in a new tab, etc


Since your brain is already in keyboard learning mode, give Shift + Home and Ctrl + Shift + Home a try. It works wonders when selecting text for cutting and pasting. The same combos work with End as well as the arrow keys.


Home and End are the amazing in VSCode for doing bulk line edits in conjunction with multi cursor.


Obligatory XKCD: https://xkcd.com/1053/

Just to pile on with fun new keyboard tricks! Caveat: "linux" here is largely specific to the Desktop environments I've worked with. 'Good terminals' refers to termianls that support emacs keybindings by default, which is the mac os terminal, and most linux bash/zsh terminals at least. I know Cygwin and Conemu respect this under normal usage too.

## Start and end of line:

- Mac: CMD + left, CMD + right

- Linux/PC: Home and End Buttons

- Linux/Mac/Good Terminals: ctrl+a ctrl+e

## "Word-wise" movement:

- Mac: option+left, option+right

- Linux/PC: alt+left, alt+right

- Good Terminals: alt+b, alt+f (mnemonic: 'back' and 'forward')

The 'shift' key can be added to any of the above to select whole words or lines, or parts of lines at a time. Combined with multiple insertion points you've got superpowers.


Other keys that may be non-obvious:

- Insert toggles between shifting characters after the cursor to the right and deleting the character to the right of the cursor, replacing it with the new character you typed, but not replacing a newline character. While eg. Caps Lock is global, Insert mode is local to the text input that currently has focus - tab or mouse over to a new window and you've lost Insert mode, tab back to the one where you previously set it and you're back to Insert mode.

- Delete is like Backspace, but deletes stuff to the right of the cursor.

- Home, as you discovered, moves browsers to the top of the page. When composing text, it moves the cursor to the start of the line (and vice versa with "End"), CTRL+Home moves to the start of the text entry box.

- Page Up and Page Down shift the cursor by screenfulls of text, typically leaving a couple lines at the top and bottom for context. Note to web developers who are unfamiliar with keyboards: Make sure your fixed/sticky header/footer banners don't hide content when using "Page Up" and "Page Down". Also of note, CTRL+Page Up/Down and CTRL+Tab/CTRL+Shift+Tab shift the window or tab focus within an application, for example to go to the next tab in Chrome or the next file in your IDE.

- Print Screen creates a screenshot. Depending on your setup, this may either go to your Pictures folder, or may go to the clipboard (open an image editor eg. Win+R, mspaint, and CTRL+V to paste). It shares a key with SysRq, which can be accessed with Alt+SysRq+(magic letter), and used to recover from various crash conditions - be careful, if you start hitting letters at random, you'll invoke the bad kind of magic that will shut down your computer.

- Scroll lock was used to stop auto-scrolling an input buffer that was running too fast. Largely neutered in modern OSes, it's still useful in the BIOS when all the hardware initialization messages are scrolling by too fast to read. Sometimes it's also used to toggle keyboard backlighting because it had an LED attached and doesn't have a real function anymore, but depending on the manner in which your OS/hardware neuters this key your keyboard backlighting may not work.

- Pause/Break kills a process like CTRL+C, but sometimes has different specific modes of operation in various debuggers. Access the "break" alternate function with CTRL+Pause.

- Super/Windows key opens the Start menu or search tool. On Macs, it's the Command key and used for lots of keyboard shortcuts. Hyper useful for window management, Super+arrow keys move screens to the left or right half of the monitor, maximize, resize, or minimize them, and Shift+Super+arrow moves them between multiple monitors.

- Num lock toggles between entering numbers with the 10-key section of the keyboard and that section's alternate navigation functions, where 7 is home, 1 is end, 9 is page up, 3 is page down, and 4/8/6/2 are left/up/right/down respectively. Not really important if you've got an inverted-T arrow cluster and Super useful on some dumb 17" laptops that cram in a 10-key section but relegate all these normal navigation keys to arcane random Function invocations on tiny distant buttons crammed into the top of the keyboard if they're present at all. Uniquely, Num Lock is typically remembered across reboots.


I had a support call yesterday where the computer was highlighting things and deleting them while the user was going back to change things in a document. I was initially suspecting either a faulty shift key or a double-click setting causing things to be highlighted. When I looked at the user's screen I recognized the block cursor and told him to press Insert.

I haven't seen that or heard of it happening for probably 10-odd years now. Didn't realize it still worked in Windows 10!


It still works in the latest macOS too. I end up accidentally hitting in on my work machine in slack all the time.


> Note to web developers who are unfamiliar with keyboards: Make sure your fixed/sticky header/footer banners don't hide content when using "Page Up" and "Page Down".

Firefox has specific code to detect banners and reduce the Page Down distance. This code fails on new Twitter.


Since we're sharing tips, here's another one: Holding the middle mouse button and dragging the mouse up towards the top of the screen accomplishes basically the same thing as pressing "Home" without requiring you to take your hand off the mouse.


I only use NumLock(button and LED) for test whether kernel is alive or dead.


6 years in university + 10 years of work experience.

Today I know what Home/End keys do, because of a random comment on the internet.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search: