297 |
:type 'hook |
:type 'hook |
298 |
:group 'lisp) |
:group 'lisp) |
299 |
|
|
300 |
(define-derived-mode emacs-lisp-mode nil "Emacs-Lisp" |
(defun emacs-lisp-mode () |
301 |
"Major mode for editing Lisp code to run in Emacs. |
"Major mode for editing Lisp code to run in Emacs. |
302 |
Commands: |
Commands: |
303 |
Delete converts tabs to spaces as it moves back. |
Delete converts tabs to spaces as it moves back. |
305 |
\\{emacs-lisp-mode-map} |
\\{emacs-lisp-mode-map} |
306 |
Entry to this mode calls the value of `emacs-lisp-mode-hook' |
Entry to this mode calls the value of `emacs-lisp-mode-hook' |
307 |
if that value is non-nil." |
if that value is non-nil." |
308 |
|
(interactive) |
309 |
|
(kill-all-local-variables) |
310 |
|
(use-local-map emacs-lisp-mode-map) |
311 |
|
(set-syntax-table emacs-lisp-mode-syntax-table) |
312 |
|
(setq major-mode 'emacs-lisp-mode) |
313 |
|
(setq mode-name "Emacs-Lisp") |
314 |
(lisp-mode-variables) |
(lisp-mode-variables) |
315 |
(setq imenu-case-fold-search nil)) |
(setq imenu-case-fold-search nil) |
316 |
|
(run-hooks 'emacs-lisp-mode-hook)) |
317 |
|
|
318 |
(defvar lisp-mode-map |
(defvar lisp-mode-map |
319 |
(let ((map (make-sparse-keymap))) |
(let ((map (make-sparse-keymap))) |
324 |
"Keymap for ordinary Lisp mode. |
"Keymap for ordinary Lisp mode. |
325 |
All commands in `lisp-mode-shared-map' are inherited by this map.") |
All commands in `lisp-mode-shared-map' are inherited by this map.") |
326 |
|
|
327 |
(define-derived-mode lisp-mode nil "Lisp" |
(defun lisp-mode () |
328 |
"Major mode for editing Lisp code for Lisps other than GNU Emacs Lisp. |
"Major mode for editing Lisp code for Lisps other than GNU Emacs Lisp. |
329 |
Commands: |
Commands: |
330 |
Delete converts tabs to spaces as it moves back. |
Delete converts tabs to spaces as it moves back. |
335 |
|
|
336 |
Entry to this mode calls the value of `lisp-mode-hook' |
Entry to this mode calls the value of `lisp-mode-hook' |
337 |
if that value is non-nil." |
if that value is non-nil." |
338 |
|
(interactive) |
339 |
|
(kill-all-local-variables) |
340 |
|
(use-local-map lisp-mode-map) |
341 |
|
(setq major-mode 'lisp-mode) |
342 |
|
(setq mode-name "Lisp") |
343 |
(lisp-mode-variables) |
(lisp-mode-variables) |
344 |
(set (make-local-variable 'comment-start-skip) |
(make-local-variable 'comment-start-skip) |
345 |
|
(setq comment-start-skip |
346 |
"\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *") |
"\\(\\(^\\|[^\\\\\n]\\)\\(\\\\\\\\\\)*\\)\\(;+\\|#|\\) *") |
347 |
(set (make-local-variable 'font-lock-keywords-case-fold-search) t) |
(make-local-variable 'font-lock-keywords-case-fold-search) |
348 |
(setq imenu-case-fold-search t)) |
(setq font-lock-keywords-case-fold-search t) |
349 |
|
(setq imenu-case-fold-search t) |
350 |
|
(set-syntax-table lisp-mode-syntax-table) |
351 |
|
(run-hooks 'lisp-mode-hook)) |
352 |
|
|
353 |
;; This will do unless inf-lisp.el is loaded. |
;; This will do unless inf-lisp.el is loaded. |
354 |
(defun lisp-eval-defun (&optional and-go) |
(defun lisp-eval-defun (&optional and-go) |