Function: dsssl-mode

dsssl-mode is an autoloaded, interactive and byte-compiled function defined in scheme.el.gz.

Signature

(dsssl-mode)

Documentation

Major mode for editing DSSSL code.

Editing commands are similar to those of lisp-mode.

Commands: Delete converts tabs to spaces as it moves back. Blank lines separate paragraphs. Semicolons start comments.
C-M-q indent-sexp
C-M-q prog-indent-sexp
C-M-x scheme-send-definition
C-M-z xscheme-send-region
C-c C-b xscheme-send-breakpoint-interrupt
C-c C-c scheme-compile-definition-and-go
C-c C-e scheme-send-definition
C-c C-k scheme-compile-file
C-c C-l scheme-load-file
C-c C-r scheme-send-region
C-c C-s xscheme-select-process-buffer
C-c C-t scheme-trace-procedure
C-c C-u xscheme-send-control-u-interrupt
C-c C-x scheme-expand-current-form
C-c C-z switch-to-scheme
C-c M-c scheme-compile-definition
C-c M-e scheme-send-definition-and-go
C-c M-r scheme-send-region-and-go
C-x C-e scheme-send-last-sexp
DEL backward-delete-char-untabify
M-RET xscheme-send-previous-expression
M-o xscheme-send-buffer
M-q prog-fill-reindent-defun
M-z xscheme-send-definition
Entering this mode runs the hooks scheme-mode-hook and then dsssl-mode-hook and inserts the value of dsssl-sgml-declaration if that variable's value is a string.

Probably introduced at or before Emacs version 20.1.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/scheme.el.gz
;;;###autoload
(define-derived-mode dsssl-mode scheme-mode "DSSSL"
  "Major mode for editing DSSSL code.
Editing commands are similar to those of `lisp-mode'.

Commands:
Delete converts tabs to spaces as it moves back.
Blank lines separate paragraphs.  Semicolons start comments.
\\{scheme-mode-map}
Entering this mode runs the hooks `scheme-mode-hook' and then
`dsssl-mode-hook' and inserts the value of `dsssl-sgml-declaration' if
that variable's value is a string."
  (setq-local page-delimiter "^;;;") ; ^L not valid SGML char
  ;; Insert a suitable SGML declaration into an empty buffer.
  ;; FIXME: This should use `auto-insert-alist' instead.
  (and (zerop (buffer-size))
       (stringp dsssl-sgml-declaration)
       (not buffer-read-only)
       (insert dsssl-sgml-declaration))
  (setq font-lock-defaults '(dsssl-font-lock-keywords
                             nil t (("+-*/.<>=?$%_&~^:" . "w"))
                             beginning-of-defun
                             (font-lock-mark-block-function . mark-defun)))
  (setq-local add-log-current-defun-function #'lisp-current-defun-name)
  (setq-local imenu-case-fold-search nil)
  (setq imenu-generic-expression dsssl-imenu-generic-expression)
  (setq-local imenu-syntax-alist '(("+-*/.<>=?$%_&~^:" . "w"))))