Understanding the “Use all F1, F2, etc. keys as standard function keys” setting

I recently experienced a glitch in the operation of a third party Bluetooth keyboard I had purchased for my MacBook Pro. I contacted the manufacturer, who thanked me for the observation and assured me that fixing the issue would take a high priority. So, hopefully, I’ll be able to get a fix for my keyboard soon, but my explanation of the problem was detailed enough that I think it might help explain the significance of the “Use all F1, F2, etc. keys as standard function keys” setting to those who may be unfamiliar with it so they may be able to get more functionality from their keyboards. I’m going to leave out the name of the manufacturer and product, replacing it with “[third party keyboard]” in the explanation.

It’s important to make a distinction between the keyboards that have the fn key from those that don’t, because the options for alternating the function of a key using the fn key apply only to keyboards which have it, of course. For keyboards that don’t have the fn key, the only way to provide dual functionality for F1, F2, etc. is to toggle the functionality with the “Use all F1, F2, etc. keys as standard function keys” setting. For keyboards with the fn key, the action of the key is determined by whether the fn key is up or down when the F1, F2, etc. keys are pressed. Because of that, it may be even more important to understand the “Use all F1, F2, etc. keys as standard function keys” setting if you don’t have the fn on your keyboard. Here’s the explanation of the problem I was having with the third party keyboard.

——–
In the current Mac OS (Mac OS X 10.7.2, Lion), as well as in previous versions, a setting labeled “Use all F1, F2, etc. keys as standard function keys” can be found in the Keyboard segment tab of the Keyboard system preference pane. For keyboards that have the fn key, as does the [third party keyboard] as well as MacBook and MacBook Pro built-in keyboards, this setting toggles the default actions assigned to the the F1, F2, etc. keys when they are used in combination with that fn key.

Perhaps the easiest way for me to describe the significance of that setting is to provide an example of what it does. By default in Mac OS X 10.7.2, the F12 key is designated as the shortcut for activating Dashboard (found by clicking the Keyboard Shortcuts segment tab in the Keyboard system preference pane and selecting Mission Control from the list on the left). For keyboards with the fn key, If no check mark exists in the “Use all F1, F2, etc. keys as standard function keys” checkbox, pressing F12 doesn’t trigger Dashboard as the Mission Control item in the Keyboard preference pane indicates it should. Instead, pressing F12 boosts the system volume (the action indicated by the glyph on the physical key). If the “Use all F1, F2, etc. keys as standard function keys” checkbox is not checked, using F12 to toggle Dashboard requires that the fn key be down when the F12 key is pressed. For the built-in keyboard of a MacBook or MacBook Pro, putting a check mark in the “Use all F1, F2, etc. keys as standard function keys” checkbox reverses the requirement for the fn key to be pressed so that if the fn key is down when the F12 key is pressed, the system volume is boosted, and if the fn key is not down when F12 is pressed, Dashboard is toggled.

The problem I’m reporting with [third party keyboard] is that it ignores the status of the “Use all F1, F2, etc. keys as standard function keys” checkbox. The significance of that limitation in the above example is that pressing the F12 key with the fn key down always toggles Dashboard and pressing F12 without the fn key down always boosts system volume whether or not the “Use all F1, F2, etc. keys as standard function keys” checkbox contains a check mark. This can be an important issue for keyboard functionality because of the distance from the fn key to the “F” keys toward the right side of the keyboard. In my example, when using [third party keyboard] keyboard, I have to use both hands to toggle Dashboard with the F12 key because I can’t remove the requirement to press the fn key with F12 for performing that action, and pressing fn and F12 at the same time with one hand isn’t possible because my hand isn’t big enough to reach both keys at the same time. However, I can toggle Dashboard simply by pressing F12 on my MacBook Pro built-in keyboard, because the “Use all F1, F2, etc. keys as standard function keys” checkbox implements that behavior for the built-in keyboard, as it does for the Apple Bluetooth Keyboard, which [third party keyboard] appears to be designed to replace.

——–

And finally, here’s an AppleScript that can be used to create an Automator shortcut for toggling the “Use all F1, F2, etc. keys as standard function keys” setting on your Mac. You can set up the Automator workflow and assign it a keyboard shortcut (you might want to avoid use of F1, F2, etc. keys for triggering it, because it affects how those keys behave) using the method for using scripts with Automator found here.

tell application "System Preferences" to activate
tell application "System Events"
	tell application "System Preferences"
		activate
		set current pane to pane "com.apple.preference.keyboard"
	end tell
	tell process "System Preferences"
		click radio button "Keyboard" of tab group 1 of window "Keyboard"
		get every attribute of checkbox ¬
			"Use all F1, F2, etc. keys as standard function keys" of ¬
			tab group 1 of window "Keyboard"
		click checkbox ¬
			"Use all F1, F2, etc. keys as standard function keys" of ¬
			tab group 1 of window "Keyboard"
		activate
		if value of checkbox ¬
			"Use all F1, F2, etc. keys as standard function keys" of ¬
			tab group 1 of window "Keyboard" = 0 then
			display dialog ¬
				"Standard Function Keys off..." giving up after 1
		else
			display dialog ¬
				"Standard Function Keys on..." giving up after 1
		end if
	end tell
	tell application "System Preferences"
		activate
		do shell script "sleep 1"
		quit
	end tell
end tell

Leave a Reply