110 lines
2.5 KiB
EmacsLisp
110 lines
2.5 KiB
EmacsLisp
|
|
;;; CORE POLYMODE AND HOST OBJECTS
|
|||
|
|
|
|||
|
|
|
|||
|
|
;;; POLYMODE objects
|
|||
|
|
;; These are simple generic configuration objects. More specialized
|
|||
|
|
;; configuration objects are defined in language-specific files (e.g. poly-R.el,
|
|||
|
|
;; poly-markdown.el etc).
|
|||
|
|
|
|||
|
|
(defcustom pm-inner/fallback
|
|||
|
|
(pm-chunkmode "FallBack" :mode 'poly-fallback-mode)
|
|||
|
|
"Polymode fall back inner mode."
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-poly/brew
|
|||
|
|
(pm-polymode-one "brew"
|
|||
|
|
:hostmode 'pm-host/text
|
|||
|
|
:innermode 'pm-inner/fallback)
|
|||
|
|
"Typical Brew configuration"
|
|||
|
|
:group 'polymodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-poly/html
|
|||
|
|
;; fixme: should probably be pm-polymode-multi
|
|||
|
|
(pm-polymode-one "html"
|
|||
|
|
:hostmode 'pm-host/html
|
|||
|
|
:innermode 'pm-inner/fallback)
|
|||
|
|
"HTML typical configuration"
|
|||
|
|
:group 'polymodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-poly/C++
|
|||
|
|
(pm-polymode-one "C++"
|
|||
|
|
:hostmode 'pm-host/C++
|
|||
|
|
:innermode 'pm-inner/fallback)
|
|||
|
|
"C++ typical configuration"
|
|||
|
|
:group 'polymodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
;; HOST MODES
|
|||
|
|
|
|||
|
|
(defcustom pm-host/blank
|
|||
|
|
(pm-bchunkmode "FallBack" :mode nil)
|
|||
|
|
"Blank. Used as a placeholder for currently installed mode.
|
|||
|
|
It is specifically intended to be used with minor modes."
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-host/fallback
|
|||
|
|
(pm-bchunkmode "FallBack"
|
|||
|
|
:mode 'poly-fallback-mode)
|
|||
|
|
"Polymode fall back host mode."
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-host/fundamental
|
|||
|
|
(pm-bchunkmode "fundamental"
|
|||
|
|
:mode 'fundamental-mode)
|
|||
|
|
"Fundamental host mode"
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-host/latex
|
|||
|
|
(pm-bchunkmode "latex"
|
|||
|
|
:mode 'latex-mode)
|
|||
|
|
"Latex host chunkmode"
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-host/html
|
|||
|
|
(pm-bchunkmode "html"
|
|||
|
|
:mode 'html-mode)
|
|||
|
|
"HTML host chunkmode"
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-host/R
|
|||
|
|
(pm-bchunkmode "R"
|
|||
|
|
:mode 'R-mode)
|
|||
|
|
"R host chunkmode"
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-host/C++
|
|||
|
|
(pm-bchunkmode "C++"
|
|||
|
|
:mode 'c++-mode
|
|||
|
|
:font-lock-narrow nil)
|
|||
|
|
"C++ host chunkmode"
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-host/text
|
|||
|
|
(pm-bchunkmode "text"
|
|||
|
|
:mode 'text-mode)
|
|||
|
|
"Text host chunkmode"
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
(defcustom pm-host/yaml
|
|||
|
|
(pm-bchunkmode "YAML"
|
|||
|
|
:mode 'yaml-mode)
|
|||
|
|
"YAML chunkmode"
|
|||
|
|
:group 'hostmodes
|
|||
|
|
:type 'object)
|
|||
|
|
|
|||
|
|
|
|||
|
|
(provide 'poly-base)
|