home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 4
/
FreshFish_May-June1994.bin
/
bbs
/
may94
/
util
/
edit
/
jade.lha
/
Jade
/
lisp
/
lisp-mode.jlc
< prev
next >
Wrap
Text File
|
1994-04-20
|
2KB
|
33 lines
(provide (quote lisp-mode))
(defvar lisp-mode-tab 3)
(defvar lisp-mode-auto-indent nil)
(setq symbol-word-regexps ["[^][()?'\"#; ]" "[][()?'\"#; ]|$"])
(setq lisp-mode-keymap (make-keylist) lisp-mode-esc-keymap (make-keylist))
(bind-keys lisp-mode-keymap "return" (quote lisp-return) "shift-return" (quote split-line) "ctrl-return" (quote eval-insert-paragraph) "tab" (quote lisp-tab) "meta-tab" (quote goto-next-tab) "esc" (quote (setq next-keymap-path (quote (lisp-mode-esc-keymap esc-keymap)))))
(bind-keys lisp-mode-esc-keymap "ctrl-x" (quote eval-print-paragraph))
(defun lisp-mode nil (lisp-code "\tH#K%&F&" [eval-hook lisp-mode-hook "lisp-mode" mode-name lisp-mode-keymap keymap-path lisp-mode-kill major-mode-kill lisp-mode-tab screen-tab] 2))
(defun lisp-mode-kill nil (lisp-code "\n\"IF#" [delq lisp-mode-keymap keymap-path mode-name] 3))
(defun eval-paragraph nil (lisp-code "\tHI²\tU" [goto prev-paragraph read] 2))
(defun eval-insert-paragraph nil (lisp-code "I²" [format "\n%S\n\n" eval-paragraph] 4))
(defun eval-print-paragraph nil (lisp-code "J\n" [prin1 eval-paragraph] 3))
(defun lisp-return nil (lisp-code "Hþü\tû\t" [split-line lisp-mode-auto-indent empty-line-p goto lisp-indent-pos-empty set-indent-pos lisp-indent-pos] 2))
(defun lisp-tab nil (lisp-code "ü\t\tû¹\t\tF&Hdü§\tû¹dü¸\tû¹I" [empty-line-p goto lisp-indent-pos-empty cursor-pos set-indent-pos lisp-indent-pos tmp line-end] 3))
(defun lisp-indent-pos (&optional line-pos) (lisp-code "\tF!HD\t3\tÿ\nþ\nHE" [line-start line-pos lisp-indent-pos-empty ind-pos empty-line-p regexp-match-line "^ *;;;" set-pos-col 1] 3))
(defun lisp-indent-pos-empty (&optional line-pos) (lisp-code "\tF!HD\t\n5\nþ¥\nÿ¡HûHD\t6\t\nH\t\n\nEE" [line-start line-pos prev-line 1 dup-pos anchor-pos regexp-match-line "^ *($|;)" return indent-pos ind-pos set-pos-line pos-line next-tab balance-brackets "(" ")" copy-area line-end] 8))