;ELC ;;; compiled by jwz@thalidomide on Fri Dec 31 01:59:44 1993 ;;; from file /th/jwz/emacs19/lisp/modes/prolog.el ;;; emacs version 19.9 Lucid (beta9). ;;; bytecomp version 2.22; 22-dec-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 "!!!‡" [boundp prolog-mode-syntax-table nil prolog-mode-abbrev-table prolog-mode-map] 2) (defvar prolog-program-name "prolog" "\ *Program name for invoking an inferior Prolog with `run-prolog'.") (defvar prolog-consult-string "reconsult(user).\n" "\ *(Re)Consult mode (for C-Prolog and Quintus Prolog). ") (defvar prolog-compile-string "compile(user).\n" "\ *Compile mode (for Quintus Prolog).") (defvar prolog-eof-string "end_of_file.\n" "\ *String that represents end of file for prolog. nil means send actual operaing system end of file.") (byte-code "!  # # # # # # # # # # # # )\"MM\" \"\"!݇" [boundp prolog-indent-width 4 prolog-mode-syntax-table make-syntax-table table modify-syntax-entry 47 ". 14" 42 ". 23" 37 "< b" 10 "> b" 95 "w" 92 "\\" 39 "\"" 43 "." 45 61 60 62 define-abbrev-table prolog-mode-abbrev-table nil prolog-mode-variables #[nil " !\n!P! ! ! ! !!!ԉ" [set-syntax-table prolog-mode-syntax-table prolog-mode-abbrev-table local-abbrev-table make-local-variable paragraph-start "^%%\\|^$\\|" page-delimiter paragraph-separate paragraph-ignore-fill-prefix t indent-line-function prolog-indent-line comment-start "%" comment-start-skip "%+ *" comment-column 48 comment-indent-hook prolog-comment-indent] 2] prolog-mode-commands #[(map) " # #" [define-key map " " prolog-indent-line "" prolog-consult-region] 4] prolog-mode-map make-sparse-keymap] 4) (fset 'prolog-mode #[nil " \n! !" [kill-all-local-variables use-local-map prolog-mode-map prolog-mode major-mode "Prolog" mode-name prolog-mode-variables run-hooks prolog-mode-hook] 2 "\ Major mode for editing Prolog code for Prologs. Blank lines and `%%...' separate paragraphs. `%'s start comments. Commands: \\{prolog-mode-map} Entry to this mode calls the value of prolog-mode-hook if that value is non-nil." nil]) (fset 'prolog-indent-line #[(&optional whole-exp) " d`Zy`w iZU\n`| jd Z`Vd Zb+" [prolog-indent-level nil beg pos indent 0 " "] 3 "\ Indent current line as Prolog code. With argument, indent any additional lines of the same clause rigidly along with this one (not yet)." "p"]) (fset 'prolog-indent-level #[nil "yw!!o‰ \n ! yyo‰ ow!d!_‰ ]o\ni\n!\n!  ou! !\n\\\n]!!\nZ],)" [0 " " nil looking-at "%%%" "%[^%]" comment-column t less more ind empty ")" -1 "\n" "%%[^%]" "(" end-of-prolog-clause "[,(;>]" "[^,]" prolog-indent-width tab-width "-" "[^.]"] 5 "\ Compute prolog indentation level."]) (fset 'end-of-prolog-clause #[nil "y`) \n#bx)" [0 nil eolpos re-search-forward comment-start-skip move " "] 4 "\ Go to end of clause in this line."]) (fset 'prolog-comment-indent #[nil "!‡! xinª\\])" [looking-at "%%%" 0 "%%" prolog-indent-level " " nil 1 comment-column] 2 "\ Compute prolog comment indentation."]) (byte-code "!‡" [boundp inferior-prolog-mode-map nil] 2) (fset 'inferior-prolog-mode #[nil "!  \n !\n\n!\n!!" [require comint comint-mode inferior-prolog-mode major-mode "Inferior Prolog" mode-name "^| [ ?][- ] *" comint-prompt-regexp prolog-mode-variables inferior-prolog-mode-map copy-keymap comint-mode-map prolog-mode-commands use-local-map run-hooks prolog-mode-hook] 2 "\ Major mode for interacting with an inferior Prolog process. The following commands are available: \\{inferior-prolog-mode-map} Entry to this mode calls the value of prolog-mode-hook with no arguments, if that value is non-nil. Likewise with the value of comint-mode-hook. prolog-mode-hook is called after comint-mode-hook. You can send text to the inferior Prolog from other buffers using the commands send-region, send-string and \\[prolog-consult-region]. Commands: Tab indents for Prolog; with argument, shifts rest of expression rigidly with the current line. Paragraphs are separated only by blank lines and '%%'. '%'s start comments. Return at end of buffer sends line as input. Return not at end copies rest of line to end and sends it. \\[comint-kill-input] and \\[backward-kill-word] are kill commands, imitating normal Unix input editing. \\[comint-interrupt-subjob] interrupts the shell or its current subjob if any. \\[comint-stop-subjob] stops. \\[comint-quit-subjob] sends quit signal." nil]) (fset 'run-prolog #[nil "! \"! " [require comint switch-to-buffer make-comint "prolog" prolog-program-name inferior-prolog-mode] 4 "\ Run an inferior Prolog process, input and output via buffer *prolog*." nil]) (fset 'prolog-consult-region #[(compile beg end) " \" \"#\"  \"!)" [compile send-string "prolog" prolog-compile-string prolog-consult-string send-region beg end "\n" prolog-eof-string process-send-eof] 4 "\ Send the region to the Prolog process made by M-x run-prolog. If COMPILE (prefix arg) is not nil, use compile mode rather than consult mode." "P\nr"]) (fset 'prolog-consult-region-and-go #[(compile beg end) " \n #!" [prolog-consult-region compile beg end switch-to-buffer "*prolog*"] 4 "\ Send the region to the inferior Prolog, and switch to *prolog* buffer. If COMPILE (prefix arg) is not nil, use compile mode rather than consult mode." "P\nr"])