Variable: interpreter-mode-alist

interpreter-mode-alist is a variable defined in files.el.gz.

Value

(("jank" . jank-mode) ("joker" . joker-mode)
 ("planck" . clojurescript-mode) ("nbb" . clojurescript-mode)
 ("clj" . clojure-mode) ("clojure" . clojure-mode)
 ("bb" . clojure-mode) ("j?ruby\\(?:[0-9.]+\\)" . ruby-mode)
 ("jruby" . ruby-mode) ("rbx" . ruby-mode) ("ruby" . ruby-mode)
 ("python[0-9.]*" . python-mode)
 ("php\\(?:-?[34578]\\(?:\\.[0-9]+\\)*\\)?" . php-ts-mode-maybe)
 ("lua" . lua-mode) ("rhino" . js-mode) ("gjs" . js-mode)
 ("nodejs" . js-mode) ("node" . js-mode) ("gawk" . awk-mode)
 ("nawk" . awk-mode) ("mawk" . awk-mode) ("awk" . awk-mode)
 ("pike" . pike-mode) ("\\(mini\\)?perl5?" . perl-mode)
 ("wishx?" . tcl-mode) ("tcl\\(sh\\)?" . tcl-mode)
 ("expect" . tcl-mode) ("octave" . octave-mode) ("scm" . scheme-mode)
 ("[acjkwz]sh" . sh-mode) ("r?bash2?" . sh-mode) ("dash" . sh-mode)
 ("mksh" . sh-mode) ("\\(dt\\|pd\\|w\\)ksh" . sh-mode)
 ("es" . sh-mode) ("i?tcsh" . sh-mode) ("oash" . sh-mode)
 ("rc" . sh-mode) ("rpm" . sh-mode) ("sh5?" . sh-mode)
 ("tail" . text-mode) ("more" . text-mode) ("less" . text-mode)
 ("pg" . text-mode) ("make" . makefile-gmake-mode)
 ("guile" . scheme-mode) ("clisp" . lisp-mode)
 ("emacs" . emacs-lisp-mode))

Documentation

Alist mapping interpreter names to major modes.

This is used for files whose first lines match auto-mode-interpreter-regexp. Each element looks like (REGEXP . MODE). If REGEXP matches the entire name (minus any directory part) of the interpreter specified in the first line of a script, enable major mode MODE.

See also auto-mode-alist.

View in manual

Probably introduced at or before Emacs version 19.23.

Source Code

;; Defined in /usr/src/emacs/lisp/files.el.gz
(defvar interpreter-mode-alist
  ;; Note: The entries for the modes defined in cc-mode.el (awk-mode
  ;; and pike-mode) are added through autoload directives in that
  ;; file.
  '(("\\(mini\\)?perl5?" . perl-mode)
    ("wishx?" . tcl-mode)
    ("tcl\\(sh\\)?" . tcl-mode)
    ("expect" . tcl-mode)
    ("octave" . octave-mode)
    ("scm" . scheme-mode)
    ("[acjkwz]sh" . sh-mode)
    ("r?bash2?" . sh-mode)
    ("dash" . sh-mode)
    ("mksh" . sh-mode)
    ("\\(dt\\|pd\\|w\\)ksh" . sh-mode)
    ("es" . sh-mode)
    ("i?tcsh" . sh-mode)
    ("oash" . sh-mode)
    ("rc" . sh-mode)
    ("rpm" . sh-mode)
    ("sh5?" . sh-mode)
    ("tail" . text-mode)
    ("more" . text-mode)
    ("less" . text-mode)
    ("pg" . text-mode)
    ("make" . makefile-gmake-mode)		; Debian uses this
    ("guile" . scheme-mode)
    ("clisp" . lisp-mode)
    ("emacs" . emacs-lisp-mode))
  "Alist mapping interpreter names to major modes.
This is used for files whose first lines match `auto-mode-interpreter-regexp'.
Each element looks like (REGEXP . MODE).
If REGEXP matches the entire name (minus any directory part) of
the interpreter specified in the first line of a script, enable
major mode MODE.

See also `auto-mode-alist'.")