;ELC   
;;; compiled by kwzh@hal.gnu.ai.mit.edu on Tue May  3 21:52:29 1994
;;; from file /gd/gnu/emacs/19.0/lisp/page-ext.el
;;; emacs version 19.22.92.2.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19")))
    (error "`/gd/gnu/emacs/19.0/lisp/page-ext.el' was compiled for Emacs 19"))

(defvar pages-directory-buffer-narrowing-p t "\
*If non-nil, `pages-directory-goto' narrows pages buffer to entry.")
(defvar pages-directory-for-adding-page-narrowing-p t "\
*If non-nil, `add-new-page' narrows page buffer to new entry.")
(defvar pages-directory-for-adding-new-page-before-current-page-p t "\
*If non-nil, `add-new-page' inserts new page before current page.")
(defvar pages-addresses-file-name "~/addresses" "\
*Standard name for file of addresses. Entries separated by page-delimiter.
Used by `pages-directory-for-addresses' function.")
(defvar pages-directory-for-addresses-goto-narrowing-p t "\
*If non-nil, `pages-directory-goto' narrows addresses buffer to entry.")
(defvar pages-directory-for-addresses-buffer-keep-windows-p t "\
*If nil, `pages-directory-for-addresses' deletes other windows.")
(defvar pages-directory-for-adding-addresses-narrowing-p t "\
*If non-nil, `add-new-page' narrows addresses buffer to new entry.")
(global-unset-key "")
(defvar ctl-x-ctl-p-map (make-sparse-keymap) "\
Keymap for subcommands of C-x C-p, which are for page handling.")
(byte-code "ﾀ	ﾂﾃ#暗\fM安\fﾅﾆ#安\fﾂﾇ#安\fﾈﾉ#安\fﾊﾋ#安\fﾌﾍ#安\fﾎﾏ#安\fﾐﾑ#安\fﾒﾓ#安\fﾔﾕ#" [define-key ctl-x-map "" ctl-x-ctl-p-prefix ctl-x-ctl-p-map "" next-page previous-page "" add-new-page "" mark-page "" search-pages "s" sort-pages-buffer "\f" set-page-delimiter "" pages-directory "d" pages-directory-for-addresses] 4)
(defalias 'next-page #[(&optional count) " ﾁ~ﾂV$ m$ ﾃ\fﾅﾆ# dbS	 ﾁWエ oЖ ﾇ\fﾅﾆ#= ﾂ巴@ ebT% ﾈ eb伊ﾂ!" [count 1 0 re-search-forward page-delimiter nil t re-search-backward narrow-to-page recenter] 5 "\
Move to the next page bounded by the `page-delimiter' variable.
With arg (prefix if interactive), move that many pages." "p"])
(defalias 'previous-page #[(&optional count) " ﾁﾂ[!" [count 1 next-page] 2 "\
Move to the previous page bounded by the `page-delimiter' variable.
With arg (prefix if interactive), move that many pages." "p"])
(defalias 'add-new-page #[(header-line) "~ﾁ= \n ﾃ  ﾃ 案 m ﾅy~\nグ ﾆﾈﾉ#5 ﾊ巴０ eb依ﾌﾍ!@ﾎ=I ﾏﾈO\"ceb威ﾑ!Ч ﾏy依ﾒﾍ!@ﾎ=i ﾏﾈO#c闇yx ﾕ " [major-mode pages-directory-mode pages-directory-for-adding-new-page-before-current-page-p pages-directory-goto forward-page -1 re-search-backward page-delimiter nil t 0 format "%s\n" read-from-string ^ 1 looking-at "^." "%s\n%s\n\n\n" header-line pages-directory-for-adding-page-narrowing-p narrow-to-page] 5 "\
Insert new page.  Prompt for header line.

If point is in the pages directory buffer, insert the new page in the
buffer associated with the directory.

Insert the new page just before current page if
  pages-directory-for-adding-new-page-before-current-page-p  variable
is non-nil.  Else insert at exact location of point.

Narrow to new page if
  pages-directory-for-adding-page-narrowing-p variable
is non-nil.

Page begins with a `^L' as the default page-delimiter.  
Use \\[set-page-delimiter] to change the page-delimiter.
Point is left in the body of page." "sHeader line: "])
(defvar pages-last-search nil "\
Value of last regexp searched for.  Initially, nil.")
(defalias 'search-pages #[(regexp) "ﾁ噬 \n ~暗!案 " [regexp "" pages-last-search re-search-forward narrow-to-page] 2 "\
Search for REGEXP, starting from point, and narrow to page it is in." (list (read-string (format "Search for `%s' (end with RET): " (or pages-last-search "regexp"))))])
(autoload (quote sort-subr) "sort" "\
Primary function for sorting." t nil)
(defalias 'sort-pages-in-region #[(reverse beg end) "	}eb按ﾄﾅ#)" [beg end sort-subr reverse #[nil "ﾀ	ﾂﾃ#案ﾂw" [re-search-forward page-delimiter nil t " 	\n"] 4] #[nil "ﾀ	ﾂﾃ#ソf ﾄ巴db" [re-search-forward page-delimiter nil t 0] 4]] 4 "\
Sort pages in region alphabetically.  Prefix arg means reverse order.  

Called from a program, there are three arguments:
REVERSE (non-nil means reverse order), BEG and END (region to sort)." "P\nr"])
(defalias 'sort-pages-buffer #[(&optional reverse) " ﾁ~edﾄ\n#*" [reverse nil end beginning sort-pages-in-region] 4 "\
Sort pages alphabetically in buffer.  Prefix arg means reverse order. 
(Non-nil arg if not interactive.)" "P"])
(defvar pages-directory-previous-regexp nil "\
Value of previous regexp used by `pages-directory'.
(This regular expression may be used to select only those pages that
contain matches to the regexp.)")
(defvar pages-buffer nil "\
The buffer for which the pages-directory function creates the directory.")
(defvar pages-directory-prefix "*Directory for:" "\
Prefix of name of temporary buffer for pages-directory.")
(defvar pages-pos-list nil "\
List containing the positions of the pages in the pages-buffer.")
(defvar pages-directory-map nil "\
Keymap for the pages-directory-buffer.")
(byte-code " ﾁ ﾂﾃﾄ#按ﾅﾆ#庵" [pages-directory-map make-sparse-keymap define-key "" pages-directory-goto "" add-new-page] 4)
(defvar original-page-delimiter "^\f" "\
Default page delimiter.")
(defalias 'set-page-delimiter #[(regexp reset-p) "ﾀﾁ!安ﾂ!	 \n \f 	t! ﾅﾆ\n\"" [make-local-variable original-page-delimiter page-delimiter reset-p regexp message "The value of `page-delimiter' is now: %s"] 3 "\
Set buffer local value of page-delimiter to REGEXP.
Called interactively with a prefix argument, reset `page-delimiter' to
its original value.

In a program, non-nil second arg causes first arg to be ignored and
resets the page-delimiter to the original value." (byte-code " 	ﾂDﾃﾄ\"ﾆD" [current-prefix-arg original-page-delimiter "^\f" read-string "Set page-delimiter to regexp: " page-delimiter nil] 3)])
(defalias 'pages-directory #[(pages-list-all-headers-p count-lines-p &optional regexp) "ﾁ噬 \n t ﾃﾄﾅ \"pﾇﾅ Qﾈ`ﾉ\n\f衰q威 尉ﾒｱﾔ)メ 各b穴ﾗﾔﾙ#)ツ ﾉ畔Uツ ﾉ秒移 維!)ﾗﾔﾙ#マ ﾛ!Ｍ )ぜ 各b顧 陥ﾔﾙ#) ﾛ!)ﾗﾔﾙ#ｹ 顧 陥ﾔﾙ#)Ψ ﾛ!)ｙ )qtﾑ ﾃﾝGﾅ!#争ﾞ!衣ﾉ!\nﾉU ﾈる \ny-" [regexp "" pages-directory-previous-regexp message "Creating directory for: %s " buffer-name pages-directory-prefix " " 1 0 pages-buffer-original-page pages-buffer-original-position linenum pages-directory-buffer target-buffer standard-output pages-directory-mode "==== Pages Directory: use `C-c C-c' to go to page under cursor. ====" 10 pages-buffer nil pages-pos-list pages-list-all-headers-p re-search-forward page-delimiter t narrow-to-page pages-copy-header-and-position count-lines-p "%d matching lines in: %s" pop-to-buffer sit-for] 6 "\
Display a directory of the page headers in a temporary buffer.
A header is the first non-blank line after the page-delimiter.
\\[pages-directory-mode]
You may move point to one of the lines in the temporary buffer,
then use \\<pages-directory-goto> to go to the same line in the pages buffer.

In interactive use:

    1. With no prefix arg, display all headers.

    2. With prefix arg, display the headers of only those pages that
       contain matches to a regular expression for which you are
       prompted.

    3. With numeric prefix arg, for every page, print the number of
       lines within each page.

    4. With negative numeric prefix arg, for only those pages that
       match a regular expression, print the number of lines within
       each page.

When called from a program, non-nil first arg means list all headers;
non-nil second arg means print numbers of lines in each page; if first
arg is nil, optional third arg is regular expression.

If the buffer is narrowed, the `pages-directory' command creates a
directory for only the accessible portion of the buffer." (byte-code "	 ﾁﾂ右< ﾂ嘉ﾄﾅ ﾇ\"!Eﾈ!ﾉV* ﾁ可Eﾈ!ﾉW@ ﾂﾁﾃﾄﾅ= ﾇ\"!E" [current-prefix-arg t nil read-string format "Select according to `%s' (end with RET): " pages-directory-previous-regexp "regexp" prefix-numeric-value 0] 6)])
(defalias 'pages-copy-header-and-position #[(count-lines-p) "ﾀ 褐ﾄ 闇ed\"*`X T簡ﾀw伊 `ﾀ嶋`澗`)\n\fq\nBﾎ\n#*セ 諌y尉ﾒ	\"c)ﾓ )ﾔ*" [nil line-count position count-lines-p narrow-to-page count-lines pages-buffer-original-position pages-buffer-original-page " 	\n" make-marker end start standard-output pages-pos-list insert-buffer-substring target-buffer 0 format "%3d: " terpri 1] 5 "\
Copy page header and its position to the Pages Directory.
Only arg non-nil, count lines in page and insert before header.
Used by `pages-directory' function."])
(defalias 'pages-directory-mode #[nil "ﾀ 庵\n!暗ﾅﾇﾈ!杏ﾉ!杏ﾊ!" [kill-all-local-variables use-local-map pages-directory-map pages-directory-mode major-mode "Pages-Directory" mode-name make-local-variable pages-buffer pages-pos-list pages-directory-buffer-narrowing-p] 2 "\
Mode for handling the pages-directory buffer.

Move point to one of the lines in this buffer, then use \\[pages-directory-goto] to go
to the same line in the pages buffer."])
(defalias 'pages-directory-goto #[nil "ソn ﾁ! ﾂﾂﾄﾅ!鞍y杏e`\"S8	m\n\fﾍ!~\n9 db? ﾎ	!b\fF ﾏ ," [pages-buffer buffer-name nil pages-pos-list error "Buffer in which pages were found is deleted." 0 count-lines pages-number pos end-of-directory-p pages-directory-buffer-narrowing-p narrowing-p pop-to-buffer marker-position narrow-to-page] 4 "\
Go to the corresponding line in the pages buffer." nil])
(defalias 'pages-directory-for-addresses #[(&optional filename) "t ﾀﾁ\n \"案\n !ク ﾅﾆ\n !!q~杏ﾈﾉ#位 \f9 ﾎ 各b`緩`)|委c威ﾉ!)ﾑﾒ!" [message "Creating directory for: %s " filename pages-addresses-file-name file-exists-p find-file-noselect expand-file-name pages-directory t nil pages-directory-address-mode pages-directory-for-addresses-goto-narrowing-p pages-directory-buffer-narrowing-p pages-directory-for-addresses-buffer-keep-windows-p delete-other-windows "=== Address List Directory: use `C-c C-c' to go to page under cursor. ===" set-buffer-modified-p error "No addresses file found!"] 4 "\
Find addresses file and display its directory.
By default, create and display directory of `pages-addresses-file-name'.
Optional argument is FILENAME.  In interactive use, with prefix
argument, prompt for file name and provide completion.

Move point to one of the lines in the displayed directory,
then use \\[pages-directory-goto] to go to the same line
in the addresses buffer.

If    pages-directory-for-addresses-goto-narrowing-p    is non-nil,
`pages-directory-goto' narrows addresses buffer to entry.

If    pages-directory-for-addresses-buffer-keep-windows-p     is nil,
this command deletes other windows when it displays the addresses 
directory." (list (if current-prefix-arg (read-file-name "Filename: " pages-addresses-file-name)))])
(defalias 'pages-directory-address-mode #[nil "ﾀ	!按ﾄﾆﾇ!鞍ﾈ!鞍ﾉ!" [use-local-map pages-directory-map pages-directory-address-mode major-mode "Addresses Directory" mode-name make-local-variable pages-buffer pages-pos-list pages-directory-buffer-narrowing-p] 2 "\
Mode for handling the Addresses Directory buffer.

Move point to one of the lines in this buffer,
then use \\[pages-directory-goto] to go
to the same line in the pages buffer."])
(provide (quote page-ext))
