Mercurial > emacs
annotate lisp/ledit.el @ 66573:e65b759c6906
Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-630
Merge from gnus--rel--5.10
Patches applied:
* gnus--rel--5.10 (patch 149-151)
- Merge from emacs--cvs-trunk--0
- Update from CVS
2005-10-27 Reiner Steib <Reiner.Steib@gmx.de>
* lisp/gnus/flow-fill.el (fill-flowed-encode-tests): Restore trailing
whitespace removed in revision 7.8. Use concatenated string to
protect trailing whitespace.
2005-10-27 Jouni K Seppanen <jks@iki.fi> (tiny change)
* lisp/gnus/nnimap.el (nnimap-search-uids-not-since-is-evil): Add variable.
(nnimap-request-expire-articles): Use it to avoid sending 'UID
SEARCH UID ... NOT SINCE' queries, for inefficient servers like
Courier IMAP ("some version from 2004"). Mostly based on similar
code in the same function.
2005-10-26 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/message.el (message-display-completion-list): New function.
(message-expand-group): Use it; make sure the Completions buffer
is modifiable.
author | Miles Bader <miles@gnu.org> |
---|---|
date | Mon, 31 Oct 2005 07:07:28 +0000 |
parents | 41bb365f41c4 |
children | 3bd95f4f2941 2d92f5c9d6ae |
rev | line source |
---|---|
659
505130d1ddf8
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
269
diff
changeset
|
1 ;;; ledit.el --- Emacs side of ledit interface |
505130d1ddf8
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
269
diff
changeset
|
2 |
64762
41bb365f41c4
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64091
diff
changeset
|
3 ;; Copyright (C) 1985, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. |
846
20674ae6bf52
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
811
diff
changeset
|
4 |
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
659
diff
changeset
|
5 ;; Maintainer: FSF |
38412
253f761ad37b
Some fixes to follow coding conventions in files maintained by FSF.
Pavel Janík <Pavel@Janik.cz>
parents:
32367
diff
changeset
|
6 ;; Keywords: languages |
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
659
diff
changeset
|
7 |
36 | 8 ;; This file is part of GNU Emacs. |
9 | |
10 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
11 ;; it under the terms of the GNU General Public License as published by | |
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
659
diff
changeset
|
12 ;; the Free Software Foundation; either version 2, or (at your option) |
36 | 13 ;; any later version. |
14 | |
15 ;; GNU Emacs is distributed in the hope that it will be useful, | |
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
18 ;; GNU General Public License for more details. | |
19 | |
20 ;; You should have received a copy of the GNU General Public License | |
14169 | 21 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
64091 | 22 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
23 ;; Boston, MA 02110-1301, USA. | |
36 | 24 |
2307
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
923
diff
changeset
|
25 ;;; Commentary: |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
923
diff
changeset
|
26 |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
923
diff
changeset
|
27 ;; This is a major mode for editing Liszt. See etc/LEDIT for details. |
10e417efb12a
Added or corrected Commentary sections
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
923
diff
changeset
|
28 |
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
659
diff
changeset
|
29 ;;; Code: |
36 | 30 |
31 ;;; To do: | |
32 ;;; o lisp -> emacs side of things (grind-definition and find-definition) | |
33 | |
34 (defvar ledit-mode-map nil) | |
35 | |
25416
851241b72ec9
(ledit-zap-file, ledit-read-file, ledit-compile-file):
Richard M. Stallman <rms@gnu.org>
parents:
18383
diff
changeset
|
36 (defconst ledit-zap-file |
851241b72ec9
(ledit-zap-file, ledit-read-file, ledit-compile-file):
Richard M. Stallman <rms@gnu.org>
parents:
18383
diff
changeset
|
37 (expand-file-name (concat (user-login-name) ".l1") temporary-file-directory) |
36 | 38 "File name for data sent to Lisp by Ledit.") |
25416
851241b72ec9
(ledit-zap-file, ledit-read-file, ledit-compile-file):
Richard M. Stallman <rms@gnu.org>
parents:
18383
diff
changeset
|
39 (defconst ledit-read-file |
851241b72ec9
(ledit-zap-file, ledit-read-file, ledit-compile-file):
Richard M. Stallman <rms@gnu.org>
parents:
18383
diff
changeset
|
40 (expand-file-name (concat (user-login-name) ".l2") temporary-file-directory) |
36 | 41 "File name for data sent to Ledit by Lisp.") |
32367
7c181d033dae
use lisp-mode-shared-map instead of shared-lisp-mode-map
Sam Steingold <sds@gnu.org>
parents:
25416
diff
changeset
|
42 (defconst ledit-compile-file |
25416
851241b72ec9
(ledit-zap-file, ledit-read-file, ledit-compile-file):
Richard M. Stallman <rms@gnu.org>
parents:
18383
diff
changeset
|
43 (expand-file-name (concat (user-login-name) ".l4") temporary-file-directory) |
36 | 44 "File name for data sent to Lisp compiler by Ledit.") |
45 (defconst ledit-buffer "*LEDIT*" | |
46 "Name of buffer in which Ledit accumulates data to send to Lisp.") | |
256 | 47 |
269 | 48 ;;;###autoload |
49 (defconst ledit-save-files t "\ | |
50 *Non-nil means Ledit should save files before transferring to Lisp.") | |
51 ;;;###autoload | |
52 (defconst ledit-go-to-lisp-string "%?lisp" "\ | |
53 *Shell commands to execute to resume Lisp job.") | |
54 ;;;###autoload | |
55 (defconst ledit-go-to-liszt-string "%?liszt" "\ | |
56 *Shell commands to execute to resume Lisp compiler job.") | |
36 | 57 |
58 (defun ledit-save-defun () | |
59 "Save the current defun in the ledit buffer" | |
60 (interactive) | |
61 (save-excursion | |
62 (end-of-defun) | |
63 (let ((end (point))) | |
64 (beginning-of-defun) | |
65 (append-to-buffer ledit-buffer (point) end)) | |
66 (message "Current defun saved for Lisp"))) | |
67 | |
68 (defun ledit-save-region (beg end) | |
69 "Save the current region in the ledit buffer" | |
70 (interactive "r") | |
71 (append-to-buffer ledit-buffer beg end) | |
72 (message "Region saved for Lisp")) | |
73 | |
74 (defun ledit-zap-defun-to-lisp () | |
214 | 75 "Carry the current defun to Lisp." |
36 | 76 (interactive) |
77 (ledit-save-defun) | |
78 (ledit-go-to-lisp)) | |
79 | |
80 (defun ledit-zap-defun-to-liszt () | |
214 | 81 "Carry the current defun to liszt." |
36 | 82 (interactive) |
83 (ledit-save-defun) | |
84 (ledit-go-to-liszt)) | |
85 | |
86 (defun ledit-zap-region-to-lisp (beg end) | |
214 | 87 "Carry the current region to Lisp." |
36 | 88 (interactive "r") |
89 (ledit-save-region beg end) | |
90 (ledit-go-to-lisp)) | |
91 | |
92 (defun ledit-go-to-lisp () | |
93 "Suspend Emacs and restart a waiting Lisp job." | |
94 (interactive) | |
95 (if ledit-save-files | |
96 (save-some-buffers)) | |
97 (if (get-buffer ledit-buffer) | |
98 (save-excursion | |
99 (set-buffer ledit-buffer) | |
100 (goto-char (point-min)) | |
101 (write-region (point-min) (point-max) ledit-zap-file) | |
102 (erase-buffer))) | |
103 (suspend-emacs ledit-go-to-lisp-string) | |
104 (load ledit-read-file t t)) | |
105 | |
106 (defun ledit-go-to-liszt () | |
107 "Suspend Emacs and restart a waiting Liszt job." | |
108 (interactive) | |
109 (if ledit-save-files | |
110 (save-some-buffers)) | |
111 (if (get-buffer ledit-buffer) | |
112 (save-excursion | |
113 (set-buffer ledit-buffer) | |
114 (goto-char (point-min)) | |
115 (insert "(declare (macros t))\n") | |
116 (write-region (point-min) (point-max) ledit-compile-file) | |
117 (erase-buffer))) | |
118 (suspend-emacs ledit-go-to-liszt-string) | |
119 (load ledit-read-file t t)) | |
120 | |
121 (defun ledit-setup () | |
214 | 122 "Set up key bindings for the Lisp/Emacs interface." |
32367
7c181d033dae
use lisp-mode-shared-map instead of shared-lisp-mode-map
Sam Steingold <sds@gnu.org>
parents:
25416
diff
changeset
|
123 (unless ledit-mode-map |
7c181d033dae
use lisp-mode-shared-map instead of shared-lisp-mode-map
Sam Steingold <sds@gnu.org>
parents:
25416
diff
changeset
|
124 (setq ledit-mode-map (make-sparse-keymap)) |
7c181d033dae
use lisp-mode-shared-map instead of shared-lisp-mode-map
Sam Steingold <sds@gnu.org>
parents:
25416
diff
changeset
|
125 (set-keymap-parent ledit-mode-map lisp-mode-shared-map)) |
36 | 126 (define-key ledit-mode-map "\e\^d" 'ledit-save-defun) |
127 (define-key ledit-mode-map "\e\^r" 'ledit-save-region) | |
128 (define-key ledit-mode-map "\^xz" 'ledit-go-to-lisp) | |
129 (define-key ledit-mode-map "\e\^c" 'ledit-go-to-liszt)) | |
130 | |
131 (ledit-setup) | |
132 | |
256 | 133 ;;;###autoload |
36 | 134 (defun ledit-mode () |
214 | 135 "\\<ledit-mode-map>Major mode for editing text and stuffing it to a Lisp job. |
36 | 136 Like Lisp mode, plus these special commands: |
214 | 137 \\[ledit-save-defun] -- record defun at or after point |
36 | 138 for later transmission to Lisp job. |
214 | 139 \\[ledit-save-region] -- record region for later transmission to Lisp job. |
140 \\[ledit-go-to-lisp] -- transfer to Lisp job and transmit saved text. | |
141 \\[ledit-go-to-liszt] -- transfer to Liszt (Lisp compiler) job | |
36 | 142 and transmit saved text. |
143 \\{ledit-mode-map} | |
144 To make Lisp mode automatically change to Ledit mode, | |
145 do (setq lisp-mode-hook 'ledit-from-lisp-mode)" | |
146 (interactive) | |
63374
5e00fa8bd828
(ledit-mode): Use delay-mode-hooks.
Lute Kamstra <lute@gnu.org>
parents:
62734
diff
changeset
|
147 (delay-mode-hooks (lisp-mode)) |
36 | 148 (ledit-from-lisp-mode)) |
149 | |
256 | 150 ;;;###autoload |
36 | 151 (defun ledit-from-lisp-mode () |
152 (use-local-map ledit-mode-map) | |
153 (setq mode-name "Ledit") | |
154 (setq major-mode 'ledit-mode) | |
62734
ff8adc9b90d0
(ledit-from-lisp-mode): Use run-mode-hooks.
Lute Kamstra <lute@gnu.org>
parents:
52401
diff
changeset
|
155 (run-mode-hooks 'ledit-mode-hook)) |
659
505130d1ddf8
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
269
diff
changeset
|
156 |
18383 | 157 (provide 'ledit) |
158 | |
52401 | 159 ;;; arch-tag: f0f1ca13-8d31-478c-ae1b-b448c55a8faf |
659
505130d1ddf8
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
269
diff
changeset
|
160 ;;; ledit.el ends here |