4.4BSD/usr/src/contrib/emacs-18.57/lisp/c-fill.elc


(defvar c-comment-starting-blank t "\
*Controls whether global comments have an initial blank line.")

(defvar c-comment-indenting t "\
*If set global comments are indented to the level of the previous line.")

(defvar c-comment-hanging-indent t "\
*If true, comments will be automatically indented to the dash.")

(defvar c-hang-already-done t "\
If true we have performed the haning indent already for this comment.")

(defvar c-comment-mode-map nil "\
Keymap used in C comment mode.")

(if c-comment-mode-map nil (setq c-comment-mode-map (copy-keymap c-mode-map)) (define-key c-comment-mode-map "
" (quote newline)) (define-key c-comment-mode-map "q" (quote set-fill-and-fill)) (define-key c-comment-mode-map "
" (quote set-fill-and-return)))

(defun c-comment nil "\
Edit a C comment with filling and indentation.
This performs hanging indentation, symmetric placement of delimiters,
 and Indented-Text mode style indentation.  Type 'M-x apropos
c-comment' for information on options." (interactive) (byte-code "̈	ƒ
ЂÑÃÒÌÌÌÌ	ŠÓÔÕÃ#…1Ö×Ø``Ù\\\"\")‰
ˆÌ‰ˆÚ
!ˆ
?ƒ~Û ˆÜcˆÝ`!‰ˆÞ ˆ`‰	ˆŠß ˆà×	Ã#)…niá\\âXƒvãc‚xäcˆÛ ‚’Ý`!‰ˆÞ ˆàåæ Ã#ˆçè!ˆ…ÕŠ`‰	ˆçé!ˆà×	Ã#?†³àå	Ã#?…Ôê×!ˆë	Ã#ˆÝ`!‰ˆìí!?…Ôîï\")ˆÛ ˆÚ!.‡" [auto-fill-hook c-comment-indenting comment-multi-line t comment-start-skip paragraph-start-ref paragraph-start fill-prefix paragraph-separate opoint in-comment c-hang-already-done nil c-comment-mode-map c-comment-starting-blank c-mode-map do-indented-auto-fill do-auto-fill "/*\\*+[ 	]*" re-search-backward "/\\*\\|\\*/" 0 string= "/*" buffer-substring 2 use-local-map c-indent-line "/* " get-current-fill recursive-edit beginning-of-line search-forward 3 79 " */" "
*/" "*/" buffer-size forward-line 1 -1 search-backward re-search-forward looking-at "
" insert 10] 26))

(defun set-fill-and-fill (arg) "\
Get the fill-prefix and fill the current paragraph." (interactive "P") (byte-code "ˆÃ`!‰ˆÄ	!‡" [fill-prefix arg nil get-current-fill fill-paragraph] 3))

(defun set-fill-and-return nil "\
Set the current fill prefix and move to the next line." (interactive) (byte-code "ˆ…Ã`!‰ˆÄÅ	\"‡" [c-comment-indenting fill-prefix nil get-current-fill insert 10] 4))

(defun do-indented-auto-fill nil "\
Perform auto-fill, but get fill-prefix first." (byte-code "`ŠÄ	T!ˆÅÆ!ˆn…ÇÈÂ#ˆŠÅÉ!ˆn?)…+Ê!‰ˆËÌ\"))‡" [opoint fill-column t fill-prefix move-to-column skip-chars-backward "^ 	
" re-search-forward "[ 	]" " 	" get-current-fill insert 10] 8))

(defun get-current-fill (pnt) "\
Get the current fill prefix.
A valid fill prefix must be between the beginning of the line and point." (byte-code "	ÍÍŠÎ ˆÏ`ÐÅ#ˆ`\"‰ˆ

GS
GO‰ˆÑÒ\"?….ÑÓ\"?…6
ÒP‰ˆÔ
ÕÒ#‰ˆ…G?…p`Ö ˆ`	Î ˆ×Ø	Å#…o
Ù`ZÚ\"P‰ˆÅ‰*ˆÛÜ
Ý
GSO!ÞR‰
ˆ
‰)ˆ
+‡" [opoint pnt fill last-char comment-start-skip t c-comment-hanging-indent c-hang-already-done curr opnt paragraph-start paragraph-start-ref paragraph-separate nil beginning-of-line buffer-substring re-search-forward string= " " "	" replace-letter "/" end-of-line search-forward " - " make-string 32 "\\|^" regexp-quote 0 "$"] 16))

(defun replace-letter (str old-letter new-letter) (byte-code "ÇÇÈG
W…1

TO‰ˆÉ	
\"ƒ$‚%	P‰ˆ
T‰ˆ‚	ˆ,‡" [new-str c sp size str old-letter new-letter nil 0 string=] 5))