X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/657e634fa1c28e8b9bdea6c8af085b02e473ac46..16e8b162565202f416f2141d75a3c8bd6f45b96f:/lisp/ledit.el diff --git a/lisp/ledit.el b/lisp/ledit.el index 298c254e8d..565550efe4 100644 --- a/lisp/ledit.el +++ b/lisp/ledit.el @@ -1,11 +1,15 @@ -;; Emacs side of ledit interface +;;; ledit.el --- Emacs side of ledit interface + ;; Copyright (C) 1985 Free Software Foundation, Inc. +;; Maintainer: FSF +;; Keywords: languages + ;; This file is part of GNU Emacs. ;; GNU Emacs is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 1, or (at your option) +;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; GNU Emacs is distributed in the hope that it will be useful, @@ -14,31 +18,42 @@ ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to -;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +;; along with GNU Emacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Commentary: +;; This is a major mode for editing Liszt. See etc/LEDIT for details. + +;;; Code: ;;; To do: ;;; o lisp -> emacs side of things (grind-definition and find-definition) (defvar ledit-mode-map nil) -(defconst ledit-zap-file (concat "/tmp/" (user-login-name) ".l1") +(defconst ledit-zap-file + (expand-file-name (concat (user-login-name) ".l1") temporary-file-directory) "File name for data sent to Lisp by Ledit.") -(defconst ledit-read-file (concat "/tmp/" (user-login-name) ".l2") +(defconst ledit-read-file + (expand-file-name (concat (user-login-name) ".l2") temporary-file-directory) "File name for data sent to Ledit by Lisp.") -(defconst ledit-compile-file - (concat "/tmp/" (user-login-name) ".l4") +(defconst ledit-compile-file + (expand-file-name (concat (user-login-name) ".l4") temporary-file-directory) "File name for data sent to Lisp compiler by Ledit.") (defconst ledit-buffer "*LEDIT*" "Name of buffer in which Ledit accumulates data to send to Lisp.") -;;;###autoload (defconst ledit-save-files t -;;;###autoload "*Non-nil means Ledit should save files before transferring to Lisp.") -;;;###autoload (defconst ledit-go-to-lisp-string "%?lisp" -;;;###autoload "*Shell commands to execute to resume Lisp job.") -;;;###autoload (defconst ledit-go-to-liszt-string "%?liszt" -;;;###autoload "*Shell commands to execute to resume Lisp compiler job.") +;;;###autoload +(defconst ledit-save-files t "\ +*Non-nil means Ledit should save files before transferring to Lisp.") +;;;###autoload +(defconst ledit-go-to-lisp-string "%?lisp" "\ +*Shell commands to execute to resume Lisp job.") +;;;###autoload +(defconst ledit-go-to-liszt-string "%?liszt" "\ +*Shell commands to execute to resume Lisp compiler job.") (defun ledit-save-defun () "Save the current defun in the ledit buffer" @@ -105,9 +120,9 @@ (defun ledit-setup () "Set up key bindings for the Lisp/Emacs interface." - (if (not ledit-mode-map) - (progn (setq ledit-mode-map (make-sparse-keymap)) - (lisp-mode-commands ledit-mode-map))) + (unless ledit-mode-map + (setq ledit-mode-map (make-sparse-keymap)) + (set-keymap-parent ledit-mode-map lisp-mode-shared-map)) (define-key ledit-mode-map "\e\^d" 'ledit-save-defun) (define-key ledit-mode-map "\e\^r" 'ledit-save-region) (define-key ledit-mode-map "\^xz" 'ledit-go-to-lisp) @@ -129,7 +144,7 @@ Like Lisp mode, plus these special commands: To make Lisp mode automatically change to Ledit mode, do (setq lisp-mode-hook 'ledit-from-lisp-mode)" (interactive) - (lisp-mode) + (delay-mode-hooks (lisp-mode)) (ledit-from-lisp-mode)) ;;;###autoload @@ -137,4 +152,9 @@ do (setq lisp-mode-hook 'ledit-from-lisp-mode)" (use-local-map ledit-mode-map) (setq mode-name "Ledit") (setq major-mode 'ledit-mode) - (run-hooks 'ledit-mode-hook)) + (run-mode-hooks 'ledit-mode-hook)) + +(provide 'ledit) + +;;; arch-tag: f0f1ca13-8d31-478c-ae1b-b448c55a8faf +;;; ledit.el ends here