This is the ultimate guide for working with MacBook keyboards, including accessing special functions, characters, accents, and using keyboard shortcuts in Mac OS system. Click on the list below to jump to an appropriate section.
MacBook Keyboard Diagram / Map
MacBook keyboard has few distinctive sections: Function keys (in light blue), which provides access to various functions in MacBook itself or Mac OS system. By combining them with the FN key, you'll get access to F1 - F12 keys, which can be associated with particular application features (useful in Photoshop for example).
The second section is the modifier keys (in light yellow). Shift allows to type uppercase letters and other additional characters. Command and Alt/Option are used in keyboard shortcuts, as well as the Control key, which is used almost exclusively by Mac OS X and Apple programs.
You can find a diagram showing the layout of the keys that VS uses, by following this link. (Or by clicking here) Users with non-US keyboard may keep this in mind: Vegastrike maps the keys 1:1 onto other keyboard layouts. So pressing the 'exact' same key on you keyboard will work fine for you I think. Exception: the key; on a German keyboard it. This is the most common layout in Poland. We also advise our customers to choose this layout, if they want to switch from any European language to English keyboard. You can buy a MacBook or Apple keyboard with this layout. UK (British) English Layout. Used in the United Kingdom and Ireland. You can buy a MacBook or Apple keyboard with this layout. The current keyboard layout, or the QWERTY layout, which is based on the layout of the typewriter, was designed not to increase the speed of typing, but to slow it down in order to avoid typewriters from jamming. Australians tend to use the American keyboard layout. One other source of confusion is the fact that some Mac keyboards label the Alt key Option while others call the Option key Alt (depending on. Windows Keyboard Layouts.; 5 minutes to read +1; In this article. Choose a keyboard below to view its layouts. To see different keyboard states, move the mouse over state keys such as Shift, Caps or AltGr.You can also lock or unlock those keys by clicking them.
Return and left Shift has two variants, one used in the US and Eastern Asia (horizontal Return and long Shift), and second, used in Europe, Middle East and Africa (vertical Return and short left Shift). On the diagram, this is shown by dashed lines. Of course, MacBook keyboards have lots of localizations, the most common - US English - is shown above. If you're unsure about the localization you have, go and check it with this guide.
MacBook Air 11' has slightly different keyboard, with smaller top and bottom row keys to accommodate smaller laptop size. Newest MacBooks Pro with TouchBar don't have upper F keys row, instead, they have a touchscreen which changes displayed options based on context.
MacBook Keyboard Symbols Chart
MacBook Keyboard Special Characters and Accents Map
If you want to type special characters or accents, change your keyboard language to US International PC (thanks, Steve!) and use the map below to get them. You can also check out our solution to the two languages on one keyboard problem.
Where is the Print Screen Button?
Unlike PC keyboard, there is no Print Screen key on MacBook keyboard. This functionality is accessed by keyboard shortcuts and - on Mac - you have greater flexibility:
In some apps, like Photoshop, you need to add Control into the mix, to paste the screenshot into the app.
MacBook Keyboard Tricks
There's a lot you can do in Mac OS by using the keyboard only. Here's a list of highly useful and not-so-useful keyboard shortcuts:
If this article was helpful or you simply like what we do, please use buttons below to share this article with the world :-) Thanks!
Please enable JavaScript to view the comments powered by Disqus.You may also be interested in...I Hated MacBook Cases, Here’s Why I Changed my Mind...
If you asked me about MacBook cases or iPhone silicone covers 5 years ago, I would probably cry and then say one big fat 'noooo'! Why? I had my reasons, mostly because I got my MacBook almost killed by using them, not even counting how many times its life was in serious danger. If you're thinking about getting a MacBook case, make sure to read this article first.Read more
16 Questions About Keyboard Stickers You Always Wanted to Ask and One Extra Surprise at the End
You probably heard of multiple advantages of having your keyboard covered with decorative or specialized keyboard decals. Want to get your first keyboard stickers but still not sure how these work? Then check out these 16 questions (and answers of course) we prepared for you to clear up all doubts!Read more
9 Reasons to Get Keyboard Stickers Instead of Silicone Cover
Ahhh... keyboard stickers versus silicone covers - it's like Mac vs Windows, each side has its own believers and haters. By the headline you already know where we stand - and we do it with a reason.Read more
Apple Keyboard Layout Diagram ToolCustom Keyboard
A custom keyboard replaces the system keyboard for users who want capabilities such as a novel text input method or the ability to enter text in a language not otherwise supported in iOS. The essential function of a custom keyboard is simple: Respond to taps, gestures, or other input events and provide text, in the form of an unattributed
NSString object, at the text insertion point of the current text input object.
Before you begin
Make sure a custom, systemwide keyboard is indeed what you want to develop. To provide a fully custom keyboard for just your app or to supplement the system keyboard with custom keys in just your app, the iOS SDK provides other, better options. Read about custom input views and input accessory views in Custom Views for Data Input in Text Programming Guide for iOS.
After a user chooses a custom keyboard, it becomes the keyboard for every app the user opens. For this reason, a keyboard you create must, at minimum, provide certain base features. Most important, your keyboard must allow the user to switch to another keyboard.
Understand User Expectations for Keyboards
To understand what users expect of your custom keyboard, study the system keyboard—it’s fast, responsive, and capable. And it never interrupts the user with information or requests. If you provide features that require user interaction, add them not to the keyboard but to your keyboard’s containing app.
Apple Keyboard Layout PictureKeyboard Features That iOS Users Expect
There is one feature that iOS users expect and that every custom keyboard must provide: a way to switch to another keyboard. On the system keyboard, this affordance appears as a button called the Globe key. In iOS 8 and later, the system provides a specific API for your “next keyboard” key, described in Providing a Way to Switch to Another Keyboard.
The system keyboard presents an appropriate key set or layout based on the
UIKeyboardType trait of the current text input object. With the insertion point in the To: field in Mail, for example, the system keyboard period key changes: When you press and hold that key, you can pick from among a set of top-level domain suffixes. Design your custom keyboard with keyboard type traits in mind.
iOS users also expect autocapitalization: In a standard text field, the first letter of a sentence in a case-sensitive language is automatically capitalized.
These features and others are listed next.
You can decide whether or not to implement such features; there is no dedicated API for any of the features just listed, so providing them is a competitive advantage.
System Keyboard Features Unavailable to Custom Keyboards![]()
Your custom keyboard does not have access to most of the general keyboard settings in the Settings app (Settings > General > Keyboard), such as Auto-Capitalization and Enable Caps Lock. Nor does your keyboard have access to the dictionary reset feature (Settings > General > Reset > Reset Keyboard Dictionary). To give your users flexibility, create a standard settings bundle, as described in Implementing an iOS Settings Bundle in Preferences and Settings Programming Guide. Your custom settings then appear in the Keyboard area in Settings, associated with your keyboard.
There are certain text input objects that your custom keyboard is not eligible to type into. First is any secure text input object. Such an object is defined by its
secureTextEntry property being set to YES true and is distinguished by presenting typed characters as dots.
When a user taps in a secure text input object, the system temporarily replaces your custom keyboard with the system keyboard. When the user then taps in a nonsecure text input object, your keyboard automatically resumes.
Your custom keyboard is also ineligible to type into so-called phone pad objects, such as the phone number fields in Contacts. These input objects are exclusively for strings built from a small set of alphanumeric characters specified by telecommunications carriers and are identified by having one or another of the following two keyboard type traits:
When a user taps in a phone pad object, the system temporarily replaces your keyboard with the appropriate, standard system keyboard. When the user then taps in a different input object that requests a standard keyboard via its type trait, your keyboard automatically resumes.
An app developer can elect to reject the use of all custom keyboards in their app. For example, the developer of a banking app, or the developer of an app that must conform to the HIPAA privacy rule in the US, might do this. Such an app employs the
application:shouldAllowExtensionPointIdentifier: method from the UIApplicationDelegate protocol (returning a value of NO false ), and thereby always uses the system keyboard.
Because a custom keyboard can draw only within the primary view of its
UIInputViewController object, it cannot select text. Text selection is under the control of the app that is using the keyboard. If that app provides an editing menu interface (such as for Cut, Copy, and Paste), the keyboard has no access to it. A custom keyboard cannot offer inline autocorrection controls near the insertion point.
Custom keyboards, like all app extensions in iOS 8.0, have no access to the device microphone, so dictation input is not possible.
Finally, it is not possible to display key artwork above the top edge of a custom keyboard’s primary view, as the system keyboard does on iPhone when you tap and hold a key in the top row.
API Quick Start for Custom Keyboards
This section gives you a quick tour of the APIs for building a keyboard. Figure 8-1 shows some of the important objects in a running keyboard and where they come from in a typical development workflow.
The Custom Keyboard template (in the iOS “Application Extension” target template group) contains a subclass of the
UIInputViewController class, which serves as your keyboard’s primary view controller. The template also includes a basic implementation of the “next keyboard” key, which calls the advanceToNextInputMode method of the UIInputViewController class. Add objects such as views, controls, and gesture recognizers to the input view controller’s primary view (in its inputView property), as suggested in Figure 8-1. As with other app extensions, there is no window in the target, and, therefore, no root view controller per se.
The template’s
Info.plist file comes preconfigured with the minimal values needed for a keyboard. See the NSExtensionAttributes dictionary key in the keyboard target’s Info.plist file. The keys for configuring a keyboard are described in Configuring the Info.plist file for a Custom Keyboard.
By default, a keyboard has no network access and cannot share a container with its containing app. To enable these things, set the value of the
RequestsOpenAccess Boolean key in the Info.plist file to YES true . Doing this expands the keyboard’s sandbox, as described in Designing for User Trust.
An input view controller conforms to various protocols for interacting with the content of a text input object:
To present a keyboard layout appropriate to the current text input object, respond to the object’s
UIKeyboardType property. For each trait you support, change the contents of your primary view accordingly.
To support more than one language in your custom keyboard, you have two options:
Depending on the number of languages you want to support and the user experience you want to provide, pick the option that makes the most sense.
Every custom keyboard (independent of the value of its
RequestsOpenAccess key) has access to a basic autocorrection lexicon through the UILexicon class. Make use of this class, along with a lexicon of your own design, to provide suggestions and autocorrections as users are entering text. The UILexicon object contains words from various sources, including:
You can adjust the height of your custom keyboard’s primary view using Auto Layout. By default, a custom keyboard is sized to match the system keyboard, according to screen size and device orientation. A custom keyboard’s width is always set by the system to equal the current screen width. To adjust a custom keyboard’s height, change its primary view's height constraint.
Mac Keyboard Layout Diagram
The following code lines show how you might define and add such a constraint:
Note
In iOS 8.0, you can adjust a custom keyboard’s height any time after its primary view initially draws on screen.
Development Essentials for Custom Keyboards
There are two development essentials for every custom keyboard:
Designing for User Trust
Your first consideration when creating a custom keyboard must be how you will establish and maintain user trust. This trust hinges on your understanding of privacy best practices and knowing how to implement them.
Note
This section provides guidelines to help you create a custom keyboard that respects user privacy, in terms of factors under your control and described here as responsibilities. To learn about iOS program requirements, read App Store Review Guidelines, iOS Human Interface Guidelines, and iOS Developer Program License Agreement, all linked to from Apple’s App Review Support page. Also review Supporting User Privacy in App Programming Guide for iOS.
For keyboards, the following three areas are especially important for establishing and maintaining user trust:
Safety of keystroke data. Users want their keystrokes to go to the document or text field they’re typing into, and not to be archived on a server or used for purposes that are not obvious to them.
Appropriate and minimized use of other user data. If your keyboard employs other user data, such as from Location Services or the Address Book database, the burden is on you to explain and demonstrate the benefit to your users.
Accuracy. Accuracy in converting input events to text is not a privacy issue per se but it impacts trust: With every word typed, users see the accuracy of your code.
To design for trust, first consider whether to request open access. Although open access makes many things possible for a custom keyboard, it also increases your responsibilities (see Table 8-1).
If you build a keyboard without open access, the system ensures that keystrokes cannot be sent back to you or anywhere else. Use a nonnetworked keyboard if your goal is to provide normal keyboard functionality. Because of its restricted sandbox, a nonnetworked keyboard gives you a head start in meeting Apple’s data privacy guidelines and in gaining user trust.
If you enable open access (as described Configuring the Info.plist file for a Custom Keyboard), a variety of possibilities open up but your responsibilities increase as well.
Note
To submit an open-access keyboard to the App Store, you must adhere to all pertinent guidelines in the documents linked from Apple’s App Review Support page.
Each keyboard capability associated with open access carries responsibilities on your part as a developer, as indicated in Table 8-2. In general, treat user data with the greatest possible respect and do not use it for any purpose that is not obvious to the user.
An open-access keyboard and its containing app can send keystroke data to your server, which enables you to apply your computing resources to such features as touch-event processing and input prediction. If you employ this capability, do not store received keystroke or voice data beyond the time needed to provide text back to the user or to provide features that you explain to the user. Refer to Table 8-2 for additional responsibilities you have when using open-access-keyboard capabilities.
Providing a Way to Switch to Another Keyboard
When more than one keyboard is enabled, the system keyboard includes a Globe key (see Figure 8-2) that lets the user switch keyboards. Your custom keyboard may require a similar “next keyboard” key.
To determine whether your custom keyboard needs to display a “next keyboard” key, check the
needsInputModeSwitchKey property on the input view controller. If true, your keyboard should include this key.
To ask the system to switch to another keyboard, call the
advanceToNextInputMode method of the UIInputViewController class. The system picks the appropriate “next” keyboard from the list of user-enabled keyboards; there is no API to obtain a list of enabled keyboards or for picking a particular keyboard to switch to.
The Xcode Custom Keyboard template includes the
advanceToNextInputMode method as the action of its Next Keyboard key. For best user experience, place your “next keyboard” key close to the same screen location as the system keyboard’s Globe key.
Getting Started with Custom Keyboard Development
In this section you learn how to create a custom keyboard, configure it according to your goals, and run it in iOS Simulator or on a device. You’ll also learn about some UI factors to bear in mind when replacing the system keyboard.
Using the Xcode Custom Keyboard Template
The steps to create a keyboard and its containing app differ slightly from those for other app extensions. This section walks you through getting a basic keyboard up and running.
To create a custom keyboard in a containing app
You can now optionally customize the keyboard group name as it appears in the Purchased Keyboards list in Settings, as described next.
To customize the keyboard group name
Table 8-3summarizes the UI strings for your custom keyboard that you can configure in the
Info.plist files for the keyboard and its containing app.
Now you can run the template-based keyboard in iOS Simulator, or on a device, to explore its behavior and capabilities.
To run the custom keyboard and attach the Xcode debugger
Apple Macbook Pro Keyboard LayoutConfiguring the Info.plist file for a Custom Keyboard
The information property list (
Info.plist file) keys that are specific to a custom keyboard let you statically declare the salient characteristics of your keyboard, including its primary language and whether it requires open access.
To examine these keys, open an Xcode project to which you’ve added a Custom Keyboard target template. Now select the
Info.plist file in the Project navigator (the Info.plist file is in the Supporting Files folder for the keyboard target).
In source text form, the keys for a custom keyboard are as follows:
Each of these keys is explained in App Extension Keys. Use the keys in the
NSExtensionAttributes dictionary to express the characteristics and needs of your custom keyboard, as follows:
IsASCIICapable —This Boolean value, NO false by default, expresses whether a custom keyboard can insert ASCII strings into a document. Set this value to YES true if you provide a keyboard type specifically for the UIKeyboardTypeASCIICapable keyboard type trait.
PrefersRightToLeft —This Boolean value, also NO false by default, expresses whether a custom keyboard is for a right-to-left language. Set this value to YES true if your keyboard’s primary language is right-to-left.
PrimaryLanguage —This string value, en-US (English for the US) by default, expresses the primary language for your keyboard using the pattern <language>-<REGION> . You can find a list of strings corresponding to languages and regions at http://www.opensource.apple.com/source/CF/CF-476.14/CFLocaleIdentifier.c.
RequestsOpenAccess —This Boolean value, NO false by default, expresses whether a custom keyboard wants to enlarge its sandbox beyond that needed for a basic keyboard. If you request open access by setting this key’s value to YES true , your keyboard gains the following capabilities, each with a concomitant responsibility in terms of user trust:
When considering whether to set the
RequestsOpenAccess key’s value to YES true , be sure to read Designing for User Trust, which describes your responsibilities for respecting and protecting user data.
Copyright © 2018 Apple Inc. All rights reserved. Terms of Use | Privacy Policy | Updated: 2017-10-19
Comments are closed.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |