Mercurial > emacs
annotate lisp/finder.el @ 22416:a517da228cb9
(uce-message-text): Change the text of message that is sent.
(uce-reply-to-uce): Do not assume all Received lines
are on top of message without headers like `From' or `To'.
(uce-reply-to-uce): Parse Received lines better.
(uce-mail-reader): New user option.
(uce-reply-to uce): Add support for Gnus. User is supposed to set
uce-mail-reader to `gnus' if using Gnus to read mail. The default is
to assume Rmail. There's no magic to determine what mail reader is
currently active, so it is not possible to mix using uce.el with Rmail
and Gnus.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 09 Jun 1998 23:40:56 +0000 |
parents | b2ceb0b98995 |
children | efc15742dcc3 |
rev | line source |
---|---|
867 | 1 ;;; finder.el --- topic & keyword-based code finder |
2 | |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
3 ;; Copyright (C) 1992, 1997, 1998 Free Software Foundation, Inc. |
867 | 4 |
5 ;; Author: Eric S. Raymond <esr@snark.thyrsus.com> | |
6 ;; Created: 16 Jun 1992 | |
7 ;; Version: 1.0 | |
8 ;; Keywords: help | |
9 | |
10 ;; This file is part of GNU Emacs. | |
11 | |
12 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
13 ;; it under the terms of the GNU General Public License as published by | |
12244 | 14 ;; the Free Software Foundation; either version 2, or (at your option) |
867 | 15 ;; any later version. |
16 | |
17 ;; GNU Emacs is distributed in the hope that it will be useful, | |
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
20 ;; GNU General Public License for more details. | |
21 | |
22 ;; You should have received a copy of the GNU General Public License | |
14169 | 23 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
24 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
25 ;; Boston, MA 02111-1307, USA. | |
867 | 26 |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
27 ;;; Commentary: |
867 | 28 |
29 ;; This mode uses the Keywords library header to provide code-finding | |
30 ;; services by keyword. | |
31 ;; | |
32 ;; Things to do: | |
33 ;; 1. Support multiple keywords per search. This could be extremely hairy; | |
34 ;; there doesn't seem to be any way to get completing-read to exit on | |
35 ;; an EOL with no substring pending, which is what we'd want to end the loop. | |
36 ;; 2. Search by string in synopsis line? | |
37 ;; 3. Function to check finder-package-info for unknown keywords. | |
38 | |
39 ;;; Code: | |
40 | |
41 (require 'lisp-mnt) | |
42 (require 'finder-inf) | |
43 | |
2996
358fe58ae153
(finder-known-keywords): Use i18n, not i14n.
Richard M. Stallman <rms@gnu.org>
parents:
2716
diff
changeset
|
44 ;; Local variable in finder buffer. |
358fe58ae153
(finder-known-keywords): Use i18n, not i14n.
Richard M. Stallman <rms@gnu.org>
parents:
2716
diff
changeset
|
45 (defvar finder-headmark) |
358fe58ae153
(finder-known-keywords): Use i18n, not i14n.
Richard M. Stallman <rms@gnu.org>
parents:
2716
diff
changeset
|
46 |
867 | 47 (defvar finder-known-keywords |
48 '( | |
2270 | 49 (abbrev . "abbreviation handling, typing shortcuts, macros") |
5141
3efae588d663
(finder-known-keywords): Add data, faces, mouse, matching.
Richard M. Stallman <rms@gnu.org>
parents:
3708
diff
changeset
|
50 (bib . "code related to the `bib' bibliography processor") |
11470
2958364d4d99
(finder-known-keywords): Generalize `c' keyword.
Richard M. Stallman <rms@gnu.org>
parents:
11454
diff
changeset
|
51 (c . "support for the C language and related languages") |
867 | 52 (calendar . "calendar and time management support") |
2247
2c7997f249eb
Add or correct keywords
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2228
diff
changeset
|
53 (comm . "communications, networking, remote access to files") |
22295
b2ceb0b98995
(finder-known-keywords): Fix `convenience' entry.
Dave Love <fx@gnu.org>
parents:
22129
diff
changeset
|
54 (convenience . "convenience features for faster editing") |
5141
3efae588d663
(finder-known-keywords): Add data, faces, mouse, matching.
Richard M. Stallman <rms@gnu.org>
parents:
3708
diff
changeset
|
55 (data . "support editing files of data") |
867 | 56 (docs . "support for Emacs documentation") |
57 (emulations . "emulations of other editors") | |
58 (extensions . "Emacs Lisp language extensions") | |
5141
3efae588d663
(finder-known-keywords): Add data, faces, mouse, matching.
Richard M. Stallman <rms@gnu.org>
parents:
3708
diff
changeset
|
59 (faces . "support for multiple fonts") |
11454
d9ec5322d181
(finder-known-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
9200
diff
changeset
|
60 (frames . "support for Emacs frames and window systems") |
867 | 61 (games . "games, jokes and amusements") |
62 (hardware . "support for interfacing with exotic hardware") | |
63 (help . "support for on-line help systems") | |
11454
d9ec5322d181
(finder-known-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
9200
diff
changeset
|
64 (hypermedia . "support for links between text or other media types") |
2996
358fe58ae153
(finder-known-keywords): Use i18n, not i14n.
Richard M. Stallman <rms@gnu.org>
parents:
2716
diff
changeset
|
65 (i18n . "internationalization and alternate character-set support") |
867 | 66 (internal . "code for Emacs internals, build process, defaults") |
67 (languages . "specialized modes for editing programming languages") | |
68 (lisp . "Lisp support, including Emacs Lisp") | |
69 (local . "code local to your site") | |
70 (maint . "maintenance aids for the Emacs development group") | |
71 (mail . "modes for electronic-mail handling") | |
5141
3efae588d663
(finder-known-keywords): Add data, faces, mouse, matching.
Richard M. Stallman <rms@gnu.org>
parents:
3708
diff
changeset
|
72 (matching . "various sorts of searching and matching") |
3efae588d663
(finder-known-keywords): Add data, faces, mouse, matching.
Richard M. Stallman <rms@gnu.org>
parents:
3708
diff
changeset
|
73 (mouse . "mouse support") |
867 | 74 (news . "support for netnews reading and posting") |
11454
d9ec5322d181
(finder-known-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
9200
diff
changeset
|
75 (oop . "support for object-oriented programming") |
d9ec5322d181
(finder-known-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
9200
diff
changeset
|
76 (outlines . "support for hierarchical outlining") |
867 | 77 (processes . "process, subshell, compilation, and job control support") |
78 (terminals . "support for terminal types") | |
79 (tex . "code related to the TeX formatter") | |
80 (tools . "programming tools") | |
81 (unix . "front-ends/assistants for, or emulators of, UNIX features") | |
82 (vms . "support code for vms") | |
83 (wp . "word processing") | |
84 )) | |
85 | |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
86 (defvar finder-mode-map nil) |
9200
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
87 (or finder-mode-map |
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
88 (let ((map (make-sparse-keymap))) |
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
89 (define-key map " " 'finder-select) |
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
90 (define-key map "f" 'finder-select) |
20009
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
91 (define-key map [mouse-2] 'finder-mouse-select) |
9200
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
92 (define-key map "\C-m" 'finder-select) |
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
93 (define-key map "?" 'finder-summary) |
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
94 (define-key map "q" 'finder-exit) |
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
95 (define-key map "d" 'finder-list-keywords) |
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
96 (setq finder-mode-map map))) |
e48652e64736
(finder-mode-map): Change key bindings:
Richard M. Stallman <rms@gnu.org>
parents:
7943
diff
changeset
|
97 |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
98 |
867 | 99 ;;; Code for regenerating the keyword list. |
100 | |
101 (defvar finder-package-info nil | |
102 "Assoc list mapping file names to description & keyword lists.") | |
103 | |
104 (defun finder-compile-keywords (&rest dirs) | |
2996
358fe58ae153
(finder-known-keywords): Use i18n, not i14n.
Richard M. Stallman <rms@gnu.org>
parents:
2716
diff
changeset
|
105 "Regenerate the keywords association list into the file `finder-inf.el'. |
867 | 106 Optional arguments are a list of Emacs Lisp directories to compile from; no |
1475 | 107 arguments compiles from `load-path'." |
867 | 108 (save-excursion |
2228
d40154ca6354
(finder-compile-keywords) Treat nil in a path argument as $PWD.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1475
diff
changeset
|
109 (let ((processed nil)) |
d40154ca6354
(finder-compile-keywords) Treat nil in a path argument as $PWD.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1475
diff
changeset
|
110 (find-file "finder-inf.el") |
d40154ca6354
(finder-compile-keywords) Treat nil in a path argument as $PWD.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1475
diff
changeset
|
111 (erase-buffer) |
2247
2c7997f249eb
Add or correct keywords
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2228
diff
changeset
|
112 (insert ";;; finder-inf.el --- keyword-to-package mapping\n") |
2c7997f249eb
Add or correct keywords
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2228
diff
changeset
|
113 (insert ";; Keywords: help\n") |
2457
3d2f74e16e54
Added or corrected documentation headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2271
diff
changeset
|
114 (insert ";;; Commentary:\n") |
3d2f74e16e54
Added or corrected documentation headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2271
diff
changeset
|
115 (insert ";; Don't edit this file. It's generated by finder.el\n\n") |
3d2f74e16e54
Added or corrected documentation headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2271
diff
changeset
|
116 (insert ";;; Code:\n") |
2228
d40154ca6354
(finder-compile-keywords) Treat nil in a path argument as $PWD.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1475
diff
changeset
|
117 (insert "\n(setq finder-package-info '(\n") |
d40154ca6354
(finder-compile-keywords) Treat nil in a path argument as $PWD.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1475
diff
changeset
|
118 (mapcar |
14599 | 119 (lambda (d) |
21758
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
120 (when (file-exists-p (directory-file-name d)) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
121 (message "Directory %s" d) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
122 (mapcar |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
123 (lambda (f) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
124 (if (and (or (string-match "^[^=].*\\.el$" f) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
125 ;; Allow compressed files also. Fixme: |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
126 ;; generalize this, especially for |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
127 ;; MS-DOG-type filenames. |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
128 (and (string-match "^[^=].*\\.el\\.\\(gz\\|Z\\)$" f) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
129 (require 'jka-compr))) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
130 ;; Ignore lock files. |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
131 (not (string-match "^.#" f)) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
132 (not (member f processed))) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
133 (let (summary keystart keywords) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
134 (setq processed (cons f processed)) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
135 (save-excursion |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
136 (set-buffer (get-buffer-create "*finder-scratch*")) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
137 (buffer-disable-undo (current-buffer)) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
138 (erase-buffer) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
139 (insert-file-contents |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
140 (concat (file-name-as-directory (or d ".")) f)) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
141 (setq summary (lm-synopsis)) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
142 (setq keywords (lm-keywords))) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
143 (insert |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
144 (format " (\"%s\"\n " |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
145 (if (string-match "\\.\\(gz\\|Z\\)$" f) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
146 (file-name-sans-extension f) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
147 f))) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
148 (prin1 summary (current-buffer)) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
149 (insert |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
150 "\n ") |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
151 (setq keystart (point)) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
152 (insert |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
153 (if keywords (format "(%s)" keywords) "nil") |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
154 ")\n") |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
155 (subst-char-in-region keystart (point) ?, ? ) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
156 ))) |
bc7f520d8251
(finder-compile-keywords):
Richard M. Stallman <rms@gnu.org>
parents:
20264
diff
changeset
|
157 (directory-files (or d "."))))) |
2228
d40154ca6354
(finder-compile-keywords) Treat nil in a path argument as $PWD.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1475
diff
changeset
|
158 (or dirs load-path)) |
2457
3d2f74e16e54
Added or corrected documentation headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2271
diff
changeset
|
159 (insert "))\n\n(provide 'finder-inf)\n\n;;; finder-inf.el ends here\n") |
2228
d40154ca6354
(finder-compile-keywords) Treat nil in a path argument as $PWD.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1475
diff
changeset
|
160 (kill-buffer "*finder-scratch*") |
2271
026941de1886
Make sure that when new keywords are compiled, we see them
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2270
diff
changeset
|
161 (eval-current-buffer) ;; So we get the new keyword list immediately |
14599 | 162 (basic-save-buffer)))) |
867 | 163 |
14669
6feeb4e59815
(finder-compile-keywords-make-dist): New function.
Richard M. Stallman <rms@gnu.org>
parents:
14599
diff
changeset
|
164 (defun finder-compile-keywords-make-dist () |
6feeb4e59815
(finder-compile-keywords-make-dist): New function.
Richard M. Stallman <rms@gnu.org>
parents:
14599
diff
changeset
|
165 "Regenerate `finder-inf.el' for the Emacs distribution." |
17745
ae0f1e4a63be
(finder-compile-keywords-make-dist):
Richard M. Stallman <rms@gnu.org>
parents:
14669
diff
changeset
|
166 (apply 'finder-compile-keywords command-line-args-left) |
ae0f1e4a63be
(finder-compile-keywords-make-dist):
Richard M. Stallman <rms@gnu.org>
parents:
14669
diff
changeset
|
167 (kill-emacs)) |
14669
6feeb4e59815
(finder-compile-keywords-make-dist): New function.
Richard M. Stallman <rms@gnu.org>
parents:
14599
diff
changeset
|
168 |
867 | 169 ;;; Now the retrieval code |
170 | |
14599 | 171 (defun finder-insert-at-column (column &rest strings) |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
172 "Insert, at column COLUMN, other args STRINGS." |
14599 | 173 (if (> (current-column) column) (insert "\n")) |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
174 (move-to-column column t) |
14599 | 175 (apply 'insert strings)) |
176 | |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
177 (defun finder-mouse-face-on-line () |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
178 "Put a `mouse-face' property on the previous line." |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
179 (save-excursion |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
180 (previous-line 1) |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
181 (put-text-property (save-excursion (beginning-of-line) (point)) |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
182 (progn (end-of-line) (point)) |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
183 'mouse-face 'highlight))) |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
184 |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
185 (defun finder-list-keywords () |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
186 "Display descriptions of the keywords in the Finder buffer." |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
187 (interactive) |
18226
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
188 (if (get-buffer "*Finder*") |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
189 (pop-to-buffer "*Finder*") |
18284
21a40db838e2
(finder-list-keywords): Create *Finder* buffer if nec.
Richard M. Stallman <rms@gnu.org>
parents:
18226
diff
changeset
|
190 (pop-to-buffer (set-buffer (get-buffer-create "*Finder*"))) |
18226
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
191 (finder-mode) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
192 (setq buffer-read-only nil) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
193 (erase-buffer) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
194 (mapcar |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
195 (lambda (assoc) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
196 (let ((keyword (car assoc))) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
197 (insert (symbol-name keyword)) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
198 (finder-insert-at-column 14 (concat (cdr assoc) "\n")) |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
199 (finder-mouse-face-on-line))) |
18226
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
200 finder-known-keywords) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
201 (goto-char (point-min)) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
202 (setq finder-headmark (point)) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
203 (setq buffer-read-only t) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
204 (set-buffer-modified-p nil) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
205 (balance-windows) |
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
206 (finder-summary))) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
207 |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
208 (defun finder-list-matches (key) |
18687
3854a35dffd8
(finder-list-matches): Create *Finder Category* buffer.
Richard M. Stallman <rms@gnu.org>
parents:
18284
diff
changeset
|
209 (pop-to-buffer (set-buffer (get-buffer-create "*Finder Category*"))) |
18226
37ff8dfff53b
(finder-mode): Don't switch buffers or change text here.
Richard M. Stallman <rms@gnu.org>
parents:
17745
diff
changeset
|
210 (finder-mode) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
211 (setq buffer-read-only nil) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
212 (erase-buffer) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
213 (let ((id (intern key))) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
214 (insert |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
215 "The following packages match the keyword `" key "':\n\n") |
2996
358fe58ae153
(finder-known-keywords): Use i18n, not i14n.
Richard M. Stallman <rms@gnu.org>
parents:
2716
diff
changeset
|
216 (setq finder-headmark (point)) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
217 (mapcar |
14599 | 218 (lambda (x) |
219 (if (memq id (car (cdr (cdr x)))) | |
220 (progn | |
221 (insert (car x)) | |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
222 (finder-insert-at-column 16 (concat (nth 1 x) "\n")) |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
223 (finder-mouse-face-on-line)))) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
224 finder-package-info) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
225 (goto-char (point-min)) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
226 (forward-line) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
227 (setq buffer-read-only t) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
228 (set-buffer-modified-p nil) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
229 (shrink-window-if-larger-than-buffer) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
230 (finder-summary))) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
231 |
20264
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
232 ;; Search for a file named FILE on `load-path', also trying compressed |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
233 ;; versions if jka-compr is in use. |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
234 (defun finder-find-library (library) |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
235 (or (locate-library library t) |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
236 (if (rassq 'jka-compr-handler file-name-handler-alist) |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
237 (or (locate-library (concat library ".gz") t) |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
238 (locate-library (concat library ".Z") t) |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
239 ;; last resort for MS-DOG et al |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
240 (locate-library (concat library "z")))))) |
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
241 |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
242 (defun finder-commentary (file) |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
243 "Display FILE's commentary section." |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
244 (interactive) |
20264
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
245 (let* ((str (lm-commentary (finder-find-library file)))) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
246 (if (null str) |
7943
8053544ffe30
(finder-commentary): Fix error message syntax.
Richard M. Stallman <rms@gnu.org>
parents:
5848
diff
changeset
|
247 (error "Can't find any Commentary section")) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
248 (pop-to-buffer "*Finder*") |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
249 (setq buffer-read-only nil) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
250 (erase-buffer) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
251 (insert str) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
252 (goto-char (point-min)) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
253 (delete-blank-lines) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
254 (goto-char (point-max)) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
255 (delete-blank-lines) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
256 (goto-char (point-min)) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
257 (while (re-search-forward "^;+ ?" nil t) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
258 (replace-match "" nil nil)) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
259 (goto-char (point-min)) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
260 (setq buffer-read-only t) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
261 (set-buffer-modified-p nil) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
262 (shrink-window-if-larger-than-buffer) |
14599 | 263 (finder-summary))) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
264 |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
265 (defun finder-current-item () |
2996
358fe58ae153
(finder-known-keywords): Use i18n, not i14n.
Richard M. Stallman <rms@gnu.org>
parents:
2716
diff
changeset
|
266 (if (and finder-headmark (< (point) finder-headmark)) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
267 (error "No keyword or filename on this line") |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
268 (save-excursion |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
269 (beginning-of-line) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
270 (current-word)))) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
271 |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
272 (defun finder-select () |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
273 "Select item on current line in a finder buffer." |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
274 (interactive) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
275 (let ((key (finder-current-item))) |
20009
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
276 (if (string-match "\\.el$" key) |
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
277 (finder-commentary key) |
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
278 (finder-list-matches key)))) |
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
279 |
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
280 (defun finder-mouse-select (event) |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
281 "Select item in a finder buffer with the mouse." |
20009
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
282 (interactive "e") |
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
283 (save-excursion |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
284 (set-buffer (window-buffer (posn-window (event-start event)))) |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
285 (goto-char (posn-point (event-start event))) |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
286 (finder-select))) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
287 |
867 | 288 (defun finder-by-keyword () |
289 "Find packages matching a given keyword." | |
290 (interactive) | |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
291 (finder-list-keywords)) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
292 |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
293 (defun finder-mode () |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
294 "Major mode for browsing package documentation. |
2716
acd678e58602
* finder.el: Bind finder-exit to 'q', not 'x'; the former is the
Jim Blandy <jimb@redhat.com>
parents:
2527
diff
changeset
|
295 \\<finder-mode-map> |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
296 \\[finder-select] more help for the item on the current line |
5848 | 297 \\[finder-exit] exit Finder mode and kill the Finder buffer. |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
298 " |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
299 (interactive) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
300 (use-local-map finder-mode-map) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
301 (set-syntax-table emacs-lisp-mode-syntax-table) |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
302 (setq mode-name "Finder") |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
303 (setq major-mode 'finder-mode) |
2996
358fe58ae153
(finder-known-keywords): Use i18n, not i14n.
Richard M. Stallman <rms@gnu.org>
parents:
2716
diff
changeset
|
304 (make-local-variable 'finder-headmark) |
14599 | 305 (setq finder-headmark nil)) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
306 |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
307 (defun finder-summary () |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
308 "Summarize basic Finder commands." |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
309 (interactive) |
14313
8e13f59d2c19
(finder-summary): Pass proper format string to message.
Karl Heuer <kwzh@gnu.org>
parents:
14169
diff
changeset
|
310 (message "%s" |
2716
acd678e58602
* finder.el: Bind finder-exit to 'q', not 'x'; the former is the
Jim Blandy <jimb@redhat.com>
parents:
2527
diff
changeset
|
311 (substitute-command-keys |
21805
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
312 "\\<finder-mode-map>\\[finder-select] = select, \ |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
313 \\[finder-mouse-select] = select, \\[finder-list-keywords] = to \ |
aafa93c1a5ce
(finder-insert-at-column): Simplify.
Dave Love <fx@gnu.org>
parents:
21758
diff
changeset
|
314 finder directory, \\[finder-exit] = quit, \\[finder-summary] = help"))) |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
315 |
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
316 (defun finder-exit () |
20264
3b9b07f3eab5
(finder-find-library): Re-instate (with a different
Karl Heuer <kwzh@gnu.org>
parents:
20241
diff
changeset
|
317 "Exit Finder mode and kill the buffer." |
2527
93015b63b041
Rewritten. The Finder is now a major mode with the ability to browse
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2502
diff
changeset
|
318 (interactive) |
20241 | 319 (or (one-window-p t) |
320 (delete-window)) | |
20009
09bc233eb018
(finder-mode-map): Bind [mouse-2].
Karl Heuer <kwzh@gnu.org>
parents:
19169
diff
changeset
|
321 ;; Can happen in either buffer -- kill each of the two that exists |
20241 | 322 (and (get-buffer "*Finder*") |
323 (kill-buffer "*Finder*")) | |
324 (and (get-buffer "*Finder Category*") | |
325 (kill-buffer "*Finder Category*"))) | |
867 | 326 |
327 (provide 'finder) | |
328 | |
329 ;;; finder.el ends here |