Email This Page
visitors (intermediate)
Access keys are keyboard shortcuts for tasks that would otherwise require a mouse. They are part of markup that may exist on any webpage, but on PmWiki steps have been taken to make it easier to use access keys throughout a site, and to make it possible to adjust key assignments to accommodate different languages and preferences.
Using access keys in different operating systems and browsers
In most cases, access keys require users to hold down one key — Alt, on Windows, and Ctrl, on Macintosh — and then press a second key (the “access key”). Exceptions exist for specific browsers, and specific versions. For example, Internet Explorer requires that the Enter key be pressed at the end of the sequence for versions 5 and up under Windows, but not under Macintosh (where access keys were not supported until after version 4.5). For Opera, which makes extensive use of keyboard shortcuts for its own operation, access keys are invoked by pressing Shift and Escape before the selected access key character (without the Alt key). Note, in cases of conflicts between the keyboard shortcuts assigned by browsers and access keys assigned by links and other markup on webpages, many browsers, including Mozilla, Netscape and Internet Explorer, allow access keys to override the browser defaults and require a different sequence to continue using overridden browser assignments (typically, by pressing and releasing the Alt key, instead of holding it down).
To simplify the description below, these basic keyboard combinations, and exceptions, are referred to generally as “Akey+” on this page. If you are using a Mac, just think Ctrl+, and if you are using a PC, think Alt+, unless you are using a browser that requires something else.
List of access key assignments in default PmWiki installation
The following is a list of the access keys that are used by PmWiki in default English language installations. Each of the letters identified below must be used together with the AKey+ combination for your operating system and browser.
Key | Function |
e | edit |
h | history |
c | recent changes |
s | save page |
u | save and keep editing |
p | preview page |
i | emphasized text (italic) |
b | strong text (bold) |
, | jump to edit textarea (when in edit modes) |
Customizing access keys
The default access key values can be changed by site administrators using the string mapping methods to customize a site for other languages by modifying the config.php file. See Internationalizations. Individuals who want to customize the keys used by their browser can use a similar string mapping approach by posting a special query parameter that sets a cookie on their browser. See Site.Preferences.
Note that at least some skins (e.g., Lean) also specify access keys within their own template files (*.tmpl), using the accesskey attribute with the Edit, History, etc. links on the page. In order to change the access keys when using these skins, it seems one must edit the template file itself.
admins (intermediate)
Access key string mapping variables
PmWiki uses the same “phrase translation” tables for access key mappings as it does for internationalization. This makes it possible for administrators, skins, language translators, and visitors to all influence the way that specific keys are mapped to actions. By convention, the translation phrases for all of the access key actions start with the characters “ak_”, so that the page variable “$[ak_edit]
” is replaced by the access key for editing as defined by the current preferences, language, skin default, or site default.
Here is a listing of the access key translation phrases defined by PmWiki 2.1 (and their current translation values). Note that some actions do not have a corresponding access key by default.
Phrase | Key |
ak_view |
ak_edit | e |
ak_history | h |
ak_print |
ak_recentchanges | c |
ak_save | s |
ak_saveedit | u |
ak_preview | p |
ak_savedraft | d |
ak_em |
ak_strong |
Implementation of access keys
Access keys are implemented in html as optional parameters that can be added to links and many other types of markup.
Example: <a href="http://example.com" accesskey="x">Example</a>
would create a link to example.com that could be triggered by clicking on the linked word “example” or using the access key Akey+x. That same action key link could be created in PmWiki markup by typing %item accesskey="x"%[[http://example.com|Example]]
, like this: Example. Try it and see if it works. Note that this AKey+x access key only works this way on this page, because it is simply a shortcut for accessing the link that exists only on this page.
The list of access key assignments in default PmWiki installations generally work throughout a site because links have been created in PmWiki skins and editing screens that incorporate access key parameters using the access key translation phrases. One location where those links can be viewed is Site.PageActions. That page contains the links that the default PmWiki skin, and many other skins, use to generate links such as “View” “Edit” and “History” that appear on most pages (other than editing screens). Each of the links in that page also has an %accesskey=$[ak_xxx]%
declaration in front of it, which enables a specific access key for that link.
visitors (intermediate)
Q How can I change the keyboard shortcuts for editing and saving a page?
The default access key values can be changed by site administrators using the string mapping methods to customize a site for other languages by modifying the config.php file. See Internationalizations. Individuals who want to customize the keys used by their browser can use a similar string mapping approach by posting a special query parameter that sets a cookie on their browser. See Site.Preferences.