# HG changeset patch # User Peter Breton # Date 940047067 0 # Node ID 03ebfe42764ff2b9bed1e4074a09788bc954ac58 # Parent a0f47d3e4a953583c5ad645396950deb5c48cf38 (bat-generic-mode-keymap): Added thio variable (bat-generic-mode-compile): Added this function (bat-generic-mode-run-as-comint): Added this function diff -r a0f47d3e4a95 -r 03ebfe42764f lisp/generic-x.el --- a/lisp/generic-x.el Sat Oct 16 03:59:43 1999 +0000 +++ b/lisp/generic-x.el Sat Oct 16 04:11:07 1999 +0000 @@ -400,6 +400,46 @@ (defvar bat-generic-mode-syntax-table nil "Syntax table in use in bat-generic-mode buffers.") + (defvar bat-generic-mode-keymap (make-sparse-keymap) + "Keymap for bet-generic-mode.") + + (defun bat-generic-mode-compile () + "Run the current BAT file in a compilation buffer." + (interactive) + (let ((compilation-buffer-name-function + (function + (lambda(ign) + (concat "*" (buffer-file-name) "*"))) + ) + ) + (compile + (concat (w32-shell-name) " -c " (buffer-file-name))))) + + (defun bat-generic-mode-run-as-comint () + "Run the current BAT file in a comint buffer." + (interactive) + (require 'comint) + (let* ((file (buffer-file-name)) + (buf-name (concat "*" file "*"))) + (save-excursion + (set-buffer + (get-buffer-create buf-name)) + (erase-buffer) + (comint-mode) + (comint-exec + buf-name + file + (w32-shell-name) + nil + (list + "-c" + file + ) + ) + (display-buffer buf-name)))) + + (define-key bat-generic-mode-keymap "\C-c\C-c" 'bat-generic-mode-compile) + ;; Make underscores count as words (if bat-generic-mode-syntax-table nil @@ -423,6 +463,7 @@ (set-syntax-table bat-generic-mode-syntax-table) ;; Make keywords case-insensitive (setq font-lock-defaults (list 'generic-font-lock-defaults nil t)) + (use-local-map bat-generic-mode-keymap) ) )