;ELC   
;;; Compiled by buildd@akateko.buildd on Fri Oct 25 13:48:02 2013
;;; from file /build/buildd/emacs23-23.4+1/debian/build-x/lisp/register.el
;;; in Emacs version 23.4
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\301\302\303#\210\301\304\303#\210\301\305\303#\210\301\306\307#\210\301\310\311#\210\301\312\311#\210\301\313\314#\210\301\315\314#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\207" [ctl-x-r-map define-key " " point-to-register [67108896] " " "j" jump-to-register "s" copy-to-register "x" "i" insert-register "g" "r" copy-rectangle-to-register "n" number-to-register "+" increment-register "w" window-configuration-to-register "f" frame-configuration-to-register] 4)
#@644 Alist of elements (NAME . CONTENTS), one for each Emacs register.
NAME is a character (a number).  CONTENTS is a string, number, marker or list.
A list of strings represents a rectangle.
A list of the form (file . FILE-NAME) represents the file named FILE-NAME.
A list of the form (file-query FILE-NAME POSITION) represents
 position POSITION in the file named FILE-NAME, but query before
 visiting it.
A list of the form (WINDOW-CONFIGURATION POSITION)
 represents a saved window configuration plus a saved value of point.
A list of the form (FRAME-CONFIGURATION POSITION)
 represents a saved frame configuration plus a saved value of point.
(defvar register-alist nil (#$ . 1070))
#@67 Return contents of Emacs register named REGISTER, or nil if none.
(defalias 'get-register #[(register) "	\236A\207" [register register-alist] 2 (#$ . 1759)])
#@149 Set contents of Emacs register named REGISTER to VALUE.  Returns VALUE.
See the documentation of the variable `register-alist' for possible VALUEs.
(defalias 'set-register #[(register value) "	\236\211\203 \n\241\210\202 B	B)\207" [register register-alist aelt value] 3 (#$ . 1925)])
#@236 Store current location of point in register REGISTER.
With prefix argument, store current frame configuration.
Use \[jump-to-register] to go to that location or restore that configuration.
Argument is a character, naming the register.
(defalias 'point-to-register #[(register &optional arg) "\302\303\304\305\306$\210\307	\203 \310 \311 D\202 \311 \"\207" [register arg add-hook kill-buffer-hook register-swap-out nil t set-register current-frame-configuration point-marker] 5 (#$ . 2225) "cPoint to register: \nP"])
#@176 Store the window configuration of the selected frame in register REGISTER.
Use \[jump-to-register] to restore the configuration.
Argument is a character, naming the register.
(defalias 'window-configuration-to-register #[(register &optional arg) "\301\302 \303 D\"\207" [register set-register current-window-configuration point-marker] 4 (#$ . 2752) "cWindow configuration to register: \nP"])
#@168 Store the window configuration of all frames in register REGISTER.
Use \[jump-to-register] to restore the configuration.
Argument is a character, naming the register.
(defalias 'frame-configuration-to-register #[(register &optional arg) "\301\302 \303 D\"\207" [register set-register current-frame-configuration point-marker] 4 (#$ . 3153) "cFrame configuration to register: \nP"])
(defalias 'register-to-point 'jump-to-register)
#@545 Move point to location stored in a register.
If the register contains a file name, find that file.
(To put a file name in a register, you must use `set-register'.)
If the register contains a window configuration (one frame) or a frame
configuration (all frames), restore that frame or all frames accordingly.
First argument is a character, naming the register.
Optional second arg non-nil (interactively, prefix argument) says to
delete any existing frames that the frame configuration doesn't mention.
(Otherwise, these frames are iconified.)
(defalias 'jump-to-register #[(register &optional delete) "\305!\211:\203! \306	@!\203! \307	@\n?\"\210	\211A@)b\202\272 	:\203< \310	@!\203< \311	@!\210	\211A@)b\202\272 \312	!\203W \313	!\204L \314\315!\210\316\313	!!\210	b\202\272 	:\203j 	@\317=\203j \320	A!\202\272 	:\203\232 	@\321=\203\232 \322	A@!\204\215 \323\324\325	A@\"!\204\215 \314\326!\210\320	A@!\210\327	8b\202\272 \330\331!\203\267 \f\203\267 \331	!\203\267 \316\332	!!\210\333	!b\202\272 \314\334!)\207" [register val delete x semantic-mode get-register frame-configuration-p set-frame-configuration window-configuration-p set-window-configuration markerp marker-buffer error "That register's buffer no longer exists" switch-to-buffer file find-file file-query find-buffer-visiting y-or-n-p format "Visit file %s again? " "Register access aborted" 2 fboundp semantic-foreign-tag-p semantic-tag-buffer semantic-tag-start "Register doesn't contain a buffer position or configuration"] 5 (#$ . 3591) "cJump to register: \nP"])
#@66 Turn markers into file-query references when a buffer is killed.
(defalias 'register-swap-out #[nil "\2052 	\304\211\2030 @\305\nA!\203) \306\nA!p=\203) \n\307\310\nA!E\241\210A\211\204\f *\304\207" [buffer-file-name register-alist elem #1=#:--cl-dolist-temp-- nil markerp marker-buffer file-query marker-position] 6 (#$ . 5139)])
#@276 Store a number in a register.
Two args, NUMBER and REGISTER (a character, naming the register).
If NUMBER is nil, a decimal number is read from the buffer starting
at point, and point moves to the end of that number.
Interactively, NUMBER is the prefix arg (none means nil).
(defalias 'number-to-register #[(number register) "\302	\203\f \303	!\202 \304\305!\203 \306\225b\210\307\310\306!!\202 \306\"\207" [register number set-register prefix-numeric-value looking-at "\\s-*-?[0-9]+" 0 string-to-number match-string] 5 (#$ . 5485) "P\ncNumber to register: "])
#@91 Add NUMBER to the contents of register REGISTER.
Interactively, NUMBER is the prefix arg.
(defalias 'increment-register #[(number register) "\302!\247\204 \303\304!\210\305	\302!\\\"\207" [register number get-register error "Register does not contain a number" set-register] 5 (#$ . 6056) "p\ncIncrement register: "])
#@95 Display what is contained in register named REGISTER.
The Lisp value REGISTER is a character.
(defalias 'view-register #[(register) "\302!\211\204 \303\304\305!\"\202 \306\220\307\310\"\221)\207" [register val get-register message "Register %s is empty" single-key-description "*Output*" describe-register-1 t] 5 (#$ . 6384) "cView register: "])
#@72 Display a list of nonempty registers saying briefly what they contain.
(defalias 'list-registers #[nil "\304!\305	\306\"\307\220	\310\211\203, @\311\n@!\203% \312\n@!\210\313 \210A\211\204 *\310\221)\207" [register-alist list elt #1=#:--cl-dolist-temp-- copy-sequence sort #[(a b) "@	@W\207" [a b] 2] "*Output*" nil get-register describe-register-1 terpri] 4 (#$ . 6742) nil])
(defalias 'describe-register-1 #[(register &optional verbose) "\305\306!\210\305\307!!\210\305\310!\210\311!\211\247\203 \305	!\202E\312	!\203H \313	!\211\2041 \305\314!\202D \305\315!\210\305\316\n!!\210\305\317!\210\305\320	!!)\202E	:\203Z \321	@!\203Z \305\322!\202E	:\203l \323	@!\203l \305\324!\202E	:\203\207 	@\325=\203\207 \305\326!\210\327	A!\210\305\330!\202E	:\203\256 	@\331=\203\256 \305\332!\210\327	A@!\210\305\333!\210\305	AA@!\210\305\330!\202E	:\203\335 \203\322 \305\334!\210	\205E\305\335!\210\305	@!\210\336 \210	A\211\202\274 \305\337!\210\305	@!\202E	;\203:\f\340=\203\363 \341\342	G\343	$\210\202\373 \344\342	G\f	$\210\203	\305\345!\210\305	!\202E\346\347\350\351\342\352 \353Z]^\"	\"\203'\305\354!\210\305\355\342	\"!\202E\346\356	\"\2034\305\357!\202E\305\360!\202E\305\361!\210\205E\327	!)\207" [register val buf verbose yank-excluded-properties princ "Register " single-key-description " contains " get-register markerp marker-buffer "a marker in no buffer" "a buffer position:\n    buffer " buffer-name ", position " marker-position window-configuration-p "a window configuration." frame-configuration-p "a frame configuration." file "the file " prin1 "." file-query "a file-query reference:\n    file " ",\n    position " "the rectangle:\n" "    " terpri "a rectangle starting with " t set-text-properties 0 nil remove-list-of-text-properties "the text:\n" string-match format "[^ 	\n].\\{,%d\\}" 20 window-width 6 "text starting with\n    " match-string "^[ 	\n]+$" "whitespace" "the empty string" "Garbage:\n"] 8])
#@261 Insert contents of register REGISTER.  (REGISTER is a character.)
Normally puts point before and mark after the inserted text.
If optional second arg is non-nil, puts mark before and point after.
Interactively, second arg is non-nil if prefix arg is supplied.
(defalias 'insert-register #[(register &optional arg) "\304 \210\305!\211:\203 \306	!\210\202] 	;\203 \307	!\210\202] 	\247\203, \310	p\"\210\202] \311	!\203B \312	!\203B \310\312	!p\"\210\202] \313\314!\203Y \n\203Y \314	!\203Y \315	!\210\202] \316\317!\210)?\205e \320 \207" [register val semantic-mode arg push-mark get-register insert-rectangle insert-for-yank princ markerp marker-position fboundp semantic-foreign-tag-p semantic-insert-foreign-tag error "Register does not contain text" exchange-point-and-mark] 4 (#$ . 8711) "*cInsert register: \nP"])
#@206 Copy region into register REGISTER.
With prefix arg, delete as well.
Called from program, takes four args: REGISTER, START, END and DELETE-FLAG.
START and END are buffer positions indicating what to copy.
(defalias 'copy-to-register #[(register start end &optional delete-flag) "\304\305	\n\"\"\210\205 	\n|\207" [register start end delete-flag set-register filter-buffer-substring] 5 (#$ . 9542) "cCopy to register: \nr\nP"])
#@216 Append region to text in register REGISTER.
With prefix arg, delete as well.
Called from program, takes four args: REGISTER, START, END and DELETE-FLAG.
START and END are buffer positions indicating what to append.
(defalias 'append-to-register #[(register start end &optional delete-flag) "\306!\307	\n\"\310\f\204 \202! \f;\203 \fP\202! \311\312!\"\210*\205+ 	\n|\207" [register start end text reg delete-flag get-register filter-buffer-substring set-register error "Register does not contain text"] 4 (#$ . 9979) "cAppend to register: \nr\nP"])
#@218 Prepend region to text in register REGISTER.
With prefix arg, delete as well.
Called from program, takes four args: REGISTER, START, END and DELETE-FLAG.
START and END are buffer positions indicating what to prepend.
(defalias 'prepend-to-register #[(register start end &optional delete-flag) "\306!\307	\n\"\310\f\204 \202! \f;\203 \fP\202! \311\312!\"\210*\205+ 	\n|\207" [register start end text reg delete-flag get-register filter-buffer-substring set-register error "Register does not contain text"] 4 (#$ . 10543) "cPrepend to register: \nr\nP"])
#@292 Copy rectangular region into register REGISTER.
With prefix arg, delete as well.
To insert this register in the buffer, use \[insert-register].

Called from a program, takes four args: REGISTER, START, END and DELETE-FLAG.
START and END are buffer positions giving two corners of rectangle.
(defalias 'copy-rectangle-to-register #[(register start end &optional delete-flag) "\304	\203 \305\n\"\202 \306\n\"\"\207" [register delete-flag start end set-register delete-extract-rectangle extract-rectangle] 5 (#$ . 11112) "cCopy rectangle to register: \nr\nP"])
(provide 'register)
