source: ThirdParty/mpqc_open/lib/elisp/keyval.el@ 7516f6

Action_Thermostats Adding_MD_integration_tests Adding_StructOpt_integration_tests AutomationFragmentation_failures Candidate_v1.6.1 ChemicalSpaceEvaluator Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Exclude_Hydrogens_annealWithBondGraph Fix_Verbose_Codepatterns ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion Gui_displays_atomic_force_velocity JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool PythonUI_with_named_parameters Recreated_GuiChecks StoppableMakroAction TremoloParser_IncreasedPrecision
Last change on this file since 7516f6 was 860145, checked in by Frederik Heber <heber@…>, 8 years ago

Merge commit '0b990dfaa8c6007a996d030163a25f7f5fc8a7e7' as 'ThirdParty/mpqc_open'

  • Property mode set to 100644
File size: 2.6 KB
Line 
1;;
2;; keyval.el: Mode for MPQC input files
3;;
4;; Copyright (C) 1996 Limit Point Systems, Inc.
5;;
6;; Author: Curtis Janssen <cljanss@ca.sandia.gov>
7;; Maintainer: SNL
8;;
9;; This file is part of MPQC.
10;;
11;; MPQC is free software; you can redistribute it and/or modify
12;; it under the terms of the GNU General Public License as published by
13;; the Free Software Foundation; either version 2, or (at your option)
14;; any later version.
15;;
16;; MPQC is distributed in the hope that it will be useful,
17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19;; GNU General Public License for more details.
20;;
21;; You should have received a copy of the GNU General Public License
22;; along with the MPQC; see the file COPYING. If not, write to
23;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
24;;
25;; The U.S. Government is granted a limited license as per AL 91-7.
26;;
27
28;;;###autoload
29(defvar keyval-mode-hook nil
30 "*List of hook functions run by `keyval-mode' (see `run-hooks').")
31
32(defvar keyval-mode-map
33 (let ((map (make-sparse-keymap)))
34 ;(define-key map " " 'scroll-up)
35 ;(define-key map "\^?" 'scroll-down)
36 map)
37 "Keymap for KeyVal input buffers.")
38
39(defun keyval-mode ()
40 "Major mode for KeyVal input files."
41 (interactive)
42 (fundamental-mode)
43 (use-local-map keyval-mode-map)
44 (setq major-mode 'keyval-mode
45 mode-name "KeyVal")
46 (keyval-setup)
47 (make-local-variable 'font-lock-defaults)
48 (setq font-lock-defaults '(keyval-font-lock-keywords t t))
49 (run-hooks 'keyval-mode-hook))
50
51(defun keyval-setup ())
52
53(defvar keyval-key-face 'keyval-key-face
54 "Face for keys in KeyVal file.")
55(make-face keyval-key-face)
56(make-face-bold keyval-key-face)
57(set-face-foreground keyval-key-face "Cyan")
58
59(defvar keyval-classtype-face 'keyval-classtype-face
60 "Face for names of classes in KeyVal file.")
61(make-face keyval-classtype-face)
62(set-face-foreground keyval-classtype-face "Green")
63
64(defvar keyval-reference-face 'keyval-reference-face
65 "Face for references in KeyVal file.")
66(make-face keyval-reference-face)
67(set-face-foreground keyval-reference-face "Orange")
68(set-face-underline-p keyval-reference-face t)
69
70(defvar keyval-font-lock-keywords
71 '(("%.*" . font-lock-comment-face)
72 ("<.*>" . keyval-classtype-face)
73 ("\"[^\"\n]+\"" . font-lock-string-face)
74 ("$[A-Za-z0-9_\.:*+-/]*" . keyval-reference-face)
75 ("{ *\\([A-Za-z0-9_\.*+-/ ]*\\>\\) *} *=" (1 keyval-key-face))
76 ("\\([A-Za-z0-9_\.*+-/]*\\>\\) *=" (1 keyval-key-face))
77 )
78 "Default expressions to highlight in KeyVal mode.")
Note: See TracBrowser for help on using the repository browser.