@c $Id$ @node Using Online Help @chapter Using Online Help With Emacspeak. Emacs provides an extensive online help system for helping you learn about various aspects of using Emacs. Emacspeak provides online help for its various extensions using this same help system. This chapter explains how to use the online help facilities in order to empower you in discovering powerful and versatile working techniques that will make you more and more productive in your day to day computing. The online help options are accessed via the @kbd{C-h} prefix key, which must be followed by an additional letter or control character to designate the kind of help desired. For example, @kbd{C-h t} @code{help-with-tutorial} visits the Emacs tutorial in a new buffer; @kbd{C-h i} @code{info} enters the Info documentation system, from which you can read Texinfo manuals that have been installed on your system, including the Emacs and Emacspeak documentation; and @kbd{C-h k} @code{describe-key} provides a description of the Emacs function which is bound to the next key that you type. For learning about the various options that are available via the @kbd{C-h} mechanism described above, view the online help for command @code{help-for-help} bound to @kbd{C-h C-h} ---using what has been described so far, you would achieve this by pressing @kbd{C-h k} followed by @kbd{C-h C-h}. Emacspeak users should note that online help is typically displayed in a separate Emacs window. Where it makes sense to do so, Emacspeak will automatically speak the displayed help. Once you've asked for help, you can have the displayed documentation as many times as you wish using Emacspeak command @code{emacspeak-speak-help} bound to @kbd{C-e h}. If you want to move through the displayed help a line at a time, switch to the buffer where the help is displayed --the buffer is called @code{*Help*}. Often, in adding an auditory interface to an Emacs extension, such as a web browser or mail reader, Emacspeak defines additional commands and key bindings which enhance the functionality of the spoken feedback provided by the application. This manual does not purport to document all such commands. It is important, therefore, when learning to use the various Emacs extensions which comprise the `audio desktop' (@pxref{Audio Desktop}) that you take advantage of online help to obtain details of any context-specific features provided by Emacspeak. The following two commands are of particular importance in this regard: @itemize @bullet @item @kbd{C-h m} @code{describe-mode} explains which major and minor modes are currently in effect, and lists the commands and key bindings associated with them. @item @kbd{C-h b} @code{describe-bindings} lists all of the key bindings which are currently defined. @end itemize The importance of these help functions can be illustrated by the Emacs/W3 web browser. When point is positioned inside a table, certain key bindings are established with which you can access Emacspeak commands that make it possible to read the rows and columns of the table and explore its structure efficiently. To get a description of these key bindings, you can use W3 to visit the sample HTML file supplied as part of the Emacspeak distribution, and, after having moved point onto the first row of the table, issue the command @kbd{C-h m} @code{describe-mode} to create a help buffer containing an explanation of the features offered by W3 mode. Emacspeak supplements the online help facilities available within Emacs by defining several commands of its own, as follows: @itemize @bullet @item @kbd{C-h c-e} @code{describe-emacspeak} presents a list of standard Emacspeak commands. @item @kbd{C-e F} @code{emacspeak-view-emacspeak-faq} opens a new buffer containing the Emacspeak FAQ, a list of frequently asked questions about Emacspeak together with their answers. @item @kbd{C-e C-h} @code{emacspeak-learn-mode} enters a mode in which the function of every key that you type is spoken; this mode can be terminated with the @kbd{C-g} @code{keyboard-quit} command. @item @kbd{M-x emacspeak-generate-documentation} prompts for the name of a file in which it saves an automatically generated summary of all Emacspeak commands. @end itemize