icicle update
[emacs.git] / .emacs.d / elisp / icicle / icicles-chg.el
1 ;;; icicles-chg.el --- Change logs for Icicles libraries.
2 ;;
3 ;; Filename: icicles-chg.el
4 ;; Description: Change logs for Icicles libraries.
5 ;; Author: Drew Adams
6 ;; Maintainer: Drew Adams (concat "drew.adams" "@" "oracle" ".com")
7 ;; Copyright (C) 2007-2014, Drew Adams, all rights reserved.
8 ;; Created: Tue Nov 27 07:47:53 2007
9 ;; Last-Updated: Sun May 11 12:50:46 2014 (-0700)
10 ;; By: dradams
11 ;; Update #: 10896
12 ;; URL: http://www.emacswiki.org/icicles-chg.el
13 ;; Doc URL: http://www.emacswiki.org/Icicles
14 ;; Keywords: extensions, help, abbrev, local, minibuffer,
15 ;; keys, apropos, completion, matching, regexp, command
16 ;; Compatibility: GNU Emacs: 20.x, 21.x, 22.x, 23.x, 24.x
17 ;;
18 ;; Features that might be required by this library:
19 ;;
20 ;; None
21 ;;
22 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
23 ;;
24 ;;; Commentary:
25 ;;
26 ;; Change logs for Icicles libraries.
27 ;;
28 ;; This file consolidates the change logs for all Icicles libraries.
29 ;; It contains no code.
30 ;;
31 ;; Libraries `icicles-doc1.el' and `icicles-doc2.el' contain only
32 ;; documentation, and they do not have change logs. Initially,
33 ;; everything was in one library, `icicles.el', so its change log is
34 ;; the oldest.
35 ;;
36 ;; This is a long file. To fontify it, you will likely need to
37 ;; increase `font-lock-maximum-size'. (I use the value 1024000.)
38 ;;
39 ;; ****************************************************************************************************
40 ;; NOTE: If you byte-compile Icicles (recommended), then WHENEVER `icicles-mac.el' is updated, you
41 ;; MUST LOAD `icicles-mac.el' (not just `icicles-mac.elc'), then compile it, then RECOMPILE *ALL*
42 ;; of the other Icicles source files as well. This is normal for Lisp. Code that depends on
43 ;; macros needs to be byte-compiled anew after loading the updated macros.
44 ;; ****************************************************************************************************
45 ;;
46 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
47 ;;
48 ;; This program is free software; you can redistribute it and/or
49 ;; modify it under the terms of the GNU General Public License as
50 ;; published by the Free Software Foundation; either version 2, or
51 ;; (at your option) any later version.
52 ;;
53 ;; This program is distributed in the hope that it will be useful,
54 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
55 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
56 ;; General Public License for more details.
57 ;;
58 ;; You should have received a copy of the GNU General Public License
59 ;; along with this program; see the file COPYING. If not, write to
60 ;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth
61 ;; Floor, Boston, MA 02110-1301, USA.
62 ;;
63 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
64
65 ;;(@> "Index")
66 ;;
67 ;; If you have library `linkd.el' and Emacs 22 or later, load
68 ;; `linkd.el' and turn on `linkd-mode' now. It lets you easily
69 ;; navigate around the sections of this doc. Linkd mode will
70 ;; highlight this Index, as well as the cross-references and section
71 ;; headings throughout this file. You can get `linkd.el' here:
72 ;; http://dto.freeshell.org/notebook/Linkd.html.
73 ;;
74 ;; (@> "CHANGE LOG FOR `icicles-cmd1.el'")
75 ;; (@> "CHANGE LOG FOR `icicles-cmd2.el'")
76 ;; (@> "CHANGE LOG FOR `icicles-face.el'")
77 ;; (@> "CHANGE LOG FOR `icicles-fn.el'")
78 ;; (@> "CHANGE LOG FOR `icicles-mac.el'")
79 ;; (@> "CHANGE LOG FOR `icicles-mcmd.el'")
80 ;; (@> "CHANGE LOG FOR `icicles-mode.el'")
81 ;; (@> "CHANGE LOG FOR `icicles-opt.el'")
82 ;; (@> "CHANGE LOG FOR `icicles-var.el'")
83 ;; (@> "CHANGE LOG FOR `icicles.el'")
84 ;; (@> "CHANGE LOG FOR `icicles-cmd.el'" - Deprecated file)
85
86 ;;;(@* "CHANGE LOG FOR `icicles-cmd1.el'")
87 ;;
88 ;; 2014/05/09 dadams
89 ;; icicle-repeat-complex-command*: Use trick only for Emacs 24.4+.
90 ;; 2014/05/04 dadams
91 ;; Added: icicle-repeat-complex-command--called-interactively-skip.
92 ;; icicle-repeat-complex-command: Apply trick used to fix Emacs bug #14136.
93 ;; 2014/04/22 dadams
94 ;; icicle-apropos-*: Updated to use Emacs 24.4 apropos-user-option.
95 ;; 2014/04/20 dadams
96 ;; icicle-describe-option-of-type: Use the function icicle-anychar-regexp, not the variable.
97 ;; icicle-select-frame-by-name: Use frame-name-history if available.
98 ;; Removed some old $$$$$ comments (cleanup).
99 ;; 2014/04/01 dadams
100 ;; icicle-bookmark(-other-window|-list|-set):
101 ;; Faces icicle-annotation & icicle-msg-emphasis, not file-name-shadow & bookmark-menu-heading.
102 ;; 2014/03/09 dadams
103 ;; icicle-file(-other-window): Set this-command so user sees msgs appropriate to the command.
104 ;; 2014/03/08 dadams
105 ;; Use (featurep 'icomplete), not (boundp 'icomplete-mode), everywhere.
106 ;; icicle-execute-extended-command-1: Move run of pre-command-hook after binding of this-command.
107 ;; icicle-apropos-value, icicle-describe-option-of-type, *-find-file*-in-tags-table*:
108 ;; Put properties icicle-turn-off-(icomplete-mode|incremental-completion).
109 ;; icicle-(recent-file|find-file-abs)*: Put property icicle-hide-common-match.
110 ;; icicle-locate*: Put properties icicle-turn-off* and icicle-hide-common-match.
111 ;; icicle-find-file*(-in-tags-table*): Put property icicle-Completions-window-max-height.
112 ;; 2014/02/22 dadams
113 ;; icicle-lisp-complete-symbol: Fixed regression introduced by 2014-01-15 change:
114 ;; Max, not min, of point and BEG. If END is nil, use BEG for PATTERN. Go to BEG before insert.
115 ;; 2014/02/08 dadams
116 ;; icicle-find-file-(no-search|of-content)-action-1:
117 ;; Pass icicle-find-file-(no-search|of-content)-1 as arg, not icicle-find-file-action-fn.
118 ;; icicle-find-file-or-expand-dir: Use funcall, not call-interactively (not really a command).
119 ;; Use file-directory-p, not icicle-looks-like-dir-name-p.
120 ;; Use file-name-as-directory to get new default-directory.
121 ;; 2014/01/25 dadams
122 ;; icicle-bbdb-complete-name: Do not define if bbdb-version is not a number.
123 ;; 2014/01/18 dadams
124 ;; icicle-customize-face(-other-window): Handle proxy candidates in action function. Updated doc.
125 ;; 2014/01/15 dadams
126 ;; icicle-lisp-complete-symbol:
127 ;; Prevent read-only error message for empty input in minibuffer. Update a bit wrt vanilla.
128 ;; Wrap END calculation in unwind-protect also.
129 ;; 2014/01/08 dadams
130 ;; icicle-command-abbrev-action: Set CMD to the invoked command, using command-history.
131 ;; 2014/01/06 dadams
132 ;; icicle-apropos-value, icicle-command-abbrev: Bind icicle--last-toggle-transforming-msg.
133 ;; 2014/01/04 dadams
134 ;; icicle-locate-file-*-1: Typo: Mistakenly used recentf-list instead of default-directory.
135 ;; icicle-recent-file-*-1: Ensure recentf-list is boundp.
136 ;; 2014/01/02 dadams
137 ;; icicle-execute-extended-command(-1):
138 ;; Restore SPC correctly. If CMD turns off Icicle mode then not icicle-self-insert.
139 ;; 2013/12/09 dadams
140 ;; Added:
141 ;; icicle-find-file-of-content-in-tags-table, icicle-find-file-no-search-in-tags-table,
142 ;; icicle-find-file-of-content-in-tags-table-other-window,
143 ;; icicle-find-file-no-search-in-tags-table-other-window,
144 ;; icicle-find-file-of-content-in-tags-table-1, icicle-find-file-no-search-in-tags-table-1
145 ;; icicle-find-file-in-tags-table(-other-window): use defalias now - either of-content|no-search.
146 ;; Applied renamings: icicle-buffer-skip-hook to icicle-buffer-skip-functions,
147 ;; icicle-find-file-of-content-skip-hook to icicle-file-skip-functions.
148 ;; 2013/12/08 dadams
149 ;; Added:
150 ;; icicle-find-file-abs-action-fn, icicle-find-file-action-fn, icicle-new-bufs-to-keep,
151 ;; icicle-new-bufs-to-kill, icicle-existing-bufs,
152 ;; icicle-find-file-no-search-1 (from w/o *-1) using action fn (and same cleanup for undo),
153 ;; icicle-find-file-of-content-1 (from w/o *-1) using action fn,
154 ;; icicle-find-file-abs-no-search-1 (from w/o *-1) using action fn,
155 ;; icicle-find-file-abs-of-content-1 (from w/o *-1) using action fn,
156 ;; icicle-recent-file-no-search-1 (from w/o *-1) using action fn
157 ;; (& icicle-pref-arg, not curr, & same cleanup for undo),
158 ;; icicle-recent-file-of-content-1 (from w/o *-1) using action fn,
159 ;; icicle-locate-file-no-search-1 (from icicle-locate-file-1) using action fn (& same cleanup),
160 ;; icicle-locate-file-of-content-1,
161 ;; icicle-find-file-abs-read-only, icicle-find-file-abs-read-only-other-window,
162 ;; icicle-locate-file-no-search, icicle-locate-file-no-search-other-window,
163 ;; icicle-locate-file-no-search-no-symlinks,
164 ;; icicle-locate-file-no-search-no-symlinks-other-window,
165 ;; icicle-locate-file-of-content, icicle-locate-file-of-content-other-window,
166 ;; icicle-locate-file-of-content-no-symlinks,
167 ;; icicle-locate-file-of-content-no-symlinks-other-window,
168 ;; icicle-locate-no-search, icicle-locate-no-search-other-window,
169 ;; icicle-locate-of-content, icicle-locate-of-content-other-window,
170 ;; icicle-find-file-abs-no-search-action-1, icicle-find-file-abs-of-content-action-1,
171 ;; icicle-find-file-no-search-action-1, icicle-find-file-of-content-action-1,
172 ;; icicle-find-file-no-search-action, icicle-find-file-no-search-other-window-action,
173 ;; icicle-find-file-of-content-action, icicle-find-file-of-content-other-window-action,
174 ;; icicle-find-file-of-content-ro-action, icicle-find-file-of-content-ro-ow-action,
175 ;; icicle-find-file-abs-no-search-action, icicle-find-file-abs-no-search-other-window-action,
176 ;; icicle-find-file-abs-no-search-ro-action, icicle-find-file-abs-no-search-ro-ow-action,
177 ;; icicle-find-file-abs-of-content-action, icicle-find-file-abs-of-content-other-window-action,
178 ;; icicle-find-file-abs-of-content-ro-action, icicle-find-file-abs-of-content-ro-ow-action.
179 ;; icicle-(find-file(-abs)|recent-file|read-only)-(of-content|no-search)(-other-window):
180 ;; Redefined as a defun, using *-1 and *-action-fn.
181 ;; icicle-locate(-file)(-no-symlinks)(-other-window): defalias now - either of-content|no-search.
182 ;; Removed: icicle-locate-file-action-fn, icicle-locate-file(-other-window)-action,
183 ;; icicle-find-file-abs-1, icicle-locate-file-1.
184 ;; icicle-find-file(-abs)-read-only(-other-window): Define for *-abs-* and *-of-content-* also.
185 ;; icicle-buffer-multi-complete: Use new icicle-* vars, so do not bother to test with boundp.
186 ;; 2013/12/03 dadams
187 ;; Added: icicle-find-file-abs-1.
188 ;; icicle-find-file-abs-of-content(-other-window), icicle-recent-file-of-content(-other-window):
189 ;; Use icicle-find-file-abs-1.
190 ;; icicle-completing-yank: Typo - paren too early.
191 ;; 2013/12/01 dadams
192 ;; Added: icicle-recent-file-of-content, icicle-recent-file-of-content-other-window.
193 ;; Renamed: *-recent-file(-other-window) to icicle-recent-file-no-search(-other-window).
194 ;; Redefine icicle-recent-file(-other-window) as *-of-content* or *-no-search*, per Emacs version.
195 ;; icicle-execute-extended-command-1: Restore SPC to self inserting, for recursive minibuffers.
196 ;; icicle-find-file-abs-of-content: Pass nil as OTHER-WINDOW-P arg to *-find-file-or-expand-dir
197 ;; icicle-find-file(-abs)-of-content*, :
198 ;; 1. Do the cleanup also for undo code, not just last code.
199 ;; 2. Just kill-buffer, instead of visiting and doing restore-buffer-modified-p first.
200 ;; 2013/11/29 dadams
201 ;; icicle-find-file(-abs)(-no-search|of-content)*, icicle-find-file-in-tags-table*:
202 ;; icicle-all-candidates-list-alt-action-fn needs to icicle-transform-multi-completion each file.
203 ;; 2013/11/26 dadams
204 ;; icicle-execute-extended-command: Temporarily bind SPC to minibuffer-complete-word.
205 ;; 2013/11/23 dadams
206 ;; Added: icicle-find-file-abs-of-content, icicle-find-file-abs-of-content-other-window.
207 ;; Renamed: *-find-file-absolute(-other-window) to icicle-find-file-abs-no-search(-other-window).
208 ;; Redefine icicle-find-file-absolute(-other-window) as *-no-search* or *-of-content*.
209 ;; icicle-find-file-of-content(-other-window):
210 ;; Just set FILE (no FIL2 binding).
211 ;; First code: Reset current-prefix-arg to nil, so can use it anew in action function.
212 ;; Added msg: Gathering files...
213 ;; icicle-file-of-content-apropos-complete-match:
214 ;; Handle date for absolute file names (icicle-find-file-abs-of-content).
215 ;; icicle-make-file+date-candidate: Removed final space after %T.
216 ;; 2013/11/19 dadams
217 ;; icicle-yank-pop-commands, icicle-completing-yank: Bind enable-recursive-minibuffers to t.
218 ;; 2013/11/03 dadams
219 ;; Added: icicle-visit-marked-file-of-content-recursive(-other-window),
220 ;; icicle-visit-marked-file-of-content-1, icicle-vmfoc-other-win-p, icicle-vmfoc-recursive-p
221 ;; icicle-visit-marked-file-of-content(-other-window): Use icicle-visit-marked-file-of-content-1.
222 ;; icicle-locate-file-no-symlinks: Fixed typo: action function is not *-other-window.
223 ;; 2013/10/31 dadams
224 ;; icicle-visit-marked-file-of-content*: Use diredp-get-files, so handle recursively marked files.
225 ;; 2013/10/29 dadams
226 ;; icicle-bookmark-cmd: Use bmkp-bookmark-set-confirm-overwrite, not bookmark-set, if defined.
227 ;; icicle-bookmark-set: Added code from Bookmark+ bookmark-set, for confirmation query if exists.
228 ;; 2013/10/27 dadams
229 ;; Added: icicle-custom-theme (Emacs 24+).
230 ;; 2013/09/02 dadams
231 ;; Added: icicle-dabbrev--last-completion-buffer, icicle-dabbrev--last-obarray.
232 ;; icicle-dabbrev-completion: Use those Icicles vars - dabbrev.el versions removed in Emacs 24.
233 ;; 2013/08/19 dadams
234 ;; icicle-kill-buffer: Bind icicle-use-candidates-only-once-flag to t.
235 ;; icicle-kill-a-buffer-and-update-completions: Do not update minibuffer-completion-table.
236 ;; 2013/08/05 dadams
237 ;; icicle-find-file-or-expand-dir: Reverted last change. Expand only for RET, not C-RET.
238 ;; 2013/08/04 dadams
239 ;; icicle-find-file-or-expand-dir: bind enable-recursive-minibuffers to t (for C-RET etc.).
240 ;; 2013/08/03 dadams
241 ;; icicle-kmacro-action: Fixed numeric prefix arg for count.
242 ;; Applied renamings: icicle-*-first-p.
243 ;; 2013/08/02 dadams
244 ;; Added: icicle-find-file-or-expand-dir.
245 ;; icicle-find-file(of-content|-no-search)(-other-window), : Use icicle-find-file-or-expand-dir.
246 ;; 2013/08/01 dadams
247 ;; icicle-comint-dynamic-complete-as-filename: Bind enable-recursive-minibuffers to t.
248 ;; 2013/07/29 dadams
249 ;; icicle-comint-dynamic-simple-complete: Bind enable-recursive-minibuffers to t.
250 ;; 2013/07/23 dadams
251 ;; icicle-buffer-multi-complete, icicle-describe-opt-of-type-complete:
252 ;; Use regexp-quote before concat ^ to front of string.
253 ;; 2013/07/04 dadams
254 ;; Use icicle-read-regexp, not read-string, for reading all regexps.
255 ;; 2013/07/02 dadams
256 ;; Added: icicle-bookmark-help (factored out), icicle-bookmark-act-on-prop.
257 ;; icicle-bookmark(-list|(-jump)(-other-window)):
258 ;; Bind icicle-candidate-alt-action-fn to icicle-bookmark-act-on-prop.
259 ;; icicle-bookmark(-set|list|-other-window|jump(-other-window)):
260 ;; Bind icicle-candidate-help-fn to icicle-bookmark-help.
261 ;; 2013/06/23 dadams
262 ;; icicle-find-file-of-content(-other-window): Ensure handle mode, vars, hooks, & handlers OK.
263 ;; In action fn: UN-visit any buffers that were created for content searching.
264 ;; 2013/04/24 dadams
265 ;; icicle-dired-saved-file-candidates:
266 ;; Removed error if no saved file names. Forgot to remove, when added icicle-file-list choosing.
267 ;; icicle-dired-saved-file-candidates(-other-window): Error if no files after icicle-file-list.
268 ;; 2013/04/17 dadams
269 ;; icicle-buffer-name-prompt, icicle-default-buffer-names: C-u C-u C-u means invisible buffers.
270 ;; icicle-kill-buffer: Add current buff to icicle-default-buffer-names.
271 ;; icicle-visit-marked-file-of-content*: Pass no arg to icicle-default-buffer-names.
272 ;; icicle-add-buffer-candidate: Single default if < Emacs 23.
273 ;; 2013/04/06 dadams
274 ;; icicle-default-buffer-names: If ARG is nil, put other-buffer first. Return up to six, not four.
275 ;; 2013/04/02 dadams
276 ;; Removed: icicle-ess-* (four Icicles completion functions for ESS).
277 ;; 2013/03/31 dadams
278 ;; icicle-buffer-name-prompt: (new) C-u C-u means visible buffer.
279 ;; icicle-buffer: Update doc string for visible buffers as candidates.
280 ;; 2013/03/27 dadams
281 ;; Do not require dabbrev for Emacs 24+ (until I get around to fixing icicle-dabbrev-completion).
282 ;; Temporarily removed icicle-dabbrev-completion for Emacs 24+.
283 ;; 2013/03/16 dadams
284 ;; custom-variable-p: Return nil if arg is not a symbol.
285 ;; icicle-buffer-multi-complete, icicle-(buffer|file-of-content)-apropos-complete-match:
286 ;; Test this-command, not last-command, and test it also for icicle-cycling-command.
287 ;; icicle-binary-option-p, icicle-buffer-multi-complete: Use icicle-get-safe, not get.
288 ;; 2013/03/12 dadams
289 ;; Added: icicle-buffer-cand-help (factored out).
290 ;; icicle-buffer(other-window), icicle-visit-marked-file-of-content(-other-window):
291 ;; Use icicle-buffer-cand-help.
292 ;; icicle-visit-marked-file-of-content:
293 ;; Bind icicle-last-apropos-complete-match-fn to icicle-buffer-apropos-complete-match.
294 ;; Bind icicle-apropos-complete-match-fn in second part of icicle-buffer-bindings, not first.
295 ;; icicle-send-bug-report: Ask for Update # from icicles-chg.el.
296 ;; 2013/03/11 dadams
297 ;; icicle(-customize)-apropos-options-of-type:
298 ;; Bound *-last-apropos-complete-match-fn to *-multi-comp-apropos-complete-match for progressive.
299 ;; 2013/03/08 dadams
300 ;; (icicle-(visit-marked-file-of-content|buffer(-no-search)))-other-window:
301 ;; Forgot OTHER-WIN arg to icicle-buffer-name-prompt.
302 ;; 2013/03/07 dadams
303 ;; Updated to use icicle-user-error where appropriate.
304 ;; 2013/03/05 dadams
305 ;; icicle-search-read-context-regexp: Provide default(s) using icicle-defaults-at-point (new).
306 ;; 2013/02/25 dadams
307 ;; icicle-buffer-multi-complete, icicle-buffer-apropos-complete-match, icicle-find-file-of-content:
308 ;; isearch-update-ring if find content-pat match.
309 ;; 2013/02/24 dadams
310 ;; icicle-find-file-of-content(-other-window):
311 ;; Use normal-mode, not revert-buffer. No need to restore r-o status. Thx to Michael Heerdegen.
312 ;; 2013/02/16 dadams
313 ;; Renamed: icicle-find-file(-other-window) to icicle-find-file-no-search(-other-window).
314 ;; Added defaliases for (new) icicle-find-file(-other-window), depending on Emacs version.
315 ;; icicle-file(-other-window): Corrected current-prefix-arg binding.
316 ;; icicle-find-file-absolute(-other-window): Prefix arg on candidate means open it read-only.
317 ;; *-find-file-(absolute|no-search)(-other-window): Include *-mouse-candidate-action in memq test.
318 ;; icicle-find-file-read-only*: Use icicle-find-file-no-search*, not icicle-find-file*.
319 ;; icicle-find-file-of-content(-other-window): Restore correct read-only status after reverting.
320 ;; *-dired-(saved-file-candidates|project)-other-window, *-find-file-no-search(-other-window)
321 ;; *-find-file-read-only-other-window, *-((recent|locate)-file(-no-symlinks)|locate)-other-window:
322 ;; Put property icicle-Completions-window-max-height (forgot).
323 ;; 2013/02/15 dadams
324 ;; icicle-pp-eval-expression: Bind deactivate-mark to nil, like fix for Emacs bug #13724.
325 ;; 2013/02/04 dadams
326 ;; Removed all autoload cookies.
327 ;; 2013/01/06 dadams
328 ;; icicle-execute-extended-command-1:
329 ;; Extra safeguards: Ensure CMD is fboundp before calling symbol-function.
330 ;; Ensure it is commandp before calling it interactively. Error if not.
331 ;; 2013/01/05 dadams
332 ;; icicle-bookmark-*-narrow: No-op unless (featurep 'bookmark+).
333 ;; icicle-(delete-file|dired|find-file(-absolute|-of-content|-in-tags-table)|recent-file|
334 ;; locate(-file)|(file|directory)-list):
335 ;; Updated doc string for new C-x C-t bindings.
336 ;; 2013/01/04 dadams
337 ;; icicle-bookmark-(autofile|autonamed)-narrow:
338 ;; Use icicle-transform-multi-completion, not icicle-mctized-display-candidate, like others.
339 ;; 2013/01/02 dadams
340 ;; icicle-other-window-or-frame: Use 1on1-other-frame.
341 ;; 2012/12/21 dadams
342 ;; icicle-buffer-multi-complete, icicle-file-of-content-apropos-complete-match:
343 ;; Added filtering by icicle-(buffer|find-file-of-content)-skip-hook. Thx to C. Schmidt.
344 ;; 2012/12/20 dadams
345 ;; Removed: icicle-find-file-of-content-multi-complete. Use only *-apropos-complete-match.
346 ;; icicle-file-of-content-apropos-complete-match:
347 ;; Do not use find-file-noselect, except for a dir.
348 ;; Use find-buffer-visiting or create-file-buffer, and with-current-buffer, insert-file-contents.
349 ;; Add buffer to new-bufs--to-kill.
350 ;; icicle-find-file-of-content(-other-window):
351 ;; Do not bind icicle-read-file-name-internal-fn to icicle-find-file-of-content-multi-complete.
352 ;; revert-buffer, so use correct mode.
353 ;; 2012/12/15 dadams
354 ;; icicle-find-file-of-content*:
355 ;; Bind icicle-apropos-complete-match-fn to icicle-file-of-content-apropos-complete-match, to fix
356 ;; apropos completion
357 ;; Bind icicle-compute-narrowing-regexp-p to t, for narrowing optimization.
358 ;; Set buffer-modified-p to nil before calling kill-buffer.
359 ;; icicle-file-of-content-apropos-complete-match:
360 ;; Require that each file name is matched by icicle-narrow-regexp (optimization for narrowing).
361 ;; 2012/12/14 dadams
362 ;; icicle-describe-option-of-type:
363 ;; Bind icicle-last-apropos-complete-match-fn to icicle-multi-comp-apropos-complete-match,
364 ;; for progressive completion. Bind icicle-dot-string to icicle-anychar-regexp.
365 ;; Updated doc to reflect improved behavior.
366 ;; 2012/12/12 dadams
367 ;; Added: icicle-buffer-apropos-complete-match, icicle-file-of-content-apropos-complete-match.
368 ;; icicle-buffer(-other-window):
369 ;; Bind icicle-last-apropos-complete-match-fn to icicle-buffer-apropos-complete-match.
370 ;; Move binding of icicle-apropos-complete-match-fn to post-bindings.
371 ;; icicle-find-file-of-content(-other-window):
372 ;; Bind icicle-last-apropos-complete-match-fn to icicle-file-of-content-apropos-complete-match.
373 ;; Reverted the 12/07 change. Binding *-apropos-complete-match-fn to nil broke apropos compl.
374 ;; icicle-find-file-of-content-multi-complete:
375 ;; Rewrote. Do not use all-completions. Use completion-table-in-turn for everything, passing
376 ;; content-matching predicate.
377 ;; icicle-execute-extended-command-1, icicle-command-abbrev-action:
378 ;; Bind completion-annotate-function to nil, to cancel top-level binding.
379 ;; 2012/12/07 dadams
380 ;; icicle-find-file-of-content(-other-window):
381 ;; Restored binding of icicle-apropos-complete-match-fn to nil.
382 ;; 2012/12/02 dadams
383 ;; Removed: icicle-find-file-of-content-read-file-name (use icicle-read-file-name-default instead).
384 ;; icicle-find-file-of-content(-other-window):
385 ;; Bind icicle-read-file-name-internal-fn, not read-file-name-function.
386 ;; No longer bind icicle-apropos-complete-match-fn to nil.
387 ;; 2012/12/01 dadams
388 ;; icicle-find-file-of-content-multi-complete:
389 ;; Use icicle-completion--embedded-envvar-table & completion-file-name-table, not internal Emacs.
390 ;; 2012/11/29 dadams
391 ;; icicle-find-file-of-content: Typo: removed -other-window.
392 ;; 2012/11/28 dadams
393 ;; icicle-apropos-value: Minor corrections. And treat C-u case like C-0 for C-$.
394 ;; icicle-completing-yank:
395 ;; Do not icicle-delete-dups when constructing cands. Let icicle-transform-function do it.
396 ;; 2012/11/26 dadams
397 ;; Added: icicle-apropos-value. Thx to Michael Heerdegen.
398 ;; icicle-execute-extended-command(-1): Save and restore icicle-toggle-transforming-message.
399 ;; 2012/11/19 dadams
400 ;; icicle-execute-extended-command-1: Show key-reminder after invoking CMD. Thx to M. Heerdegen.
401 ;; icicle-customize-apropos: lexical-let -> let. Put PATTERN in progress msg. Add comma for TYPE.
402 ;; icicle-find-tag-define-candidates-1: Put regexp in progress msg.
403 ;; 2012/11/17 dadams
404 ;; icicle-execute-extended-command-1: Show key-reminder msg before sit-for. Thx to M. Heerdegen.
405 ;; 2012/11/10 dadams
406 ;; custom-variable-p, icicle-binary-option-p: icicle-get-safe -> get.
407 ;; icicle-increment-(option|variable): intern -> intern-soft. Thx to Michael Heerdegen.
408 ;; 2012/11/08 dadams
409 ;; custom-variable-p, icicle-execute-extended-command-1, icicle-binary-option-p:
410 ;; Use icicle-get-safe.
411 ;; Doc strings: Use \\[...] more.
412 ;; 2012/11/07 dadams
413 ;; icicle-zap-to-char: char-to-string -> string.
414 ;; 2012/11/03 dadams
415 ;; Typo in eval-when-compile around icicle-bbdb-complete-name.
416 ;; 2012/11/02 dadams
417 ;; icicle-buffer-multi-complete: Use prog1 around content search in *-remove-if-not.
418 ;; Wrap icicle-bbdb-complete-name in eval-when-compile to avoid byte-compile error for BBDB 3.02.
419 ;; icicle-(buffer|file-of-content)-multi-complete: Put back prepending ^ for prefix mode.
420 ;; 2012/11/01 dadams
421 ;; icicle-(buffer|file-of-content)-multi-complete: Handle metadata COMPLETION-MODE arg.
422 ;; Comment out prepending ^ for prefix mode.
423 ;; 2012/10/28 dadams
424 ;; icicle-execute-extended-command, icicle-command-abbrev: With icicle-pre-minibuffer-buffer.
425 ;; 2012/10/27 dadams
426 ;; Added: icicle-bbdb-complete-mail (version for BBDB 3.02).
427 ;; icicle-execute-extended-command, icicle-command-abbrev:
428 ;; Bind icicle-last-transform-function: show only bound cmds. Thx to Michael Heerdegen.
429 ;; Bind completion-annotate-function: annotate with key bindings.
430 ;; 2012/10/21 dadams
431 ;; Added: icicle-cached-files-without-buffers, icicle-recent-files-without-buffers.
432 ;; icicle-buffer-multi-complete, icicle-buffer(-other-window):
433 ;; Add file names from recentf-list and file-cache-alist as candidates.
434 ;; 2012/10/20 dadams
435 ;; icicle-cd-for-(abs|loc)-files:
436 ;; Same change as 2012/08/27 fix to *-make-directory: Use dir in minibuffer as default.
437 ;; 2012/10/18 dadams
438 ;; icicle-directory-list: New feature: proxy candidates = vars with dir-list (i.e., path) values.
439 ;; icicle-locate-file-1:
440 ;; New feature: Treat plain C-u and C-u C-u, prompting for dir list.
441 ;; Ensure correct prefix arg treatment for icicle-locate (vs *-locate-file*).
442 ;; icicle-string-list: Last code: reset icicle-proxy-candidates to ().
443 ;; 2012/10/09 dadams
444 ;; icicle-customize-face*, icicle(-customize)-apropos-options-of-type,
445 ;; icicle-describe-option-of-type, icicle-dired-saved-file-candidates*, icicle-bookmark*,
446 ;; icicle-buffer*, icicle-visit-marked-file-of-content*, icicle-send-signal-to-process,
447 ;; icicle-find-file-absolute*, icicle-find-file-of-content*, icicle-recent-file*,
448 ;; icicle-locate-file-1, icicle-find-file-in-tags-table*, icicle-face-list, icicle-bookmark-list:
449 ;; Bind icicle-multi-completing-p.
450 ;; icicle-cd-for-(abs|loc)-files: Test icicle-multi-completing-p, not icicle-list-use-nth-parts.
451 ;; 2012/10/05 dadams
452 ;; Added: icicle-find-file-of-content(-other-window|-multi-complete|-read-file-name).
453 ;; icicle-buffer-multi-complete: Add new bufs to NEW-BUFS--TO-KILL, so can kill them when done.
454 ;; icicle-visit-marked-file-of-content(-other-window):
455 ;; Action arg: Transform multi-completion before passing to switch-to-buffer*.
456 ;; Save visited buffer to NEW-BUFS--TO-KEEP.
457 ;; When done, kill any unused buffers that were created, per new option
458 ;; icicle-kill-visited-buffers-flag. But prefix arg flips that.
459 ;; 2012/10/04 dadams
460 ;; icicle-find-file(-other-window): If precede C-! with prefix arg, then open all read-only.
461 ;; 2012/10/02 dadams
462 ;; icicle-describe-opt-of-type-complete, icicle-buffer-multi-complete:
463 ;; In try-completion: change PRED to a predicate that works on a singleton list, not a string.
464 ;; 2012/09/24 dadams
465 ;; icicle-recent-file(-other-window): Bind icicle-transform-before-sort-p to t,
466 ;; icicle-sort-comparer to icicle-last-accessed-first-p.
467 ;; 2012/09/22 dadams
468 ;; icicle-bookmark-jump-1:
469 ;; Use full bookmark, not name, after jump and before crosshairs, in case renamed autonamed bmk.
470 ;; 2012/09/15 dadams
471 ;; icicle-visit-marked-file-of-content*: *-remove-if -> use filter as dired-get-marked-files arg.
472 ;; 2012/09/11 dadams
473 ;; Renamed:
474 ;; *-buffer(-other-window) to *-buffer-no-search(-other-window)
475 ;; *-buffer-of-content(-other-window|complete) to *-buffer(-other-window|multi-complete)
476 ;; icicle-buffer(-other-window): Simplified prompt (no multi-completion hint).
477 ;; Updated doc strings for this icicle-buffer switch.
478 ;; icicle-default-buffer-names: Respect icicle-buffer-ignore-space-prefix-flag. Optimize a bit.
479 ;; 2012/09/09 dadams
480 ;; Added: icicle-visit-marked-file-of-content(-other-window).
481 ;; icicle-default-buffer-names: If BNAME is not in icicle-bufflist then do not use it.
482 ;; 2012/09/08 dadams
483 ;; Added: icicle-buffer-of-content(-other-window), icicle-buffer-of-content-complete.
484 ;; icicle-buffer-list: Remove binding of icicle-ignore-space-prefix-flag.
485 ;; 2012/09/07 dadams
486 ;; icicle-buffer(-other-window): Exclude icicle-orig-buff from candidates.
487 ;; 2012/08/13 dadams
488 ;; icicle-customize-face: Doc string improvement.
489 ;; 2012/08/10 dadams
490 ;; icicle-bookmark-set: If bookmark-make-record provides a name, use that as default.
491 ;; 2012/08/06 dadams
492 ;; Renamed old-* to icicle-ORIG-*:
493 ;; icicle-ORIG-file, icicle-ORIG-customize-face, icicle-ORIG-customize-face-other-window,
494 ;; icicle-ORIG-dabbrev-completion, icicle-ORIG-lisp-complete-symbol,
495 ;; icicle-ORIG-lisp-completion-at-point, icicle-ORIG-repeat-complex-command.
496 ;; 2012/07/31 dadams
497 ;; Added widgets icicle-file, old-file. Added command icicle-widget-file-complete.
498 ;; icicle-comint-dynamic-complete(-as)-filename, icicle-comint-replace-by-expanded-filename:
499 ;; Added optional (prefix) arg REPLACE-TO-EOL-P.
500 ;; 2012/07/22 dadams
501 ;; icicle-pp-display-expression: Do not try to select old-window if it is no longer live.
502 ;; 2012/07/21 dadams
503 ;; Replace defun of *-comint-completion-at-point by defalias to *-comint-dynamic-complete.
504 ;; icicle-comint-replace-orig-completion-fns: Redefined for new format of
505 ;; icicle-comint-dynamic-complete-replacements. Thx to Christopher Schmidt.
506 ;; icicle-execute-extended-command-1: Pass non-nil NOINDIRECT arg to where-is-internal.
507 ;; 2012/07/19 dadams
508 ;; icicle-default-buffer-names: Added optional ARG. Use in all calls to it.
509 ;; icicle-buffer-list: Allow also Dired buffers for positive prefix arg.
510 ;; icicle-(kill|insert)-buffer, icicle-add-buffer-candidate:
511 ;; Removed doc string content - just refer to icicle-buffer doc.
512 ;; 2012/07/10 dadams
513 ;; icicle-comint-dynamic-complete-as-filename:
514 ;; (file-name-nondir* (directory-file-name...)) -> (directory-file-name (file-relative-name...))
515 ;; Thx to Christopher Schmidt.
516 ;; 2012/07/08 dadams
517 ;; Added icicle-comint-completion-at-point. Thx to Christopher Schmidt and Michael Heerdegen.
518 ;; 2012/06/29 dadams
519 ;; icicle-command-abbrev:
520 ;; Bind icicle-sort-comparer to icicle-proxy-candidate-first-p, not
521 ;; icicle-command-abbrev-used-more-p. icicle-command-abbrev-used-more-p is second sort order.
522 ;; Bind icicle-allowed-sort-predicate (new), to allow icicle-command-abbrev-used-more-p.
523 ;; Improved doc string, mentioning icicle-command-abbrev-alist.
524 ;; icicle-command-abbrev-action:
525 ;; Add abbrev-or-cmd to icicle-commands-for-abbrev if it is in icicle-command-abbrev-alist.
526 ;; Do not bind icicle-sort-comparer here - not needed (?).
527 ;; During completion, bind icicle-current-input to abbrev-or-cmd.
528 ;; Removed #' from lambdas.
529 ;; 2012/06/24 dadams
530 ;; icicle-shell-dynamic-complete-as-command:
531 ;; Use shell-command-to-string in *Help* explicitly, not just shell-command.
532 ;; Thx to Christopher Schmidt & Michael Heerdegen.
533 ;; 2012/06/09 dadams
534 ;; icicle-pp-display-expression: Use backquote+comma, not lexical-let (bug fix).
535 ;; 2012/06/04 dadams
536 ;; Comment or otherwise handle free vars in lambdas: some lexical-let, some backquoting.
537 ;; 2012/06/03 dadams
538 ;; icicle-execute-extended-command-1:
539 ;; Do not show "You can invoke..." message for multi-command use. Do it only for top-level M-x.
540 ;; Use backquote+comma to eliminate free var CMD.
541 ;; 2012/05/30 dadams
542 ;; icicle-dired-insert-as-subdir: Include default-directory as candidate for ANCESTOR-DIR.
543 ;; 2012/05/25 dadams
544 ;; Added: icicle-dired-insert-as-subdir.
545 ;; 2012/05/22 dadams
546 ;; icicle-comint-dynamic-complete-as-filename, icicle-dired-(project|saved-file-candidates(*)),
547 ;; icicle-grep-saved-file-candidates:
548 ;; Test with icicle-file-remote-p before file-exists-p, to avoid Tramp.
549 ;; 2012/05/13 dadams
550 ;; Added: icicle-dired-save-marked(-more|to-cache-file|to-fileset|to-variable)-recursive,
551 ;; 2012/04/22 dadams
552 ;; Added: icicle-buffer-name-prompt.
553 ;; Removed: icicle-filter-buffer-cands-for-mode (replaced by *-(remove|keep-only)* in *-mcmd.el).
554 ;; icicle-(kill|insert)-buffer, icicle-buffer(-other-window), icicle-add-buffer-candidate:
555 ;; Use icicle-buffer-name-prompt, icicle-(un)bind-buffer-candidate-keys. Updated doc string.
556 ;; icicle-add-buffer-candidate:
557 ;; Bind icicle-delete-candidate-object to icicle-remove-buffer-candidate-action (as previously).
558 ;; 2012/04/09 dadams
559 ;; Fixed typos: double single-quotes in autoload cookies.
560 ;; 2012/04/08 dadams
561 ;; Make autoload cookies for commands load icicles[.el] explicitly.
562 ;; 2012/04/07 dadams
563 ;; icicle-bookmark-set:
564 ;; Updated for Bookmark+ changes, including new defaulting, removing region handling, and making
565 ;; bmk temporary.
566 ;; Updated doc string with info from icicle-bookmark-cmd. Refer to bookmark-set doc.
567 ;; icicle-bookmark-cmd:
568 ;; Updated doc string. Refer to icicle-bookmark-set doc.
569 ;; 2012/04/04 dadams
570 ;; Moved hint about (S-)TAB from icicle-read-args-w-val-satisfying to callers that need it.
571 ;; 2012/04/03 dadams
572 ;; Added: icicle-apropos-vars-w-val-satisfying, icicle-describe-var-w-val-satisfying,
573 ;; icicle-customize-opts-w-val-satisfying, icicle-read-args-w-val-satisfying.
574 ;; icicle-send-signal-to-process:
575 ;; Moved it and icicle-describe-process here from *-cmd2.el. Added autoload cookie.
576 ;; Changed definition guard condition to locate-library. Updated def, including to
577 ;; require proced.el.
578 ;; icicle-kmacro:
579 ;; Changed autoload cookie to be conditional on locate-library.
580 ;; Changed definition guard condition to locate-library. Updated def to require kmacro.el.
581 ;; Moved here from *cmd2.el:
582 ;; icicle-apropos, icicle-apropos-command, icicle-apropos-function, icicle-apropos-option,
583 ;; icicle-apropos-options-of-type, icicle-apropos-variable, icicle-apropos-zippy,
584 ;; icicle-apropos-opt-action, icicle-describe-option-of-type, icicle-describe-opt-action,
585 ;; icicle-describe-opt-of-type-complete.
586 ;; Plus compile-time requires of libraries yow, cookie1, apropos-fn+var.
587 ;; 2012/04/01 dadams
588 ;; Removed: old-customize-apropos* (no longer redefine automatically for Icicle mode).
589 ;; 2012/03/31 dadams
590 ;; icicle-customize-apropos: Do not call split-string if string is empty.
591 ;; Allow word list for Emacs 22+, not 24+.
592 ;; icicle-customize-apropos*: Added optional MSGP arg - display progress msg if non-nil.
593 ;; 2012/03/30 dadams
594 ;; Added: icicle-customize-apropos-opt-action.
595 ;; icicle-customize-apropos-options-of-type: Rewrote as a multi-command using multi-completions.
596 ;; icicle-customize-apropos*:
597 ;; Updated wrt Emacs 24 (handle PATTERN). Fixed vanilla Emacs bugs #11124, #11126, #11132.
598 ;; 2012/03/29 dadams
599 ;; icicle-customize-apropos-options-of-type:
600 ;; Pass inherit-or-value to icicle-var-is-of-type-p as the MODE.
601 ;; Handle the case where the user just enters a regexp, without using completion: mapatoms.
602 ;; icicle-customize-apropos: Use backquote and comma on regexp in lambda.
603 ;; 2012/03/28 dadams
604 ;; Changed FILE arg in autoloads by removing .el, so .elc will be loaded if available.
605 ;; 2012/03/10 dadams
606 ;; Added: icicle-make-bookmark-candidate (factored out).
607 ;; icicle-bookmark(-set|-list|-other-window):
608 ;; Use icicle-make-bookmark-candidate to define icicle-candidates-alist.
609 ;; 2012/03/09 dadams
610 ;; icicle-bookmarked-file-list: Call bookmark-maybe-load-default-file.
611 ;; icicle-customize-apropos(-faces|-groups|-options(-of-type)), icicle-(re)set-option-to-(t|nil),
612 ;; icicle-toggle-option, icicle-increment-(option|variable), icicle-doremi-increment-variable+,
613 ;; icicle-command-abbrev, icicle-execute-named-keyboard-macro, icicle-buffer-list:
614 ;; When Icomplete mode, use normal PRED, not *-must-pass-after-match-predicate.
615 ;; icicle-execute-extended-command: Likewise - redid it.
616 ;; icicle-customize-apropos-options: If prefix arg, still use user-variable-p also (or).
617 ;; 2012/03/03 dadams
618 ;; icicle-execute-extended-command:
619 ;; If in Icomplete mode, use the normal PRED arg, instead of *-must-pass-after-match-predicate.
620 ;; 2012/02/26 dadams
621 ;; Update to reflect Bookmark+ changes (bindings etc.).
622 ;; Added: icicle-bookmark-autofile-(all|some)-tags(-regexp)(-other-window).
623 ;; icicle-bookmark: Update doc string for binding changes.
624 ;; icicle-bookmark-bind-narrow-commands: Update bindings to reflect Bookmark+ changes.
625 ;; icicle-bookmark-help-string: Initialize no-position-p from bookmark, so it works if no pos.
626 ;; Typo: icicle-bookmark-this-dir-file-all-tags -> icicle-bookmark-file-this-dir-all-tags.
627 ;; 2012/02/11 dadams
628 ;; Applied renaming.
629 ;; 2012/01/31 dadams
630 ;; icicle-yank-pop-commands, icicle-completing-yank: Minor changes to doc strings.
631 ;; 2012/01/20 dadams
632 ;; icicle-bookmark-*-tags(-other-window): Pass prefix arg to bmkp-read-tags-completing, to refresh.
633 ;; 2012/01/15 dadams
634 ;; icicle-bookmark-set: Added missing quote mark for (icicle-)bookmark-history.
635 ;; 2012/01/14 dadams
636 ;; Added: icicle-zap-to-char.
637 ;; 2012/01/08 dadams
638 ;; Added: icicle-yank-pop-commands, icicle-bookmark-bind-narrow-commands,
639 ;; icicle-bookmark-(autofile|autonamed(-this-buffer)|file-this-dir|temporary)-narrow.
640 ;; Soft-require second-sel.el.
641 ;; icicle-bookmark-set: Mention narrowing in doc string.
642 ;; icicle-bookmark: Suggest in doc string to refresh cache if error.
643 ;; Added C-x j bindings to doc string: a, C-f, x, # ., # #.
644 ;; icicle-bookmark(-set|-other-window): Use icicle-bookmark-bind-narrow-commands.
645 ;; icicle-bookmark-*-narrow:
646 ;; Use icicle-transform-multi-completion, not funcall icicle-get-alist-candidate-function.
647 ;; icicle-completing-yank: Add prefix arg behavior: use secondary-selection-ring. Update doc.
648 ;; Add alt action of copying to other selection ring.
649 ;; icicle-yank-maybe-completing: Bind current-prefix-arg to nil around icicle-completing-yank.
650 ;; 2011/12/19 dadams
651 ;; icicle-find-file-absolute(-other-window): Do not insert default directory as initial input.
652 ;; icicle-ess-R-complete-object-name: Use line-end-position, not point-at-eol (not in Emacs 20).
653 ;; icicle-bookmark-(cmd|set), icicle-bbdb-complete-name: Use line-(beginning|end)-position.
654 ;; 2011/12/14 dadams
655 ;; Added: icicle-bookmark-bookmark-file-narrow, icicle-bookmark-image-narrow,
656 ;; icicle-bookmark-image(-other-window).
657 ;; icicle-bookmark-set, icicle-bookmark(-other-window):
658 ;; Changed bindings to be the same as top-level jump bindings.
659 ;; Added bindings: icicle-bookmark-bookmark-file-narrow, icicle-bookmark-image-narrow.
660 ;; icicle-bookmark-list:
661 ;; Return bookmarks, not their names, unless prefix arg or icicle-bookmark-list-names-only-p.
662 ;; Bind icicle-unpropertize-completion-result-flag. Use icicle-unpropertize-completion, not
663 ;; icicle-substring-no-properties, so remove only Icicles internal properties.
664 ;; Call bookmark-maybe-load-default-file whether Bookmark+ or not.
665 ;; Use icicle-bookmark-types only for Bookmark+. Use all bookmarks otherwise.
666 ;; 2011/11/23 dadams
667 ;; icicle-locate-file-1: when -> unless icicle-locate-file-use-locate-p.
668 ;; 2011/11/21 dadams
669 ;; icicle-locate-file-1:
670 ;; Do not bind current-prefix-arg, so pick up prefix arg for vanilla Emacs locate cmd.
671 ;; Require locate.el in ignored binding, not first code.
672 ;; No progress message (gathering...) if use external locate cmd.
673 ;; Put prop icicle-fancy-candidates only if not using external locate cmd.
674 ;; icicle-locate: Improved doc string.
675 ;; icicle-find-file-absolute*, icicle-locate-file-1:
676 ;; Bind C-c C-d to icicle-cd-for-(abs|loc)-files (it was mistakenly removed).
677 ;; icicle-(delete|recent)-file, icicle-dired, icicle-find-file(-read-only|-in-tags-table),
678 ;; icicle-(file|directory)-list:
679 ;; Removed mention of C-c C-d in doc string - inappropriate here.
680 ;; 2011/11/13 dadams
681 ;; icicle-locate-file-1: Corrected placement of kill-buffer in unwind-protect.
682 ;; 2011/11/07 dadams
683 ;; icicle-locate-file-1:
684 ;; Use with-current-buffer with locate-buffer-name, to hide switch-to-buffer in locate.
685 ;; 2011/11/06 dadams
686 ;; icicle-locate-file-1: Wrap use of external locate program in save-window-excursion.
687 ;; 2011/11/01 dadams
688 ;; Added: icicle-bookmark-autofile(-other-window),
689 ;; icicle-bookmark-autonamed(-this-buffer)(-other-window), icicle-bookmark-bookmark-file,
690 ;; icicle-bookmark-temporary(-other-window).
691 ;; 2011/10/29 dadams
692 ;; icicle-delete-file: Add icicle-remove-candidate-display-others to action fn. Remove S-delete.
693 ;; 2011/10/21 dadams
694 ;; icicle-remove-entry-from-saved-completion-set: Bind icicle-remove-icicles-props-p to nil.
695 ;; icicle-execute-extended-command-1: Don't bind WAIT-TIME to 0 if CURR-MSG.
696 ;; icicle-(add|remove)-entry-(to|from)-saved-completion-set, icicle-remove-saved-set-action,
697 ;; icicle-execute-extended-command-1, icicle-kmacro-action, icicle-toggle-option,
698 ;; icicle-increment-(option|variable), icicle-find-tag-help, icicle-add-buffer-candidate,
699 ;; icicle-remove-buffer-(candidate|config)-action, icicle-remove-from-recentf-candidate-action,
700 ;; icicle-locate-file-1, icicle-(string|sexp|keyword|face|buffer|bookmark|file|directory)-list:
701 ;; Use icicle-propertize.
702 ;; Applied renaming: icicle-unpropertize -> icicle-unpropertize-completion.
703 ;; 2011/10/10 dadams
704 ;; icicle-define-bookmark-command*: Moved to icicles-mac.el.
705 ;; 2011/10/08 dadams
706 ;; icicle-dired-project*, icicle-bookmark*, icicle*-buffer*: Use icicle-kbd.
707 ;; 2011/10/03 dadams
708 ;; icicle-customize-face: Updated for Emacs 24: Added optional arg OTHER-WINDOW.
709 ;; 2011/09/21 dadams
710 ;; Added: icicle-locate-other-window, icicle-locate-file-use-locate-p. Improved doc string.
711 ;; icicle-locate: Use icicle-locate-file-1 (not icicle-define-command).
712 ;; icicle-locate-file-1: Use locate external program, if non-nil icicle-locate-file-use-locate-p.
713 ;; icicle-(find-file-(absolute|in-tags-table)|recent-file)(-other-window), icicle-locate-file-1,
714 ;; icicle-cd-for-abs-files:
715 ;; Use file-name-as-directory instead of concat with /.
716 ;; 2011/09/18 dadams
717 ;; Added: icicle-sexp-list, icicle-string-list.
718 ;; Moved here from icicles-cmd2.el: icicle-keyword-list.
719 ;; Added: icicle-locate. Thx to Michael Heerdegen.
720 ;; icicle-bookmarked-(buffer|file)-list, icicle-define-add-to-alist-command,
721 ;; icicle-(bookmark|buffer|face|file|directory|regexp|keyword)-list, icicle-add-buffer-config:
722 ;; Bind icicle-prompt.
723 ;; icicle-(bookmark|buffer|face|file|directory|regexp|keyword)-list:
724 ;; Added msg saying Added... when interactive.
725 ;; 2011/09/02 dadams
726 ;; icicle-completing-yank: Put kills in order, respecting kill-ring-yank-pointer.
727 ;; (put 'icicle-completing-yank 'delete-selection 'yank).
728 ;; icicle-insert-for-yank: Set this-command to yank.
729 ;; 2011/08/30 dadams
730 ;; icicle-yank-maybe-completing: Put delete-selection prop, so region is deleted.
731 ;; 2011/08/26 dadams
732 ;; icicle-comint-dynamic-complete-as-filename, icicle-comint-dynamic-simple-complete,
733 ;; icicle-bbdb-complete-name, icicle-explore, icicle-bookmark(-list|-other-window),
734 ;; icicle-define-bookmark-command-1, icicle-find-tag-action,
735 ;; icicle-kill-a-buffer-and-update-completions, icicle-color-theme,
736 ;; icicle-delete-file-or-directory:
737 ;; Use icicle-condition-case-no-debug instead of condition-case. Thx to Michael Heerdegen.
738 ;; Make sure to pass format string as first arg to calls to functions error and message.
739 ;; 2011/08/12 dadams
740 ;; icicle-delete-file, icicle-(file|directory)-list, icicle-(dired|file)*,
741 ;; icicle-find-file(-absolute|-read-only|in-tags-table)*, icicle-(recent|locate)-file*:
742 ;; Use icicle-(un)bind-file-candidate-keys. Don't do/undo such bindings individually here.
743 ;; icicle-find-file-(absolute|in-tags-table)*, icicle-(recent|locate)-file*:
744 ;; Bind icicle-full-cand-fn.
745 ;; icicle-dired-(project|buffer)*: Removed fboundp test of icicle-bookmark-* (just test Bookmark+).
746 ;; 2011/08/11 dadams
747 ;; icicle-find-file-absolute(-other-window):
748 ;; Bind C-x a [+-] to adding/removing tags.
749 ;; 2011/08/09 dadams
750 ;; icicle-define(-file)-command calls: Removed undo code if same as last code, so do not repeat it.
751 ;; 2011/08/07 dadams
752 ;; icicle-(find-file-absolute|recent-file)(-other-window), icicle-locate-file-1,
753 ;; icicle-cd-for-(abs|loc)-files:
754 ;; Bind icicle-abs-file-candidates to the COLLECTION alist (no longer just list of strings).
755 ;; 2011/07/30 dadams
756 ;; Moved to icicles-cmd2.el and wrapped in eval-after-load bookmark+.el:
757 ;; icicle-find-file-(all|some)-tags(-regexp)(-other-window), icicle-(un)tag-a-file.
758 ;; 2011/07/26 dadams
759 ;; Removed: icicle-list-end-string (no longer needed). Thx to Michael Heerdegen.
760 ;; 2011/05/22 dadams
761 ;; Added defvars for free vars to quiet byte compiler.
762 ;; 2011/05/21 dadams
763 ;; icicle-customize-apropos(-options): let -> let* for interactive form.
764 ;; 2011/04/29 dadams
765 ;; icicle-execute-extended-command(-1), icicle-command-abbrev(-action|-command),
766 ;; icicle-execute-named-keyboard-macro, icicle-increment-(option|variable),
767 ;; icicle-doremi-increment-variable+:
768 ;; Renamed: orig-must-pass-after-match-predicate to icicle-orig-must-pass-after-match-pred,
769 ;; new-last-cmd to icicle-new-last-cmd.
770 ;; 2011/04/25 dadams
771 ;; Commands defined with icicle-define-file-command and using icicle-file-bindings:
772 ;; Remove binding for icicle-candidate-help-fn - done in icicles-mac.el now.
773 ;; 2011/04/13 dadams
774 ;; Fixed autoload cookies for icicle-define-file-command commands added yesterday.
775 ;; 2011/04/12 dadams
776 ;; Added: icicle-bookmark-save-marked-files(-as-project|-more|-persistently|-to-variable),
777 ;; icicle-find-file-(all|some)-tags(-regexp)(-other-window), icicle-(un)tag-a-file.
778 ;; icicle-bookmark(-list|-set|-other-window|-delete-action), icicle-define-bookmark-command-1:
779 ;; Applied Bookmark+ renaming: bmkp-sort-and-remove-dups -> bmkp-sort-omit.
780 ;; icicle-bookmark-set: Fixed typo: bmkp-light-bookmarks-this-buffer -> bmkp-light-this-buffer.
781 ;; icicle-define-bookmark-command-1: Doc strings now mention corresponding Bookmark+ command.
782 ;; icicle-execute-extended-command-1:
783 ;; Apply icicle-transform-multi-completion to arg. Thx to Michael Heerdegen.
784 ;; 2011/04/04 dadams
785 ;; icicle-bookmark-jump-1, icicle-pop-tag-mark: Use icicle-recenter.
786 ;; 2011/04/02 dadams
787 ;; Added: icicle-bookmark-file-this-dir((-all|some)-tags(-regexp))(-other-window),
788 ;; icicle-locate-file-(action-fn|no-symlinks-p).
789 ;; icicle-kmacro(-action), icicle-clear(-current)-history(-1):
790 ;; Use (new) icicle-pref-arg, not pref-arg.
791 ;; icicle(-kill|-insert)-buffer(-other-window), icicle-default-buffer-names,
792 ;; icicle-filter-buffer-cands-for-mode, icicle-add-buffer-candidate:
793 ;; Use (new) icicle-bufflist, not bufflist.
794 ;; icicle-locate-file(-1|-no-symlinks)(-other-window):
795 ;; Use (new) icicle-locate-file-no-symlinks-p, not no-symlinks-p.
796 ;; 2011/03/31 dadams
797 ;; icicle-search-action-1: Applied renaming: i*-target-window-recenter-amount to icicle-recenter.
798 ;; icicle-customize-apropos-options-of-type: Wrap icicle-var-is-of-type-p with condition-case.
799 ;; 2011/03/29 dadams
800 ;; Use new icicle-* vars for various free vars (orig-buff etc.).
801 ;; 2011/03/26 dadams
802 ;; Added: icicle-bookmark-file-(all|some)-tags(-regexp)(-other-window).
803 ;; 2011/02/22 dadams
804 ;; Added: icicle-lisp-completion-at-point.
805 ;; 2011/01/06 dadams
806 ;; Added: icicle-filter-buffer-cands-for-mode.
807 ;; icicle-(kill|insert)-buffer, icicle-buffer(-other-window), icicle-add-buffer-candidate:
808 ;; Bind C-x M to icicle-filter-buffer-cands-for-mode.
809 ;; 2010/12/26 dadams
810 ;; Removed autoload cookies except simple ones & ones with sexp on same line. Thx to Richard Kim.
811 ;; 2010/12/18 dadams
812 ;; Added more autoload cookies for cmds & macros; removed from non-cmd fns. Thx to Richard Kim.
813 ;; Specify cmd and file for cmds defined by Icicles macros.
814 ;; Require icicles-opt.el before icicles-var.el (but it makes no difference).
815 ;; 2010/11/21 dadams
816 ;; defalias both old-lisp-complete-symbol and (for Emacs 23+) old-lisp-completion-at-point.
817 ;; 2010/11/10 dadams
818 ;; icicle-lisp-complete-symbol: Remove return value. Let it do everything (chg is in ici*mode.el).
819 ;; 2010/11/04 dadams
820 ;; icicle-lisp-complete-symbol: Fixed return value for Emacs 23.2+. Thx to Michael Heerdegen.
821 ;; 2010/11/03 dadams
822 ;; defalias old-lisp-completion-at-point, not old-lisp-complete-symbol, for Emacs 23.2+.
823 ;; icicle-lisp-complete-symbol:
824 ;; Explicitly return nil, for use in completion-at-point-functions (Emacs 23.2+).
825 ;; 2010/10/25 dadams
826 ;; icicle-buffer-list: Use icicle-must-pass-after-match-predicate, not icicle-must-pass-predicate.
827 ;; icicle-directory-list:
828 ;; Bind icicle-file-predicate instead of using PREDICATE arg. No emacs-version limit now.
829 ;; 2010/10/24 dadams
830 ;; icicle-customize-apropos(-faces|-groups|-options(-of-type)), icicle-execute-extended-command,
831 ;; icicle-command-abbrev, icicle-execute-named-keyboard-macro, icicle-(re)set-option-to-(t|nil),
832 ;; icicle-toggle-option, icicle-increment-(option|variable), icicle-doremi-increment-variable+:
833 ;; Use icicle-must-pass-after-match-predicate, not PREDICATE arg.
834 ;; icicle-execute-extended-command-1, icicle-command-abbrev-action,
835 ;; icicle-increment-(option|variable), icicle-doremi-increment-variable+:
836 ;; Restore orginal icicle-must-pass-after-match-predicate.
837 ;; 2010/10/09 dadams
838 ;; icicle-customize-face, icicle-repeat-complex-command, icicle-delete-window:
839 ;; Updated doc string for new prefix and modal cycling keys.
840 ;; 2010/08/27 dadams
841 ;; icicle-pp-display-expression: Set the hooks locally instead of let-binding them, to avoid msg
842 ;; "Making change-major-mode-hook buffer-local while locally
843 ;; let-bound!" - suggestion from Stefan M.
844 ;; 2010/07/20 dadams
845 ;; icicle-find-file-in-tags-table(-other-window):
846 ;; Pick up default-directory of TAGS table. Thx to Chris Hecker.
847 ;; icicle-bookmark-jump-1: Applied renaming of bmkp-use-region-flag to bmkp-use-region.
848 ;; 2010/07/17 dadams
849 ;; Added: icicle-bookmark-url-narrow, icicle-bookmark-url(-other-window).
850 ;; icicle-bookmark(-list|-set|-other-window|-propertize-candidate|-help-string),
851 ;; icicle-define-bookmark-command-1: w3m -> url.
852 ;; Bound URL commands to C-M-u, C-x j u.
853 ;; 2010/07/02 dadams
854 ;; icicle-bookmark-set: Added INTERACTIVEP arg. Prompt for tags when bmkp-prompt-for-tags-flag.
855 ;; Highlight bookmark if bmkp-auto-light-when-set.
856 ;; icicle-bookmark-cmd: Call icicle-bookmark-set with new INTERACTIVEP arg.
857 ;; 2010/06/25 dadams
858 ;; icicle-find-file(-other-window):
859 ;; Use default-directory, not nil, as third arg to read-file-name. Thx to Thomas Lim.
860 ;; Note: This more or less reverts a change I made (why?) on 2008/12/27 (see that, below).
861 ;; 2010/06/18 dadams
862 ;; Renamed: bookmarkp-* to bmkp-*.
863 ;; 2010/06/11 dadams
864 ;; icicle-find-file-absolute*, icicle-recent-file*, icicle-locate-file-1:
865 ;; Bind C-c + to icicle-make-directory.
866 ;; icicle-find-file-in-tags-table*: Removed bindings: C-x m, C-backspace.
867 ;; 2010/06/10 dadams
868 ;; icicle-cd-for-abs-files: Bound enable-recursive-minibuffers to t.
869 ;; 2010/06/08 dadams
870 ;; Added: icicle-bookmark-delete-action: Make it refresh the cache.
871 ;; icicle-bookmark(-list|-other-window), icicle-define-bookmark-command-1:
872 ;; Use icicle-bookmark-delete-action.
873 ;; Use condition-case to filter out bad bookmarks (so no error). Thx to M. Heerdegen.
874 ;; 2010/06/04 dadams
875 ;; Applied renamings of doremi commands (added +).
876 ;; icicle-(buffer|*file|directory)*: Updated doc string to mention icicle-(buffers|files)-ido-like.
877 ;; 2010/05/30 dadams
878 ;; Added: icicle-locate-file-no-symlinks(-other-window), icicle-locate-file(-other-window)-action,
879 ;; icicle-locate-file-1.
880 ;; icicle-locate-file*: Moved body to icicle-locate-file-1. Use named action functions.
881 ;; Respect icicle-ignored-directories (via *-files-within).
882 ;; icicle-cd-for-loc-files: Added optional arg NO-SYMLINKS-P.
883 ;; icicle-dired-saved-file-candidates(-other-window): Handle multi-completion candidates.
884 ;; Thx to M. Heerdegen.
885 ;; 2010/05/28 dadams
886 ;; icicle-(recent|locate)-file(-other-window),
887 ;; Use *-transform-multi-completion in *-all-candidates-list-alt-action-fn. Thx to M. Heerdegen.
888 ;; 2010/05/27 dadams
889 ;; icicle-cd-for-loc-files: Wrap interactive spec in save-selected-window. Thx to M. Heerdegen.
890 ;; 2010/05/26 dadams
891 ;; icicle-bookmark-set: Removed pseudo-default. Thx to Michael Heerdegen.
892 ;; 2010/05/24 dadams
893 ;; icicle-comint-replace-orig-completion-fns: Rewrote to not use case. Thx to Michael Heerdegen.
894 ;; 2010/05/21 dadams
895 ;; icicle-bookmark-help-string:
896 ;; Use BOOKMARK-NAME, not BMK, as arg to vanilla fns, for Emacs < 23. Thx to Alexander Haeckel.
897 ;; 2010-05-18 dadams
898 ;; Added: icicle-cd-for-abs-files, icicle-cd-for-loc-files.
899 ;; icicle-find-file-absolute*, icicle-locate-file*: Bind C-c C-d to icicle-cd-for-(abs|loc)-files.
900 ;; icicle-locate-file*: Make icicle-list-use-nth-parts be nil if no non-positive prefix arg.
901 ;; 2010/05/16 dadams
902 ;; icicle-define-bookmark-command-1: Defined command requires bookmark+.el.
903 ;; Added: icicle-bookmark-specific-(buffers|files)-narrow, icicle-bookmark-this-buffer-narrow.
904 ;; icicle-bookmark(-other-window), icicle-bookmark-set:
905 ;; Bound C-M-= (b|f), C-M-. for narrowing to specific-(buffers|files), this-buffer.
906 ;; icicle-bookmark-cleanup: Updated for added narrowing keys.
907 ;; 2010/05/15 dadams
908 ;; Added: icicle-define-bookmark-command(-1). Added ARGS param for use as arg for *-alist-only.
909 ;; Added same-window commands for bookmark jumping.
910 ;; Added: *-specific-(buffers|files)*, *-this-buffer*, *-(all|some)-tags(-regexp)* jump commands,
911 ;; *-bookmarked-(buffer|file)-list.
912 ;; icicle-bookmark-set: *-selected-buffers-alist-only -> *-specific-buffers-alist-only.
913 ;; 2010/05/06 dadams
914 ;; icicle-bookmark-set: Removed spurious format call with its arg.
915 ;; 2010/04/29 dadams
916 ;; icicle-explore: Bind icicle-remove-icicles-props-p to nil around call to completing-read.
917 ;; Call icicle-unpropertize at the end (without that binding).
918 ;; 2010/04/20 dadams
919 ;; icicle-dired(-other-window): Use icicle-dirs-first-p, not icicle-dirs-last-p, and don't reverse.
920 ;; 2010/04/17 dadams
921 ;; Added: icicle-bookmark-set.
922 ;; icicle-bookmark-cmd: Use icicle-bookmark-set, not bookmark-set. Simpler PARG code in that case.
923 ;; icicle-bookmark(-list|-other-window), icicle-define-bookmark-other-window-command:
924 ;; Use icicle-transform-multi-completion in icicle-delete-candidate-object.
925 ;; 2010/04/10 dadams
926 ;; Corrected prefix arg use for icicle-find-file(-read-only)(-other-window). Thx to M. Heerdegen.
927 ;; 2010/04/09 dadams
928 ;; Added: icicle-find-file-read-only(-other-window).
929 ;; icicle-find-file(-other-window):
930 ;; Prefix arg on individual candidate means visit read-only.
931 ;; Prefix arg for the command means reverse the prefix arg effect: read-only for all by default.
932 ;; 2010/04/02 dadams
933 ;; Added: icicle-bookmark-list.
934 ;; icicle-bookmark-cleanup: Clean up both minibuffer maps.
935 ;; 2010/03/27 dadams
936 ;; icicle-define-bookmark-other-window-command: Use optional PROMPT arg.
937 ;; 2010/03/19 dadams
938 ;; icicle-define-bookmark-other-window-command: Rich multi-completions per icicle-bookmark.
939 ;; 2010/03/16 dadams
940 ;; icicle-bookmark(-other-window):
941 ;; Use tags, not just file names, in the multi-completions.
942 ;; Use the default join string, ^G^J, and end string, ^J^J.
943 ;; Use just icicle-candidate-properties-alist to highlight the file name.
944 ;; Remove extra quote marks from face names.
945 ;; 2010/03/14 dadams
946 ;; icicle-bookmark(-other-window):
947 ;; Copy file/buffer name string for candidate-part face, so we don't touch bookmark-alist.
948 ;; Handle icicle-bookmark-refresh-cache-flag and C-u.
949 ;; Bind the narrow keys in minibuffer-local-completion also (lax for multi-completion).
950 ;; Use face file-name-shadow, not icicle-candidate-part (too distracting).
951 ;; icicle-bookmark-*-narrow: Use icicle-get-alist-candidate-function.
952 ;; icicle-define-bookmark-other-window-command: Rewrote to handle multi-completion.
953 ;; icicle-bookmark-non-file-narrow: Use bookmarkp-non-file-bookmark-p.
954 ;; icicle-bookmark-propertize-candidate: Typo in a face name.
955 ;; 2010/03/13 dadams
956 ;; icicle-bookmark(-other-window):
957 ;; If Bookmark+ available then, depending on icicle-show-multi-completion-flag, use a
958 ;; multi-completion showing file or buffer. Use icicle-candidates-alist to do that.
959 ;; Don't put icicle-fancy-candidates prop on prompt.
960 ;; Don't use icicle-sorted-bookmark-alist (removed). Recompute each time.
961 ;; 2010/03/10 dadams
962 ;; icicle-bookmark-help-string:
963 ;; Mention the type in the help: sequence, function, bookmark list, desktop, etc.
964 ;; Don't show position for types that don't use one. Don't show file for buffer & Dired.
965 ;; 2010/03/09 dadams
966 ;; icicle-color-theme: Initialize variable icicle-color-themes here, not in icicles-opt.el.
967 ;; 2010/03/04 dadams
968 ;; icicle-bookmark(-other-window): Use bookmarkp-describe-bookmark(-internals) for C-M-RET.
969 ;; 2010/03/03 dadams
970 ;; icicle-bookmark(-other-window), icicle-define-bookmark-other-window-command:
971 ;; Use bookmarkp-sort-and-remove-dups.
972 ;; Bind icicle-sort-orders-alist, using bookmarkp predicates.
973 ;; icicle-bookmark(-other-window):
974 ;; Set icicle-sorted-bookmark-alist and bookmarkp-sorted-alist.
975 ;; Use bookmarkp-sorted-alist.
976 ;; Don't append original icicle-sort-orders-alist. Just include a couple of its entries.
977 ;; Applied renamings: icicle-sort-function to icicle-sort-comparer,
978 ;; icicle-sort-functions-alist to icicle-sort-orders-alist.
979 ;; 2010/02/28 dadams
980 ;; icicle-send-bug-report: Formatted body a bit.
981 ;; 2010/02/14 dadams
982 ;; Added: icicle-bookmark-bookmark-list-other-window, icicle-bookmark-bookmark-list-narrow.
983 ;; icicle-bookmark(-other-window):
984 ;; Bound to C-M- prefix: icicle-bookmark-bookmark-list-narrow. Updated doc string.
985 ;; 2010/02/13 dadams
986 ;; Added: icicle-bookmark-(desktop|man)-other-window,
987 ;; icicle-bookmark-(dired|desktop|man)-narrow.
988 ;; icicle-define-bookmark-other-window-command: Raise error if bookmark+.el not found.
989 ;; icicle-bookmark(-other-window):
990 ;; Bound to C-M- prefix: icicle-bookmark-(dired|desktop|man)-narrow.
991 ;; icicle-bookmark-propertize-candidate:
992 ;; Handle also: sequence, function, bookmark list, desktop, man, buffer, bad bookmarks.
993 ;; 2010/02/02 dadams
994 ;; icicle-bookmark-jump-1: Don't select minibuffer window and give it focus.
995 ;; 2010/01/30 dadams
996 ;; icicle-dired(-other-window), icicle-(find|recent|locate)-file(-absolute)(-other-window)
997 ;; icicle-find-file-in-tags-table(-other-window):
998 ;; Bind icicle-all-candidates-list-alt-action-fn to open Dired on matching files.
999 ;; 2010/01/13 dadams
1000 ;; icicle-recent-file(-other-window):
1001 ;; Restore C-S-RET as icicle-remove-from-recentf-candidate-action (accidentally removed).
1002 ;; 2010/01/12 dadams
1003 ;; Added: icicle-pp-display-expression.
1004 ;; icicle-pp-eval-expression: Use icicle-pp-display-expression.
1005 ;; icicle-bbdb-complete-name: save-excursion + set-buffer -> with-current-buffer.
1006 ;; 2009/12/21 dadams
1007 ;; fset -> defalias.
1008 ;; 2009/12/13 dadams
1009 ;; Added: icicle-bookmark-dired-other-window, icicle-dired(-other-window).
1010 ;; *-buffer*, *-dired-project*, *-find-file(-absolute)*, *-(recent|locate)-file*,
1011 ;; *-find-file-in-tags-table*:
1012 ;; Bind C-x m to icicle-bookmark-(non-file|dired|file)-other-window.
1013 ;; 2009/11/27 dadams
1014 ;; Added: icicle(-doremi)-increment-(variable|option).
1015 ;; 2009/11/25 dadams
1016 ;; icicle-color-theme: Raise error for empty input. Thx to Ahei.
1017 ;; 2009/11/24 dadams
1018 ;; icicle-color-theme: Take a snapshot each time invoked, unless prefix arg.
1019 ;; 2009/11/22 dadams
1020 ;; icicle-color-theme: Use color-theme-initialize instead of load-library, to load themes.
1021 ;; 2009/11/21 dadams
1022 ;; icicle-color-theme: Use color-theme-snapshot to let C-g undo changes.
1023 ;; Try to load color-theme-library.el (available with version 6.6.0).
1024 ;; 2009/11/17 dadams
1025 ;; icicle-bbdb-complete-name: Bind completion-case-ignore.
1026 ;; 2009/11/14 dadams
1027 ;; icicle-bbdb-complete-name: Replace macro bbdb-hashtable by its expansion.
1028 ;; 2009/09/21 dadams
1029 ;; icicle-lisp-complete-symbol:
1030 ;; Complete symbol in buffer as far as possible first. Show completions initially.
1031 ;; 2009/09/17 dadams
1032 ;; icicle-delete-file, icicle-(file|directory)-list,
1033 ;; icicle-find-file(-absolute)(-other-window),
1034 ;; icicle-(recent|locate)-file(-other-window),
1035 ;; icicle-find-file-in-tags-table(-other-window): Use icicle-file-bindings (new macro).
1036 ;; 2009/09/16 dadams
1037 ;; Added: icicle-insert-buffer.
1038 ;; icicle-kill-buffer, icicle-buffer(-other-window), icicle-add-buffer-candidate:
1039 ;; Use icicle-buffer-bindings (new macro).
1040 ;; 2009/08/29 dadams
1041 ;; Added: icicle-define-bookmark-other-window-command, icicle-select-bookmarked-region,
1042 ;; icicle-bookmark(-region|-info|-gnus|-w3m|(-non|-local|-remote)-file)-other-window.
1043 ;; icicle-bookmark-propertize-candidate: Updated to reflect renamed bookmark+.el face names.
1044 ;; icicle-bookmark-file-narrow: Use bookmarkp-file-bookmark-p.
1045 ;; (lambda...) -> #'(lambda...).
1046 ;; 2009/08/25 dadams
1047 ;; Added: icicle-bookmark-cleanup-on-quit.
1048 ;; icicle-bookmark(-other-window): Use icicle-bookmark-cleanup-on-quit.
1049 ;; icicle-bookmark-cleanup: Removed code to return to original window a focus minibuffer.
1050 ;; 2009/08/24 dadams
1051 ;; Added: icicle-bookmark-propertize-candidate.
1052 ;; icicle-bookmark(-other-window): Put faces on bookmark candidates according to type.
1053 ;; 2009/08/23 dadams
1054 ;; Added: icicle-bookmark-(region|info|gnus|w3m|(non-|local-|remote-)file)-narrow.
1055 ;; icicle-bookmark(-other-window): Bind keys to bookmark candidate narrowing commands.
1056 ;; icicle-bookmark-cleanup: Unbind the same commands.
1057 ;; icicle-bookmark-cmd:
1058 ;; Let bookmark+.el (latest version) handle prompting for name, even for region bookmark.
1059 ;; Remove any newlines in bookmark name, when no prompting (thx to Thierry Volpiatto).
1060 ;; 2009/08/21 dadams
1061 ;; icicle-bookmark-jump-1: Typo.
1062 ;; 2009/08/20 dadams
1063 ;; icicle-bookmark-cmd: Use icicle-bookmark-other-window, not icicle-bookmark.
1064 ;; Fix trimmed-name: no longer than def-name.
1065 ;; icicle-bookmark(-other-window): Bind enable-recursive-minibuffers, in case need to read.
1066 ;; icicle-bookmark-jump-1: No crosshair highlighting for region bookmarks.
1067 ;; 2009/08/19 dadams
1068 ;; Added: icicle-bookmark-help-string.
1069 ;; icicle-bookmark-cmd: Handle creation of region bookmarks (new default values).
1070 ;; icicle-bookmark-name-length-max now applies to whole bookmark name.
1071 ;; icicle-bookmark(-other-window):
1072 ;; Apply icicle-candidate-short-help to candidates. Use also for the help function.
1073 ;; icicle-bookmark-jump-1: Use bookmark--jump-via if it is defined.
1074 ;; 2009/06/21 dadams
1075 ;; icicle-bookmark-jump-1: Removed temporary Emacs 23 workaround for (fixed) bug #1175.
1076 ;; 2009/06/07 dadams
1077 ;; icicle-get-alist-candidate -> funcall icicle-get-alist-candidate-function.
1078 ;; 2009/05/22 dadams
1079 ;; Require icicles-mac.el if load-library doesn't find it.
1080 ;; Created - Split off from icicles-cmd.el.
1081
1082 ;;;(@* "CHANGE LOG FOR `icicles-cmd2.el'")
1083 ;;
1084 ;; 2014/05/11 dadams
1085 ;; icicle-WYSIWYG-font:
1086 ;; Fixed wrt Emacs bug #17457: Do not truncate before calling font-info, and ignore its errors.
1087 ;; Distinguish, for user, font-info error from its nil return (font not loaded).
1088 ;; 2014/04/20 dadams
1089 ;; icicle-synonyms: Use icicle-sort-comparer, not icicle-sort-function (typo).
1090 ;; Removed some old $$$$$ comments (cleanup).
1091 ;; 2014/04/01 dadams
1092 ;; Added: icicle-bookmark-tagged, icicle-bookmark-tagged-other-window.
1093 ;; icicle-search-bookmark:
1094 ;; Faces icicle-annotation & icicle-msg-emphasis, not file-name-shadow & bookmark-menu-heading.
1095 ;; 2014/03/30 dadams
1096 ;; icicle-find-file-tagged(-other-window): Rebind icicle-candidate-help-fn to appropriate help fn.
1097 ;; 2014/03/08 dadams
1098 ;; Use (featurep 'icomplete), not (boundp 'icomplete-mode), everywhere.
1099 ;; 2014/03/03 dadams
1100 ;; icicle-search-xml-element: Try to handle attributes and <ELTNAME/> too.
1101 ;; 2014/03/24 dadams
1102 ;; icicle-complete-keys, icicle-complete-menu-bar:
1103 ;; Do not bind icicle-orig-buff or icicle-orig-window - they are the minibuffer buf & window.
1104 ;; 2014/02/07 dadams
1105 ;; Added: icicle-same-vector-keyseq-p.
1106 ;; icicle-this-command-keys-prefix:
1107 ;; Respect new option icicle-complete-keys-ignored-prefix-keys.
1108 ;; Use this-command-keys-vector, not this-command-keys.
1109 ;; 2014/01/14 dadams
1110 ;; icicle-compilation-search-in-context-fn:
1111 ;; Wrap body in condition-case, so can tolerate non-error lines as no-op in compilation buffer.
1112 ;; 2014/01/11 dadams
1113 ;; icicle-this-command-keys-prefix:
1114 ;; Reverted change made 2013-12-01. S-TAB following any prefix key should complete that key.
1115 ;; 2014/01/06 dadams
1116 ;; icicle-vardoc, icicle-fundoc, icicle-plist, icicle-doc:
1117 ;; Bind icicle--last-toggle-transforming-msg.
1118 ;; 2014/01/05 dadams
1119 ;; Added: icicle-next-font-lock-keywords, icicle-next-font-lock-keywords-repeat,
1120 ;; icicle-font-lock-keyword, icicle-update-f-l-keywords.
1121 ;; 2013/12/26 dadams
1122 ;; icicle-hide/show-comments: Updated from hide/show-comments in hide-comnts.el.
1123 ;; 2013/12/23 dadams
1124 ;; Added: icicle-load-library.
1125 ;; Moved icicle-named-colors defvar inside icicle-cmd2-after-load-hexrgb.
1126 ;; 2013/12/10 dadams
1127 ;; Added: icicle-search-regexp.
1128 ;; icicle-search-define-candidates-1: Set icicle-search-regexp.
1129 ;; icicle-search-highlight-and-maybe-replace:
1130 ;; Search for main regexp, to set match data for replace-match (via icicle-search-replace-match).
1131 ;; 2013/12/01 dadams
1132 ;; icicle-this-command-keys-prefix: Use [] as prefix key if this command is icicle-complete-keys.
1133 ;; 2013/11/17 dadams
1134 ;; Added: icicle-occur-dired-marked, icicle-occur-dired-marked-recursive,
1135 ;; icicle-search-dired-marked, icicle-search-dired-marked-recursive-1.
1136 ;; icicle-search-generic: Added optional PREFIX-ARG argument. Bind icicle-pref-arg to it.
1137 ;; icicle-search, icicle-search-where-arg:
1138 ;; Bind current-prefix-arg to icicle-pref-arg, so can get pref arg from icicle-search-generic.
1139 ;; icicle-search-dired-marked*: Use icicle-search-dired-marked-recursive-1.
1140 ;; 2013/10/18 dadams
1141 ;; Added: icicle-imenu-help.
1142 ;; icicle-imenu: Bind icicle-candidate-help-fn to icicle-imenu-help.
1143 ;; icicle-search: Respect an existing value of icicle-candidate-help-fn.
1144 ;; 2013/10/02 dadams
1145 ;; icicle-next-visible-thing-1: Put back <=, not <, for comparison. See comment.
1146 ;; 2013/09/29 dadams
1147 ;; icicle-search-char-prop-matches-p: Typo: isearchp-some -> icicle-some.
1148 ;; 2013/09/21 dadams
1149 ;; icicle-search-char-prop-matches-p: Corrected for overlays: only overlays, not get-char-property.
1150 ;; 2013/09/16 dadams
1151 ;; icicle-search-regexp-scan:
1152 ;; If icicle-search-complement-domain-p then PREDICATE should not succeed.
1153 ;; 2013/09/11 dadams
1154 ;; icicle-Info-multi-read-node-name: Bind case-fold-search to t in filter function for NODES.
1155 ;; 2013/09/06 dadams
1156 ;; Added: icicle-imenu-macro-full.
1157 ;; icicle-imenu-*-full: First arg to icicle-imenu-1 should just be non-nil.
1158 ;; icicle-imenu-non-interactive-function: Emacs Lisp only, not Lisp mode too.
1159 ;; icicle-imenu-macro-full: Typo: Macro -> Macros.
1160 ;; 2013/08/13 dadams
1161 ;; icicle-where-is: Bind icicle-highlight-input-completion-failure to nil if no prefix arg.
1162 ;; 2013/07/24 dadams
1163 ;; icicle-exchange-point-and-mark: Use region-(beginning|end), not mark function - simpler.
1164 ;; icicle-next-visible-thing(-and-bounds): Use buffer limit if region is empty.
1165 ;; 2013/07/23 dadams
1166 ;; icicle-Info-multi-read-node-name: Use regexp-quote before concat ^ to front of string.
1167 ;; 2013/07/09 dadams
1168 ;; Added: icicle-complete-menu-bar.
1169 ;; icicle-add-key+cmd: Corrected menu-item description: Always use MITEM if available.
1170 ;; icicle-complete-(keys|menu-bar): Made case-insensitive by default.
1171 ;; 2013/07/07 dadams
1172 ;; icicle-add-key+cmd: Use face icicle-key-complete-menu(-local) for menu items.
1173 ;; 2013/07/04 dadams
1174 ;; Use icicle-read-regexp, not read-string, for reading all regexps.
1175 ;; 2013/06/19 dadams
1176 ;; Added: icicle-WYSIWYG-font. Removed (commented out): icicle-font-w-orig-size.
1177 ;; icicle-font: Rewrote, to show WYSIWYG candidates.
1178 ;; 2013/03/26 dadams
1179 ;; icicle-Info-multi-read-node-name: setq STRG only if it is nil.
1180 ;; icicle-Info-goto-node-of-content: Do not bother to bind icicle-candidate-properties-alist.
1181 ;; 2013/03/23 dadams
1182 ;; Renamed icicle-Info-goto-node to icicle-Info-goto-node-no-search.
1183 ;; Added: icicle-Info-goto-node (new version) - use *-of-content or *-no-search.
1184 ;; icicle-Info-menu-cmd: Use icicle-Info-goto-node-no-search, not new icicle-Info-goto-node.
1185 ;; icicle-Info-content-match: Set Info-tag-table-marker to saved position.
1186 ;; icicle-Info-read-node-of-content: Save position of Info-tag-table-marker for *-content-match.
1187 ;; 2013/03/17 dadams
1188 ;; Added: icicle-Info-goto-node-of-content, icicle-Info-apropos-complete-match,
1189 ;; icicle-Info-content-match, icicle-Info-read-node-of-content,
1190 ;; icicle-Info-multi-read-node-name,
1191 ;; 2013/03/16 dadams
1192 ;; icicle-Info-goto-node-action: Give focus back to minibuffer frame at end.
1193 ;; icicle-Info-read-node-name: Retain INCLUDE-FILE-P arg in recursive call.
1194 ;; 2013/03/15 dadams
1195 ;; Removed: icicle-Info-book-order-p (just ensure book order as default order).
1196 ;; icicle-Info-goto-node:
1197 ;; Bind icicle-pref-arg, so it is available in icicle-Info-goto-node-action.
1198 ;; Use nil, not icicle-Info-book-order-p, in icicle-sort-orders-alist and icicle-sort-comparer.
1199 ;; icicle-Info-goto-node-1: Use natnump as ARG test.
1200 ;; icicle-Info-build-node-completions-1: Ensure result is in book order, whatever Emacs version.
1201 ;; icicle-Info-build-node-completions: Do not do any reversing, since *-1 now uses book order.
1202 ;; icicle-Info-goto-node-action: Pass icicle-pref-arg to icicle-Info-goto-node-1 (bug fix).
1203 ;; Do not reverse list.
1204 ;; 2013/03/07 dadams
1205 ;; Updated to use icicle-user-error where appropriate.
1206 ;; 2013/02/28 dadams
1207 ;; icicle-cmd2-after-load-hexrgb, icicle-cmd2-after-load-wid-edit+:
1208 ;; Use fset, not defalias, for redefinitions of read-color, widget-color-complete.
1209 ;; 2013/02/04 dadams
1210 ;; Removed all autoload cookies.
1211 ;; 2013/01/06 dadams
1212 ;; icicle-(bookmark|(un)tag)-a-file: Updated calls to bmkp-*, to add nil NO-UPDATE-P argument.
1213 ;; 2013/01/05 dadams
1214 ;; icicle-find-file-(all|some)-tags*: protect free vars in lambdas using backquote quote comma.
1215 ;; icicle-(bookmark-a-file|find-file-tagged|): Updated doc string for new C-x C-t bindings.
1216 ;; 2012/12/31 dadams
1217 ;; icicle-search-in-context-default-fn:
1218 ;; Set icicle-mode-line-help instead of using icicle-show-help-in-mode-line.
1219 ;; 2012/12/22 dadams
1220 ;; Added: icicle-search-file-found-p.
1221 ;; icicle-search-define-candidates:
1222 ;; Search only files that have at least one regexp match: use icicle-search-file-found-p to test.
1223 ;; 2012/11/28 dadams
1224 ;; icicle-(fundoc|vardoc|plist): Use C-$ to toggle command/fn, option/var, faces/all.
1225 ;; icicle-vardoc: Do not use non-neg prefix arg for options.
1226 ;; icicle-doc: Be able to use C-$ to limit to commands, options, and faces.
1227 ;; Correction: separate setq in and, in case icicle-fn-doc-minus-sig returns nil.
1228 ;; 2012/11/20 dadams
1229 ;; icicle-search-define-candidates:
1230 ;; Added progress message for context gathering. Thx to Michael Heerdegen.
1231 ;; 2012/11/10 dadams
1232 ;; icicle-defined-thing-p: icicle-get-safe -> get.
1233 ;; icicle-read-color-wysiwyg:
1234 ;; Fix case where user inputs name or RGB without completing (transformed to "").
1235 ;; Mention sorting in doc string.
1236 ;; 2012/11/08 dadams
1237 ;; icicle-defined-thing-p: Use icicle-get-safe.
1238 ;; Doc strings: Use \\[...] more.
1239 ;; 2012/11/05 dadams
1240 ;; Use \\[...] in doc strings instead of hard-coding, for some more keys.
1241 ;; 2012/11/03 dadams
1242 ;; Added: icicle-cmd2-after-load-wid-edit+. eval-after-load it for wid-edit+.el.
1243 ;; Use it for all of the widget stuff (take that out of icicle-cmd2-after-load-highlight).
1244 ;; 2012/10/26 dadams
1245 ;; icicle-search: Use \\[...] in doc string instead of hard-coding some of the keys.
1246 ;; 2012/10/22 dadams
1247 ;; icicle-Info-index: Bind *-transform-function to *-remove-duplicates. Emacs bug #12705.
1248 ;; 2012/10/20 dadams
1249 ;; icicle-read-color: Fix case where user inputs without completing (WYSIWYG transforms to "").
1250 ;; 2012/10/09 dadams
1251 ;; icicle-find-file-tagged*, icicle-read-color(-wysiwyg), icicle-frame-(bg|fg),
1252 ;; icicle-choose(-(in)visible)-faces, icicle-(var|fun)doc, icicle-plist,
1253 ;; icicle-goto-global-marker, icicle-occur, icicle-imenu-1,
1254 ;; icicle-search(-bookmark(s-together|list-marked)|-buffer|-file|-sentences|-paragraphs|-pages):
1255 ;; Bind icicle-multi-completing-p.
1256 ;; 2012/10/06 dadams
1257 ;; icicle-hide/show-comments: Call comment-normalize-vars first. Thx to Stefan Monnier.
1258 ;; 2012/09/08 dadams
1259 ;; icicle-apply: Override icicle-buffer-ignore-space-prefix-flag, not icicle-ignore-space-prefix*.
1260 ;; icicle-search: Remove mention of overriding icicle-ignore-space-prefix-flag.
1261 ;; icicle-choose-candidate-of-type: Remove binding of icicle-ignore-space-prefix-flag.
1262 ;; 2012/09/06 dadams
1263 ;; Use icicle-string-match-p.
1264 ;; 2012/09/05 dadams
1265 ;; Added: icicle-select-text-at-point.
1266 ;; 2012/08/21 dadams
1267 ;; tap-symbol-nearest-point -> symbol-nearest-point. (icicles-opt.el DTRT.)
1268 ;; 2012/08/18 dadams
1269 ;; symbol-nearest-point -> tap-symbol-nearest-point.
1270 ;; bounds-of-thing-at-point -> icicle-bounds-of-thing-at-point.
1271 ;; next-visible-thing-(1|2) -> thgcmd-next-visible-thing-(1|2).
1272 ;; next-visible-thing-1: Note: < seems better than <= for comparison. I changed it to < for
1273 ;; Icicles version on 2011-05-14. But just changed the thing-cmd.el version to < today.
1274 ;; 2012/08/14 dadams
1275 ;; icicle-cmd2-after-load-highlight:
1276 ;; For Emacs < 24, require wid-edit.el before defalias to widget-color-complete.
1277 ;; 2012/08/12 dadams
1278 ;; icicle-read-color-WYSIWYG: Convert raw prefix arg `-' to -1.
1279 ;; 2012/08/06 dadams
1280 ;; Renamed old-* to icicle-ORIG-*:
1281 ;; icicle-ORIG-color, icicle-ORIG-read-color, icicle-ORIG-widget-color-complete.
1282 ;; icicle-Info-index(-20|-action), icicle-Info-menu, icicle-Info-goto-node-1:
1283 ;; Applied renaming to new: icicle-ORIG-*.
1284 ;; 2012/08/05 dadams
1285 ;; Added: widgets icicle-color, old-color. Added function icicle-widget-color-complete.
1286 ;; icicle-read-color-wysiwyg:
1287 ;; Added optional arg INITIAL-INPUT.
1288 ;; Return only variable's value if user-option candidate is chosen.
1289 ;; 2012/07/17 dadams
1290 ;; Removed: icicle-maybe-byte-compile-after-load (macro). Removed all calls to it.
1291 ;; 2012/07/07 dadams
1292 ;; icicle-Info-index:
1293 ;; Bind icicle-Info-(index-nodes|manual|hist-list), for highlighting visited nodes.
1294 ;; Raise error if not in Info-mode.
1295 ;; 2012/07/02 dadams
1296 ;; Moved defcustom of icicle-byte-compile-eval-after-load-flag to icicles-mcmd.el (loaded first).
1297 ;; icicle-search-bookmark(-action): Use *-search-context-regexp, not regexp, so no free warning.
1298 ;; Changed #'(lambda...) to (lambda...).
1299 ;; 2012/05/22 dadams
1300 ;; icicle-search-define-candidates, icicle-char-properties-in-buffers:
1301 ;; Test with icicle-file-remote-p before file-exists-p, to avoid Tramp.
1302 ;; 2012/05/15 dadams
1303 ;; Removed: icicle-search-desktop-bookmark (useless).
1304 ;; 2012/05/07 dadams
1305 ;; Renamed: icicle-search-dired-marked to icicle-search-dired-marked-recursive.
1306 ;; 2012/05/06 dadams
1307 ;; icicle-search-dired-marked: Call diredp-get-confirmation-recursive to get confirmation.
1308 ;; 2012/04/23 dadams
1309 ;; icicle-search-dired-marked: Use diredp-get-files. Raise error if Dired+ not present.
1310 ;; Moved other icicle-search-dired-* functions to Dired+ as diredp-*.
1311 ;; icicle-search-dired-get-files:
1312 ;; If user answers no, then pick up only the marked files here 9and all files underneath).
1313 ;; icicle-search-dired-get-files-for-dir: A no answer does not change what happens for top dir.
1314 ;; 2012/04/20 dadams
1315 ;; Added: icicle-search-dired-get-files-for-dir, icicle-search-dired-marked-here.
1316 ;; icicle-search-dired-marked:
1317 ;; Added arg IGNORE-MARKS-P (prefix arg). Pass it to icicle-search-dired-get-files.
1318 ;; icicle-search-dired-get-files: Rewrote - uses icicle-search-dired-get-files-for-dir.
1319 ;; Ask user whether to use Dired buffers for subdirs, if there are any.
1320 ;; 2012/04/14 dadams
1321 ;; icicle-search-dired-get-files: Moved handling of IGNORE-MARKS-P outside the lambda.
1322 ;; 2012/04/13 dadams
1323 ;; Added: icicle-search-dired-get-files.
1324 ;; icicle-search-dired-marked: Use icicle-search-dired-get-files, not dired-get-marked-files.
1325 ;; 2012/04/09 dadams
1326 ;; Changed last-command-char to last-command-event.
1327 ;; Fixed typos: double single-quotes in autoload cookies.
1328 ;; 2012/04/08 dadams
1329 ;; Make autoload cookies for commands load icicles[.el] explicitly.
1330 ;; 2012/04/03 dadams
1331 ;; Moved to *-cmd1.el:
1332 ;; icicle-send-signal-to-process, icicle-apropos, icicle-apropos-command, icicle-apropos-function,
1333 ;; icicle-apropos-option, icicle-apropos-options-of-type, icicle-apropos-variable,
1334 ;; icicle-apropos-zippy, icicle-apropos-opt-action, icicle-describe-option-of-type,
1335 ;; icicle-describe-opt-action, icicle-describe-opt-of-type-complete.
1336 ;; Plus compile-time requires of libraries yow, cookie1, apropos-fn+var.
1337 ;; 2012/04/01 dadams
1338 ;; Added: icicle-apropos-options-of-type, icicle-apropos-opt-action.
1339 ;; icicle-where-is: In help fn, wrap individual key sequences in `', not just all of them together.
1340 ;; 2012/03/31 dadams
1341 ;; icicle-apropos*: Updated wrt Emacs 24 (handle PATTERN). Added optional MSGP arg.
1342 ;; 2012/03/28 dadams
1343 ;; Changed FILE arg in autoloads by removing .el, so .elc will be loaded if available.
1344 ;; 2012/03/10 dadams
1345 ;; icicle-bookmark-a-file, icicle-find-file-tagged(-other-window): Bind icicle-full-cand-fn.
1346 ;; icicle-find-file-(handle-bookmark|(all|some)-tags(-regexp))(-other-window):
1347 ;; First code, last code: Call icicle-(un)bind-file-candidate-keys.
1348 ;; icicle-search-bookmark: Use icicle-make-bookmark-candidate to define icicle-candidates-alist.
1349 ;; 2012/03/09 dadams
1350 ;; icicle-untag-a-file, icicle-find-file-(all|some)-tags(-regexp)(-other-window), icicle-where-is,
1351 ;; icicle-apropos-(variable|option|function|command), icicle-apply,
1352 ;; icicle-save-string-to-variable, icicle-choose-candidate-of-type,
1353 ;; icicle-read-var-value-satisfying, icicle-read-args-for-set-completion-methods:
1354 ;; When Icomplete mode, use normal PRED, not *-must-pass-after-match-predicate.
1355 ;; icicle-find-file-handle-bookmark(-other-window): Use bmkp-find-file(-other-window) as action fn.
1356 ;; 2012/02/26 dadams
1357 ;; Update to reflect Bookmark+ changes (bindings etc.).
1358 ;; Added icicle-find-file-handle-bookmark(-other-window), as nontagging C-f commands.
1359 ;; icicle-find-file-tagged*: Use bmkp-find-file*, not find-file*, as action fn.
1360 ;; Pass prefix arg to bmkp-read-tags-completing, to update cache.
1361 ;; 2012/02/20 dadams
1362 ;; Added: icicle-Info-menu-cmd. Actually, renamed icicle-Info-menu to icicle-Info-menu-cmd and
1363 ;; added non-interactive icicle-Info-menu with args for compatibility with vanilla Emacs.
1364 ;; icicle-Info-index: Added optional arg for non-interactive compatibility with vanilla Emacs.
1365 ;; 2012/02/12
1366 ;; Added def of icicle-byte-compile-eval-after-load-flag here too, so can load before icicles.el.
1367 ;; 2012/02/11 dadams
1368 ;; icicle-search: Update doc string for new input expansion.
1369 ;; icicle-search-highlight-all-input-matches:
1370 ;; Expand when apropos and 4 or prefix and 3 or 4.
1371 ;; 2012/01/25 dadams
1372 ;; icicle-exchange-point-and-mark: Support also vanilla Emacs 22+ use of a prefix arg.
1373 ;; 2012/01/16 dadams
1374 ;; icicle-search-define-candidates: Add COMPLEMENT to error msg. Thx to Michael Heerdegen.
1375 ;; 2011/12/19 dadams
1376 ;; icicle-marker+text, icicle-compilation-search-in-context-fn: Use line-(beginning|end)-position.
1377 ;; 2011/12/14 dadams
1378 ;; icicle-search-where-arg: Do not bind icicle-bookmark-types here.
1379 ;; icicle-search-define-candidates: For bookmarks, WHERE is a cons of conses (not just a cons).
1380 ;; 2011/12/13 dadams
1381 ;; icicle-search-define-candidates: In bookmarks part, test BEG =? END only if both are non-nil.
1382 ;; 2011/12/06 dadams
1383 ;; icicle-send-signal-to-process: Add process name to prompt. Thx to Michael Heerdegen.
1384 ;; 2011/11/26 dadams
1385 ;; Renamed icicle-read-color to icicle-read-color-wysiwyg.
1386 ;; Added icicle-read-color (args compatible with vanilla read-color), for *-functions-to-redefine.
1387 ;; icicle-read-color-wysiwyg: Added MSGP arg. Updated hexrgb-read-color call (new arg list).
1388 ;; icicle-color-help: Corrected for different cases of icicle-list-use-nth-parts (not just (1 2)).
1389 ;; icicle-color-distance-(rgb|hsv)-lessp, icicle-choose-candidate-of-type:
1390 ;; Applied renaming: icicle-read-color-wysiwyg.
1391 ;; 2011/11/02 dadams
1392 ;; Added: icicle-search-autonamed-bookmark, icicle-search-temporary-bookmark.
1393 ;; *-full search commands:
1394 ;; Corrected doc strings to refer to the right option, icicle-hide-non-matching-lines-flag.
1395 ;; 2011/10/22 dadams
1396 ;; icicle-send-signal-to-process:
1397 ;; Bind icicle-last-transform-function to nil, so icicle-toggle-transforming still works well.
1398 ;; 2011/10/21 dadams
1399 ;; icicle-read-color, icicle-where-is, icicle-apply((-list)-action), icicle-search-thing-args,
1400 ;; icicle-set-completion-methods-for-command:
1401 ;; Use icicle-propertize.
1402 ;; 2011/10/19 dadams
1403 ;; Added: icicle-describe-process, icicle-send-signal-to-process. Thx to Michael Heerdegen.
1404 ;; 2011/10/10 dadams
1405 ;; icicle-define-search-bookmark-command: Moved to icicles-mac.el.
1406 ;; Moved here (and to icicles-face.el) from icicles-mac.el: icicle-maybe-byte-compile-after-load.
1407 ;; Replaced bodies of eval-after-load sexps with call to icicle-cmd2-after-load-*.
1408 ;; Added: icicle-cmd2-after-load-(bookmark+'|hexrgb|highlight|palette|synonyms).
1409 ;; Removed: icicle-read-single-key-description (unused).
1410 ;; 2011/10/08 dadams
1411 ;; Moved to icicles-mac.el: icicle-read-kbd-macro, icicle-edmacro-parse-keys.
1412 ;; Removed: icicle-orig-(buff|win)-key-complete - use regular icicle-orig*.
1413 ;; icicle-complete-keys: Bind regular icicle-orig*, not icicle-orig-(buff|win)-key-complete.
1414 ;; icicle-complete-keys-1: New icicle-key-description, with PREFIX arg and ANGLES, not NO-ANGLES.
1415 ;; icicle-complete-keys-action: Set buffer & window to icicle-orig*.
1416 ;; icicle-keys+cmds-w-prefix: Use icicle-delete-alist-dups. Thx to Michael Heerdegen.
1417 ;; icicle-add-key+cmd:
1418 ;; Do not follow indirection to ultimate symbol. Include NO-REMAP arg to key-binding.
1419 ;; Replace ESC by M-.. Follow remapped command to its target. Thx to Michael Heerdegen.
1420 ;; Do not remove VARIATION* names (Unicode).
1421 ;; icicle-read-single-key-description: Change NO-ANGLES arg to ANGLES.
1422 ;; icicle-where-is: Use icicle-key-description, not key-description.
1423 ;; icicle-Info-(index|read-node-name), icicle-search-bookmark, palette-mode-map: Use icicle-kbd.
1424 ;; 2011/10/02 dadams
1425 ;; icicle-add-key+cmd:
1426 ;; Use Unicode char name in place of self-insert-command. Remove empty and VARIATION* names.
1427 ;; 2011/09/27 dadams
1428 ;; Added: icicle-search-modes (macro).
1429 ;; icicle-search-where-arg: Use icicle-search-modes - handle zero prefix arg.
1430 ;; icicle-(occur|sentences|paragraphs|pages), Use *-search-where-arg, to search files & bookmarks.
1431 ;; icicle-search-define-candidates: Use nil for BEG and END if region is empty.
1432 ;; Thx to Michael Heerdegen.
1433 ;; 2011/09/18 dadams
1434 ;; Added: icicle-search-property-default-match-fn. Handles MuMaMo major mode zones.
1435 ;; icicle-search-char-prop-matches-p. Doesn't just flatten overlay & text props and use
1436 ;; set intersect. Uses icicle-some with MATCH-FN.
1437 ;; Moved to icicles-fn.el: icicle-flat-list (no longer used).
1438 ;; Moved to icicles-cmd1.el: icicle-(keyword|regexp)-list.
1439 ;; icicle-color-completion-setup: Ensure icicle-prompt is a string before adding property.
1440 ;; icicle-search-where-arg, icicle-search-choose-buffers, icicle-search-(buffer|file):
1441 ;; Bind icicle-prompt.
1442 ;; icicle-search-char-property: Added arg MATCH-FN. Add it to the return value.
1443 ;; icicle-search-(overlay|text)-property:
1444 ;; Added arg MATCH-FN (pass to icicle-search). Made all args mandatory.
1445 ;; icicle-search-text-property: When PROP is face, call font-lock-fontify-region.
1446 ;; icicle-search-property-args:
1447 ;; Bind match-fn to icicle-search-property-default-match-fn. Add it to return value.
1448 ;; Bind icicle-prompt and icicle-hist-var.
1449 ;; For values: for non-face prop, use icicle-sexp-list, not icicle-completing-read-history.
1450 ;; icicle-search-char-property-scan:
1451 ;; Added arg MATCH-FN. Use icicle-search-char-prop-matches-p.
1452 ;; Extend zone if matching prop values also in contiguous zone.
1453 ;; icicle-search-(regexp|thing)-scan, icicle-search-highlight-input-matches-here,
1454 ;; icicle-search-char-property-scan:
1455 ;; Handle t value for icicle-search-highlight-threshold.
1456 ;; 2011/09/09 dadams
1457 ;; icicle-search-w-isearch-string: Added prefix-arg treatment.
1458 ;; 2011/09/08 dadams
1459 ;; Added: icicle-search-w-isearch-string, from a lambda in icicles-mode.el.
1460 ;; 2011/09/05 dadams
1461 ;; icicle-imenu-*: Others -> Other, as submenu name.
1462 ;; icicle-search, icicle-imenu*-full: Mention C-x . in doc strings.
1463 ;; 2011/09/04 dadams
1464 ;; icicle-add-key+cmd: Handle Emacs 23+ consp char-range events, for self-insert.
1465 ;; Applied renaming of icicle-complete-keys-self-insert-flag to *-ranges.
1466 ;; Removed: icicle-insert-char.
1467 ;; 2011/09/02 dadams
1468 ;; Removed: icicle-Info-index-cmd, icicle-Info-menu-cmd, icicle-Info-goto-node-cmd.
1469 ;; icicle-Info-index(-20|-action): Use old-Info-index.
1470 ;; icicle-Info-goto-node-1: Use old-Info-goto-node.
1471 ;; 2011/08/27 dadams
1472 ;; icicle-search-char-property-scan: Added optional ACTION arg. Move hit-end after ACTION.
1473 ;; Added: icicle-imenu-1. Created from old icicle-imenu*, but: (1) added args FULLP for full,
1474 ;; SUBMENU-FN to pick submenu, (2) pass PREDICATE and pos after forward-sexp for FULLP.
1475 ;; icicle-imenu, icicle-imenu-command: Use icicle-imenu-1.
1476 ;; Added: icicle-imenu(-command|-non-interactive-function)-full, icicle-search-defs-full,
1477 ;; icicle-imenu-(macro|variable|user-option|face|key-(implicit|explicit)-map)(-full),
1478 ;; icicle-apply-action, icicle-apply-list-action, icicle-search-regexp-scan,
1479 ;; icicle-search-action-1, icicle-search-bookmark, icicle-define-search-bookmark-command,
1480 ;; icicle-search-thing-scan, icicle-search-char-property-scan:
1481 ;; Use icicle-condition-case-no-debug instead of condition-case. Thx to Michael Heerdegen.
1482 ;; 2011/08/26 dadams
1483 ;; icicle-imenu:
1484 ;; When multiple Others menus, name them uniquely.
1485 ;; When only one submenu, just use it (no choosing).
1486 ;; icicle-complete-keys-action: Removed useless condition-case.
1487 ;; Make sure to pass format string as first arg to calls to functions error and message.
1488 ;; 2011/08/17 dadams
1489 ;; icicle-search-thing-scan: Use correct code (not 1+) also if thingatpt+.el is loaded.
1490 ;; icicle-search-regexp-scan: Quit while loop if no more match, except if complementing.
1491 ;; icicle-search-read-context-regexp, icicle-search-(thing|property)-args, icicle-tags-search:
1492 ;; Change prompt when complementing (add: *NOT*).
1493 ;; 2011/08/16 dadams
1494 ;; icicle-maybe-byte-compile-after-load the eval-after-load definitions.
1495 ;; 2011/08/14 dadams
1496 ;; icicle-search-thing-scan: Handle icicle-search-complement-domain-p.
1497 ;; Updated doc strings of search commands to mention complementing.
1498 ;; icicle-imenu(-command|-non-interactive-function), icicle-complete-keys-1:
1499 ;; Replaced mapc with dolist so do not require cl.el at runtime (Emacs 20).
1500 ;; icicle-imenu: Ignore case when completing to the type (function etc.).
1501 ;; 2011/08/13 dadams
1502 ;; Added: icicle-bookmark-a-file.
1503 ;; icicle-search-regexp-scan, icicle-search-char-property-scan:
1504 ;; Handle icicle-search-complement-domain-p.
1505 ;; 2011/08/12 dadams
1506 ;; icicle-find-file-tagged(-other-window):
1507 ;; Bind icicle-full-cand-fn. Use icicle-file-bindings.
1508 ;; Use icicle-(un)bind-file-candidate-keys. Don't do/undo such bindings individually here.
1509 ;; 2011/08/09 dadams
1510 ;; icicle-find-file-tagged(-other-window): Bind C-x a [+-] to adding/removing tags.
1511 ;; icicle-define(-file)-command calls: Removed undo code if same as last code, so do not repeat it.
1512 ;; 2011/08/08 dadams
1513 ;; icicle-find-file-tagged(-other-window): Prefix arg means use all (not just tagged) autofiles.
1514 ;; 2011/08/07 dadams
1515 ;; Added: icicle-find-file-tagged(-other-window).
1516 ;; 2011/08/05 dadams
1517 ;; icicle-(un)tag-a-file: Bind icicle-use-candidates-only-once-flag to t.
1518 ;; 2011/07/31 dadams
1519 ;; Added: icicle-search-xml-element-text-node.
1520 ;; icicle-search-thing(-scan): Added TRANSFORM-FN arg.
1521 ;; icicle-search-define-candidates: Added message when only one candidate.
1522 ;; 2011/07/30 dadams
1523 ;; Moved here from icicles-cmd1.el and wrapped in eval-after-load bookmark+.el:
1524 ;; icicle-find-file-(all|some)-tags(-regexp)(-other-window), icicle-(un)tag-a-file.
1525 ;; Moved here from synonyms.el and wrapped in eval-after-load synonyms.el: (icicle)-synonyms.
1526 ;; Moved here from icicles-fn.el and wrapped in eval-after-load hexrgb.el:
1527 ;; icicle-color-*-lessp (except -rgb-), icicle-color-completion-setup, icicle-color-help,
1528 ;; icicle-make-color-candidate.
1529 ;; Soft-require hexrgb.el only when byte-compile.
1530 ;; icicle-frame-(bg|fg), icicle-read-color: Wrap in eval-after-load hexrgb.el.
1531 ;; icicle-(insert|complete)-thesaurus-entry(-cand-fn): Wrap in eval-after-load synonyms.el.
1532 ;; icicle-choose(-(in)visible)-faces, icicle-(hide|show)(-only)-faces:
1533 ;; Use eval-after-load highlight.el, not featurep.
1534 ;; icicle-pick-color-by-name(-action), palette keys: Use eval-after-load palette.el, not featurep.
1535 ;; 2011/07/27 dadams
1536 ;; icicle-search-read-word: Changed regexp to what vanilla Emacs uses for word search.
1537 ;; icicle-search(-word): Updated doc string wrt word search.
1538 ;; 2011/07/26 dadams
1539 ;; Removed: icicle-list-end-string (no longer needed). Thx to Michael Heerdegen.
1540 ;; 2011/07/24 dadams
1541 ;; Moved here from palette.el, and renamed with prefix icicle-:
1542 ;; icicle-pick-color-by-name, icicle-pick-color-by-name-action
1543 ;; Moved here from highlight.el, and renamed with prefix icicle- (from hlt-) and suffix -faces:
1544 ;; icicle-(hide|show)(-only)-faces, icicle-choose(-(in)visible)-faces.
1545 ;; Added: icicle-invisible-face-p.
1546 ;; icicle-choose(-(in)visible)-faces: Corrected:
1547 ;; Lax if icicle-WYSIWYG-Completions-flag. Put icicle-fancy-candidates on prompt.
1548 ;; Use icicle-list-*, for multi-completions. Use icicle-invisible-face-p to test invisibility.
1549 ;; Added eval-when-compile with soft requires for bookmark+.el and highlight.el.
1550 ;; 2011/07/18 dadams
1551 ;; icicle-search-thing, icicle-search-thing-scan:
1552 ;; Moved normalizing BEG, END to *-scan, for multiple buffers case. Thx to M. Heerdegen.
1553 ;; 2011/07/13 dadams
1554 ;; icicle-search-replace-cand-in-mct: Changed <= to < for len-rep. Thx to M. Heerdegen.
1555 ;; 2011/07/04 dadams
1556 ;; icicle-search-in-context-default-fn:
1557 ;; Bound icicle-last-completion-candidate, icicle-completion-candidates. Thx to M. Heerdegen.
1558 ;; 2011/07/02 dadams
1559 ;; Added: icicle-defined-thing-p.
1560 ;; icicle-things-alist: Use icicle-defined-thing-p. Thx to Michael Heerdegen.
1561 ;; 2011/06/03 dadams
1562 ;; Replace icicle-help-in-mode-line-flag by icicle-help-in-mode-line-delay everywhere.
1563 ;; 2011/05/25 dadams
1564 ;; icicle-fundoc, icicle-vardoc, icicle-plist:
1565 ;; Use icicle-doc-action only. Bind icicle-list-use-nth-parts to (1). Thx to Michael Heerdegen.
1566 ;; 2011/05/24 dadams
1567 ;; icicle-invisible-p: Use invisible-p if available (Emacs 22+).
1568 ;; 2011/05/22 dadams
1569 ;; Added defvars for free vars to quiet byte compiler.
1570 ;; 2011/05/16 dadams
1571 ;; icicle-search-thing-args: Message about C-M-; when ignoring comments and THING is comment.
1572 ;; 2011/05/15 dadams
1573 ;; Added: icicle-search-xml-element.
1574 ;; icicle-search-thing, icicle-search-thing-scan: Added PREDICATE optional arg.
1575 ;; 2011/05/14 dadams
1576 ;; Added: icicle-things-alist.
1577 ;; icicle-search-thing-args, icicle-(next|previous)-visible-thing:
1578 ;; Use icicle-things-alist, not (now removed) option icicle-thing-types.
1579 ;; icicle-next-visible-thing-1: Change comparison to < from <=
1580 ;; Removed: icicle-defined-thing-p (not used).
1581 ;; 2011/05/13 dadams
1582 ;; Renamed: icicle-last-visible-thing-type to icicle-last-thing-type.
1583 ;; icicle-last-thing-type: Use thgcmd-last-thing-type value as default, if available.
1584 ;; icicle-search-thing: Ensure BEG is before END (swap if needed).
1585 ;; icicle-search-thing-args, icicle-(next|previous)-visible-thing:
1586 ;; Use completing-read, not read-string, to read thing type.
1587 ;; icicle-(next|previous)-visible-thing: Do not set this-command (no need).
1588 ;; icicle-search-thing-scan: Removed code defining BEG, END if nil. Go to BEG, not min BEG, END.
1589 ;; icicle-next-visible-thing-2: Do not return an empty thing.
1590 ;; 2011/05/11 dadams
1591 ;; Added: icicle-invisible-p, icicle-previous-single-char-property-change.
1592 ;; icicle-search-thing-scan:
1593 ;; Handle also text invisible due to overlay, and invisible prop other than t.
1594 ;; icicle-next-visible-thing-2: Separate handling overlay and text prop. Use icicle-invisible-p.
1595 ;; 2011/05/10 dadams
1596 ;; Added: icicle-last-visible-thing-type, icicle-previous-visible-thing,
1597 ;; icicle-next-visible-thing-(and-bounds|1|2).
1598 ;; Alias icicle-next-visible-thing-(1|2) to the same commands from thing-cmds.el.
1599 ;; icicle-search-thing-scan:
1600 ;; Use when, not while, to skip over invisible (since use next-single-property-change).
1601 ;; Use new icicle-next-visible-and-bounds, so save-excursion and goto min.
1602 ;; Old icicle-next-visible is now ~ *-2, but that handles backward too. New one is a command.
1603 ;; 2011/05/07 dadams
1604 ;; Added: icicle-with-comments-hidden, icicle-hide/show-comments, icicle-search-thing,
1605 ;; icicle-defined-thing-p, icicle-next-visible-thing, icicle-search-thing-args,
1606 ;; icicle-search-thing-scan.
1607 ;; icicle-search: Doc string tweak.
1608 ;; 2011/05/04 dadams
1609 ;; icicle-search-read-context-regexp: Changed prompt to make clear that we search within contexts.
1610 ;; icicle-search-define-candidates: Remove any region highlighting, so we can see search hits.
1611 ;; 2011/04/29 dadams
1612 ;; icicle-choose-candidate-of-type: Rewrote buffer bindings based on icicle-buffer-bindings.
1613 ;; 2011/04/26 dadams
1614 ;; Added: icicle-search-autofile-bookmark.
1615 ;; 2011/04/12 dadams
1616 ;; Added: icicle-search-bookmark-list-marked, icicle-named-colors.
1617 ;; icicle-search-bookmark, icicle-define-search-bookmark-command:
1618 ;; Applied Bookmark+ renaming: bmkp-sort-and-remove-dups -> bmkp-sort-omit.
1619 ;; icicle-comint-search: Improved doc string (don't use C-next etc.).
1620 ;; icicle-frame-(bg|fg), icicle-read-color: Rename free var named-colors to icicle-named-colors.
1621 ;; Bind it in icicle-frame-(bg|fg), icicle-read-color, for use in icicle-color-completion-setup.
1622 ;; 2011/04/04 dadams
1623 ;; icicle-insert-thesaurus-entry-cand-fn, icicle-goto-marker-1-action, icicle-search-final-act,
1624 ;; icicle-comint-search: Use icicle-recenter.
1625 ;; 2011/04/02 dadams
1626 ;; Added: icicle-info-(buff|window), icicle-key-prefix(-2), icicle-active-map,
1627 ;; Moved here from icicles-var.el:
1628 ;; icicle-orig-buff-key-complete, icicle-orig-extra-cands, icicle-orig-font, icicle-orig-frame,
1629 ;; icicle-orig-menu-bar, icicle-orig-pixelsize, icicle-orig-pointsize, icicle-this-cmd-keys,
1630 ;; icicle-orig-show-initially-flag, icicle-orig-sort-orders-alist, icicle-orig-win-key-complete.
1631 ;; icicle-Info-index(-goto-node)(-action):
1632 ;; Use (new) icicle-info-(buff|window), not info-(buff|window).
1633 ;; icicle-describe-option-of-type, icicle-describe-opt-of-type-complete:
1634 ;; Use (new) icicle-pref-arg, not pref-arg.
1635 ;; icicle-search: Bind (new) icicle-scan-fn-or-regexp.
1636 ;; Moved any alias inside emacs-major-version test.
1637 ;; icicle-complete-keys-1: Bind (new) icicle-key-prefix.
1638 ;; icicle-complete-keys-action: Use (new) icicle-key-prefix, not prefix.
1639 ;; icicle-keys+cmds-w-prefix: Bind (new) icicle-key-prefix-2. Use icicle-active-map, not map.
1640 ;; icicle-add-key+cmd: Use icicle-key-prefix-2 and icicle-active-map, not prefix and map.
1641 ;; 2011/03/31 dadams
1642 ;; icicle-describe-opt-of-type-complete: Wrap icicle-var-is-of-type-p with condition-case.
1643 ;; 2011/03/29 dadams
1644 ;; icicle-search-action-1: Set icicle-other-window. Use icicle-target-window-recenter-amount.
1645 ;; Use new icicle-* vars for various free vars (orig-buff etc.).
1646 ;; icicle-frame-(bg|fg), icicle-read-color: prompt -> icicle-prompt.
1647 ;; 2011/03/03 dadams
1648 ;; icicle-insert-thesaurus-entry: Changed to strict completion from lax.
1649 ;; icicle-describe-option-of-type, icicle-(fun|var)doc, icicle-plist:
1650 ;; Removed mention of RET in prompt.
1651 ;; 2011/02/17 dadams
1652 ;; Added defalias old-read-color for read-color.
1653 ;; 2010/12/26 dadams
1654 ;; Removed autoload cookies except simple ones & ones with sexp on same line. Thx to Richard Kim.
1655 ;; 2010/12/18 dadams
1656 ;; Added more autoload cookies for commands. Thx to Richard Kim.
1657 ;; Specify command and file for commands defined by Icicles macros.
1658 ;; Require icicles-opt.el before icicles-var.el (but it makes no difference).
1659 ;; 2010/12/14 dadams
1660 ;; icicle-search-regexp-scan: Don't create marker if hit string is "".
1661 ;; icicle-search-highlight-all-input-matches:
1662 ;; Don't search within empty search contexts. Do nothing if input and expanded input are "".
1663 ;; If search doesn't advance point then forward-char. Stop searching if eobp.
1664 ;; Don't add (empty) overlay if search is empty.
1665 ;; icicle-search-highlight-context-levels: Don't add overlay for empty match.
1666 ;; icicle-search-highlight-input-matches-here: If search doesn't advance point then forward-char.
1667 ;; icicle-search-char-property-scan: Don't create empty overlays.
1668 ;; 2010/11/10 dadams
1669 ;; Added: icicle-read-args-for-set-completion-methods.
1670 ;; icicle-set-((S-)TAB|completion)-methods-for-command: Added METHODS arg.
1671 ;; 2010/11/09 dadams
1672 ;; Added: icicle-set-((S-)TAB|completion)-methods-for-command.
1673 ;; 2010/11/07 dadams
1674 ;; Applied renaming of icicle-all-candidates-action-p to icicle-all-candidates-action.
1675 ;; 2010/10/27 dadams
1676 ;; icicle-where-is: Use different prompt if prefix arg. Clarify the pref-arg diff in doc string.
1677 ;; 2010/10/25 dadams
1678 ;; icicle-search: Remove mention of icicle-search-context-match-predicate (no longer exists).
1679 ;; 2010/10/24 dadams
1680 ;; icicle-where-is, icicle-apropos-(variable|option|function|command), icicle-apply,
1681 ;; icicle-save-string-to-variable, icicle-choose-candidate-of-type,
1682 ;; icicle-read-var-value-satisfying:
1683 ;; Use icicle-must-pass-after-match-predicate, not PREDICATE arg.
1684 ;; 2010/10/09 dadams
1685 ;; icicle-Info-goto-node, icicle-apply, icicle-goto-marker, icicle-occur, icicle-complete-keys,
1686 ;; icicle-(comint|compilation)-search, icicle-search(-sentences|-paragraphs|-pages):
1687 ;; Updated doc string for new prefix and modal cycling keys.
1688 ;; 2010/07/17 dadams
1689 ;; Added: icicle-search-url-bookmark.
1690 ;; icicle-search-bookmark, icicle-define-search-bookmark-command: w3m -> url. Added C-M-u binding.
1691 ;; 2010/07/14 dadams
1692 ;; icicle-Info-index: Bind C-x m to icicle-bookmark-info-other-window.
1693 ;; icicle-Info-read-node-name: Restore original binding of C-x m, if any.
1694 ;; 2010/06/21 dadams
1695 ;; icicle-comint-search: Wrap search with unwind-protect to remove hook. Thx to M. Heerdegen.
1696 ;; 2010/06/18 dadams
1697 ;; icicle-search-replace-match: Specific error message for read-only buffer. Thx to M. Heerdegen.
1698 ;; Renamed: bookmarkp-* to bmkp-*.
1699 ;; 2010/06/12 dadams
1700 ;; icicle-goto-marker-or-set-mark-command:
1701 ;; Set this-command so C-SPC C-SPC activates when not t-m mode. Thx to Chris Hecker.
1702 ;; 2010/06/11 dadams
1703 ;; icicle-search-action-1: (unless (pos-visible-in-window-p) (recenter -2)). Thx to M. Heerdegen.
1704 ;; 2010/06/08 dadams
1705 ;; icicle-search-bookmark, icicle-define-search-bookmark-command:
1706 ;; Use icicle-bookmark-delete-action.
1707 ;; Use condition-case to filter out bad bookmarks (so no error).
1708 ;; 2010/06/04 dadams
1709 ;; Added: icicle-ido-like-mode.
1710 ;; 2010/05/16 dadams
1711 ;; Added: icicle-search-(all|some)-tags(-regexp)-bookmark, icicle-search-desktop-bookmark,
1712 ;; icicle-search-specific-(buffers|files)-bookmark, icicle-search-this-buffer-bookmark.
1713 ;; icicle-define-search-bookmark-command: Defined cmd requires bookmark+.el. Added &rest arg ARGS.
1714 ;; 2010/05/15 dadams
1715 ;; icicle-search-highlight-and-maybe-replace: If candidate number is nil, set to 0.
1716 ;; icicle-search: Updated doc string: Can sort. Don't say not to use C-|.
1717 ;; 2010/05/09 dadams
1718 ;; Icicles search: Change to allow sorting. Use mctized candidates, not alist + candidate nb.
1719 ;; icicle-search-highlight-and-maybe-replace:
1720 ;; Use *-replace-cand-in-mct, not *-replace-cand-in-alist. Do not *-input-matches-here.
1721 ;; icicle-search-replace-cand-in-mct: Rewrote.
1722 ;; Handle multi-completions also. Update CAND+MRKER to use replacement string, but keep props.
1723 ;; icicle-search-in-context-default-fn: Rewrote.
1724 ;; Update icicle-last-completion-candidate to current candidate. Insert that.
1725 ;; Recompute input-match highlighting in current context. Remove current if no candidates.
1726 ;; icicle-search-action-1: Do nothing if no candidates.
1727 ;; icicle-search-help: Bind icicle-whole-candidate-as-text-prop-p to t, not nil.
1728 ;; 2010/05/04 dadams
1729 ;; icicle-object-action: Pass TYP to icicle-apply-to-saved-candidate. (UNTESTED)
1730 ;; icicle-choose-anything-candidate: Pass TYPE to icicle-apply-to-saved-candidate. (UNTESTED)
1731 ;; icicle-apply, icicle-read-var-value-satisfying: Bug fix: Removed #'.
1732 ;; 2010/04/30 dadams
1733 ;; icicle-search: Delete icicle-search-current-overlay via icicle-no-match-hook (& restore hook).
1734 ;; 2010/04/29 dadams
1735 ;; icicle-apply: Added optional args predicate initial-input hist def inherit-input-method.
1736 ;; Pass them to icicle-explore.
1737 ;; icicle-goto-marker-1: Pass a PREDICATE arg that ensures the marker points somewhere.
1738 ;; 2010/04/25 dadams
1739 ;; icicle-complete-keys-action:
1740 ;; Bind icicle-*, esp. *-initially-flag, around call of this-command-keys. Thx to M. Heerdegen.
1741 ;; icicle-complete-keys: Save some icicle-* vars to reuse in icicle-complete-keys-action.
1742 ;; 2010/04/17 dadams
1743 ;; icicle-search-bookmark, icicle-define-search-bookmark-command:
1744 ;; Use icicle-transform-multi-completion in icicle-delete-candidate-object.
1745 ;; 2010/04/08 dadams
1746 ;; icicle-get-anything-candidates: Removed #' - it was preventing the fn from being functionp.
1747 ;; 2010/04/03 dadams
1748 ;; Removed: icicle-search-desktop-bookmark (no need).
1749 ;; 2010/04/02 dadams
1750 ;; Removed:
1751 ;; icicle-add-region, icicle-delete-region-from-alist, icicle-purge-bad-file-regions,
1752 ;; icicle-region-add-buffers, icicle-region-add-short-help, icicle-region-help,
1753 ;; icicle-region-open-all-files, icicle-regions, icicle-region-sorted,
1754 ;; icicle-remove-all-regions-action, icicle-remove-all-regions-in-buffer, icicle-remove-region,
1755 ;; icicle-search-all-regions, icicle-search-region(-action), icicle-select-region(-action).
1756 ;; Added:
1757 ;; icicle-search-bookmark-list-bookmark, icicle-search-bookmarks-together,
1758 ;; icicle-search-desktop-bookmark, icicle-search-dired-bookmark, icicle-search-man-bookmark.
1759 ;; icicle-exchange-point-and-mark, icicle-search(-define-candidates),
1760 ;; icicle-char-properties-in-buffers:
1761 ;; Use only region bookmarks, not Icicles saved regions.
1762 ;; icicle-exchange-point-and-mark: Negative prefix arg prompts for bookmark name.
1763 ;; icicle-search-define-candidates(-1): Raise the no-candidates error in parent, not in (-1).
1764 ;; icicle-search-bookmark: Use full multi-completions. Use bookmark sort orders.
1765 ;; Define narrowing keys in both minibuffer maps.
1766 ;; icicle-search-bookmark-action: Transform multi-completion. Use bookmark posns only for region.
1767 ;; icicle-define-search-bookmark-command: Added PROMPT arg. Use multi-completions, bookmark sorts.
1768 ;; 2010/03/28 dadams
1769 ;; Renamed: icicle-search-all-regions to icicle-search-region.
1770 ;; Removed: old icicle-search-region (use icicle-search-region-bookmark instead),
1771 ;; icicle-region-add-buffers, icicle-region-add-short-help, icicle-region-help,
1772 ;; icicle-region-sorted, icicle-region-open-all-files, icicle-add-region,
1773 ;; icicle-remove-region, icicle-delete-region-from-alist,
1774 ;; icicle-purge-bad-file-regions, icicle-remove-all-regions-(in-buffer|action).
1775 ;; icicle-search-all-regions: Use region bookmarks, not icicle-region-alist.
1776 ;; 2010/03/27 dadams
1777 ;; Added: icicle-search-(bookmark-list|desktop|dired|man)-bookmark.
1778 ;; icicle-search-bookmark: Use multi-completions.
1779 ;; icicle-search-bookmark-action:
1780 ;; Use icicle-transform-multi-completion. Use both minibuffer completion maps.
1781 ;; Search region if region bookmark.
1782 ;; icicle-define-search-bookmark-command: Added optional PROMPT arg. Use multi-completions.
1783 ;; 2010/03/13 dadams
1784 ;; Applied renaming of icicle-add-buffer-name-flag to icicle-show-multi-completion-flag.
1785 ;; 2010/03/09 dadams
1786 ;; icicle-regions: Use icicle-reversible-sort (with KEY arg), not sort.
1787 ;; 2010/03/03 dadams
1788 ;; Applied renamings: icicle-sort-function to icicle-sort-comparer
1789 ;; icicle-sort-functions-alist to icicle-sort-orders-alist,
1790 ;; icicle-alternative-sort-function to icicle-alternative-sort-comparer,
1791 ;; icicle-last-sort-function to icicle-last-sort-comparer.
1792 ;; 2010/02/06 dadams
1793 ;; icicle-where-is: Make sure orig-buff is current when look up the bindings.
1794 ;; 2010/01/12 dadams
1795 ;; icicle-insert-thesaurus-entry-cand-fn, icicle-marker+text,
1796 ;; icicle-search-(bookmark|region)-action, icicle-char-properties-in-buffer,
1797 ;; icicle-search-char-property-scan:
1798 ;; save-excursion + set-buffer -> with-current-buffer (+ save-excursion).
1799 ;; icicle-search-regexp-scan: set-buffer -> with-current-buffer.
1800 ;; 2009/12/13 dadams
1801 ;; icicle-Info-read-node-name: Bind C-x m to icicle-bookmark-info-other-window.
1802 ;; 2009/11/24 dadams
1803 ;; icicle-read-color: Copy the prompt string, so *-color-completion-setup can put props.
1804 ;; 2009/11/22 dadams
1805 ;; icicle-frame-(bg|fg): Don't apply *-make-color-candidate to named-colors (done already).
1806 ;; 2009/11/03 dadams
1807 ;; icicle-frame-(bg|fg): Use named-colors, not x-defined-colors.
1808 ;; icicle-read-color: No need to bind icicle-transform-function, since we use hexrgb.el.
1809 ;; 2009/09/05 dadams
1810 ;; icicle-search-replace-all-search-hits:
1811 ;; Bind to nil: icicle-minibuffer-message-ok-p, icicle-help-in-mode-line-flag.
1812 ;; icicle-search-action-1: Add condition-case to ignore disappearance of *Completions* win.
1813 ;; icicle-search-highlight-and-maybe-replace:
1814 ;; Apply renaming of icicle-acting-on-next/prev (no -p).
1815 ;; Use length of *-completion-candidates, not mct.
1816 ;; Fix assignment of new candidate nb, and for both directions.
1817 ;; Bind icicle-minibuffer-message-ok-p to inhibit no-candidates msg.
1818 ;; Wrap around to first only if not icicle-acting-on-next/prev.
1819 ;; 2009/09/02 dadams
1820 ;; icicle-exchange-point-and-mark: Respect icicle-region-bookmarks-flag.
1821 ;; 2009/08/29 dadams
1822 ;; Added: icicle-define-search-bookmark-command,
1823 ;; icicle-search(-region|-info|-gnus|-w3m|(-non|-local|-remote)-file)-bookmark,
1824 ;; icicle-search-bookmark-action.
1825 ;; Moved (and redefined) to icicles-cmd1.el: icicle-select-bookmarked-region.
1826 ;; (lambda...) -> #'(lambda...).
1827 ;; 2009/08/25 dadams
1828 ;; Added icicle-select-bookmarked-region.
1829 ;; icicle-exchange-point-and-mark:
1830 ;; If bookmark+ is loaded, use region bookmarks.
1831 ;; Raise error if try to save inactive region or try to select with no saved regions.
1832 ;; 2009/08/11 dadams
1833 ;; Added: icicle-search-replace-all-search-hits.
1834 ;; Renamed: icicle-search-replace-candidate to icicle-search-replace-cand-in-alist.
1835 ;; Added: icicle-search-replace-cand-in-mct (not used, for now).
1836 ;; icicle-search:
1837 ;; Bind icicle-all-candidates-list-alt-action-fn to icicle-search-replace-all-search-hits.
1838 ;; Bind replace-count to 0. Bind icicle-current-input to empty string.
1839 ;; Updated doc string.
1840 ;; icicle-search-replace-search-hit:
1841 ;; Do not bind icicle-completion-candidates, icicle-candidate-nb, icicle-last-input.
1842 ;; No lack-of-current-candidate error if icicle-all-candidates-action-p.
1843 ;; Added: icicle-search-action-1 (factored out from icicle-search-action.
1844 ;; icicle-search-action, icicle-search-help:
1845 ;; Bind icicle-whole-candidate-as-text-prop-p to nil, to force use of alist.
1846 ;; icicle-search-action(-1): Do not bind icicle-candidate-nb, so don't save and restore it.
1847 ;; icicle-search-in-context-default-fn: If replacement tried, then update the dialog state.
1848 ;; icicle-search-highlight-and-maybe-replace: REWRITE.
1849 ;; Msg if string to be replaced is not found in candidate.
1850 ;; Swap order: Don't search unless first time (or replacing all).
1851 ;; icicle-search-replace-candidate -> icicle-search-replace-cand-in-alist.
1852 ;; If replacement done, then: Update alist, minibuffer-completion-table, and
1853 ;; minibuffer content. Change candidate nb if navigating next/prev. Complete again.
1854 ;; Return indication of whether we tried to replace something.
1855 ;; icicle-search-replace-cand-in-alist: Added catch, to skip whole list traversal.
1856 ;; Moved byte-compile quieting defvars to top level. Added one for tooltip-mode.
1857 ;; 2009/07/20 dadams
1858 ;; icicle-font: Ensure no nil elements in COLLECTION arg to completing-read, for Emacs 22+.
1859 ;; 2009/06/07 dadams
1860 ;; icicle-get-alist-candidate -> funcall icicle-get-alist-candidate-function.
1861 ;; Added: icicle-purge-bad-file-regions.
1862 ;; icicle-add-region, icicle-(select|search)-region-action:
1863 ;; Special-case Info buffers. Thx to Thierry Volpiatto.
1864 ;; 2009/05/28 dadams
1865 ;; Bind icicle-search-replacement to nil. (Somehow forgot when moved to icicle-explore.)
1866 ;; icicle-search-replace-search-hit: Raise an error if icicle-candidate-nb is nil.
1867 ;; 2009/05/26 dadams
1868 ;; icicle-compilation-search: Use value 'until-move for next-error-highlight.
1869 ;; 2009/05/22 dadams
1870 ;; Added: icicle-Info-virtual-book.
1871 ;; Require icicles-mac.el if load-library doesn't find it.
1872 ;; icicle-search: Set icicle-search-final-choice to result.
1873 ;; Created - Split off from icicles-cmd.el.
1874
1875 ;;;(@* "CHANGE LOG FOR `icicles-face.el'")
1876 ;;
1877 ;; 2013/07/07 dadams
1878 ;; Added: icicle-key-complete-menu, icicle-key-complete-menu-local.
1879 ;; 2013/02/04 dadams
1880 ;; Removed all autoload cookies.
1881 ;; 2013/01/18 dadams
1882 ;; Removed: icicle-increment-color-(hue|saturation|value) - moved to hexrgb.el and modified.
1883 ;; icicle-search-context-level-*: Use hexrgb-increment-*, with past increment divided by 100.
1884 ;; 2012/11/04 dadams
1885 ;; icicle-annotation: Fix default value for older Emacs versions.
1886 ;; 2012/10/27 dadams
1887 ;; Added icicle-annotation.
1888 ;; 2012/07/07 dadams
1889 ;; Added: icicle-historical-candidate-other (used only for icicle-Info-index so far).
1890 ;; 2012/03/29 dadams
1891 ;; Removed autoload cookies: hexrgb require, defs of *-increment-*, and *-search-context-level-*.
1892 ;; 2012/03/28 dadams
1893 ;; Soft-require hexrgb.el at autoload generation-time and load-time. Removed eval-when-compile.
1894 ;; Moved *-increment-* function defs from *-face-after-load-hexrgb to (when (featurep 'hexrgb)...),
1895 ;; and add autoload cookie for that.
1896 ;; Removed: icicle-byte-compile-eval-after-load-flag, icicle-maybe-byte-compile-after-load,
1897 ;; icicle-face-after-load-hexrgb.
1898 ;; Use (when (featurep 'hexrgb)...) instead of (defun icicle-face-after-load-hexrgb...) as wrapper.
1899 ;; Removed calls to icicle-maybe-byte-compile-after-load.
1900 ;; Removed (eval-after-load "hexrgb" '(icicle-face-after-load-hexrgb)).
1901 ;; Removed autoload cookie with autoloads for icicle-increment-color-*.
1902 ;; Changed FILE arg in autoloads by removing .el, so .elc will be loaded if available.
1903 ;; 2012/03/25 dadams
1904 ;; Replace autoload cookies for *-increment-color-* by autoloads inside soft-require of hexrgb.el.
1905 ;; 2012/02/12
1906 ;; Added def of icicle-byte-compile-eval-after-load-flag here too, so can load before icicles.el.
1907 ;; 2011/10/21 dadams
1908 ;; Added face: icicle-msg-emphasis.
1909 ;; 2011/10/10 dadams
1910 ;; Added: icicle-face-after-load-hexrgb.
1911 ;; Replaced bodies of eval-after-load sexps with call to icicle-face-after-load-hexrgb.
1912 ;; Added autoload cookies for icicle-increment-color-*.
1913 ;; Removed eval-when-compile to load icicles-mac.
1914 ;; Moved here (and to icicles-cmd2.el) from icicles-mac.el: icicle-maybe-byte-compile-after-load.
1915 ;; 2011/10/08 dadams
1916 ;; eval-when-compile icicles-mac.el.
1917 ;; 2011/08/16 dadams
1918 ;; Require icicles-mac.el.
1919 ;; icicle-maybe-byte-compile-after-load the eval-after-load definitions.
1920 ;; 2011/07/30 dadams
1921 ;; eval-after-load hexrgb.el, not runtime error if not feature, for all fns that use hexrgb.el.
1922 ;; Moved here from icicles-opt.el: icicle-increment-color-value.
1923 ;; icicle-search-context-level-*: Use fboundp icicle-increment-color-satur*, not featurep hexrgb.
1924 ;; Soft-require hexrgb.el when byte compile.
1925 ;; 2010/12/26 dadams
1926 ;; Removed autoload cookies except simple ones & ones with sexp on same line. Thx to Richard Kim.
1927 ;; 2010/05/05 dadams
1928 ;; icicle-mustmatch-completion: Changed line-width from 2 to -2.
1929 ;; 2010/04/08 dadams
1930 ;; Added autoload cookies.
1931 ;; 2010/03/13 dadams
1932 ;; Made icicle-candidate-part paler (light background): #EF84FFEAF427, not #DB17FFF4E581.
1933 ;; 2010/02/17 dadams
1934 ;; Moved functions here from icicles-opt.el: icicle-increment-color-(hue|saturation).
1935 ;; So no longer require icicles-opt.el.
1936 ;; 2009/04/18 dadams
1937 ;; Removed load-time warning about using Icicles in a text terminal.
1938 ;; 2009/04/12 dadams
1939 ;; Added: face icicle-mode-line-help.
1940 ;; 2009/01/13 dadams
1941 ;; Added: icicle-extra-candidate.
1942 ;; 2008/10/26 dadams
1943 ;; Added group: Icicles-Files.
1944 ;; 2008/03/29 dadams
1945 ;; Redefined and renamed faces for completion status indicators.
1946 ;; Renamed: icicle-completing-mustmatch-prompt-prefix to icicle-mustmatch-completion,
1947 ;; icicle-mode-lighter-highlight(-plus) to icicle(-multi-command)-completion.
1948 ;; Removed: icicle-completing-prompt-prefix, icicle-prompt-suffix.
1949 ;; 2008/03/09 dadams
1950 ;; Added: icicle-mode-lighter-highlight.
1951 ;; 2007/12/10 dadams
1952 ;; Added: icicle-input-completion-fail-lax.
1953 ;; 2007/11/18 dadams
1954 ;; Added: icicle-proxy-candidate.
1955 ;; icicle-special-candidate: No longer use a raised box.
1956 ;; 2007/10/22 dadams
1957 ;; icicle-special-candidate: Raised box.
1958 ;; 2007/08/19 dadams
1959 ;; Added: icicle-input-completion-fail.
1960 ;; 2007/06/21 dadams
1961 ;; Added: icicle-candidate-part. Changed definition of icicle-special-candidate.
1962 ;; 2007/06/17 dadams
1963 ;; Added: icicle-saved-candidate.
1964 ;; 2007/06/12 dadams
1965 ;; icicle-prompt-suffix: No box for dark background.
1966 ;; 2007/06/11 dadams
1967 ;; Better defaults for dark background frames.
1968 ;; 2007/06/07 dadams
1969 ;; Changed emacs-commentary-link to point to icicles-doc1.el and icicles-doc2.el.
1970 ;; 2007/05/22 dadams
1971 ;; Protected icicle-search-context-level-1 to *-8, in case hexrgb is not loaded.
1972 ;; 2007/04/20 dadams
1973 ;; Added: icicle-search-context-level-1 through *-8.
1974 ;; Require icicles-opt.el.
1975 ;; 2006/12/22 dadams
1976 ;; Renamed group icicles to Icicles.
1977 ;; Added Icicles subgroups, and assigned them instead of group Icicles:
1978 ;; -Buffers, -Completions-Display, -Key-Bindings, -Key-Completion, -Matching,
1979 ;; -Minibuffer-Display, -Miscellaneous, -Searching.
1980 ;; 2006/11/06 dadams
1981 ;; icicle-search-highlight-all-flag -> icicle-search-highlight-threshold (integer)
1982 ;; 2006/10/16 dadams
1983 ;; icicle-special-candidate: changed background from Pink to #DB17FFF4E581.
1984 ;; 2006/10/04 dadams
1985 ;; Added: icicle-special-candidate.
1986 ;; 2006/08/13 dadams
1987 ;; Added: icicle-completing-prompt-prefix.
1988 ;; 2006/07/16 dadams
1989 ;; Added dark-background face suggestions from Le Wang - thx.
1990 ;; 2006/06/30 dadams
1991 ;; Added: minibuffer-prompt for Emacs < 22 (e.g. Emacs 21.4 has propertize).
1992 ;; 2006/04/28 dadams
1993 ;; Added: icicle-whitespace-highlight.
1994 ;; 2006/04/14 dadams
1995 ;; Renamed icicle-search-refined-regexp to icicle-search-current-input.
1996 ;; 2006/04/07 dadams
1997 ;; Added: icicle-search-main-regexp-others.
1998 ;; Renamed: icicle-search-main-regexp to icicle-search-main-regexp-current.
1999 ;; 2006/03/27 dadams
2000 ;; Added: icicle-search-*-regexp.
2001 ;; 2006/03/22 dadams
2002 ;; Renamed: icicle-root-highlight-* to icicle-match-highlight-*.
2003 ;; 2006/03/21 dadams
2004 ;; Added: icicle-common-match-highlight-Completions.
2005 ;; icicle-root-highlight-Completions: Changed default face.
2006 ;; 2006/03/08 dadams
2007 ;; Added: icicle-current-candidate-highlight.
2008
2009 ;;;(@* "CHANGE LOG FOR `icicles-fn.el'")
2010 ;;
2011 ;; 2014/04/29 dadams
2012 ;; Added: icicle-mouseover-help, icicle-create-thumb.
2013 ;; icicle-display-candidates-in-Completions: Provide mouseover tooltip image preview.
2014 ;; Hide mouse-face highlighting when image-only.
2015 ;; 2014/04/20 dadams
2016 ;; icicle-insert-candidates:
2017 ;; Automatic on/off of Icomplete mode and sorting: Turn on only if it was turned on here.
2018 ;; When turn off, set flag icicle-auto-no-*-p.
2019 ;; Icomplete: Call icomplete-exhibit when turn on. Update icicle-last-icomplete-mode-value.
2020 ;; No Icomplete auto on/off for Emacs < 23.
2021 ;; Removed some old $$$$$ comments (cleanup).
2022 ;; 2014/04/13 dadams
2023 ;; icicle-insert-candidates:
2024 ;; When toggling icomplete-mode automatically, ensure done in the minibuffer, not *Completions*.
2025 ;; When toggling sorting: Do not turn on unless it was automatically turned off for this cmd.
2026 ;; 2014/04/01 dadams
2027 ;; icicle-display-candidates-in-Completions:
2028 ;; For icicle-candidate-properties-alist, use \', not $, in regexp for string-match.
2029 ;; icicle-insert-candidates: Do not use icomplete-tidy for Emacs 20-22.
2030 ;; 2014/03/06 dadams
2031 ;; icicle-insert-candidates:
2032 ;; Respect new options icicle-icomplete-mode-max-candidates and icicle-sorting-max-candidates.
2033 ;; 2014/03/04 dadams
2034 ;; icicle-display-candidates-in-Completions:
2035 ;; Use icicle-display-completion-list, not display-completion-list.
2036 ;; Removed icicle-condition-case-no-debug around that call.
2037 ;; Pass NB-CANDS to icicle-display-completion-list.
2038 ;; icicle-display-completion-list: Added optional arg NB-CANDS. Pass it to *-insert-candidates.
2039 ;; icicle-insert-candidates: Added optional arg NUMBER-OF-CANDIDATES. Use it if available.
2040 ;; 2014/02/21 dadams
2041 ;; Added: icicle-read-file-name-default.
2042 ;; icicle-read-file-name, icicle-read-file-name-1, icicle-dired-read-shell-command,
2043 ;; icicle-dired-guess-shell-command:
2044 ;; Added optional HISTORY arg.
2045 ;; icicle-read-file-name-1: If icicle-orig-read-file-name-fn = read-file-name-default then
2046 ;; use icicle-read-file-name-default, which accepts a HISTORY arg.
2047 ;; icicle-dired-read-shell-command, icicle-dired-guess-shell-command:
2048 ;; Use shell-command-history by default.
2049 ;; icicle-read-shell-command-completing: Pass HIST to icicle-read-file-name.
2050 ;; 2014/02/19 dadams
2051 ;; icicle-read-file-name:
2052 ;; 2014/02/08 dadams
2053 ;; Renamed: icicle-file-directory-p to icicle-looks-like-dir-name-p.
2054 ;; icicle-looks-like-dir-name-p: Better doc string.
2055 ;; 2014/02/07 dadams
2056 ;; Added: icicle-unlist. Use it in icicle-read-from-minibuffer, icicle-read-string-completing,
2057 ;; icicle-read-string, icicle-insert-candidates, icicle-read-regexp.
2058 ;; 2014/01/18 dadams
2059 ;; icicle-read-face-name: Rewrote for Emacs 24. Doc string updated per Emacs bug #16483.
2060 ;; 2014/01/11 dadams
2061 ;; icicle-completion-setup-function (Emacs 20-21): Wrap in condition case - Emacs bug.
2062 ;; 2014/01/05 dadams
2063 ;; Added: icicle-list-position, icicle-repeat-command.
2064 ;; icicle-completing-read: Bind icicle-orig-*, so can use icicle-recomplete-from-original-domain.
2065 ;; 2013/12/30 dadams
2066 ;; icicle-make-char-candidate: 3-part multi-completion now - added hex code point.
2067 ;; icicle-read-char-by-name:
2068 ;; 3-part multi-completion now - can complete against hex code point too.
2069 ;; Ensure ignore case for comparison outside completion. Report invalid INPUT, not CHR.
2070 ;; 2013/12/29 dadams
2071 ;; Added: icicle-make-char-candidate. Add hex and octal for code point in help echo.
2072 ;; icicle-read-char-by-name: Redefined to use multi-completion. Can now use with narrowing.
2073 ;; 2013/12/26 dadams
2074 ;; icicle-read-char-by-name: put NAME, not SYMB as icicle-orig-cand text property.
2075 ;; 2013/11/28 dadams
2076 ;; icicle-read-face-name: Better fix for brain-dead vanilla Emacs PROMPT.
2077 ;; 2013/11/24 dadams
2078 ;; icicle-read-face-name: Updated for Emacs 24.
2079 ;; 2013/11/19 dadams
2080 ;; Removed: icicle-ORIG-read-file-name-default and icicle-read-file-name-default.
2081 ;; 2013/10/30 dadams
2082 ;; icicle-fuzzy-candidates, icicle(-unsorted(-file-name))-(prefix|apropos)-candidates:
2083 ;; Always set icicle-common-match-string - to nil or to icicle-expanded-common-match.
2084 ;; For prefix completion, icicle-expanded-common-match if icicle-must-pass-after-match-predicate.
2085 ;; 2013/08/03 dadams
2086 ;; Added: icicle-dirs-and-latest-use-first-p, icicle-latest-use-first-p.
2087 ;; Renamed: icicle-last-(accessed|modified)-first-p to icicle-latest-(access|modification)-first-p,
2088 ;; icicle-most-recent-first-p to icicle-latest-input-first-p.
2089 ;; icicle-show-help-in-mode-line, icicle-help-line-(buffer|file):
2090 ;; Propertize only the values, not their headings too.
2091 ;; icicle-help-line-file: Add access time.
2092 ;; icicle-historical-alphabetic-p, icicle-latest-input-first-p: Apply abbreviate-file-name.
2093 ;; 2013/08/01 dadams
2094 ;; icicle-choose-completion-string: Do not display obnoxious vanilla Emacs obsolescence warning.
2095 ;; 2013/07/04 dadams
2096 ;; Added: icicle-find-tag-default-as-regexp, icicle-read-regexp.
2097 ;; 2013/06/21 dadams
2098 ;; icicle-display-candidates-in-Completions: Removed vestigial code for highlighting special cand.
2099 ;; 2013/05/11 dadams
2100 ;; icicle-handle-default-for-prompt: Do not add nil DEFAULT to prompt.
2101 ;; 2013/04/30 dadams
2102 ;; Renamed: icicle-add-default-to-prompt to icicle-handle-default-for-prompt.
2103 ;; icicle-handle-default-for-prompt: Always remove existing default expression from prompt.
2104 ;; Added INCLUDE. If nil, do not add DEFAULT (just remove it).
2105 ;; icicle-completing-read:
2106 ;; Invoke icicle-handle-default-for-prompt unconditionally, passing (eq icicle-default-value t).
2107 ;; icicle-read-string: Use icicle-handle-default-for-prompt, not icicle-add-default-to-prompt.
2108 ;; 2013/04/22 dadams
2109 ;; icicle-read-buffer: Pass all args to read-buffer-function funcall. Thx to Nick Alcock.
2110 ;; 2013/04/08 dadams
2111 ;; icicle-choose-completion-string: Added versions for Emacs 23.1 and 23.2+.
2112 ;; 2013/04/06 dadams
2113 ;; icicle-completing-p:
2114 ;; Bug fix for Emacs > 24.3. Test minibuffer-completing-file-name, not filename keymaps.
2115 ;; 2013/03/11 dadams
2116 ;; icicle-try-switch-buffer: If BUFFER is already current, do nothing, to prevent hooks kicking in.
2117 ;; 2013/03/07 dadams
2118 ;; Updated to use icicle-user-error where appropriate.
2119 ;; 2013/03/05 dadams
2120 ;; Added: icicle-defaults-at-point.
2121 ;; 2013/02/28 dadams
2122 ;; eval-after-load crm: Use fset, not defalias. Thx to Michael Heerdegen.
2123 ;; 2013/02/26 dadams
2124 ;; icicle-(prefix|apropos)-any(-file-name)-candidates-p:
2125 ;; Fix for use with Icomplete - take icicle-must-pass-after-match-predicate into account.
2126 ;; 2013/02/12 dadams
2127 ;; Typo fix: minibuffer-default--* -> minibuffer-default-*. Thx to Christopher Schmidt.
2128 ;; 2013/02/10 dadams
2129 ;; icicle-bounds-of-thing-at-point: Use SYNTAX-TABLE arg only if it is a syntax table.
2130 ;; 2013/02/06 dadams
2131 ;; icicle-unpropertize-completion: Added rear-nonsticky. Thx to Christopher Schmidt.
2132 ;; 2013/02/04 dadams
2133 ;; Removed all autoload cookies.
2134 ;; 2013/02/03 dadams
2135 ;; Moved to icicles-mcmd.el: icicle-isearch-complete-past-string.
2136 ;; 2012/12/31 dadams
2137 ;; icicle-next-candidate: Set icicle-mode-line-help. Do not call icicle-show-help-in-mode-line.
2138 ;; icicle-insert-cand-in-minibuffer:
2139 ;; Ignore errors in put-text-property. If retrieve singleton cand set, it is read-only (why?).
2140 ;; icicle-insert-candidates: Corrected '(face 'icicle-annotation) to '(face icicle-annotation).
2141 ;; 2012/12/28 dadams
2142 ;; icicle-add-default-to-prompt: Handle nil DEFAULT. Thx to Michael Heerdegen.
2143 ;; 2012/12/22 dadams
2144 ;; Added: icicle-add-default-to-prompt.
2145 ;; icicle-completing-read, icicle-read-string: Use icicle-add-default-to-prompt.
2146 ;; 2012/12/21 dadams
2147 ;; icicle-unsorted(-file-name)-(prefix|apropos)-candidates:
2148 ;; Compute common match in all cases except i-e-i-t-c-m = 0, and set *-common-match-string to it.
2149 ;; icicle-save-or-restore-input:
2150 ;; Removed test for icicle-expand-input-to-common-match level: expand for all levels.
2151 ;; 2012/12/14 dadams
2152 ;; Added: icicle-multi-comp-apropos-complete-match.
2153 ;; 2012/12/12 dadams
2154 ;; icicle-expanded-common-match-1:
2155 ;; Use string-match, not icicle-apropos-complete-match-fn, except for first condition (and).
2156 ;; icicle-insert-candidates: Wrap funcall of annotation fn with condition-case, just in case.
2157 ;; 2012/12/10 dadams
2158 ;; icicle-read-file-name-default: Protect minibuffer-local-filename-syntax with boundp.
2159 ;; 2012/12/06 dadams
2160 ;; Moved minibuffer-with-setup-hook here from icicles-mac.el (and removed eval-when-compile).
2161 ;; icicle-read-shell-command, icicle-dired-read-shell-command:
2162 ;; Use minibuffer-with-setup-hook unconditionally, since provided here unconditionally.
2163 ;; 2012/12/05 dadams
2164 ;; icicle-completing-read: Remove HINT before adding it our way. Thx to Christopher Schmidt.
2165 ;; 2012/12/02 dadams
2166 ;; Added: icicle-read-file-name-default, icicle-ORIG-read-file-name-default.
2167 ;; 2012/11/27 dadams
2168 ;; icicle-completing-read:
2169 ;; For icicle-default-value = t: Append ": " to icicle-default-in-prompt-format-function result.
2170 ;; 2012/11/26 dadams
2171 ;; icicle-completing-read: Use new option icicle-default-in-prompt-format-function.
2172 ;; 2012/11/21 dadams
2173 ;; icicle-completing-read: Commented out removing dir part of icicle-default-value in prompt.
2174 ;; 2012/11/17 dadams
2175 ;; icicle-completing-read:
2176 ;; When (eq icicle-default-value t) add DEF to PROMPT. Thx to Michael Heerdegen.
2177 ;; 2012/11/10 dadams
2178 ;; icicle-custom-type: icicle-get-safe -> get.
2179 ;; icicle-fuzzy-candidates: Show all (not no) candidates for empty input, sorted alphabetically.
2180 ;; 2012/11/08 dadams
2181 ;; Added: icicle-get-safe.
2182 ;; icicle-completion-setup-function, icicle-var-(is-of|matches|inherits)-type-p,
2183 ;; icicle-var-val-satisfies-type-p, icicle-custom-type, icicle-fit-completions-window,
2184 ;; icicle-next-candidate, icicle-recompute-candidates, icicle-save-or-restore-input,
2185 ;; icicle-highlight-input-noncompletion:
2186 ;; Use icicle-get-safe.
2187 ;; 2012/11/07 dadams
2188 ;; icicle-read-char-by-name, icicle-read-from-minibuffer: char-to-string -> string.
2189 ;; icicle-scatter: Non-backtracking version.
2190 ;; 2012/10/27 dadams
2191 ;; Added: icicle-member-ignore-case.
2192 ;; icicle-insert-candidates:
2193 ;; Insert annotation only if icicle-show-annotations-flag. Highlight w/ face icicle-annotation.
2194 ;; 2012/10/24 dadams
2195 ;; icicle-completion--embedded-envvar-table: Return 0 as the first boundary. Thx to M. Heerdegen.
2196 ;; 2012/10/22 dadams
2197 ;; icicle-display-candidates-in-Completions: Check Info topic first in icicle-Info-index-cache.
2198 ;; icicle-Info-node-is-indexed-by-topic:
2199 ;; Return triplet: (TOPIC NODE FILE). Cache triplet in icicle-Info-index-cache (new).
2200 ;; 2012/10/21 dadams
2201 ;; icicle-take: Use a simpler definition.
2202 ;; 2012/10/20 dadams
2203 ;; icicle-completion--embedded-envvar-table: Added more of vanilla code. Thx to Michael Heerdegen.
2204 ;; 2012/10/18 dadams
2205 ;; icicle-read-file-name, icicle-read-number, icicle-read-char-exclusive,
2206 ;; icicle-read-string-completing, icicle-read-face-name:
2207 ;; Do not augment icicle-proxy-candidates if icicle-exclude-default-proxies is non-nil.
2208 ;; For all of them except icicle-read-face-name (already done): Augment, do not just replace.
2209 ;; 2012/10/17 dadams
2210 ;; icicle-display-candidates-in-Completions:
2211 ;; For *Completions* mode line: treat nil icicle-apropos-complete-match-fn like apropos.
2212 ;; 2012/10/15 dadams
2213 ;; icicle-(highlight|clear)-lighter: Use || to indicate multi-completion.
2214 ;; 2012/10/10 dadams
2215 ;; icicle-display-candidates-in-Completions:
2216 ;; Add lighter and completion mode to *Completions* mode line.
2217 ;; icicle-(prefix|apropos)-candidates:
2218 ;; Call *-maybe-sort-maybe-truncate even if *-sort-comparer is nil. Needed for truncation.
2219 ;; icicle-maybe-sort-maybe-truncate:
2220 ;; Handle new icicle-max-candidates value of RESET, from icicle-doremi-increment-max-candidates+
2221 ;; 2012/10/09 dadams
2222 ;; icicle-read-face-name: Bind icicle-multi-completing-p to t.
2223 ;; 2012/10/05 dadams
2224 ;; icicle-next-candidate: Removed setting of icicle-default-directory (unused).
2225 ;; 2012/10/02 dadams
2226 ;; icicle-file-name-(non)directory, icicle-input-from-minibuffer:
2227 ;; string-to-list -> append the string to (),
2228 ;; Because Emacs 24 now breaks older byte-compiled code, since it removed string-to-sequence.
2229 ;; 2012/10/01 dadams
2230 ;; icicle-file-name-(non)directory, icicle-input-from-minibuffer:
2231 ;; Rewrote to be more robust: do not hard-code ^G as the REPL-CHAR. Use a char not in string.
2232 ;; 2012/09/25 dadams
2233 ;; icicle-input-from-minibuffer, icicle-minibuf-input-sans-dir,
2234 ;; icicle-highlight-input-noncompletion:
2235 ;; Handle the icicle-abs-file-candidates case also - same as the icicle-file-name-input-p case.
2236 ;; 2012/09/24 dadams
2237 ;; Added: icicle-last-accessed-first-p.
2238 ;; icicle-read-shell-command-completing: Pass non-nil NO-ERROR-P arg to icicle-describe-file.
2239 ;; icicle-file-type-less-p, icicle-dirs-(first|last)-p, icicle-last-modified-first-p:
2240 ;; Use file comparison also if icicle-abs-file-candidates.
2241 ;; 2012/09/17 dadams
2242 ;; icicle-insert-candidates:
2243 ;; Add an extra newline after multi-line candidates only, not after all cands if ANY-MULTILINE-P.
2244 ;; 2012/09/08 dadams
2245 ;; Added: icicle-read-buffer, icicle-ORIG-read-buffer.
2246 ;; icicle-unsorted-(prefix|apropos)-candidates:
2247 ;; Use buffer-name alist, if not ignoring space prefix and not internal-complete-buffer.
2248 ;; Ensure icicle-buffer-name-input-p to pass icicle-buffer-ignore-space-prefix-flag arg.
2249 ;; icicle-unsorted-file-name-(prefix|apropos)-candidates,
2250 ;; icicle-apropos-any-file-name-candidates-p:
2251 ;; Do not pass icicle-ignore-space-prefix-flag arg to icicle-all-completions.
2252 ;; icicle-display-Completions, icicle-apropos-any-candidates-p:
2253 ;; Ensure icicle-buffer-name-input-p to pass icicle-buffer-ignore-space-prefix-flag arg.
2254 ;; 2012/09/06 dadams
2255 ;; Added icicle-string-match-p. Use it.
2256 ;; 2012/08/31 dadams
2257 ;; icicle-read-from-minibuffer: Improved doc string.
2258 ;; 2012/08/28 dadams
2259 ;; icicle-read-number: Allow for DEFAULT to be a cons with nil elements. Thx to C. Schmidt.
2260 ;; 2012/08/18 dadams
2261 ;; Added: icicle-bounds-of-thing-at-point.
2262 ;; thing-at-point -> icicle-thing-at-point, everywhere.
2263 ;; 2012/08/13 dadams
2264 ;; icicle-completing-read-multiple: Doc string improvement.
2265 ;; 2012/08/06 dadams
2266 ;; Renamed old-* to icicle-ORIG-*:
2267 ;; icicle-ORIG-choose-completion-string, icicle-ORIG-completing-read,
2268 ;; icicle-ORIG-completing-read-multiple, icicle-ORIG-completion-setup-function,
2269 ;; icicle-ORIG-dired-smart-shell-command, icicle-ORIG-display-completion-list,
2270 ;; icicle-ORIG-face-valid-attribute-values, icicle-ORIG-minibuffer-default-add-completions,
2271 ;; icicle-ORIG-read-char-by-name, icicle-ORIG-read-face-name,
2272 ;; icicle-ORIG-read-from-minibuffer, icicle-ORIG-read-number,
2273 ;; icicle-ORIG-read-string, icicle-ORIG-shell-command, icicle-ORIG-shell-command-on-region,
2274 ;; icicle-ORIG-crm-local-completion-map, icicle-ORIG-crm-local-must-match-map.
2275 ;; icicle-read-file-name-1: Applied renaming: new name icicle-orig-read-file-name-fn.
2276 ;; 2012/07/21 dadams
2277 ;; icicle-show-help-in-mode-line:
2278 ;; Allow value of property icicle-mode-line-help to be a function.
2279 ;; For a file-name candidate, call icicle-help-line-buffer with NO-FILE-P.
2280 ;; icicle-help-line-buffer: Added optional arg NO-FILE-P. Include file name, if any.
2281 ;; 2012/07/19 dadams
2282 ;; icicle-insert-candidates: Fix change from 7/18: ensure icicle-last-completion is non-nil.
2283 ;; 2012/07/18 dadams
2284 ;; icicle-insert-candidates: Handle annotations.
2285 ;; 2012/07/17 dadams
2286 ;; icicle-read-char-by-name: Show char and its code point in mode line when cycle.
2287 ;; 2012/07/07 dadams
2288 ;; Added: icicle-Info-node-is-indexed-by-topic.
2289 ;; icicle-display-candidates-in-Completions:
2290 ;; Added highlighting of topics pointing to visited Info nodes, for icicle-Info-index.
2291 ;; Call icicle-transform-multi-completion on file-name cand for historical-cand highlighting.
2292 ;; File-name completion fixes (thx to Michael Heerdegen):
2293 ;; Added: icicle-completion--embedded-envvar-table.
2294 ;; icicle-unsorted-file-name-prefix-candidates:
2295 ;; Use substitute-in-file-name on arg INPUT.
2296 ;; For Emacs 24+, bind minibuffer-completion-table to icicle-file-name-completion-table.
2297 ;; icicle-insert-cand-in-minibuffer: Removed insert-default-directory from AND as condition.
2298 ;; icicle-save-or-restore-input:
2299 ;; Removed insert-default-directory from COMMON condition for file-name completion.
2300 ;; Pass (NOT INSERT-DEFAULT-DIRECTORY) as 3rd arg to icicle-abbreviate-or-expand-file-name.
2301 ;; icicle-abbreviate-or-expand-file-name: Added optional arg DONT-ADD-DEFAULT-DIR-P.
2302 ;; Removed #' from lambdas.
2303 ;; 2012/06/25 dadams
2304 ;; Corrected change of 5/13: Removed call to file-name-as-directory.
2305 ;; icicle-alt-act-fn-for-type: Removed backquoting from lambda, since it uses a macro in *-mac.el.
2306 ;; 2012/06/24 dadams
2307 ;; icicle-read-shell-command-completing:
2308 ;; Use shell-command-to-string in *Help* explicitly, not just shell-command.
2309 ;; Thx to Christopher Schmidt & Michael Heerdegen.
2310 ;; icicle-help-line-(buffer|file): Handle fixnum overflow if buffer or file is too big.
2311 ;; icicle-insert-candidates: Remove extra newline at eob when vertical format.
2312 ;; 2012/06/21 dadams
2313 ;; icicle-prefix-any-file-name-candidates-p: updated for Emacs 23+ (file-name PRED).
2314 ;; 2012/06/18 dadams
2315 ;; icicle-help-line-buffer: Use format-mode-line if available.
2316 ;; 2012/06/09 dadams
2317 ;; icicle-display-candidates-in-Completions, icicle-highlight-initial-whitespace:
2318 ;; Use point-max if 1+ point is greater.
2319 ;; icicle-display-completion-list:
2320 ;; Insert help string only if there are completions.
2321 ;; Show text "There are no possible..." anyway, even if the show flag is nil.
2322 ;; icicle-expand-file-name-20: Move forward-line only if the show flag is non-nil - else no-op.
2323 ;; 2012/05/22 dadams
2324 ;; icicle-file-remote-p: Aligned with bmkp-file-remote-p - removed ffap; added final string-match.
2325 ;; icicle-show-help-in-mode-line, icicle-quote-file-name-part-of-cmd:
2326 ;; Test with icicle-file-remote-p before file-exists-p, to avoid Tramp. Thx to Michael Albinus.
2327 ;; 2012/05/13 dadams
2328 ;; icicle-completion-setup-function (all Emacs versions):
2329 ;; Corrected what becomes default-directory: Use substitute-in-file-name, to expand env vars.
2330 ;; Use expand-file-name and file-name-as-directory.
2331 ;; 2012/04/30 dadams
2332 ;; icicle-unsorted-file-name-prefix-candidates:
2333 ;; Forgot to use PRED, not default-directory, in second call to try-completion.
2334 ;; 2012/04/23 dadams
2335 ;; icicle-files-within(-1): If Dired+ available, use diredp-files-within(-1).
2336 ;; Moved to dired+.el (and renamed prefix): icicle-directories-within.
2337 ;; 2012/04/20 dadams
2338 ;; Added: icicle-directories-within (not yet used).
2339 ;; icicle-files-within: Added args INCLUDE-DIRS-P, PREDICATE. Remove killed Dired buffers.
2340 ;; 2012/04/13 dadams
2341 ;; icicle-files-within-1: Allow FILE-LIST to be a function. *-within: Updated doc accordingly.
2342 ;; 2012/04/08 dadams
2343 ;; icicle-minibuffer-default-add-dired-shell-commands: Make autoload cookie load icicles[.el].
2344 ;; 2012/03/30 dadams
2345 ;; icicle-join-nth-parts:
2346 ;; Handle a singleton PARTS normally, according to icicle-list-use-nth-parts - do not just
2347 ;; return the CAND. If PARTS is nil, return "".
2348 ;; 2012/03/16 dadams
2349 ;; icicle-display-candidates-in-Completions:
2350 ;; Show thumbnails for image-file bookmarks also (see Bookmark+).
2351 ;; Call remove-images to remove left-over image overlays (bug fix).
2352 ;; icicle-unpropertize-completion: Removed icicle-keep-newline (no longer used).
2353 ;; 2012/02/29 dadams
2354 ;; icicle-set-difference. Added optional KEY arg.
2355 ;; 2012/02/22 dadams
2356 ;; icicle-read-char-by-name: Updated per Juri's Emacs 24 patch (see Emacs bug #10857).
2357 ;; 2012/02/18 dadams
2358 ;; icicle-show-help-in-mode-line: Use property help-echo if icicle-mode-line-help is nil.
2359 ;; 2012/02/11 dadams
2360 ;; icicle-display-candidates-in-Completions:
2361 ;; Always highlight expanded common match now, not just when prefix or *-expand-input is non-nil.
2362 ;; icicle-unsorted(-file-name)-(prefix|apropos)-candidates:
2363 ;; Set icicle-common-match-string to expansion only if expanding (prefix: 3 or 4, apropos: 4).
2364 ;; icicle-save-or-restore-input:
2365 ;; Do not save if apropos and not 4 or prefix and not 3 or 4. (Before: checked only for apropos.)
2366 ;; icicle-remove-duplicates:
2367 ;; Do not use hash table for Emacs 20, even if cl.el loaded, so can byte-compile and use later.
2368 ;; 2012/02/08 dadams
2369 ;; icicle-remove-duplicates: Redefined to use a hash table.
2370 ;; icicle-remove-dups-if-extras: Call icicle-remove-duplicates (not inlined).
2371 ;; 2012/02/02 dadams
2372 ;; icicle-fuzzy-candidates: Use (min (length input) icicle-swank-prefix-length), not just the var.
2373 ;; 2012/01/20 dadams
2374 ;; icicle-call-then-update-Completions: Do the sit-for even if only one candidate.
2375 ;; 2012/01/17 dadams
2376 ;; icicle-insert-candidates:
2377 ;; Put mouse-face on final \n also. No longer use property icicle-keep-newline.
2378 ;; No longer treat single-newline candidate specially. Thx to Michael Heerdegen.
2379 ;; icicle-file-remote-p: Respect new var icicle-network-drive-means-remote-flag: nil means local.
2380 ;; icicle-call-then-update-Completions: Corrected logic for triggering re-complete.
2381 ;; In particular, REMOTE-TEST = file-remote-p prevents, rather than causes, re-completion.
2382 ;; icicle-ms-windows-NET-USE: Corrected hash-table support test: fboundp puthash, not hash-table-p.
2383 ;; icicle-choose-completion-string: let -> let* (typo).
2384 ;; 2012/01/14 dadams
2385 ;; Added: icicle-char-cands-from-charlist, icicle-read-char-maybe-completing, icicle-ucs-names.
2386 ;; icicle-read-char-by-name: Added optional arg NAMES. Use icicle-ucs-names, not ucs-names.
2387 ;; 2011/12/31 dadams
2388 ;; Reversed fix of 2011/04/12 for Emacs < 23:
2389 ;; icicle-unsorted-file-name-*, icicle-apropos-any-file-name-candidates-p:
2390 ;; Use default-directory, not minibuffer-completion-predicate, for Emacs < 23.
2391 ;; 2011/12/28 dadams
2392 ;; Removed mention of obsolete option icicle-cycle-into-subdirs-flag.
2393 ;; 2011/12/24 dadams
2394 ;; icicle-insert-candidates:
2395 ;; When only one column, set window width to column width.
2396 ;; Use option icicle-Completions-max-columns.
2397 ;; icicle-fit-completions-window: Clarify doc string.
2398 ;; 2011/12/15 dadams
2399 ;; icicle-display-candidates-in-Completions:
2400 ;; For face icicle-historical-candidate, expand file names before comparing.
2401 ;; 2011/12/06 dadams
2402 ;; icicle-read-from-minibuffer: Do not add default value to prompt.
2403 ;; 2011/10/21 dadams
2404 ;; Added: icicle-propertize.
2405 ;; Renamed: icicle-unpropertize to icicle-unpropertize-completion. Applied renaming everywhere.
2406 ;; icicle-display-candidates-in-Completions, icicle-kill-a-buffer: Use icicle-propertize.
2407 ;; 2011/10/09 dadams
2408 ;; Moved here from icicles-mac.el: icicle-try-switch-buffer, select-frame-set-input-focus.
2409 ;; Copied here from icicles-mac.el: icicle-assoc-delete-all.
2410 ;; Removed autoload cookie for icicle-maybe-cached-action.
2411 ;; 2011/10/08 dadams
2412 ;; Added: icicle-delete-alist-dups.
2413 ;; icicle-completing-read-history:
2414 ;; Use prin1, not princ, to convert to strings. Thx to Michael Heerdegen.
2415 ;; icicle-key-description: Added PREFIX arg. Use Emacs 22+ form of key-description if available.
2416 ;; Changed arg NO-ANGLES to ANGLES.
2417 ;; icicle-read-char-by-name: Do not remove VARIATION* names (Unicode).
2418 ;; 2011/10/05 dadams
2419 ;; icicle-display-candidates-in-Completions:
2420 ;; Use same font family, not same font, as orig buff. Only for Emacs 23+, and only when
2421 ;; icicle-pre-minibuffer-buffer is defined. Removed dedicated-p condition. Removed zoom-out.
2422 ;; 2011/10/02 dadams
2423 ;; Added: icicle-read-char-by-name.
2424 ;; icicle-display-candidates-in-Completions: Give *Completions* the same font as starting buffer.
2425 ;; 2011/09/14 dadams
2426 ;; Added: icicle-some.
2427 ;; Moved here from icicles-cmd2.el: icicle-flat-list (but no longer used).
2428 ;; 2011/09/05 dadams
2429 ;; icicle-display-candidates-in-Completions: Act on new option icicle-hide-non-matching-lines-flag.
2430 ;; 2011/09/02 dadams
2431 ;; Added: icicle-delete-dups.
2432 ;; icicle-display-candidates-in-Completions: Don't highlight an empty match.
2433 ;; icicle-insert-candidates:
2434 ;; If only one column then colwidth should not be more than max-cand-len.
2435 ;; If whole cand is a single \n then do not treat it as the last \n (do not remove mouse-face).
2436 ;; 2011/08/27 dadams
2437 ;; icicle-recentf-make-menu-items, icicle-display-candidates-in-Completions,
2438 ;; icicle-command-abbrev-save, icicle-kill-a-buffer:
2439 ;; Use icicle-condition-case-no-debug instead of condition-case. Thx to Michael Heerdegen.
2440 ;; 2011/08/26 dadams
2441 ;; icicle-place-cursor: Put cursor at eob if get invalid-regexp error.
2442 ;; icicle-get-candidates-from-saved-set: Use %s, not %S, in error format string.
2443 ;; 2011/08/15 dadams
2444 ;; icicle-display-completion-list: Do not call (last ...) if COMPLETIONS is null.
2445 ;; Added: icicle-all-completions.
2446 ;; Use icicle-all-completions, not all-completions, wherever a 4th arg is passed.
2447 ;; 2011/08/12 dadams
2448 ;; icicle-completing-p: Handle cases of filename must-match maps.
2449 ;; icicle-file-name-input-p: Improved doc string.
2450 ;; 2011/08/09 dadams
2451 ;; Added: icicle-replace-mct-cand-in-mct.
2452 ;; 2011/08/07 dadams
2453 ;; icicle-display-candidates-in-Completions,
2454 ;; icicle-highlight-(initial-whitespace|complete-input|lighter), icicle-case-string-less-p,
2455 ;; icicle-expanded-common-match-1, icicle-insert-cand-in-minibuffer, icicle-place-cursor,
2456 ;; icicle-(special|extra)-candidates-first-p: Handle absolute file names too:
2457 ;; (icicle-file-name-input-p) -> (or (icicle-file-name-input-p) icicle-abs-file-candidates)
2458 ;; icicle-display-candidates-in-Completions:: icicle-transform-multi-completion for image-file.
2459 ;; 2011/08/03 dadams
2460 ;; icicle-lisp-vanilla-completing-read:
2461 ;; Handle recent Emacs 24 changes: make-compose-keymap etc. Thx to Stefan Monnier.
2462 ;; 2011/07/30 dadams
2463 ;; Moved to icicles-cmd2.el and wrapped in eval-after-load hexrgb:
2464 ;; icicle-color-*-lessp (except -rgb-), icicle-color-completion-setup, icicle-color-help,
2465 ;; icicle-make-color-candidate.
2466 ;; 2011/07/27 dadams
2467 ;; Use icicle-completions-format everywhere, not icicle-completions-format-internal (removed).
2468 ;; icicle-nb-of-cand-in-Completions-horiz: Bind icicle-completions-format to horizontal, not nil.
2469 ;; 2011/07/26 dadams
2470 ;; icicle-insert-candidates: Vertical multiline: add only one newline, not two. Use \' not $.
2471 ;; Removed: icicle-list-end-string (no longer needed).
2472 ;; Thx to Michael Heerdegen.
2473 ;; 2011/07/20 dadams
2474 ;; icicle-mctized-full-candidate: Don't change icicle-completions-format-internal to horizontal.
2475 ;; icicle-insert-candidates: If any candidate is multiline then use only one column.
2476 ;; Thx to Michael Heerdegen.
2477 ;; 2011/07/06 dadams
2478 ;; icicle-fit-completions-window:
2479 ;; Emacs 22/23 fix: do not call fit-window-to-buffer. Thx to Michael Heerdegen.
2480 ;; icicle-read-face-name: Added version for Emacs 24+.
2481 ;; 2011/06/05 dadams
2482 ;; icicle-unsorted(-file-name)-prefix-candidates, icicle-prefix-any(-file-name)-candidates-p:
2483 ;; Add METADATA arg to icicle-completion-(try|all)-completion(s) calls.
2484 ;; 2011/06/03 dadams
2485 ;; icicle-completion-(all|try)-completion(s):
2486 ;; Added optional METADATA arg to handle Emacs 24's new METADATA arg.
2487 ;; Replace icicle-help-in-mode-line-flag by icicle-help-in-mode-line-delay everywhere.
2488 ;; icicle-show-in-mode-line: Use icicle-help-in-mode-line-delay, not hard-coded 10 sec.
2489 ;; 2011/05/31 dadams
2490 ;; icicle-read-file-name: Reordered let bindings (cosmetic).
2491 ;; 2011/05/22 dadams
2492 ;; Added defvars for free vars to quiet byte compiler.
2493 ;; 2011/05/12 dadams
2494 ;; icicle-candidate-short-help: Do nothing if string is empty ("").
2495 ;; 2011/05/07 dadams
2496 ;; icicle-insert-cand-in-minibuffer: Go to prompt end before insert.
2497 ;; 2011/05/04 dadams
2498 ;; icicle-transform-multi-completion: If cand is "" just return it. (Emacs 20 split-string bug.)
2499 ;; 2011/05/03 dadams
2500 ;; Added: icicle-position, icicle-merge-saved-order-less-p.
2501 ;; icicle-display-candidates-in-Completions: Respect icicle-highlight-saved-candidates-flag.
2502 ;; 2011/04/20 dadams
2503 ;; icicle-completion-setup-function: Last version is for Emacs 23.3 also. Thx to Michael Heerdegen.
2504 ;; 2011/04/18 dadams
2505 ;; icicle-face-valid-attribute-values: Added Emacs 23+ version. Thx to Aankhen.
2506 ;; 2011/04/12 dadams
2507 ;; Added defvars for icicle-dirs-done and icicle-files, for free vars.
2508 ;; Bind *-files in icicle-dired-read-shell-command. Bind *-dirs-done in icicle-files-within.
2509 ;; Use *-files in icicle-*-add-dired-*. Use *-dirs-done in icicle-files-within-1.
2510 ;; icicle-color-completion-setup: Renamed (free elsewhere): named-colors -> icicle-named-colors.
2511 ;; Applied renaming: prompt -> icicle-prompt.
2512 ;; icicle-unsorted-file-name-prefix-candidates, icicle-unsorted-file-name-apropos-candidates,
2513 ;; icicle-apropos-any-file-name-candidates-p:
2514 ;; Use minibuffer-completion-predicate, not default-directory, in calls to all-completions.
2515 ;; Thx to Michael Heerdegen.
2516 ;; 2011/03/31 dadams
2517 ;; icicle-read-file-name, icicle-read-number, icicle-read-char-exclusive,
2518 ;; icicle-read-string-completing, icicle-color-completion-setup:
2519 ;; Wrap calls to icicle-var-is-of-type-p with condition-case. Thx to Michael Heerdegen.
2520 ;; 2011/03/29 dadams
2521 ;; icicle-show-help-in-mode-line: Removed boundp condition for icicle-completing-keys-p.
2522 ;; icicle-scroll-or-update-Completions:
2523 ;; Applied renaming: icicle-scroll-Completions to icicle-scroll-Completions-forward.
2524 ;; icicle-color-completion-setup: prompt -> icicle-prompt.
2525 ;; icicle-alt-act-fn-for-type: orig-window -> icicle-orig-window.
2526 ;; 2011/03/26 dadams
2527 ;; icicle-read-face-name: Need copy-sequence for prompt in later Emacs versions also (forgot).
2528 ;; 2011/03/17 dadams
2529 ;; icicle-display-candidates-in-Completions: Added 2-pixel margin around thumbnail image.
2530 ;; 2011/03/04 dadams
2531 ;; icicle-read-file-name: Bind read-file-name-predicate. Thx to Michael Heerdegen.
2532 ;; icicle-alt-act-fn-for-type: Ensure orig-window is live before use it. Thx to Michael Heerdegen.
2533 ;; 2011/02/22 dadams
2534 ;; icicle-display-candidates-in-Completions: Show thumbnail for an image file.
2535 ;; Call icicle-fit-completions-window explicitly here.
2536 ;; icicle-fit-completions-window: Added optional arg (not used yet). Ensure window is Completions.
2537 ;; 2011/02/20 dadams
2538 ;; Added: icicle-color-(distance)-(hsv|rgb)-lessp.
2539 ;; icicle-color-completion-setup: Added sort orders for HSV and RGB: component order and distance.
2540 ;; 2011/02/17 dadams
2541 ;; icicle-join-nth-parts: If only one part then don't append the join string.
2542 ;; 2011/01/31 dadams
2543 ;; icicle-insert-candidates: Fixed test for remainder cands: (= n (* r c)), not (= 0 (mod n r)).
2544 ;; 2011/01/11 dadams
2545 ;; icicle-choose-completion-string:
2546 ;; Removed code that uses base-size, choose-completion-delete-max-match. Just replace all input.
2547 ;; 2011/01/05 dadams
2548 ;; Added: icicle-file-type-less-p.
2549 ;; icicle-highlight-input-noncompletion: When move overlay, specify buffer (for recursive minibuf).
2550 ;; 2010/12/26 dadams
2551 ;; Removed autoload cookies except simple ones & ones with sexp on same line. Thx to Richard Kim.
2552 ;; 2010/12/23 dadams
2553 ;; icicle-expand-file-name-20: Allow for inputs to be nil.
2554 ;; 2010/12/18 dadams
2555 ;; Moved icicle-assoc-delete-all to icicles-mac.el, since used there.
2556 ;; Added autoload cookies for cmds & macro; removed them from non-interactive functions.
2557 ;; 2010/12/14 dadams
2558 ;; Added: icicle-expand-file-name-20.
2559 ;; Renamed: icicle-expand-file-name to icicle-expand-file-or-dir-name.
2560 ;; icicle-abbreviate-or-expand-file-name, icicle-expand-file-or-dir-name:
2561 ;; Use icicle-expand-file-name-20.
2562 ;; icicle-completion-setup-function for Emacs < 22: Fix typo: last-command -> this-command.
2563 ;; icicle-expanded-common-match: Removed from doc string: statement that result is regexp-quoted.
2564 ;; 2010/12/11 dadams
2565 ;; icicle-completion-setup-function: Added a version for Emacs 23.2+. Thx to Michael Heerdegen.
2566 ;; 2010/11/20 dadams
2567 ;; icicle-toggle-icicle-mode-twice: Soft-require icicles-mode.el.
2568 ;; eval-after-load for crm.el:
2569 ;; Put toggle-twice on eval-after-load of icicles-mode, instead of doing it if i-m.el is loaded.
2570 ;; 2010/11/07 dadams
2571 ;; Added helper macro icicle-maybe-cached-action.
2572 ;; icicle-alt-act-fn-for-type: use icicle-maybe-cached-action so use same action for all cands.
2573 ;; 2010/11/06 dadams
2574 ;; icicle-fuzzy-candidates: Filter using icicle-must-pass-after-match-predicate.
2575 ;; Respect also extra cands and proxy cands.
2576 ;; Let C-g exit completion.
2577 ;; 2010/10/25 dadams
2578 ;; icicle-read-shell-command-completing:
2579 ;; Use icicle-must-pass-after-match-predicate, not icicle-must-pass-predicate.
2580 ;; 2010/10/24 dadams
2581 ;; icicle-unsorted(-file-name)-(prefix|apropos)-candidates:
2582 ;; Respect icicle-must-pass-after-match-predicate.
2583 ;; icicle-alt-act-fn-for-type: Use icicle-must-pass-after-match-predicate, not PREDICATE arg.
2584 ;; 2010/10/07 dadams
2585 ;; Added: icicle-current-TAB-method (function). Use it in place of var everywhere.
2586 ;; 2010/10/04 dadams
2587 ;; directory-sep-char -> ?/ (It was removed from Emacs 24.)
2588 ;; 2010/06/18 dadams
2589 ;; icicle-completing-read:
2590 ;; Initialize icicle-completions-format-internal to icicle-completions-format.
2591 ;; icicle-mctized-full-candidate:
2592 ;; Set icicle-completions-format-internal to horizontal for multi-line multi-completions.
2593 ;; icicle-insert-candidates:
2594 ;; Remove face property from end of candidate to next column.
2595 ;; Replace icicle-completions-format by icicle-completions-format-internal.
2596 ;; Renamed: bookmarkp-* to bmkp-*.
2597 ;; 2010/06/14 dadams
2598 ;; icicle-read-from-minibuffer:
2599 ;; If add file-name default to prompt, remove dir part first. Thx to Chris Hecker.
2600 ;; icicle-next-candidate: Do not icicle-recompute-candidates if this command was repeated.
2601 ;; icicle-increment-cand-nb+signal-end:
2602 ;; Signal wrap from initial, not from 0. Negative INCR -> start at end. Thx to M. Heerdegen.
2603 ;; icicle-call-then-update-Completions:
2604 ;; Set icicle-last-input to nil so icicle-save-or-restore-input makes next-candidate recompute.
2605 ;; 2010/06/12 dadams
2606 ;; icicle-fit-completions-window: Let-bind window-min-height to prevent deletion in Emacs 23.
2607 ;; 2010/06/10 dadams
2608 ;; icicle-maybe-sort-and-strip-candidates:
2609 ;; Set icicle-completion-candidates to result of *maybe...maybe*. (It broke C-~.)
2610 ;; 2010/06/09 dadams
2611 ;; icicle-isearch-complete-past-string: Use the last-used ring. Thx to Michael Heerdegen.
2612 ;; 2010/06/08 dadams
2613 ;; icicle-display-candidates-in-Completions: Show also total when truncated: N shown / M.
2614 ;; icicle-maybe-sort-maybe-truncate: Save icicle-nb-candidates-before-truncation before truncating.
2615 ;; 2010/06/04 dadams
2616 ;; Added: icicle-clear-lighter, icicle-maybe-sort-maybe-truncate, icicle-take.
2617 ;; icicle-(prefix|apropos)-candidates, icicle-strip-ignored-files-and-sort,
2618 ;; icicle-maybe-sort-and-strip-candidates, icicle-display-Completions:
2619 ;; Use icicle-maybe-sort-maybe-truncate, not icicle-reversible-sort.
2620 ;; icicle-(un)highlight-lighter: Use icicle-clear-lighter (factored out).
2621 ;; 2010/05/30 dadams
2622 ;; Added: icicle-files-within-1.
2623 ;; icicle-files-within:
2624 ;; Use icicle-files-within-1. Optionally don't follow symlinks (new arg NO-SYMLINKS-P).
2625 ;; Don't process same dir twice. Respect icicle-ignored-directories. Thx to Michael Heerdegen.
2626 ;; 2010/05/18 dadams
2627 ;; icicle-save-or-restore-input:
2628 ;; Use icicle-file-directory-p, not file-directory-p (fails: ~/foo//usr/). Thx to M. Heerdegen.
2629 ;; 2010/05/04 dadams
2630 ;; icicle-alt-act-fn-for-type: Pass TYPE to icicle-apply-to-saved-candidate.
2631 ;; 2010/04/30 dadams
2632 ;; icicle(-file-name)-unsorted-(apropos|prefix)-candidates, icicle-fuzzy-candidates:
2633 ;; Set icicle-common-match-string to nil when no candidates.
2634 ;; 2010/04/29 dadams
2635 ;; icicle-unpropertize: Do nothing unless icicle-remove-icicles-props-p.
2636 ;; 2010/04/27 dadams
2637 ;; icicle-show-help-in-mode-line: Test value, not just boundp, of icicle-completing-keys-p.
2638 ;; 2010/04/21 dadams
2639 ;; icicle-mode-line-name-less-p: Removed bogus calls to symbol-name. Thx to Michael Heerdegen.
2640 ;; 2010/04/20 dadams
2641 ;; Added: icicle-dirs-first-p.
2642 ;; 2010/04/02/dadams
2643 ;; icicle-completing-p: Cache t, not the keymap portion.
2644 ;; 2010/03/16 dadams
2645 ;; icicle-display-candidates-in-Completions, treating icicle-candidate-properties-alist:
2646 ;; For subsequent matches of join string, skip over the last join string (not 1 char).
2647 ;; icicle-candidate-short-help: Treat each property individually.
2648 ;; 2010/03/13 dadams
2649 ;; icicle-reversible-sort: Respect icicle-transform-before-sort-p.
2650 ;; 2010/03/10 dadams
2651 ;; icicle-show-help-in-mode-line:
2652 ;; Put this test first: If candidate is a string with a help property, use that.
2653 ;; Use get-file-buffer, not get-buffer, for a visited file.
2654 ;; 2010/03/09 dadams
2655 ;; icicle-reversible-sort: Added optional KEY arg. Set LIST to sort result and return it.
2656 ;; icicle-multi-sort: Set RESULT to funcall result.
2657 ;; 2010/03/03 dadams
2658 ;; Added: icicle-multi-sort, icicle-make-plain-predicate, icicle-alpha-p.
2659 ;; icicle-reversible-sort: Use icicle-sort-comparer and icicle-multi-sort.
2660 ;; Reset to unsorted if an error is raised.
2661 ;; Applied renamings: icicle-sort-function to icicle-sort-comparer,
2662 ;; icicle-sort-functions-alist to icicle-sort-orders-alist.
2663 ;; icicle-read-shell-command-completing: Removed extra binding for icicle-sort-function.
2664 ;; 2010/01/12 dadams
2665 ;; icicle-display-candidates-in-Completions: set-buffer -> with-current-buffer.
2666 ;; 2009/12/25 dadams
2667 ;; icicle-strip-ignored-files-and-sort:
2668 ;; Call completion-ignored-build-apply and icicle-update-ignored-extensions-regexp.
2669 ;; 2009/12/21 dadams
2670 ;; fset -> defalias.
2671 ;; 2009/12/07 dadams
2672 ;; Added: icicle-minibuffer-default-add-dired-shell-commands.
2673 ;; icicle-dired-read-shell-command: Instead of using minibuffer-default-add-shell-commands,
2674 ;; use icicle-minibuffer-default-add-dired-shell-commands.
2675 ;; icicle-read-shell-command-completing: Bind insert-default-directory to nil.
2676 ;; icicle-dir-prefix-wo-wildcards: Don't ever return nil - return "" if need be.
2677 ;; icicle-read-string:
2678 ;; Handle a consp default-value when user enters "": use the car. Thx to Sakuma Ryo.
2679 ;; 2009/12/03 dadams
2680 ;; icicle-completing-read:
2681 ;; Make sure we don't use a nil def value for init value. Thx to Sebastian Luque.
2682 ;; 2009/11/27 dadams
2683 ;; *-display-candidates-in-Completions, *-prefix-candidates, *-fuzzy-candidates:
2684 ;; Handle swank completions too.
2685 ;; 2009/11/25 dadams
2686 ;; icicle-insert-candidates: Handle vertical layout: icicle-completions-format.
2687 ;; 2009/11/03 dadams
2688 ;; icicle-color-completion-setup: Use hexrgb-defined-colors, not x-defined-colors.
2689 ;; No icicle-transform-function, since we use hexrgb.el.
2690 ;; 2009/10/25 dadams
2691 ;; Added: icicle-dir-prefix-wo-wildcards. Use in icicle-insert-cand-in-minibuffer.
2692 ;; icicle-save-or-restore-input: Remove test comparing last completion with current input.
2693 ;; icicle-abbreviate-or-expand-file-name: If arg is absolute, do not expand.
2694 ;; icicle-display-candidates-in-Completions, icicle-prefix-candidates,
2695 ;; icicle-not-basic-prefix-completion-p:
2696 ;; Updated for new completion methods. Use *-current-TAB-method, not old fuzzy flag.
2697 ;; 2009/10/24 dadams
2698 ;; icicle-unsorted-file-name-*-candidates, icicle-*-any-file-name-candidates-p:
2699 ;; Got rid of slashed-p.
2700 ;; icicle-unsorted-file-name-apropos-candidates:
2701 ;; Set icicle-common-match-string to nil if there are no candidates.
2702 ;; icicle-apropos-any-file-name-candidates-p:
2703 ;; When input is a dir, remove final /, so we don't non-match highlight the / (empty dir).
2704 ;; Bind case-fold-search, for apropos matching.
2705 ;; icicle-abbreviate-or-expand-file-name: Set DIR to nil if it's relative.
2706 ;; 2009/10/22 dadams
2707 ;; Added: icicle-file-name-directory.
2708 ;; icicle-completion-setup-function, icicle-display-candidates-in-Completions,
2709 ;; icicle-save-or-restore-input, icicle-file-name-directory-w-default,
2710 ;; icicle-historical-alphabetic-p:
2711 ;; Use icicle-file-name-directory, not file-name-directory.
2712 ;; 2009/10/17 dadams
2713 ;; icicle-completion-try-completion: Return RES.
2714 ;; 2009/10/12 dadams
2715 ;; icicle-unsorted-prefix-candidates, icicle-prefix-any-candidates-p:
2716 ;; Use length of INPUT, not length from point backward to field-beginning.
2717 ;; icicle-input-from-minibuffer: Added optional LEAVE-ENVVARS-P arg.
2718 ;; icicle-next-candidate, icicle-highlight-complete-input:
2719 ;; Call icicle-input-from-minibuffer with LEAVE-ENVVARS-P arg.
2720 ;; icicle-completion-all-completions:
2721 ;; If not basic completion (Emacs 23) and input ends in $, then append $ to cands also.
2722 ;; 2009/09/25 dadams
2723 ;; icicle-file-name-prefix-candidates: Use whole input, not just nondirectory.
2724 ;; Added: icicle-not-basic-prefix-completion-p. Use where appropriate.
2725 ;; 2009/09/19 dadams
2726 ;; icicle-unpropertize: Remove the internal text properties added by Icicles.
2727 ;; icicle-completing-read, icicle-read-file-name: Call icicle-unpropertize unconditionally.
2728 ;; 2009/09/12 dadams
2729 ;; icicle-kill-a-buffer: Bind enable-recursive-minibuffers, to confirm modified buffer.
2730 ;; 2009/09/05 dadams
2731 ;; icicle-msg-maybe-in-minibuffer: Do nothing if icicle-minibuffer-message-ok-p is nil.
2732 ;; 2009/08/19 dadams
2733 ;; icicle-candidate-short-help: Return (possibly propertized) STRING.
2734 ;; 2009/08/09 dadams
2735 ;; Added: icicle-insert-cand-in-minibuffer - factored out code from icicle-next-candidate.
2736 ;; eval-after-load "crm":
2737 ;; Test that icy-mode is available using featurep, not fboundp. Thx to Michael Heerdegen.
2738 ;; 2009/07/26 dadams
2739 ;; icicle-completing-read, icicle-read-file-name-1:
2740 ;; Bind minibuffer-history-variable to itself.
2741 ;; 2009/07/13 dadams
2742 ;; icicle-read-face-name (Emacs 20 version): Use copy-sequence on prompt, before add prop.
2743 ;; 2009/07/12 dadams
2744 ;; icicle-display-completion-list:
2745 ;; Use different protection (fboundp) for fix for latest Emacs 23 crap (base size in cdr).
2746 ;; 2009/07/11 dadams
2747 ;; icicle-next-candidate:
2748 ;; If icicle-regexp-quote-flag, regexp-quote before string-match for highlighting root.
2749 ;; icicle-place-cursor: If icicle-regexp-quote-flag, regexp-quote input to search for it.
2750 ;; 2009/07/02 dadams
2751 ;; icicle-displayable-cand-from-saved-set:
2752 ;; If icicle-readable-to-markers returns an atom, just use that.
2753 ;; 2009/06/17 dadams
2754 ;; icicle-fit-completions-window: Scale text size initially.
2755 ;; 2009/06/07 dadams
2756 ;; icicle-get-alist-candidate -> funcall icicle-get-alist-candidate-function.
2757 ;; icicle-mctize-all: If PRED is nil, so is NEWPRED (use and instead of when).
2758 ;; 2009/05/22 dadams
2759 ;; Require icicles-mac.el if load-library doesn't find it.
2760 ;; 2009/05/18 dadams
2761 ;; icicle-display-candidates-in-Completions: deactivate-mark in *Completions* after display.
2762 ;; 2009/05/17 dadams
2763 ;; icicle-next-candidate: Updated to reflect thumb-frm.el name changes.
2764 ;; 2009/05/17 dadams
2765 ;; Added: icicle-toggle-icicle-mode-twice.
2766 ;; In eval-after-load crm: Use icicle-toggle-icicle-mode-twice, not icy-mode calls.
2767 ;; 2009/05/15 dadams
2768 ;; icicle-unhighlight-lighter: Wrap redisplay in condition-case, like elsewhere.
2769 ;; 2009/05/11 dadams
2770 ;; Added: icicle-upcase. Use in place of upcase everywhere, to work around Emacs 20 bug.
2771 ;; Added: icicle-local-keys-first-p.
2772 ;; icicle-display-candidates-in-Completions:
2773 ;; Don't highlight historical candidate if in icicle-hist-cands-no-highlight.
2774 ;; 2009/05/09 dadams
2775 ;; icicle-input-from-minibuffer: Keep text properties when pick up input.
2776 ;; icicle-highlight-input-noncompletion(-rest): Use an overlay instead of text property.
2777 ;; icicle-show-help-in-mode-line: Fix special case for pseudo-key/cmd ..: go up to prefix.
2778 ;; 2009/05/07 dadams
2779 ;; icicle-display-candidates-in-Completions, in the code that hides common match:
2780 ;; Don't reset display property to nil.
2781 ;; Use icicle-common-match-string, not current input.
2782 ;; icicle-expanded-common-match-1:
2783 ;; If input doesn't match candidate, return nil. Throw nil, not input, everywhere.
2784 ;; *-unsorted(-file-name)-apropos-candidates, *-apropos-any(-file-name)-candidates-p:
2785 ;; Protect calls to icicle-apropos-complete-match-fn with condition-case, for Emacs 20.
2786 ;; icicle-place-cursor: Added optional arg.
2787 ;; 2009/05/05 dadams
2788 ;; icicle-alt-act-fn-for-type:
2789 ;; Bind completion-ignore-case, based on read-buffer-completion-ignore-case.
2790 ;; 2009/05/03 dadams
2791 ;; Use (fboundp 'minibuffer-default-add-completions), not (> emacs-major version 22).
2792 ;; 2009/05/01 dadams
2793 ;; Renamed: icicle-choose-action-for-type to icicle-alt-act-fn-for-type.
2794 ;; icicle-type-actions-alist: Rewrote. Handle both list of objs and single obj.
2795 ;; icicle-quote-file-name-part-of-cmd: Rewrote. Quote file name always, and only file name.
2796 ;; 2009/04/30 dadams
2797 ;; icicle-show-in-mode-line: Clear any message (e.g. Computing completion candidates...).
2798 ;; 2009/04/29 dadams
2799 ;; icicle-get-alist-candidate: If NO-ERROR-P is 'no-error-no-msg, just return nil (no msg).
2800 ;; icicle-choose-action-for-type: Use lax completion.
2801 ;; 2009/04/28 dadams
2802 ;; icicle-choose-action-for-type:
2803 ;; Moved here from icicles-mac.el, changed to a function, and locally bind
2804 ;; *-alt-action-fn to icicle-choose-action-for-type function.
2805 ;; For undefined TYPE, provide all functions as candidates.
2806 ;; Added eval-when-compile of load-library icicles-mac.
2807 ;; 2009/04/27 dadams
2808 ;; icicle-recompute-candidates:
2809 ;; Keep no-display completion mode, if that's current.
2810 ;; Set icicle-last-completion-command only if completion type, not user input, changed.
2811 ;; icicle-complete-again-update: Added icicle-prefix-complete-no-display to first case.
2812 ;; 2009/04/19 dadams
2813 ;; Use unless instead of or for fset's. (cosmetic)
2814 ;; icicle-completing-read, icicle-read-from-minibuffer, icicle-read-string:
2815 ;; Renamed history parameter to HIST-m@%=!$+&^*z, so C-h f output looks less strange.
2816 ;; 2009/04/18 dadams
2817 ;; Soft-require hexrgb.el unconditionally, not just when there is a window-system.
2818 ;; 2009/04/12 dadams
2819 ;; icicle-display-candidates-in-Completions: Added number of candidates to mode-line.
2820 ;; icicle-show-help-in-mode-line: Use face icicle-show-help-in-mode-line. Fix prefix keys.
2821 ;; 2009/04/11 dadams
2822 ;; icicle-candidate-short-help:
2823 ;; Do nothing if either icicle-help-in-mode-line-flag or tooltip-mode is nil.
2824 ;; icicle-show-help-in-mode-line:
2825 ;; If no symbol help, try string.
2826 ;; Handle lambdas, menu-function-# from easy-menu, and prefix keys.
2827 ;; icicle-make-color-candidate: Construct short help only if user will see it.
2828 ;; 2009/04/10 dadams
2829 ;; Added: icicle-candidate-short-help, icicle-color-completion-setup (from i*-read-color).
2830 ;; Moved here from icicle-cmds.el:
2831 ;; icicle-remove-color-duplicates, icicle-color-help, icicle-make-color-candidate.
2832 ;; icicle-make-color-candidate: Added short help, using icicle-candidate-short-help.
2833 ;; icicle-show-help-in-mode-line:
2834 ;; Treat :icicle-candidate-help text property on strings.
2835 ;; Use candidate, not cand, for stringp clause, and use icicle-transform-multi-completion.
2836 ;; Renamed: :icicle-candidate-help to icicle-mode-line-help.
2837 ;; 2009/04/08 dadams
2838 ;; icicle-show-help-in-mode-line: Treat absolute file names too.
2839 ;; 2009/04/07 dadams
2840 ;; icicle-show-help-in-mode-line: (bufferp (get-buffer...)...) -> (get-buffer...) Duh.
2841 ;; 2009/04/06 dadams
2842 ;; Added: icicle-show-help-in-mode-line - from code in icicle-next-candidate:
2843 ;; Added arg. Handle: faces, buffer names, file names, :icicle-candidate-help.
2844 ;; Added: icicle-help-line-(buffer|file).
2845 ;; icicle-next-candidate: Use icicle-show-help-in-mode-line.
2846 ;; 2009/04/05 dadams
2847 ;; Added: icicle-show-in-mode-line.
2848 ;; icicle-next-candidate: Use icicle-show-in-mode-line to show help in mode-line.
2849 ;; 2009/04/04 dadams
2850 ;; Added: icicle-buffer-smaller-p, icicle-major-mode-name-less-p,
2851 ;; icicle-mode-line-name-less-p, icicle-buffer-file/process-name-less-p.
2852 ;; 2009/04/03 dadams
2853 ;; icicle-read-from-minibuffer: Save filtered default val as icicle-filtered-default-value.
2854 ;; icicle-lisp-vanilla-completing-read: Use icicle-filtered-default-value, not DEF, at end.
2855 ;; 2009/03/29 dadams
2856 ;; icicle-read-shell-command: If non-nil initial-contents, punt to use original (old-*).
2857 ;; 2009/03/27 dadams
2858 ;; Don't fset minibuffer-default-add-completions unless > Emacs 22.
2859 ;; 2009/03/27 dadams
2860 ;; icicle-read-from-minibuffer: Use icicle-filter-wo-input on default-value (all values).
2861 ;; icicle-completing-read, icicle-read-file-name-1:
2862 ;; Use icicle-filter-wo-input on default value only to get init value.
2863 ;; Added: icicle-minibuffer-default-add-completions, icicle-first-N.
2864 ;; 2009/03/26 dadams
2865 ;; icicle-completing-read, icicle-read-file-name-1:
2866 ;; Filter default values using icicle-filter-wo-input.
2867 ;; icicle-filter-wo-input: Return the candidate, if it passes filtering.
2868 ;; 2009/03/16 dadams
2869 ;; Added: icicle-recentf-make-menu-items.
2870 ;; 2009/03/10 dadams
2871 ;; icicle-read-shell-command-completing: Applied renamings: icicle-guess-commands-in-path,
2872 ;; icicle-shell-command-candidates-cache, icicle-recompute-shell-command-candidates.
2873 ;; Moved to icicles-opt.el and renamed: icicle-shell-command-candidates.
2874 ;; 2009/03/08 dadams
2875 ;; Added: icicle-quote-file-name-part-of-cmd.
2876 ;; icicle-read-shell-command-completing:
2877 ;; Call icicle-quote-file-name-part-of-cmd to escape spaces etc. in file names.
2878 ;; Removed unneeded minibuffer-local-*-map let bindings.
2879 ;; icicle-dired-smart-shell-command:
2880 ;; Protected dired-default-directory with fboundp, for Emacs 20.
2881 ;; 2009/03/01 dadams
2882 ;; icicle-read-from-minibuffer:
2883 ;; No longer use icicle-complete-on-demand-cmd and on-demand-map.
2884 ;; 2009/02/28 dadams
2885 ;; Don't fset old-dired-smart-shell-command here - do after load Dired-X (icicles-mode.el).
2886 ;; Added for Emacs 20: definition of replace-regexp-in-string.
2887 ;; icicle-read-(number|string-completing):
2888 ;; No need for fboundp of replace-regexp-in-string, since provide it now for Emacs 20.
2889 ;; icicle-read-file-name: Treat directory candidates as special candidates.
2890 ;; icicle-read-shell-command-completing:
2891 ;; Candidate help depends on candidate type.
2892 ;; Use existing icicle-extra-candidates as its own default, not icicle-file-extras.
2893 ;; 2009/02/27 dadams
2894 ;; icicle-shell-command: Fixed typo: shell-command -> old-shell-command.
2895 ;; icicle-read-shell-command-completing: Append icicle-file-extras to i*-extra-candidates.
2896 ;; 2009/02/23 dadams
2897 ;; icicle-read-shell-command-completing:
2898 ;; Bind icicle-extra-candidates-dir-insert-p, not insert-default-directory, to nil.
2899 ;; icicle-next-candidate: Protect dir insertion with icicle-extra-candidates-dir-insert-p.
2900 ;; 2009/02/22 dadams
2901 ;; icicle-dired-read-shell-command: Use minibuffer-default-add-shell-commands if available.
2902 ;; 2009/02/20 dadams
2903 ;; icicle-read-from-minibuffer: Treat icicle-complete-on-demand-cmd - on-demand completion.
2904 ;; Added: icicle-dired-smart-shell-command, icicle-read-shell-command-completing,
2905 ;; icicle-dired-read-shell-command, icicle-extra-candidates-first-p,
2906 ;; icicle-require-match-p, icicle-shell-command(-on-region).
2907 ;; icicle-read-shell-command:
2908 ;; Call icicle-read-shell-command-completing. Define always, not just when mailcap.
2909 ;; icicle-dired-guess-shell-command: Just call icicle-read-shell-command-completing.
2910 ;; icicle-shell-command-candidates: Cache completions in icicle-shell-command-candidates.
2911 ;; icicle-highlight-input-noncompletion(-rest), icicle-highlight-lighter:
2912 ;; Use function icicle-require-match-p, not var.
2913 ;; icicle-completing-p: Test also whether parent map is a completion map. Always cache.
2914 ;; 2009/02/17 dadams
2915 ;; icicle-read-shell-command: Handle nil default-value. Thx to Kao Felix.
2916 ;; icicle-read-file-name: Append new proxy cands to any existing ones.
2917 ;; Don't assume that a proxy cand is a variable.
2918 ;; 2009/01/25 dadams
2919 ;; Added: *-dired-guess-shell-command, *-read-shell-command, *-shell-command-candidates.
2920 ;; 2009/01/17 dadams
2921 ;; icicle-display-candidates-in-Completions: Highlight Levenshtein (1) match.
2922 ;; icicle-unsorted-apropos(-file-name)-candidates, icicle-display-Completions,
2923 ;; icicle-apropos-any(-file-name)-candidates-p: Removed PCM.
2924 ;; Added: icicle-levenshtein(-strict|-one)-match, icicle-levenshtein-one-regexp,
2925 ;; icicle-substrings-of-length.
2926 ;; 2009/01/15 dadams
2927 ;; Lose "icicle-" for fboundp's: completion-all-completions, completion-try-completion.
2928 ;; 2009/01/14 dadams
2929 ;; Added: icicle-remove-dups-if-extras.
2930 ;; 2009/01/13 dadams
2931 ;; Added: icicle-completion-all-completions, icicle-completion-try-completion.
2932 ;; icicle-unsorted(-file-name)-(prefix|apropos)-candidates, icicle-display-Completions,
2933 ;; icicle-any-(prefix|apropos)(-file-name)-candidates-p:
2934 ;; Respect icicle-respect-completion-styles-p (Emacs 23).
2935 ;; icicle-unsorted-file-name-prefix-candidates: Removed matching "^"++(regexp-quote input).
2936 ;; icicle(-unsorted)(-file-name)-(prefix|apropos)-candidates:
2937 ;; Call icicle-transform-candidates for extra candidates and proxy candidates too.
2938 ;; icicle-display-candidates-in-Completions: Highlight extra candidates.
2939 ;; icicle-face-valid-attribute-values:
2940 ;; Use font-family-list instead of x-font-family-list, if available.
2941 ;; 2009/01/03 dadams
2942 ;; icicle-call-then-update-Completions:
2943 ;; If icicle-last-completion-command is nil, test icicle-current-completion-mode - don't
2944 ;; just call icicle-prefix-complete. E.g. icicle-search shouldn't end with a single
2945 ;; prefix match.
2946 ;; 2008/12/25 dadams
2947 ;; Added: icicle-save-raw-input (factored out from icicle-save-or-restore-input).
2948 ;; icicle-save-or-restore-input:
2949 ;; Change test whether last-command is cycling cmd to add also not being completing cmd.
2950 ;; Use icicle-completing-p instead of testing this-command for being a cycling cmd.
2951 ;; Use icicle-save-raw-input.
2952 ;; icicle-next-candidate: Set icicle-cycling-p (new var) to t.
2953 ;; 2008/12/20 dadams
2954 ;; icicle-save-or-restore-input: Don't restore last input if this is a completing command.
2955 ;; 2008/12/07 dadams
2956 ;; icicle-completing-read, icicle-read-file-name-1:
2957 ;; Removed icicle-prompt. Don't add completion prompt prefix, except for Emacs 20.
2958 ;; 2008/12/06 dadams
2959 ;; icicle-call-then-update-Completions:
2960 ;; To update, call icicle-last-completion-command, not icicle-(apropos|prefix)-complete.
2961 ;; 2008/12/02 dadams
2962 ;; icicle-unsorted(-file-name)-apropos-candidates:
2963 ;; Call icicle-filter-wo-input before filtering with user input (as the doc string says).
2964 ;; 2008/11/28 dadams
2965 ;; icicle-recompute-candidates, icicle-save-or-restore-input:
2966 ;; Test property icicle-(prefix|apropos)-completing-command, not eq cmds.
2967 ;; 2008/11/23 dadams
2968 ;; icicle-read-file-name:
2969 ;; Don't initialize icicle-proxy-candidates unless icicle-add-proxy-candidates-flag.
2970 ;; Don't add + to completion indicator if Emacs 23.
2971 ;; 2008/11/22 dadams
2972 ;; icicle-completing-read:
2973 ;; Bind icicle-fancy-cands-internal-p. Do not call icicle-mctize-all unless fancy cands.
2974 ;; icicle-mctized-full-candidate:
2975 ;; No-op unless icicle-fancy-cands-internal-p or icicle-whole-candidate-as-text-prop-p.
2976 ;; icicle-read-(number|char-exclusive|string-completing|face-name):
2977 ;; Put icicle-fancy-candidates property on prompt if proxy candidates.
2978 ;; icicle-display-candidates-in-Completions:
2979 ;; Don't transform candidates unless icicle-fancy-cands-internal-p.
2980 ;; 2008/11/18 dadams
2981 ;; icicle-display-candidates-in-Completions:
2982 ;; Add icicle-special-candidate property as text property to candidates in
2983 ;; icicle-completion-candidates, instead of just to display candidate, so returned also.
2984 ;; Added support for icicle-display-string property.
2985 ;; For these properties: look up symbol first in minibuffer-completion-table if obarray.
2986 ;; 2008/11/14 dadams
2987 ;; icicle-display-candidates-in-Completions:
2988 ;; Respect icicle-hide-common-match-in-Completions-flag.
2989 ;; 2008/11/10 dadams
2990 ;; icicle(-unsorted)(-file-name)-(apropos|prefix)-candidates:
2991 ;; Moved special and proxy candidates outside match filtering,
2992 ;; reversing a change made on 2007/11/18. Dunno why that change was made.
2993 ;; But filter special and proxy candidates using the input.
2994 ;; 2008/11/09 dadams
2995 ;; Added: icicle-join-nth-parts, icicle-display-cand-from-full-cand.
2996 ;; icicle-transform-multi-completion: Use icicle-join-nth-parts.
2997 ;; icicle-transform-multi-completion: Don't test icicle-list-join-string (always non-nil).
2998 ;; icicle-first-matching-candidate:
2999 ;; Fix: set res properly, not to the tested value. Thx to Hannes Janetzek.
3000 ;; 2008/11/07 dadams
3001 ;; icicle-color-name-w-bg: Return input if hexrgb.el is not loaded. Thx to Fabrice Knevez.
3002 ;; 2008/11/04 dadams
3003 ;; icicle-read-face-name: Soft-require eyedropper.el or palette.el.
3004 ;; 2008/11/03 dadams
3005 ;; icicle-expanded-common-match: Bug fix for Emacs 20: If error matching, just return INPUT.
3006 ;; icicle-highlight-input-noncompletion: Erase any message first before highlighting.
3007 ;; 2008/11/02 dadams
3008 ;; icicle-display-candidates-in-Completions: For icicle-candidate-properties-alist, use
3009 ;; narrowed buffer content, not i-current-completion-in-Completions.
3010 ;; 2008/10/24 dadams
3011 ;; icicle-first-matching-candidate:
3012 ;; Use regexp-quote on CAND.
3013 ;; Add icicle-list-end-string to each entry in CANDIDATES.
3014 ;; Iteration, not recursion.
3015 ;; icicle-get-alist-candidate: Added optional arg NO-ERROR-P.
3016 ;; 2008/10/18 dadams
3017 ;; Replaced customize-save-variable by funcall icicle-customize-save-variable-function.
3018 ;; 2008/10/14 dadams
3019 ;; Applied renaming of icicle-completion-help to icicle-minibuffer-help.
3020 ;; 2008/10/06 dadams
3021 ;; Don't toggle icy-mode after loading crm.el unless icy-mode is defined (!).
3022 ;; icicle-ms-windows-NET-USE: If hash tables not available, just run the NET USE process.
3023 ;; 2008/10/04 dadams
3024 ;; Substitute Icicles version of completing-read-multiple and its maps. Thx to Per Nordlow.
3025 ;; Added: (icicle|old)-completing-read-multiple, icicle-define-crm-completion-map,
3026 ;; (icicle|old)-crm-local-(completion|must-match)-map.
3027 ;; icicle-display-completion-list: Protect against Emacs 23 nonsense with base-size in cdr.
3028 ;; 2008/09/30 dadams
3029 ;; Added: icicle-ms-windows-NET-USE. Thx to Thomas Lim.
3030 ;; icicle-file-remote-p: Use icicle-ms-windows-NET-USE.
3031 ;; icicle-highlight-input-noncompletion: Return file-local-p if test shows it's local.
3032 ;; icicle-call-then-update-Completions:
3033 ;; Treat also known file-local-p return from icicle-highlight-input-noncompletion.
3034 ;; Renamed icicle-isearch-complete-1 to icicle-isearch-complete-past-string and moved it
3035 ;; here from icicles-mcmd.el.
3036 ;; icicle-isearch-complete-past-string: Always use regexp-search-ring. Changed prompt.
3037 ;; 2008/09/27 dadams
3038 ;; icicle-highlight-input-noncompletion: Fixed typo: implicit-remote -> implicit.
3039 ;; 2008/09/20 dadams
3040 ;; icicle-(apropos|prefix)-candidates, icicle-maybe-sort-and-strip-candidates:
3041 ;; Strip ignored files if icicle-abs-file-candidates.
3042 ;; 2008/09/19 dadams
3043 ;; icicle-get-candidates-from-saved-set: Added optional arg DONT-EXPAND-FILESETS-P.
3044 ;; Use icicle-kill-a-buffer, not kill-buffer.
3045 ;; Moved icicle-kill-a-buffer here from icicles-cmd.el.
3046 ;; Added: icicle-unpropertize.
3047 ;; icicle-completing-read, icicle-read-file-name: Use icicle-unpropertize.
3048 ;; 2008/09/16 dadams
3049 ;; filesets-get-filelist: Fixed :tree so it includes files in subdirs.
3050 ;; Added: icicle-filesets-files-under.
3051 ;; 2008/09/15 dadams
3052 ;; Added: icicle-saved-fileset-p, icicle-displayable-cand-from-saved-set.
3053 ;; icicle-get-candidates-from-saved-set:
3054 ;; Rewrote code to convert saved candidates to displayable candidates.
3055 ;; Use icicle-displayable-cand-from-*, icicle-saved-fileset-p. Require filesets.el.
3056 ;; Moved filesets-get-fileset-from-name into and of first cond clause.
3057 ;; Wrapped defun of filesets-get-filelist in eval-after-load.
3058 ;; 2008/09/13 dadams
3059 ;; Added: icicle-get-candidates-from-saved-set (factored from code in
3060 ;; icicle-retrieve-candidates-from-set), filesets-get-filelist (redefined),
3061 ;; icicle-explicit-saved-completion-candidates.
3062 ;; Moved here from icicles-mcmd.el: icicle-readable-to-markers.
3063 ;; 2008/09/04 dadams
3064 ;; icicle-read-file-name-1: Removed unused code for non icicle-mode case.
3065 ;; 2008/09/03 dadams
3066 ;; Removed: icicle-(un)highlight-crosshairs, icicle-unhighlight-crosshairs+cleanup.
3067 ;; 2008/09/01 dadams
3068 ;; Added: icicle-(un)highlight-crosshairs, icicle-unhighlight-crosshairs+cleanup.
3069 ;; 2008/08/29 dadams
3070 ;; icicle-mctize-all:
3071 ;; Do it for all list collections (new icicle-mctized-full-candidate).
3072 ;; Adjust PRED to use cdr only for conses with string cars.
3073 ;; icicle-mctized-full-candidate:
3074 ;; Treat all kinds of list entries: strings, symbols, and conses with symbol args, etc.
3075 ;; 2008/08/25 dadams
3076 ;; icicle-display-candidates-in-Completions: Do nothing if NO-DISPLAY-P is 'no-msg.
3077 ;; 2008/08/24 dadams
3078 ;; icicle-filter-wo-input: Filter out empty-string candidates: "".
3079 ;; Added: icicle-minibuf-input-sans-dir.
3080 ;; Renamed: icicle-minibuffer-contents-from-minibuffer to icicle-input-from-minibuffer,
3081 ;; icicle-minibuffer-contents to icicle-minibuf-input.
3082 ;; icicle-display-candidates-in-Completions, icicle-next-candidate, icicle-place-cursor:
3083 ;; Use icicle-minibuf-input-sans-dir.
3084 ;; 2008/08/23 dadams
3085 ;; icicle-display-candidates-in-Completions:
3086 ;; Wrap preliminary display of *Completions* in save-selected-window.
3087 ;; 2008/08/22 dadams
3088 ;; icicle-display-candidates-in-Completions:
3089 ;; Display *Completions* before calling with-output-to-temp-buffer and filling it.
3090 ;; This is so we can know the window width, to determine the correct formatting.
3091 ;; icicle-insert-candidates:
3092 ;; Don't use lru window or *-Completions-*-default-width (removed). Failsafe width 40.
3093 ;; 2008/08/21 dadams
3094 ;; icicle-completing-read:
3095 ;; Bind minibuffer-completing-file-name to nil if not completing a file name.
3096 ;; Removed setq of minibuffer-completion-table. Already do it in *-lisp-vanilla-*.
3097 ;; 2008/08/20 dadams
3098 ;; icicle-insert-candidates:
3099 ;; Turn off mouse-face after insert candidate.
3100 ;; Fixup whitespace correctly: Don't remove whitespace that is part of a candidate.
3101 ;; Added: icicle-ding.
3102 ;; icicle-read-number: Replaced ding by icicle-ding.
3103 ;; 2008/08/18 dadams
3104 ;; Moved here from icicles-cmd.el (and renamed from *-less-p): icicle-cdr-lessp.
3105 ;; Added: icicle-delete-count, icicle-mctize-all, icicle-mctized-(display|full)-candidate,
3106 ;; icicle-part-1-cdr-lessp.
3107 ;; Renamed: icicle-delete-if(-not) to icicle-remove-if(-not),
3108 ;; icicle-put-alist-candidate to icicle-put-whole-cand-prop,
3109 ;; icicle-update-completions to icicle-complete-again-update.
3110 ;; icicle-completing-read: Factored out transformation to MCT into new fn icicle-mctize-all.
3111 ;; 2008/08/08 dadams
3112 ;; icicle-completing-read: Updated doc string for Emacs 23.
3113 ;; 2008/08/03 dadams
3114 ;; icicle-completing-read: Convert the predicate to apply to just the cdr (= original cons).
3115 ;; icicle-save-or-restore-input: Don't save empty string ("") to C-l history.
3116 ;; 2008/07/27 dadams
3117 ;; Added: icicle-2nd-part-string-less-p.
3118 ;; Moved here from icicles-mcmd.el: icicle-transform-multi-completion.
3119 ;; 2008/07/19 dadams
3120 ;; icicle-choose-completion-string: Don't move to point-max unless in minibuffer.
3121 ;; 2008/06/24 dadams
3122 ;; Make *-must-match-filename-map an alias for *-filename-completion-map. Use the latter.
3123 ;; 2008/06/22 dadams
3124 ;; icicle-completing-read, icicle-read-file-name:
3125 ;; Remove text properties from result (only) if icicle-unpropertize-*-flag.
3126 ;; 2008/06/21 dadams
3127 ;; icicle-read-file-name: Remove text properties from result file name.
3128 ;; 2008/06/01 dadams
3129 ;; icicle-lisp-vanilla-completing-read: Typo: minibuffer-local-must-match-filename-map.
3130 ;; Put sort predicate properties on some sort predicate symbols, e.g. icicle-dirs-last-p.
3131 ;; 2008/05/22 dadams
3132 ;; icicle-read-file-name: Bind minibuffer-completing-file-name to t.
3133 ;; icicle-read-file-name-1: Do not prepend ". " if Emacs 23+, since it uses completing-read.
3134 ;; icicle-(un)highlight-lighter: Reflect case-sensitivity in lighter.
3135 ;; 2008/05/11 dadams
3136 ;; icicle-unsorted(-file-name)-apropos-candidates:
3137 ;; Pass input to all-completions only if not icicle-apropos-complete-match-fn.
3138 ;; 2008/05/11 dadams
3139 ;; Renamed icicle-fit-Completions-window to icicle-fit-completions-window.
3140 ;; icicle-fit-completions-window: Use current window - not necessarily for *Completions*.
3141 ;; 2008/05/06 dadams
3142 ;; icicle-highlight-lighter: Wrap redisplay in condition-case to ignore any errors.
3143 ;; 2008/05/05 dadams
3144 ;; icicle-file-name-input-p: Redefined to just use minibuffer-completing-file-name.
3145 ;; 2008/05/01 dadams
3146 ;; icicle-lisp-vanilla-completing-read, icicle-lisp-vanilla-completing-read,
3147 ;; icicle-read-from-minibuffer, icicle-read-number, icicle-read-string-completing:
3148 ;; Adapted to Emacs 23 change to allow list of strings for default value.
3149 ;; 2008/04/25 dadams
3150 ;; icicle-call-then-update-Completions:
3151 ;; nil icicle-test-for-remote-files-flag means don't test for remote file name.
3152 ;; icicle-highlight-input-noncompletion:
3153 ;; Correction: implicit, not always, in combination with not incremental completion.
3154 ;; Added check for icicle-completing-command if value is explicit*.
3155 ;; Added check for icicle-test-for-remote-files-flag if *-strict with lax completion.
3156 ;; Protect call to icicle-file-remote-p with check of icicle-test-for-remote-files-flag.
3157 ;; 2008/04/18 dadams
3158 ;; Renamed icicle-init-value-flag to icicle-default-value.
3159 ;; icicle-read-from-minibuffer:
3160 ;; If icicle-default-value is t, add to prompt. Thx to Dominique Quatrevaux.
3161 ;; icicle-completing-read, icicle-read-file-name-1, icicle-read-from-minibuffer:
3162 ;; Change icicle-default-value test to rule out t also.
3163 ;; icicle-completion-setup-function:
3164 ;; Don't call file-name-directory unless minibuffer-completing-file-name.
3165 ;; 2008/04/01 dadams
3166 ;; icicle-unsorted(-file-name)-apropos-candidates:
3167 ;; If icicle-unsorted-apropos-candidates pass input to all-completions.
3168 ;; icicle-expanded-common-match-1:
3169 ;; Use icicle-apropos-complete-match-fn throughout, but return nil if that is nil.
3170 ;; icicle-display-candidates-in-Completions:
3171 ;; If icicle-apropos-complete-match-fn is nil, don't try to highlight input match.
3172 ;; 2008/03/31 dadams
3173 ;; icicle-display-candidates-in-Completions:
3174 ;; Allow for no completion type, for No completions msg.
3175 ;; 2008/03/30 dadams
3176 ;; icicle-read-file-name-1:
3177 ;; Bind read-file-name-function to nil.
3178 ;; Funcall icicle-old-read-file-name-fn instead of old-read-file-name.
3179 ;; icicle-(un)highlight-lighter: Respect icicle-highlight-lighter-flag.
3180 ;; Top-level: Moved fset for old-read-file-name to icicles-mode.el and renamed it.
3181 ;; 2008/03/29 dadams
3182 ;; icicle-completing-read, icicle-read-file-name-1:
3183 ;; Combine new faces for single-character minibuffer completion status indicator.
3184 ;; Call icicle-highlight-lighter after establishing require-match, not at beginning.
3185 ;; No longer use completing-prompt-prefix(-symb).
3186 ;; No longer use icicle-reminder-prompt-flag (no longer add help to prompt).
3187 ;; Removed: icicle-control-reminder-prompt.
3188 ;; icicle-highlight-lighter:
3189 ;; Combine faces for highlighting. Indicate multi-command and strict/lax completion.
3190 ;; icicle-unhighlight-lighter: Add + for multi-command. Don't bother to propertize strg.
3191 ;; icicle-file-remote-p: If name matches Windows drive letter, don't try other remote tests.
3192 ;; 2008/03/11 dadams
3193 ;; icicle-completing-read-history:
3194 ;; Convert cons list elements to strings. Lets you use M-o with command-history.
3195 ;; 2008/03/09 dadams
3196 ;; Added: icicle-(un)highlight-lighter.
3197 ;; icicle-completing-read, icicle-read-file-name: Call icicle-highlight-lighter.
3198 ;; 2008/03/08 dadams
3199 ;; icicle-completing-p: Replaced where-is-internal test with completion keymaps test.
3200 ;; 2008/03/05 dadams
3201 ;; icicle-completing-read:
3202 ;; Copy TABLE etc. only if candidates are strings. Thx to Damon Permezel for bug report.
3203 ;; icicle-files-within: Skip inaccessible directories and unreadable files. Thx to Damon.
3204 ;; 2008/02/28 dadams
3205 ;; icicle-completing-read: Fixed test for multicompletion: List of strings, not just list.
3206 ;; 2008/02/24 dadams
3207 ;; Added: icicle-scatter(-match).
3208 ;; icicle-display-*-in-Completions: Highlighting of input match can use icicle-scatter.
3209 ;; Use icicle-apropos-complete-match-fn in message.
3210 ;; icicle-expanded-common-match-1: Use icicle-apropos-complete-match-fn, not string-match.
3211 ;; 2008/02/23 dadams
3212 ;; icicle-completing-read:
3213 ;; Change initial-input to a cons with 0 position if icicle-init-value-flag is *-start.
3214 ;; icicle-lisp-vanilla-completing-read: Set position to end of initial-input, by default.
3215 ;; Convert zero-based position to one-based.
3216 ;; 2008/02/22 dadams
3217 ;; icicle-completing-read:
3218 ;; For all alist candidates (not just multi-completion):
3219 ;; Copy the car and replace the cdr with the whole candidate.
3220 ;; icicle-get-alist-candidate: Get and return just whole icicle-whole-candidate property.
3221 ;; icicle-completion-setup-function (for Emacs 20):
3222 ;; minibuffer-prompt-end -> icicle-minibuffer-prompt-end.
3223 ;; 2008/02/16 dadams
3224 ;; icicle-get-alist-candidate:
3225 ;; Reconstitute whole candidate, by consing string onto data, which is only the cdr now.
3226 ;; icicle-completing-read: Use icicle-put-alist-candidate to put candidate data onto string.
3227 ;; Added: icicle-put-alist-candidate. Put only the cdr (data), not whole, onto the string.
3228 ;; 2008/02/14 dadams
3229 ;; Added: icicle-substring-no-properties.
3230 ;; 2008/02/11 dadams
3231 ;; icicle-read-string-completing: Moved save-match-data so replace-match can use match data.
3232 ;; 2008/02/06 dadams
3233 ;; icicle-highlight-input-noncompletion:
3234 ;; Wait icicle-highlight-input-completion-failure-delay before highlighting.
3235 ;; Don't highlight if past icicle-highlight-input-completion-failure-threshold.
3236 ;; Combined input-pending test with highlighting test, and moved it before file-name test.
3237 ;; Conditionalized face removal.
3238 ;; Return nil when input within delay preempts highlighting.
3239 ;; icicle-highlight-initial-whitespace: Removed only vestigial whitespace highlighting.
3240 ;; icicle-read-number: Moved save-match-data outside cond.
3241 ;; 2008/02/03 dadams
3242 ;; icicle-choose-completion-string:
3243 ;; Go to point-max before insert choice. Respect icicle-dir-candidate-can-exit-p.
3244 ;; icicle-completion-setup-function:
3245 ;; Set default dir only if this is a completion cmd or not *-comp-base-is-default-dir-p.
3246 ;; If icicle-comp-base-is-default-dir-p, set completion-base-size to default-dir length.
3247 ;; icicle-read-file-name: Bind ffap vars to prevent slowing down ffap-guesser.
3248 ;; 2008/01/29 dadams
3249 ;; Added: icicle-(apropos|prefix)-any(-file-name)-candidates-p,
3250 ;; icicle-subst-envvar-in-file-name, icicle-highlight-input-noncompletion-rest,
3251 ;; icicle-any-candidates-p, icicle-file-remote-p.
3252 ;; icicle-minibuffer-contents-from-minibuffer: Use icicle-subst-envvar-in-file-name.
3253 ;; icicle-call-then-update-Completions:
3254 ;; Reinitialize icicle-input-fail-pos to nil.
3255 ;; If we know input is a remote file name from failure highlighting, skip remote test.
3256 ;; Use icicle-file-remote-p, not file-remote-p.
3257 ;; icicle-highlight-input-noncompletion: Rewrote.
3258 ;; Takes no args now.
3259 ;; Do nothing if input pending or input is empty.
3260 ;; Use icicle-file-remote-p, not file-remote-p. Return value indicating remote file name.
3261 ;; Use new values of icicle-highlight-input-completion-failure, including always.
3262 ;; First check through last two chars, then icicle-highlight-input-noncompletion-rest.
3263 ;; icicle-highlight-input-noncompletion-rest (was in icicle-highlight-input-noncompletion):
3264 ;; No longer use icicle-max-chars-noncompletion-highlight.
3265 ;; Use icicle-any-candidates-p, so don't compute candidate lists.
3266 ;; 2008/01/15 dadams
3267 ;; icicle-command-abbrev-save: Added condition-case with message in case of error.
3268 ;; icicle-control-reminder-prompt: Added message.
3269 ;; 2008/01/13 dadams
3270 ;; icicle-read-face-name: Use icicle-transform-multi-completion.
3271 ;; icicle-next-candidate: Do not use icicle-transform-multi-completion.
3272 ;; icicle-next-candidate, icicle-save-or-restore-input: Do not treat handle-switch-frame.
3273 ;; 2008/01/08 dadams
3274 ;; Renamed icicle-expanded-common-match to icicle-expanded-common-match-1.
3275 ;; New icicle-expanded-common-match uses longest of two tries.
3276 ;; icicle-expanded-common-match-1, first loop: Match ecm only up to orig-match-end.
3277 ;; icicle-read-file-name: Use icicle-var-is-of-type-p for proxy candidates.
3278 ;; icicle-choose-completion-string, icicle-strip-ignored-files-and-sort,
3279 ;; icicle-filter-wo-input, icicle-first-matching-candidate,
3280 ;; icicle-(proxy-candidate|prefix-keys)-first-p, icicle-var-(matches|inherits)-type-p,
3281 ;; icicle-read-(number|face-name|file-name|string-completing),
3282 ;; icicle-unsorted(-file-name)-prefix-candidates, icicle-expanded-common-match-1,
3283 ;; icicle-next-candidate, icicle-remove-dots: Wrap string-match in save-match-data.
3284 ;; icicle-display-candidates-in-Completions: Moved save-match-data locations.
3285 ;; 2008/01/05 dadams
3286 ;; icicle-next-candidate: Don't refresh Completions if last-command = handle-switch-frame.
3287 ;; 2008/01/04 dadams
3288 ;; icicle-insert-candidates: Put property icicle-keep-newline on final \n of candidate.
3289 ;; 2007/12/31 dadams
3290 ;; icicle-choose-completion-string: In minibuffer, delete all input before inserting.
3291 ;; 2007/12/27 dadams
3292 ;; icicle-unsorted(-file-name)-apropos-candidates:
3293 ;; Use null *-apropos-*-match-fn, not function-valued TABLE to inhibit input match.
3294 ;; 2007/12/26 dadams
3295 ;; icicle-next-candidate: Raise *Completions* frame at the end.
3296 ;; 2007/12/24 dadams
3297 ;; icicle-unsorted(-file-name)-apropos-candidates:
3298 ;; Don't match input regexp if minibuffer-completion-table is a function.
3299 ;; icicle-var-inherits-type-p:
3300 ;; Recheck var-type match after set var-type to its car.
3301 ;; Handle string (regexp) TYPES elements.
3302 ;; icicle-value-satisfies-type-p: Skip type check for string type (regexp).
3303 ;; icicle-var-is-of-type-p: Doc string. Use icicle-var-matches-type-p.
3304 ;; Added: icicle-var-matches-type-p, icicle-custom-type.
3305 ;; 2007/12/23 dadams
3306 ;; icicle-var-is-of-type-p:
3307 ;; Added MODE arg. Use icicle-var-inherits-type-p, icicle-var-val-satisfies-type-p.
3308 ;; Redefined as MODE choice, not just a simple or. Treat more cases.
3309 ;; Added: icicle-var-inherits-type-p, icicle-var-val-satisfies-type-p,
3310 ;; icicle-value-satisfies-type-p.
3311 ;; icicle-read-(number|char-exclusive|string-completing|face-name):
3312 ;; Don't fill icicle-proxy-candidates unless icicle-add-proxy-candidates-flag.
3313 ;; Corrected doc string to refer to icicle-add-proxy-candidates-flag.
3314 ;; 2007/12/22 dadams
3315 ;; icicle-var-is-of-type-p:
3316 ;; Check supertypes also. Use both :validate and :match.
3317 ;; Wrap type check in condition-case. Use widget-put instead of plist-put.
3318 ;; Added soft require of wid-edit+.el.
3319 ;; 2007/12/21 dadams
3320 ;; icicle-var-is-of-type-p: Use :validate, not :match, for the test.
3321 ;; 2007/12/19 dadams
3322 ;; icicle-display-candidates-in-Completions:
3323 ;; Ensure icicle-last-input is non-nil in (file-name-directory icicle-last-input).
3324 ;; 2007/12/14 dadams
3325 ;; icicle-fit-Completions-window:
3326 ;; Don't try to get a property if it's not a symbol. Thx to Mike Mattie.
3327 ;; 2007/12/11 dadams
3328 ;; Added: icicle-read-char-exclusive.
3329 ;; icicle-read-face-name: Include face-name vars as proxy candidates.
3330 ;; 2007/12/10 dadams
3331 ;; icicle-highlight-input-noncompletion: Use face icicle-input-completion-fail-lax also.
3332 ;; 2007/12/09 dadams
3333 ;; icicle-highlight-input-noncompletion: Respect icicle-max-chars-noncompletion-highlight.
3334 ;; 2007/12/08 dadams
3335 ;; icicle-read-file-name:
3336 ;; Include file-name variables as proxy candidates. Reset icicle-proxy-candidates at end.
3337 ;; icicle-read-number: float type is not defined before Emacs 22.
3338 ;; icicle-read-string-completing:
3339 ;; Set default to "" if nil, but only after completing-read.
3340 ;; Set car of hist to var value, replacing var name. Treat consp hist also.
3341 ;; 2007/12/03 dadams
3342 ;; Renamed icicle-longest-common-match to icicle-expanded-common-match.
3343 ;; 2007/12/02 dadams
3344 ;; Added: icicle-var-is-of-type-p.
3345 ;; icicle-read-(number|string-completing):
3346 ;; Use icicle-var-is-of-type-p, to handle compatible types.
3347 ;; 2007/11/30 dadams
3348 ;; icicle-read-file-name, icicle-read-(number|string-completing),
3349 ;; icicle-display-candidates-in-Completions, icicle-proxy-candidate-first-p:
3350 ;; Use only membership in icicle-proxy-candidates, not icicle-proxy-candidate property.
3351 ;; icicle-choose-completion-string:
3352 ;; Condition for exit: could be no minibuffer-completion-table if extra or proxy cands.
3353 ;; 2007/11/29 dadams
3354 ;; icicle-read-(number|string-completing):
3355 ;; Treat icicle-add-proxy-candidates-flag and icicle-proxy-candidates.
3356 ;; icicle-display-candidates-in-Completions: Treat empty icicle-completion-candidates.
3357 ;; 2007/11/27 dadams
3358 ;; Added: icicle-read-number, icicle-read-string-completing.
3359 ;; icicle-read-file-name: Remove icicle-proxy-candidate property in unwind-protect.
3360 ;; 2007/11/25 dadams
3361 ;; Added: icicle-command-abbrev(-save|-used-more-p).
3362 ;; 2007/11/24 dadams
3363 ;; icicle-longest-common-match, first loop: string-match -> not string-match.
3364 ;; len-first -> length of lcm.
3365 ;; Added: icicle-proxy-candidate-first-p.
3366 ;; 2007/11/18 dadams
3367 ;; icicle(-unsorted)(-file-name)-(apropos|prefix)-candidates:
3368 ;; Include also icicle-proxy-candidates.
3369 ;; Move special and proxy candidates inside match filtering.
3370 ;; icicle-display-candidates-in-Completions:
3371 ;; Don't expand directory when highlighting special candidate.
3372 ;; 2007/11/02 dadams
3373 ;; icicle-longest-common-match:
3374 ;; First loop: (1) match against at most len-first, (2) put the match into the and test.
3375 ;; 2007/10/28 dadams
3376 ;; icicle-display-candidates-in-Completions:
3377 ;; Always highlight longest common match for prefix completion.
3378 ;; icicle-unsorted(-file-name)-prefix-candidates, icicle-fuzzy-candidates:
3379 ;; Set icicle-common-match-string, regardless of icicle-expand-input-*-flag.
3380 ;; icicle-save-or-restore-input:
3381 ;; Update to lcm even if no input change, if completion mode changed.
3382 ;; Update to lcm if prefix completing, even if icicle-expand-input-*-flag is nil.
3383 ;; Save input for C-l even if this command is an icicle-completing-command (?).
3384 ;; Don't reset raw input to "" if cycling, so keep highlight in *Completions*.
3385 ;; icicle-longest-common-match: Test prefix through embedded input each time.
3386 ;; 2007/10/26 dadams
3387 ;; icicle-read-face-name (Emacs 22): Fix the treatment of default value.
3388 ;; 2007/10/22 dadams
3389 ;; icicle-display-candidates-in-Completions:
3390 ;; Highlight only regexp matching part of special candidates.
3391 ;; Highlight special cands regardless of icicle-highlight-historical-candidates-flag.
3392 ;; 2007/10/02 dadams
3393 ;; icicle-next-candidate:
3394 ;; Apply abbreviate-file-name to file-name input. Thx to Joonhwan Lee.
3395 ;; 2007/09/29 dadams
3396 ;; Added: icicle-fuzzy-candidates.
3397 ;; icicle-prefix-candidates: Treat fuzzy completion.
3398 ;; icicle-display-candidates-in-Completions:
3399 ;; For prefix completion, highlight literal input match in Completions.
3400 ;; 2007/09/26 dadams
3401 ;; icicle-read-from-minibuffer: Removed keep-all arg - see also 2006/06/01.
3402 ;; 2007/09/22 dadamms
3403 ;; icicle-completing-read, icicle-read-from-minibuffer:
3404 ;; Ensure that init arg is string when get it from default arg via icicle-init-*-flag.
3405 ;; 2007/09/18 dadams
3406 ;; icicle-call-then-update-Completions:
3407 ;; Test icicle-current-completion-mode, not icicle-last-completion-command.
3408 ;; 2007/09/16 dadams
3409 ;; icicle-call-then-update-Completions:
3410 ;; Don't complete if file-remote-p.
3411 ;; Highlight completion failure only if input > icicle-*-display-min-input-chars.
3412 ;; icicle-highlight-input-noncompletion:
3413 ;; Don't highlight unless also icicle-incremental-completion-flag.
3414 ;; Call icicle-file-name-*-candidates for file-name input.
3415 ;; Don't highlight if file-remote-p and reading file name. Instead, remove highlighting.
3416 ;; 2007/09/14 dadams
3417 ;; icicle-highlight-input-noncompletion, icicle-update-completions,
3418 ;; icicle-recompute-candidates:
3419 ;; Wrapped condition-case around candidates computation.
3420 ;; 2007/09/02 dadams
3421 ;; icicle-display-candidates-in-Completions:
3422 ;; Restore point and window point to start of candidates in *Completions*.
3423 ;; 2007/08/21 dadams
3424 ;; icicle-highlight-input-noncompletion: Remove any vestigial highlighting on matched part.
3425 ;; 2007/08/19 dadams
3426 ;; Added: icicle-lisp-vanilla-completing-read, icicle-highlight-input-noncompletion.
3427 ;; icicle-completing-read:
3428 ;; Allow reading and returning string candidates with properties:
3429 ;; bind minibuffer-allow-text-properties.
3430 ;; Put whole candidate on string as text property.
3431 ;; Use icicle-lisp-vanilla-completing-read, not old-completing-read.
3432 ;; icicle-call-then-update-Completions: Call icicle-highlight-input-noncompletion.
3433 ;; icicle-get-alist-candidate:
3434 ;; If icicle-whole-candidate-as-text-prop-p, try to get full candidate from text prop.
3435 ;; 2007/08/16 dadams
3436 ;; icicle-insert-candidates: Don't reset text props if endpos > point. Thx to Chris Hecker.
3437 ;; 2007/08/14 dadams
3438 ;; icicle-increment-cand-nb+signal-end: Removed audible bell - use visible bell only.
3439 ;; 2007/07/22 dadams
3440 ;; icicle-read-face-name (Emacs 22 version):
3441 ;; Revert multiple branch to not use icicle-make-face-candidate.
3442 ;; Moved here from icicles-mode.el: icicle-completing-p.
3443 ;; 2007/07/06 dadams
3444 ;; icicle-display-candidates-in-Completions: Leave cursor at start of candidates.
3445 ;; 2007/07/03 dadams
3446 ;; icicle-save-or-restore-input:
3447 ;; Add current-raw-input to icicle-previous(-non)-file-*-raw-inputs, respecting max len.
3448 ;; Don't save input if current command is C-l or C-L.
3449 ;; If don't save raw input, set it to empty string.
3450 ;; Added: icicle-put-at-head.
3451 ;; icicle-highlight-complete-input: Ensure no error treatment in call to search-forward.
3452 ;; icicle-display-candidates-in-Completions:
3453 ;; Ensure non-nil current(-raw)-input, for highlight.
3454 ;; 2007/06/23 dadams
3455 ;; Added: icicle-completing-read-history.
3456 ;; Moved here from icicles-cmd.el: icicle-read-from-minibuf-nil-default.
3457 ;; 2007/06/20 dadams
3458 ;; icicle-make-face-candidate, icicle-read-face-name:
3459 ;; Use new string value of icicle-WYSIWYG-Completions-flag.
3460 ;; 2007/06/19 dadams
3461 ;; icicle-read-face-name:
3462 ;; Use a multi-completion, depending on icicle-WYSIWYG-Completions-flag.
3463 ;; For Emacs 22, isolate the multiple case and do nothing for it.
3464 ;; icicle-make-face-candidate: Treat also whole-number value for icicle-WYSIWYG-*-flag.
3465 ;; 2007/06/17 dadams
3466 ;; icicle-make-face-candidate: Respect icicle-WYSIWYG-Completions-flag.
3467 ;; icicle-display-candidates-in-Completions: highlight saved candidates.
3468 ;; icicle-place-overlay: Added priority arg.
3469 ;; 2007/06/13 dadams
3470 ;; icicle-display-candidates-in-Completions:
3471 ;; Upgrade icicle-incremental-completion-p only if redisplaying. Thx Mark Elston.
3472 ;; 2007/06/10 dadams
3473 ;; Removed unconditional add-hook for icicle-fit-Completions-window.
3474 ;; 2007/06/09 dadams
3475 ;; icicle-insert-candidates: Don't mouse-face last char of candidate if it is a newline.
3476 ;; icicle-display-candidates-in-Completions: Treat icicle-candidate-properties-alist last.
3477 ;; 2007/06/07 dadams
3478 ;; icicle-read-face-name: Use (icicle-)face-name-history.
3479 ;; 2007/06/05 dadams
3480 ;; Added soft require of hexrgb.el, but only if window-system.
3481 ;; icicle-color*: Protected with featurep hexrgb and error message.
3482 ;; 2007/06/01 dadams
3483 ;; icicle-completing-read, icicle-read-from-minibuffer, icicle-read-string:
3484 ;; Use M@R%M=X!L$S+P&L^T*Z to avoid name capture by minibuffer-history-variable's value.
3485 ;; icicle-display-candidates-in-Completions, icicle-historical-alphabetic-p,
3486 ;; icicle-most-recent-first-p:
3487 ;; Ensure value of minibuffer-history-variable is bound.
3488 ;; 2007/05/29 dadams
3489 ;; icicle-call-then-update-Completions: Don't recomplete if only one candidate.
3490 ;; 2007/05/24 dadams
3491 ;; icicle-completing-read, icicle-read-file-name:
3492 ;; Fix length test for consp initial-input. Thx to Anupam Sengupta.
3493 ;; 2007/05/04 dadams
3494 ;; icicle-unsorted-*: C-g quits to top-level.
3495 ;; icicle-candidate-set-1, icicle-scroll-or-update-*, icicle-msg-maybe-in-minibuffer:
3496 ;; Move to minibuffer window for minibuffer-message.
3497 ;; icicle-display-candidates-in-Completions, icicle-highlight-initial-whitespace,
3498 ;; icicle-unsorted-file-name-*-candidates, icicle-longest-common-match,
3499 ;; icicle-next-candidate, icicle-place-cursor, icicle-highlight-complete-input,
3500 ;; icicle-special-candidates-first-p, icicle-case-string-less-p:
3501 ;; Use read-file-name-completion-ignore-case, if completing file name.
3502 ;; Moved mention of read-file-name-completion-ignore-case and
3503 ;; icicle-cycle-into-subdirs-flag from icicle-completing-read to icicle-read-file-name.
3504 ;; Added empty defvars for Emacs 22 standard vars, to quiet byte compiler.
3505 ;; 2007/04/29 dadams
3506 ;; Added: icicle-last-modified-first-p.
3507 ;; icicle-call-then-update-Completions: Delete icicle-complete-input-overlay.
3508 ;; 2007/04/08 dadams
3509 ;; Added: icicle-highlight-candidate-in-Completions, from code in icicle-next-candidate.
3510 ;; But changed to: 1) make Completions dedicated and 2) not bind case-fold-search.
3511 ;; icicle-next-candidate: Use icicle-highlight-candidate-in-Completions.
3512 ;; 2007/04/02 dadams
3513 ;; Moved here from icicles-cmd.el: icicle-filter-alist, icicle-first-matching-candidate.
3514 ;; 2007/04/01 dadams
3515 ;; icicle-insert-candidates: Don't fixup-whitespace if bolp.
3516 ;; 2007/03/30 dadams
3517 ;; icicle-fit-Completions-window: Don't resize *Completions* window if split horizontally.
3518 ;; icicle-insert-candidates:
3519 ;; Calculate nb of columns using max-candidate-len, not number of candidates.
3520 ;; Indent at least one colwidth, and leave less space between candidates.
3521 ;; 2007/03/26 dadams
3522 ;; icicle-completion-setup-function:
3523 ;; Protected minibuffer-completing-symbol with boundp (not define in Emacs 23).
3524 ;; 2007/03/23 dadams
3525 ;; icicle-completing-read, icicle-read-file-name:
3526 ;; Record require-match in icicle-require-match-p.
3527 ;; 2007/03/17 dadams
3528 ;; icicle-read-face-name: Undo Emacs 21+ brain-dead treatment of PROMPT arg.
3529 ;; 2007/03/14 dadams
3530 ;; icicle-fit-Completions-window:
3531 ;; Don't let *Completions* take over the frame, so don't lose other window.
3532 ;; Respect icicle-Completions-window-max-height property of top-level command.
3533 ;; 2007/03/12 dadams
3534 ;; Added: icicle-fit-Completions-window. Use in temp-buffer-show-hook.
3535 ;; icicle-display-completion-list:
3536 ;; Print help lines here, not in icicle-completion-setup-*, so window fit includes them.
3537 ;; Put face on string candidates intro string, Possible completions are:.
3538 ;; icicle-completion-setup-function:
3539 ;; Don't print the help lines here.
3540 ;; Updated wrt latest Emacs 22 CVS version.
3541 ;; icicle-insert-Completions-help-string: Remove second newline at end.
3542 ;; icicle-start-of-candidates-in-Completions: Advance 1 or 2 lines, not 0 or 3.
3543 ;; 2007/03/10 dadams
3544 ;; icicle-display-completion-list: Rewrote to adjust columns to window width.
3545 ;; Added: icicle-insert-candidates.
3546 ;; 2007/03/09 dadams
3547 ;; Moved icicle-get-alist-candidate here from icicles-cmd.el.
3548 ;; 2007/03/07 dadams
3549 ;; icicle-choose-completion-string, icicle-next-candidate:
3550 ;; Use 0, not t, as frame arg to get-buffer-window.
3551 ;; 2007/03/04 dadams
3552 ;; icicle-highlight-initial-whitespace: Removed unused local var input-start-position.
3553 ;; icicle-completing-read: Do not initialize icicle-candidates-alist.
3554 ;; 2007/03/03 dadams
3555 ;; icicle-reversible-sort: Don't display Sorting candidates message - too annoying.
3556 ;; 2007/03/02 dadams
3557 ;; icicle-completion-setup-function for Emacs 22: Don't use file-name-directory if nil.
3558 ;; 2007/03/01 dadams
3559 ;; icicle-completing-read: Initialize icicle-candidates-alist.
3560 ;; 2007/02/24 dadams
3561 ;; icicle-next-candidate:
3562 ;; Transform multi-completion icicle-last-completion-candidate.
3563 ;; If last-command is icicle(mouse)-remove-candidate don't reset common match string or
3564 ;; redisplay *Completions*.
3565 ;; icicle-recompute-candidates:
3566 ;; Don't recompute if icicle-last-completion-command is icicle-mouse-remove-candidate.
3567 ;; 2007/02/18 dadams
3568 ;; icicle-save-or-restore-input: Use "" if file-name-directory is nil. Thx Shreevatsa R.
3569 ;; 2007/02/17 dadams
3570 ;; icicle-reversible-sort: No Sorting... message if icicle-edit-update-p. Thx Shreevatsa.
3571 ;; 2007/02/05 dadams
3572 ;; icicle-completing-read: Added info about multi-completions to doc string.
3573 ;; 2007/02/04 dadams
3574 ;; icicle-display-candidates-in-Completions: Fixed composition of multiple faces.
3575 ;; 2007/02/03 dadams
3576 ;; Renamed icicle-icompleting-p to icicle-edit-update-p.
3577 ;; Require icicles-var.el. Removed eval-when-compile for require of icicles-opt.
3578 ;; 2007/02/02 dadams
3579 ;; icicle-case-string-less-p: Use var, not function, icicle-completing-p (else too slow).
3580 ;; icicle-reversible-sort: Added sorting progress message.
3581 ;; 2007/01/29 dadams
3582 ;; icicle-display-candidates-in-Completions:
3583 ;; Allow for consp proplist value of icicle-special-candidate.
3584 ;; icicle-special-candidates-first-p: Added neither-special case. Treat letter case.
3585 ;; Renamed: icicle-case-insensitive-string-lessp to icicle-case-insensitive-string-less-p.
3586 ;; Added: icicle-case-string-less-p.
3587 ;; icicle-historical-alphabetic-p, icicle-most-recent-first-p, icicle-dirs-last-p,
3588 ;; icicle-part-N-lessp, icicle-prefix-keys-first-p:
3589 ;; Use icicle-case-string-less-p, not string-lessp.
3590 ;; icicle-prefix-keys-first-p: Ignore case.
3591 ;; 2007/01/28 dadams
3592 ;; Added: icicle-command-names-alphabetic-p.
3593 ;; Moved here from icicles-cmd.el:
3594 ;; icicle-prefix-keys-first-p, icicle-special-candidates-first-p.
3595 ;; 2007/01/23 dadams
3596 ;; Added: icicle-read-face-name, icicle-make-face-candidate,
3597 ;; icicle-face-valid-attribute-values, icicle-color-name-w-bg.
3598 ;; icicle-choose-completion-string: Added Emacs 21 version.
3599 ;; icicle-display-candidates-in-Completions:
3600 ;; Only highlight past inputs if icicle-highlight-historical-candidates-flag.
3601 ;; 2007/01/22 dadams
3602 ;; icicle-part-N-lessp, icicle-color-*-lessp: Do nothing if strings are not multipart.
3603 ;; icicle-display-candidates-in-Completions:
3604 ;; Highlight past inputs after treat *-prop*-alist.
3605 ;; icicle-delete-whitespace-from-string: Added optional args.
3606 ;; 2007/01/21 dadams
3607 ;; Added: icicle-part-*-lessp, icicle-color-*-lessp.
3608 ;; 2007/01/20 dadams
3609 ;; Added: icicle-display-completion-list.
3610 ;; 2007/01/19 dadams
3611 ;; icicle-display-candidates-in-Completions: Treat icicle-candidate-properties-alist.
3612 ;; 2007/01/15 dadams
3613 ;; Added: icicle-reversible-sort. Use it where standard sort function was used.
3614 ;; Renamed: icicle-sort-and-strip-ignored to icicle-strip-ignored-files-and-sort,
3615 ;; icicle-sort-dirs-last to icicle-dirs-last-p,
3616 ;; icicle-sort-case-insensitively to icicle-case-insensitive-string-lessp.
3617 ;; Grouped sort functions together.
3618 ;; 2007/01/14 dadams
3619 ;; icicle-next-candidate: Use icicle-transform-multi-completion. Thx to Rubikitch.
3620 ;; icicle-transform-candidates: Updated doc string.
3621 ;; 2007/01/12 dadams
3622 ;; icicle-next-candidate: Use icicle-list-use-nth-parts. Thx to Rubikitch.
3623 ;; icicle-display-candidates-in-Completions: Added message when no-display-p.
3624 ;; 2007/01/07 dadams
3625 ;; icicle-completing-read: Updated doc string for Emacs 22.
3626 ;; 2007/01/06 dadams
3627 ;; Added: icicle-abbreviate-or-expand-file-name.
3628 ;; icicle-fix-default-directory: Use icicle-abbreviate-or-expand-file-name.
3629 ;; icicle-save-or-restore-input: expand-file-name -> icicle-abbreviate-or-expand-file-name.
3630 ;; icicle-completion-setup-function: Don't set default-directory to nil if minibuf empty.
3631 ;; icicle-read-file-name: Bug fix: Don't set initial-input to icicle-initial-value if "".
3632 ;; 2007/01/05 dadams
3633 ;; icicle-completing-read, icicle-read-file-name:
3634 ;; Use existing string value of icicle-initial-value. Thx to rubikitch for suggestion.
3635 ;; 2007/01/01 dadams
3636 ;; Added assq-delete-all for Emacs 20 (moved here from icicles-mode.el).
3637 ;; Added: icicle-assoc-delete-all.
3638 ;; 2006/12/25 dadams
3639 ;; Added: icicle-most-recent-first-p.
3640 ;; icicle-update-completions: Added optional no-display arg.
3641 ;; Moved here from icicles-opt.el: icicle-historical-alphabetic-p.
3642 ;; 2006/11/10 dadams
3643 ;; icicle-completing-read, icicle-read-file-name: Prefix prompt by + if a multi-command.
3644 ;; 2006/10/15 dadams
3645 ;; icicle-save-or-restore-input:
3646 ;; Change test from cmd is same as last to input is same as last.
3647 ;; icicle-rebind-completion-maps:
3648 ;; When turn off, bind C-M-mouse-2 and C-down-mouse-2 to nil.
3649 ;; icicle-display-candidates-in-Completions: Accumulate (merge) highlight faces.
3650 ;; Moved to icicles-mode.el:
3651 ;; icicle-bind-isearch-keys, icicle-rebind-completion-maps,
3652 ;; icicle-(redefine|restore)-standard-(commands|options),
3653 ;; icicle-(redefine|restore)-std-completion-fns), icicle-(re|un)map,
3654 ;; icicle-(bind|restore)-completion-keys, icicle-minibuffer-setup,
3655 ;; icicle-cancel-*Help*-redirection, icicle-activate-mark,
3656 ;; icicle-run-icicle-(pre|post)-command-hook, icicle-set-calling-cmd,
3657 ;; icicle-undo-std-completion-faces, icicle-update-ignored-extensions-regexp,
3658 ;; icicle-completing-p, icicle-restore-region-face.
3659 ;; Removed eval-when-compile of *-face, *-var, *-mac, *-cmd.
3660 ;; Removed some defvars for quieting byte compiler.
3661 ;; 2006/10/05 dadams
3662 ;; icicle-display-candidates-in-Completions: Highlight candidates that are special.
3663 ;; 2006/10/03 dadams
3664 ;; icicle-display-candidates-in-Completions:
3665 ;; Removed predicate filtering, as the pred doesn't necessarily apply to the candidate.
3666 ;; This has been in the code forever, so commented it out, in case it is needed ;-).
3667 ;; 2006/10/01 dadams
3668 ;; icicle-alternative-sort -> icicle-toggle-alternative-sorting.
3669 ;; icicle-update-completions: Treat icicle-prefix-word-complete case too.
3670 ;; 2006/09/30 dadams
3671 ;; Added: icicle-key-description.
3672 ;; icicle-(bind|restore)-completion-keys:
3673 ;; Bind icicle-candidate-set-(save|retrieve) to C-M-(<|>), not C-(<|>).
3674 ;; Bind icicle-toggle-angle-brackets to C-<.
3675 ;; No longer remap help-command to icicle-completion-help.
3676 ;; Bind icicle-completion-help to C-?.
3677 ;; Rename [menu-bar minibuf C-h] to [menu-bar minibuf completion-help].
3678 ;; icicle-completing-p: Bug fix: Use where-is-internal, not minibuffer-completion-table.
3679 ;; 2006/09/22 dadams
3680 ;; icicle-minibuffer-setup:
3681 ;; Apropos-complete, don't prefix-complete, when icicle-show-Completions-initially-flag.
3682 ;; 2006/09/17 dadams
3683 ;; icicle-completing-p: Ensure minibuffer is active too.
3684 ;; 2006/09/16 dadams
3685 ;; Bound icicle-insert-key-description to M-q.
3686 ;; icicle-completing-read:
3687 ;; Use icicle-list-join-string only to join parts of candidate (alist key).
3688 ;; Append icicle-list-end-string instead.
3689 ;; icicle-msg-maybe-in-minibuffer: Fixed doc string (active -> inactive).
3690 ;; 2006/09/12 dadams
3691 ;; icicle-minibuffer-setup: Set icicle-pre-minibuffer-buffer.
3692 ;; Renamed icicle-switch-to-minibuffer to icicle-insert-completion.
3693 ;; 2006/09/03 dadams
3694 ;; Renamed icicle-show-Completions-help to icicle-show-Completions-help-flag.
3695 ;; 2006/08/27 dadams
3696 ;; Bind Quit in Minibuf menu to icicle-abort-minibuffer-input.
3697 ;; 2006/08/22 dadams
3698 ;; icicle-save-or-restore-input: If icicle-last-completion-candidate is nil, don't try to restore.
3699 ;; 2006/08/18 dadams
3700 ;; icicle-minibuffer-setup: Reset icicle-last-completion-candidate to nil.
3701 ;; icicle-rebind-completion-maps:
3702 ;; Added icicle-Info-goto-node to icicle-completion-help-string.
3703 ;; 2006/08/15 dadams
3704 ;; icicle-(bind|restore)-completion-keys:
3705 ;; Bind icicle-help-on-(previous|next)-(apropos|prefix)-candidate.
3706 ;; Reorder bindings. Bind C-mouse-2 to 'ignore, not nil.
3707 ;; icicle-rebind-completion-maps: Bind icicle-help-on-* in completion-list-mode-map.
3708 ;; Added: icicle-barf-if-outside-Completions-and-minibuffer.
3709 ;; 2006/08/13 dadams
3710 ;; icicle-completing-read, icicle-read-file-name: Use icicle-completing*-prompt-prefix.
3711 ;; 2006/08/04 dadams
3712 ;; icicle-call-then-update-Completions:
3713 ;; Call icicle-last-completion-command, not just prefix or apropos (so prefix-word too).
3714 ;; icicle-completing-read, icicle-read-file-name, icicle-next-candidate,
3715 ;; icicle-recompute-candidates, icicle-call-then-update-Completions:
3716 ;; Use icicle-remove-Completions-window.
3717 ;; icicle-(bind|restore)-completion-keys: Bound icicle-pp-eval-expression to M-:.
3718 ;; 2006/08/03 dadams
3719 ;; icicle-completion-setup-function: Removed useless highlighting code at end (Emacs 20).
3720 ;; icicle-rebind-completion-maps: Updated icicle-completio