;ELC ;;; compiled by cthomp@willow on Fri Sep 3 14:45:36 1993 ;;; from file /export/willow0/era-working/editor/lisp/ilisp/ilisp-ext.el ;;; emacs version 19.8 (beta12) Lucid. ;;; bytecomp version 2.18; 28-aug-93. ;;; 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 "This file was compiled for Emacs 19.")) (byte-code " # # #" [modify-syntax-entry 46 "_" lisp-mode-syntax-table 91 "(]" 93 ")["] 4) (fset 'close-all-lisp #[(arg) "`  b\n \"AA@y!)c\n U!\n }\nW\n V bc`я`fU!c c[`W`!c )|\nbۏ`wnmx`|!) bc)s)-" [point lisp-defun-begin begin lisp-end-defun-text end nil inserted closed lisp-in-string 0 looking-at "[ ]*;" "]" error "No sexp to close." 41 (byte-code " `f=?" [backward-sexp arg 91] 2) ((error (byte-code "‡" [t closed nil] 1))) arg 91 delete-char 1 40 backward-char forward-sexp left (byte-code " ` X" [forward-sexp end] 2) ((error)) " )\n" " \n" "There is text after the last right parentheses." (byte-code " `fU!c `V" [backward-sexp 91 delete-char 1 40 backward-char begin] 2) ((error (delete-backward-char 1) nil))] 3 "\ Unless you are in a string, insert right parentheses as necessary to balance unmatched left parentheses back to the start of the current defun or to a previous left bracket which is then replaced with a left parentheses. If there are too many right parentheses, remove them unless there is text after the extra right parentheses. If called with a prefix, the entire expression will be closed and all open left brackets will be replaced with left parentheses." "P"]) (fset 'reindent-lisp #[nil " \nQ`Ǔ `fU` @W @b @#` A@  u #` Uwmu`\"+ !y`ӕ{ o !ysoy` !m !ynmyu`\"*b! blj!*" [lisp-in-string "[ ]*" comment-start "+[ ]*" comment region lisp-fill-marker nil back-to-indentation 34 re-search-backward "^$" end fill-prefix begin re-search-forward "^\n" fill-region-as-paragraph looking-at 0 lisp-in-comment -1 1 replace-match close-all-lisp lisp-defun-begin indent-sexp-ilisp message "Done"] 4 "\ If in a comment, indent the comment paragraph bounded by non-comments, blank lines or empty comment lines. If in a string, indent the paragraph bounded by string delimiters or blank lines. Otherwise go to the containing defun, close it and reindent the code block." nil]) (fset 'comment-region-lisp #[(start end prefix) "b UnSby `ē \" by \n˚?\n\n V W P Tl` Xy c\n\ncyd P ` X  !!\n\n!!y\\ ĉ," [end start 0 ilisp-comment-marker nil untabify 1 count comment-start comment comment-end "" prefix "+" back-to-indentation looking-at replace-match re-search-backward] 4 "\ If prefix is positive, insert prefix copies of comment-start at the start and comment-end at the end of each line in region. If prefix is negative, remove all comment-start and comment-end strings from the region." "r\np"]) (fset 'beginning-of-defun-lisp #[(&optional stay) " " [beginning-of-defun] 1 "\ Go to the next left paren that starts at the left margin." nil]) (fset 'end-of-defun-lisp #[nil "`y# n!!`Ud!m`fU?!)" [point 0 re-search-forward "^[ \n]*[^; \n]" nil t back-to-indentation beginning-of-defun-lisp lisp-end-defun-text lisp-skip 10] 4 "\ Go to the next left paren that starts at the left margin." nil]) (fset 'count-screen-lines-lisp #[(start end) " }ebdeZ!*" [start end vertical-motion] 3 "\ Return the number of screen lines between start and end."]) (fset 'count-screen-lines-signed-lisp #[(start end) " \n\" \nW [)" [count-screen-lines-lisp start end lines] 3 "\ Return number of screen lines between START and END; returns a negative number if END precedes START." "r"]) (fset 'reposition-window-lisp #[(&optional arg) "` !Z `\"Ɋn`f= !!`)\"]Ɋ `)\" `)\"XZ XU UV TV !]!UUWW U ! W[yy! ^!\\\\ V ZT]]! W[yy ^!." [here window-height selected-window 2 ht count-screen-lines-lisp window-start line 0 count-screen-lines-signed-lisp 40 beginning-of-defun-lisp end-of-defun-lisp re-search-forward "[^\\s \n ]" backward-char 1 comment-height defun-height defun-depth defun-line-onscreen-p arg recenter -1 reposition-window-lisp] 4 "\ Make the current definition and/or comment visible, move it to the top of the window, or toggle the visibility of comments that precede it. Leaves point unchanged unless supplied with prefix ARG. If the definition is fully onscreen, it is moved to the top of the window. If it is partly offscreen, the window is scrolled to get the definition (or as much as will fit) onscreen, unless point is in a comment which is also partly offscreen, in which case the scrolling attempts to get as much of the comment onscreen as possible. Initially reposition-window attempts to make both the definition and preceding comments visible. Further invocations toggle the visibility of the comment lines. If ARG is non-nil, point may move in order to make the whole defun visible (if only part could otherwise be made so), to make the defun line visible (if point is in code and it could not be made so, or if only comments, including the first comment line, are visible), or to make the first comment line visible (if point is in a comment)." "P"]) (fset 'previous-buffer-lisp #[(n) "! !Up!W [V S A @!Ȝ=h Aq @!!)" [n switch-to-buffer nil buffer-list prefix-numeric-value 1 bury-buffer 2 0 buffer-name 32 error "There aren't that many buffers"] 3 "\ Switch to Nth previously selected buffer. N defaults to the number of windows plus 1. That is, no argument switches to the most recently selected buffer that is not visible. If N is 1, repeated calls will cycle through all buffers; -1 cycles the other way. If N is greater than 1, the first N buffers on the buffer list are rotated." "P"]) (byte-code " # # # # # # # # #!!" [define-key emacs-lisp-mode-map "" reindent-lisp "" beginning-of-defun-lisp "" end-of-defun-lisp "" reposition-window-lisp "]" close-all-lisp lisp-mode-map global-map "" previous-buffer-lisp run-hooks ilisp-ext-load-hook provide ilisp-ext] 4)