diff options
| author | Peter Breton | 1999-10-16 04:11:07 +0000 |
|---|---|---|
| committer | Peter Breton | 1999-10-16 04:11:07 +0000 |
| commit | 01fdb1dd7391bdd1c5b9d8fee71bbf537db0ffb6 (patch) | |
| tree | dec8be056e3c6d18fcbe8ec6893e85950722c9d0 | |
| parent | ffe0c7efca0083b6d680b3cd43683f7297cfc530 (diff) | |
| download | emacs-01fdb1dd7391bdd1c5b9d8fee71bbf537db0ffb6.tar.gz emacs-01fdb1dd7391bdd1c5b9d8fee71bbf537db0ffb6.zip | |
(bat-generic-mode-keymap): Added thio variable
(bat-generic-mode-compile): Added this function
(bat-generic-mode-run-as-comint): Added this function
| -rw-r--r-- | lisp/generic-x.el | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/lisp/generic-x.el b/lisp/generic-x.el index 706c985d52a..ebf874b387c 100644 --- a/lisp/generic-x.el +++ b/lisp/generic-x.el | |||
| @@ -400,6 +400,46 @@ you must reload generic-x to enable the specified modes." | |||
| 400 | (defvar bat-generic-mode-syntax-table nil | 400 | (defvar bat-generic-mode-syntax-table nil |
| 401 | "Syntax table in use in bat-generic-mode buffers.") | 401 | "Syntax table in use in bat-generic-mode buffers.") |
| 402 | 402 | ||
| 403 | (defvar bat-generic-mode-keymap (make-sparse-keymap) | ||
| 404 | "Keymap for bet-generic-mode.") | ||
| 405 | |||
| 406 | (defun bat-generic-mode-compile () | ||
| 407 | "Run the current BAT file in a compilation buffer." | ||
| 408 | (interactive) | ||
| 409 | (let ((compilation-buffer-name-function | ||
| 410 | (function | ||
| 411 | (lambda(ign) | ||
| 412 | (concat "*" (buffer-file-name) "*"))) | ||
| 413 | ) | ||
| 414 | ) | ||
| 415 | (compile | ||
| 416 | (concat (w32-shell-name) " -c " (buffer-file-name))))) | ||
| 417 | |||
| 418 | (defun bat-generic-mode-run-as-comint () | ||
| 419 | "Run the current BAT file in a comint buffer." | ||
| 420 | (interactive) | ||
| 421 | (require 'comint) | ||
| 422 | (let* ((file (buffer-file-name)) | ||
| 423 | (buf-name (concat "*" file "*"))) | ||
| 424 | (save-excursion | ||
| 425 | (set-buffer | ||
| 426 | (get-buffer-create buf-name)) | ||
| 427 | (erase-buffer) | ||
| 428 | (comint-mode) | ||
| 429 | (comint-exec | ||
| 430 | buf-name | ||
| 431 | file | ||
| 432 | (w32-shell-name) | ||
| 433 | nil | ||
| 434 | (list | ||
| 435 | "-c" | ||
| 436 | file | ||
| 437 | ) | ||
| 438 | ) | ||
| 439 | (display-buffer buf-name)))) | ||
| 440 | |||
| 441 | (define-key bat-generic-mode-keymap "\C-c\C-c" 'bat-generic-mode-compile) | ||
| 442 | |||
| 403 | ;; Make underscores count as words | 443 | ;; Make underscores count as words |
| 404 | (if bat-generic-mode-syntax-table | 444 | (if bat-generic-mode-syntax-table |
| 405 | nil | 445 | nil |
| @@ -423,6 +463,7 @@ you must reload generic-x to enable the specified modes." | |||
| 423 | (set-syntax-table bat-generic-mode-syntax-table) | 463 | (set-syntax-table bat-generic-mode-syntax-table) |
| 424 | ;; Make keywords case-insensitive | 464 | ;; Make keywords case-insensitive |
| 425 | (setq font-lock-defaults (list 'generic-font-lock-defaults nil t)) | 465 | (setq font-lock-defaults (list 'generic-font-lock-defaults nil t)) |
| 466 | (use-local-map bat-generic-mode-keymap) | ||
| 426 | ) | 467 | ) |
| 427 | ) | 468 | ) |
| 428 | 469 | ||