diff options
Diffstat (limited to 'lisp/progmodes/prolog.el')
-rw-r--r-- | lisp/progmodes/prolog.el | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/lisp/progmodes/prolog.el b/lisp/progmodes/prolog.el index 0eb4c8c07dd..bb72984a00b 100644 --- a/lisp/progmodes/prolog.el +++ b/lisp/progmodes/prolog.el @@ -341,6 +341,7 @@ mercury - Mercury sicstus - SICStus Prolog swi - SWI Prolog gnu - GNU Prolog" + :version "24.1" :group 'prolog :type '(choice (const :tag "SICStus" :value sicstus) (const :tag "SWI Prolog" :value swi) @@ -363,6 +364,7 @@ gnu - GNU Prolog" ;; FIXME: This should be auto-detected instead of user-provided. "Alist of Prolog system versions. The version numbers are of the format (Major . Minor)." + :version "24.1" :type '(repeat (list (symbol :tag "System") (cons :tag "Version numbers" (integer :tag "Major") (integer :tag "Minor")))) @@ -377,24 +379,28 @@ The version numbers are of the format (Major . Minor)." (defcustom prolog-align-comments-flag t "Non-nil means automatically align comments when indenting." + :version "24.1" :group 'prolog-indentation :type 'boolean) (defcustom prolog-indent-mline-comments-flag t "Non-nil means indent contents of /* */ comments. Otherwise leave such lines as they are." + :version "24.1" :group 'prolog-indentation :type 'boolean) (defcustom prolog-object-end-to-0-flag t "Non-nil means indent closing '}' in SICStus object definitions to level 0. Otherwise indent to `prolog-indent-width'." + :version "24.1" :group 'prolog-indentation :type 'boolean) (defcustom prolog-left-indent-regexp "\\(;\\|\\*?->\\)" "Regexp for character sequences after which next line is indented. Next line after such a regexp is indented to the opening parenthesis level." + :version "24.1" :group 'prolog-indentation :type 'regexp) @@ -404,12 +410,14 @@ The second and subsequent line in a parenthesis expression other than a compound term can either be indented `prolog-paren-indent' to the right (if this variable is non-nil) or in the same way as for compound terms (if this variable is nil, default)." + :version "24.1" :group 'prolog-indentation :type 'boolean) (defcustom prolog-paren-indent 4 "The indentation increase for parenthesis expressions. Only used in ( If -> Then ; Else) and ( Disj1 ; Disj2 ) style expressions." + :version "24.1" :group 'prolog-indentation :type 'integer) @@ -421,6 +429,7 @@ Legal values: problems detecting multiline /* */ comments. 'beg-of-clause - starts parsing at the beginning of the current clause. Slow, but copes better with /* */ comments." + :version "24.1" :group 'prolog-indentation :type '(choice (const :value beg-of-line) (const :value beg-of-clause))) @@ -451,6 +460,7 @@ Legal values: ;; FIXME: Shouldn't we just use the union of all the above here? ("dynamic" "module"))) "Alist of Prolog keywords which is used for font locking of directives." + :version "24.1" :group 'prolog-font-lock :type 'sexp) @@ -459,6 +469,7 @@ Legal values: ("char" "float" "int" "io__state" "string" "univ")) (t nil)) "Alist of Prolog types used by font locking." + :version "24.1" :group 'prolog-font-lock :type 'sexp) @@ -467,6 +478,7 @@ Legal values: ("bound" "di" "free" "ground" "in" "mdi" "mui" "muo" "out" "ui" "uo")) (t nil)) "Alist of Prolog mode specificators used by font locking." + :version "24.1" :group 'prolog-font-lock :type 'sexp) @@ -476,6 +488,7 @@ Legal values: "semidet")) (t nil)) "Alist of Prolog determinism specificators used by font locking." + :version "24.1" :group 'prolog-font-lock :type 'sexp) @@ -484,6 +497,7 @@ Legal values: ("^#[0-9]+")) (t nil)) "Alist of Prolog source code directives used by font locking." + :version "24.1" :group 'prolog-font-lock :type 'sexp) @@ -492,11 +506,13 @@ Legal values: (defcustom prolog-electric-newline-flag (not (fboundp 'electric-indent-mode)) "Non-nil means automatically indent the next line when the user types RET." + :version "24.1" :group 'prolog-keyboard :type 'boolean) (defcustom prolog-hungry-delete-key-flag nil "Non-nil means delete key consumes all preceding spaces." + :version "24.1" :group 'prolog-keyboard :type 'boolean) @@ -509,6 +525,7 @@ If dot is pressed at the beginning of an empty line, it inserts the head of a new clause for the current predicate. It does not apply in strings and comments. It does not apply in strings and comments." + :version "24.1" :group 'prolog-keyboard :type 'boolean) @@ -517,6 +534,7 @@ It does not apply in strings and comments." for recursive calls or new clause heads. Non-nil means to also insert enough commas to cover the predicate's arity and `)', and dot and newline for recursive calls." + :version "24.1" :group 'prolog-keyboard :type 'boolean) @@ -524,6 +542,7 @@ and dot and newline for recursive calls." "Non-nil means make underscore key electric. Electric underscore replaces the current variable with underscore. If underscore is pressed not on a variable then it behaves as usual." + :version "24.1" :group 'prolog-keyboard :type 'boolean) @@ -531,12 +550,14 @@ If underscore is pressed not on a variable then it behaves as usual." "Non-nil means make TAB key electric. Electric TAB inserts spaces after parentheses, ->, and ; in ( If -> Then ; Else) and ( Disj1 ; Disj2 ) style expressions." + :version "24.1" :group 'prolog-keyboard :type 'boolean) (defcustom prolog-electric-if-then-else-flag nil "Non-nil makes `(', `>' and `;' electric to automatically indent if-then-else constructs." + :version "24.1" :group 'prolog-keyboard :type 'boolean) @@ -544,6 +565,7 @@ to automatically indent if-then-else constructs." "Makes `:' electric (inserts `:-' on a new line). If non-nil, pressing `:' at the end of a line that starts in the first column (i.e., clause heads) inserts ` :-' and newline." + :version "24.1" :group 'prolog-keyboard :type 'boolean) @@ -551,11 +573,13 @@ the first column (i.e., clause heads) inserts ` :-' and newline." "Makes `-' electric (inserts a `-->' on a new line). If non-nil, pressing `-' at the end of a line that starts in the first column (i.e., DCG heads) inserts ` -->' and newline." + :version "24.1" :group 'prolog-keyboard :type 'boolean) (defcustom prolog-old-sicstus-keys-flag nil "Non-nil means old SICStus Prolog mode keybindings are used." + :version "24.1" :group 'prolog-keyboard :type 'boolean) @@ -583,6 +607,7 @@ the first column (i.e., DCG heads) inserts ` -->' and newline." '((sicstus ("-i")) (t nil)) "Alist of switches given to inferior Prolog run with `run-prolog'." + :version "24.1" :group 'prolog-inferior :type 'sexp) (defun prolog-program-switches () @@ -649,6 +674,7 @@ nil means send actual operating system end of file." (gnu "^| \\?-") (t "^|? *\\?-")) "Alist of prompts of the prolog system command line." + :version "24.1" :group 'prolog-inferior :type 'sexp) (defun prolog-prompt-regexp () @@ -663,31 +689,37 @@ nil means send actual operating system end of file." (defcustom prolog-debug-on-string "debug.\n" "Predicate for enabling debug mode." + :version "24.1" :group 'prolog-inferior :type 'string) (defcustom prolog-debug-off-string "nodebug.\n" "Predicate for disabling debug mode." + :version "24.1" :group 'prolog-inferior :type 'string) (defcustom prolog-trace-on-string "trace.\n" "Predicate for enabling tracing." + :version "24.1" :group 'prolog-inferior :type 'string) (defcustom prolog-trace-off-string "notrace.\n" "Predicate for disabling tracing." + :version "24.1" :group 'prolog-inferior :type 'string) (defcustom prolog-zip-on-string "zip.\n" "Predicate for enabling zip mode for SICStus." + :version "24.1" :group 'prolog-inferior :type 'string) (defcustom prolog-zip-off-string "nozip.\n" "Predicate for disabling zip mode for SICStus." + :version "24.1" :group 'prolog-inferior :type 'string) @@ -701,6 +733,7 @@ jumping to the source code responsible for the error. Warning: the new method is so far only experimental and does contain bugs. The recommended setting for the novice user is non-nil for this variable." + :version "24.1" :group 'prolog-inferior :type 'boolean) @@ -711,39 +744,46 @@ is non-nil for this variable." (not (fboundp 'syntax-propertize-rules)) "Non-nil means use the internal prolog tokenizer for indentation etc. Otherwise use `parse-partial-sexp' which is faster but sometimes incorrect." + :version "24.1" :group 'prolog-other :type 'boolean) (defcustom prolog-imenu-flag t "Non-nil means add a clause index menu for all prolog files." + :version "24.1" :group 'prolog-other :type 'boolean) (defcustom prolog-imenu-max-lines 3000 "The maximum number of lines of the file for imenu to be enabled. Relevant only when `prolog-imenu-flag' is non-nil." + :version "24.1" :group 'prolog-other :type 'integer) (defcustom prolog-info-predicate-index "(sicstus)Predicate Index" "The info node for the SICStus predicate index." + :version "24.1" :group 'prolog-other :type 'string) (defcustom prolog-underscore-wordchar-flag nil "Non-nil means underscore (_) is a word-constituent character." + :version "24.1" :group 'prolog-other :type 'boolean) (defcustom prolog-use-sicstus-sd nil "If non-nil, use the source level debugger of SICStus 3#7 and later." + :version "24.1" :group 'prolog-other :type 'boolean) (defcustom prolog-char-quote-workaround nil "If non-nil, declare 0 as a quote character to handle 0'<char>. This is really kludgy, and unneeded (i.e. obsolete) in Emacs>=24." + :version "24.1" :group 'prolog-other :type 'boolean) |