eintr: Finding More

 
 4.1 Finding More Information
 ============================
 
 In this walk-through, I will describe each new function as we come to
 it, sometimes in detail and sometimes briefly.  If you are interested,
 you can get the full documentation of any Emacs Lisp function at any
 time by typing ‘C-h f’ and then the name of the function (and then
 <RET>).  Similarly, you can get the full documentation for a variable by
 typing ‘C-h v’ and then the name of the variable (and then <RET>).
 
    Also, ‘describe-function’ will tell you the location of the function
 definition.
 
    Put point into the name of the file that contains the function and
 press the <RET> key.  In this case, <RET> means ‘push-button’ rather
 than “return” or “enter”.  Emacs will take you directly to the function
 definition.
 
    More generally, if you want to see a function in its original source
 file, you can use the ‘xref-find-definitions’ function to jump to it.
 ‘xref-find-definitions’ works with a wide variety of languages, not just
 Lisp, and C, and it works with non-programming text as well.  For
 example, ‘xref-find-definitions’ will jump to the various nodes in the
 Texinfo source file of this document.
 
    To use the ‘xref-find-definitions’ command, type ‘M-.’ (i.e., press
 the period key while holding down the <META> key, or else type the <ESC>
 key and then type the period key), and then, at the prompt, type in the
 name of the function whose source code you want to see, such as
 ‘mark-whole-buffer’, and then type <RET>.  Emacs will switch buffers and
 display the source code for the function on your screen.  To switch back
 to your current buffer, type ‘C-x b <RET>’.  (On some keyboards, the
 <META> key is labeled <ALT>.)
 
    Incidentally, the files that contain Lisp code are conventionally
 called “libraries”.  The metaphor is derived from that of a specialized
 library, such as a law library or an engineering library, rather than a
 general library.  Each library, or file, contains functions that relate
 to a particular topic or activity, such as ‘abbrev.el’ for handling
 abbreviations and other typing shortcuts, and ‘help.el’ for help.
 (Sometimes several libraries provide code for a single activity, as the
 various ‘rmail...’ files provide code for reading electronic mail.)  In
 ‘The GNU Emacs Manual’, you will see sentences such as “The ‘C-h p’
 command lets you search the standard Emacs Lisp libraries by topic
 keywords.”