;;; compiled by rms@mole.gnu.ai.mit.edu on Sun May 16 11:50:25 1993
;;; from file /home/fsf/rms/e19/lisp/paragraphs.el
;;; emacs version 19.6.1.
;;; bytecomp version FSF 2.08
;;; optimization is on.

(defconst paragraph-start "^[ 	\n]" "\
*Regexp for beginning of a line that starts OR separates paragraphs.")
(defconst paragraph-separate "^[ 	]*$" "\
*Regexp for beginning of a line that separates paragraphs.
If you change this, you may have to change paragraph-start also.")
(defconst sentence-end (purecopy "[.?!][]\"')}]*\\($\\| $\\|	\\|  \\)[ 	\n]*") "\
*Regexp describing the end of a sentence.
All paragraph boundaries also end sentences, regardless.

In order to be recognized as the end of a sentence, the ending period,
question mark, or exclamation point must be followed by two spaces,
unless it's inside some sort of quotes or parenthesis.")
(defconst page-delimiter "^" "\
*Regexp describing line-beginnings that separate pages.")
(defvar paragraph-ignore-fill-prefix nil "\
Non-nil means the paragraph commands are not affected by `fill-prefix'.
This is desirable in modes where blank lines are the paragraph delimiters.")
(defalias 'forward-paragraph #[(&optional arg) " \n \n\"? ? \n!* R, W !F `Se]# !!o` !` !N   !o ! ! !h o? # m ! ! `Zf= ! ebT/ V!m? !!  m!!! #!bdbS *" [arg 1 fill-prefix equal "" paragraph-ignore-fill-prefix regexp-quote fill-prefix-regexp paragraph-separate "\\|^" "[ 	]*$" 0 looking-at re-search-backward "^\n" t forward-char -1 forward-line end-of-line paragraph-start nil 2 10 re-search-forward match-beginning] 5 "\
Move forward to end of paragraph.
With arg N, do it N times; negative arg -N means move forward N paragraphs.

A line which `paragraph-start' matches either separates paragraphs
(if `paragraph-separate' matches it also) or is the first line of a paragraph.
A paragraph end is the beginning of a line which is not part of the paragraph
to which the end of the previous line belongs, or the end of the buffer." "p"])
(defalias 'backward-paragraph #[(&optional arg) " [!" [arg 1 forward-paragraph] 2 "\
Move backward to start of paragraph.
With arg N, do it N times; negative arg -N means move forward N paragraphs.

A paragraph start is the beginning of a line which is a
`first-line-of-paragraph' or which is ordinary text and follows a
paragraph-separating line; except: if the first real line of a
paragraph is preceded by a blank line, the paragraph starts at that
blank line.

See `forward-paragraph' for more information." "p"])
(defalias 'mark-paragraph #[nil "!ĉ#!" [forward-paragraph 1 push-mark nil t backward-paragraph] 4 "\
Put point at beginning of this paragraph, mark at end.
The paragraph marked is the one that contains point or follows point." nil])
(defalias 'kill-paragraph #[(arg) "`\n!`)\"" [kill-region forward-paragraph arg] 4 "\
Kill forward to end of paragraph.
With arg N, kill forward to Nth end of paragraph;
negative arg -N means kill backward to Nth start of paragraph." "p"])
(defalias 'backward-kill-paragraph #[(arg) "`\n!`)\"" [kill-region backward-paragraph arg] 4 "\
Kill back to start of paragraph.
With arg N, kill back to Nth start of paragraph;
negative arg -N means kill forward to Nth end of paragraph." "p"])
(defalias 'transpose-paragraphs #[(arg) "\n\"" [transpose-subr forward-paragraph arg] 3 "\
Interchange this (or next) paragraph with previous one." "*p"])
(byte-code "MM" [start-of-paragraph-text #[nil "`!`!`\nY% 	\nW% 	b	eV%  *" [nil npoint opoint forward-paragraph -1 skip-chars-forward " 	\n" start-of-paragraph-text] 2] end-of-paragraph-text #[nil "`!h= !`X\" !`dW\"  )" [opoint forward-paragraph 1 10 forward-char -1 end-of-paragraph-text] 2]] 2)
(defalias 'forward-sentence #[(&optional arg) " W2  `)P#' !Sb* b)T V]  `)#Q !U b)S3 " [arg 1 0 start-of-paragraph-text par-beg re-search-backward sentence-end "[^ 	\n]" t match-end end-of-paragraph-text par-end re-search-forward skip-chars-backward " 	\n"] 5 "\
Move forward to next `sentence-end'.  With argument, repeat.
With negative argument, move backward repeatedly to `sentence-beginning'.

The variable `sentence-end' is a regular expression that matches ends of
sentences.  Also, every paragraph boundary terminates sentences as well." "p"])
(defalias 'backward-sentence #[(&optional arg) " [!" [arg 1 forward-sentence] 2 "\
Move backward to start of sentence.  With arg, do it arg times.
See `forward-sentence' for more information." "p"])
(defalias 'kill-sentence #[(&optional arg) "`\n!`)\"" [kill-region forward-sentence arg] 4 "\
Kill from point to end of sentence.
With arg, repeat; negative arg -N means kill back to Nth start of sentence." "*p"])
(defalias 'backward-kill-sentence #[(&optional arg) "`\n!`)\"" [kill-region backward-sentence arg] 4 "\
Kill back from point to start of sentence.
With arg, repeat, or kill forward to Nth end of sentence if negative arg -N." "*p"])
(defalias 'mark-end-of-sentence #[(arg) "\n!`)#" [push-mark forward-sentence arg nil t] 4 "\
Put mark at end of sentence.  Arg works as in `forward-sentence'." "p"])
(defalias 'transpose-sentences #[(arg) "\n\"" [transpose-subr forward-sentence arg] 3 "\
Interchange this (next) and previous sentence." "*p"])
