GNU Info

Info Node: (sc)Reply Buffer Initialization

(sc)Reply Buffer Initialization


Next: Filling Cited Text Prev: Replying and Yanking Up: Replying and Yanking
Enter node , (file) or (file)node

Reply Buffer Initialization
===========================

   Executing `sc-cite-original' performs the following steps as it
initializes the reply buffer:

  1. _Runs `sc-pre-hook'._ This hook variable is run before
     `sc-cite-original' does any other work.  You could conceivably use
     this hook to set certain Supercite variables based on the reply
     buffer's mode or name (i.e., to do something different based on
     whether you are replying or following up to an article).

  2. _Inserts Supercite's keymap._ Supercite provides a number of
     commands for performing post-yank modifications to the reply
     buffer.  These commands are installed on Supercite's top-level
     keymap.  Since Supercite has to interface with a wide variety of
     MUAs, it does not install all of its commands directly into the
     reply buffer's keymap.  Instead, it puts its commands on a keymap
     prefix, then installs this prefix onto the buffer's keymap.  What
     this means is that you typically have to type more characters to
     invoke a Supercite command, but Supercite's key bindings can be
     made much more consistent across MUAs.

     You can control what key Supercite uses as its keymap prefix by
     changing the variable `sc-mode-map-prefix'.  By default, this
     variable is set to `C-c C-p'; a finger twister perhaps, but
     unfortunately the best default due to the scarcity of available
     key bindings in many MUAs.

  3. _Turns on Supercite minor mode._ The modeline of the reply buffer
     should indicate that Supercite is active in that buffer by
     displaying the string `SC'.

  4. _Sets the "Undo Boundary."_ Supercite sets an undo boundary before
     it begins to modify the original yanked text.  This allows you to
     easily undo Supercite's changes to affect alternative citing
     styles.

  5. _Processes the mail headers._ All previously retrieved info
     key-value pairs are deleted from the info alist, then the mail
     headers in the body of the yanked message are scanned. Info
     key-value pairs are created for each header found. Also, such
     useful information as the author's name and email address are
     extracted.  If the variable `sc-mail-warn-if-non-rfc822-p' is
     non-`nil', then Supercite will warn you if it finds a mail header
     that does not conform to RFC822.  This is rare and indicates a
     problem either with your MUA or the original author's MUA, or some
     MTA (mail transport agent) along the way.

     Once the info keys have been extracted from the mail headers, the
     headers are nuked from the reply buffer.  You can control exactly
     which headers are removed or kept, but by default, all headers are
     removed.

     There are two variables which control mail header nuking.  The
     variable `sc-nuke-mail-headers' controls the overall behavior of
     the header nuking routines.  By setting this variable to `'all',
     you automatically nuke all mail headers.  Likewise, setting this
     variable to `'none' inhibits nuking of any mail headers.  In
     between these extremes, you can tell Supercite to nuke only a
     specified list of mail headers by setting this variable to
     `'specified', or to keep only a specified list of headers by
     setting it to `'keep'.

     If `sc-nuke-mail-headers' is set to `'specified' or `'keep', then
     the variable `sc-nuke-mail-header-list' is consulted for the list
     of headers to nuke or keep.  This variable contains a list of
     regular expressions.  If the mail header line matches a regular
     expression in this list, the header will be nuked or kept.  The
     line is matched against the regexp using `looking-at' rooted at
     the beginning of the line.

     If the variable `sc-blank-lines-after-headers' is non-`nil', it
     contains the number of blank lines remaining in the buffer after
     mail headers are nuked.  By default, only one blank line is left
     in the buffer.

  6. _Selects the attribution and citation strings._ Once the mail
     headers have been processed, Supercite selects a attribution
     string and a citation string which it will use to cite the
     original message.  Note: Selecting an Attribution, for details.

  7. _Cites the message body._ After the selection of the attribution
     and citation strings, Supercite cites the original message by
     inserting the citation string prefix in front of every uncited
     line.  You may not want Supercite to automatically cite very long
     messages however.  For example, some email could contain a smaller
     header section followed by a huge uuencoded message.  It wouldn't
     make sense to cite the uuencoded message part when responding to
     the original author's short preface.  For this reason, Supercite
     provides a variable which limits the automatic citation of long
     messages to a certain maximum number of lines.  The variable is
     called `sc-cite-region-limit'.  If this variable contains an
     integer, messages with more lines that this will not be cited at
     all, and a warning message will be displayed.  Supercite has
     performed everything necessary, though, for you to manually cite
     only the small portion of the original message that you want to
     use.

     If `sc-cite-region-limit' contains a non-`nil' value, the original
     message will always be cited, regardless of its size.  If the
     variable contains the value `nil', the region will never be cited
     automatically.  Use this if you always want to be able to edit and
     cite the message manually.

     The variable `sc-cite-blank-lines-p' controls whether blank lines
     in the original message should be cited or not.  If this variable
     is non-`nil', blank lines will be cited just like non-blank lines.
     Otherwise, blank lines will be treated as paragraph separators.

     Citing of the original message is highly configurable. Supercite's
     default setup does a pretty good job of citing many common forms of
     previously cited messages.  But there are as many citation styles
     out there as people on the net, or just about!  It would be
     impossible for Supercite to anticipate every style in existence,
     and you probably wouldn't encounter them all anyway.  But you can
     configure Supercite to recognize those styles you see often.
     Note: Configuring the Citation Engine, for details.

  8. _Runs `sc-post-hook'._ This variable is very similar to
     `sc-pre-hook', except that it runs after `sc-cite-original' is
     finished. This hook is provided mostly for completeness and
     backward compatibility. Perhaps it could be used to reset certain
     variables set in `sc-pre-hook'.


automatically generated by info2www version 1.2.2.9