-
Notifications
You must be signed in to change notification settings - Fork 0
/
ido.elc
636 lines (623 loc) · 114 KB
/
ido.elc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
;ELC
;;; Compiled by shant@ultraio on Sat Sep 27 19:36:32 2014
;;; from file /home/shant/.emacs.d/ido.el
;;; in Emacs version 24.3.1
;;; with all optimizations.
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defalias 'ido-fractionp #[(n) "\247\205 \301V\205 \302X\207" [n 0.0 1.0] 2])
(byte-code "\300\301\302\303\304\305\304\306\307\310\311\312\311\313&\210\314\315\302\316\317\320\321\322\323\301\311\324\325\326\327\330\304\301&\210\314\331\332\333\327\334\304\301&\210\314\335\336\337\327\340\304\301&\210\314\341\342\343\327\344\304\301&\210\314\345\346\347\327\334\304\301&\210\314\350\302\351\327\334\304\301&\210\314\352\302\353\327\354\304\301&\210\314\355\356\357\327\360\304\301&\210\314\361\302\362\327\363\304\301&\210\314\364\365\366\327\367\304\301&\210\314\370\371\372\327\373\304\301&\210\314\374\302\375\327\334\304\301&\210\314\376\302\377\327\334\304\301&\210\314\201@ \302\201A \327\334\304\301&\210\314\201B \302\201C \327\334\304\301&\210\314\201D \346\201E \307\201F \327\334\304\301& \210\314\201G \302\201H \327\334\304\301&\210\314\201I \201J \201K \327\201L \304\301&\210\314\201M \346\201N \327\334\304\301&\210\314\201O \201P \201Q \327\201R \304\301&\210\314\201S \201T \201U \327\201V \304\301&\210\314\201W \302\201X \327\201Y \304\301&\210\314\201Z \346\201[ \327\334\304\301&\210\314\201\\ \201] \201^ \327\201R \304\301&\210\314\201_ \302\201` \327\201a \304\301&\210\314\201b \302\201c \327\201d \304\301&\210\314\201e \302\201f \327\334\304\301&\210\314\201g \346\201h \327\334\304\301&\210\314\201i \346\201j \327\334\304\301&\210\314\201k \302\201l \327\334\304\301&\210\314\201m \201n \201o \327\201p \304\301&\210\314\201q \302\201r \327\201s \304\301&\210\314\201t \302\201u \327\201v \304\301&\207" [custom-declare-group ido nil "Switch between files using substrings." :group extensions convenience :version "22.1" :link (emacs-commentary-link :tag "Commentary" "ido.el") (emacs-library-link :tag "Lisp File" "ido.el") custom-declare-variable ido-mode "Determines for which functional group (buffer and files) ido behavior\nshould be enabled. The following values are possible:\n- `buffer': Turn only on ido buffer behavior (switching, killing,\n displaying...)\n- `file': Turn only on ido file behavior (finding, writing, inserting...)\n- `both': Turn on ido buffer and file behavior.\n- `nil': Turn off any ido switching.\n\nSetting this variable directly does not take effect;\nuse either \\[customize] or the function `ido-mode'." :set #[(_symbol value) "\301!\207" [value ido-mode] 2] :initialize custom-initialize-default :require (emacs-commentary-link "ido.el") :set-after (ido-save-directory-list-file ido-unc-hosts) :type (choice (const :tag "Turn on only buffer" buffer) (const :tag "Turn on only file" file) (const :tag "Turn on both buffer and file" both) (const :tag "Switch off all" nil)) ido-case-fold case-fold-search "Non-nil if searching of buffer and file names should ignore case." boolean ido-ignore-buffers '("\\` ") "List of regexps or functions matching buffer names to ignore.\nFor example, traditional behavior is not to list buffers whose names begin\nwith a space, for which the regexp is `\\` '. See the source file for\nexample functions that filter buffer names." (repeat (choice regexp function)) ido-ignore-files '("\\`CVS/" "\\`#" "\\`.#" "\\`\\.\\./" "\\`\\./") "List of regexps or functions matching file names to ignore.\nFor example, traditional behavior is not to list files whose names begin\nwith a #, for which the regexp is `\\`#'. See the source file for\nexample functions that filter filenames." (repeat (choice regexp function)) ido-ignore-extensions t "Non-nil means ignore files in `completion-ignored-extensions' list." ido-show-dot-for-dired "Non-nil means to always put . as the first item in file name lists.\nThis allows the current directory to be opened immediately with `dired'." ido-file-extensions-order "List of file extensions specifying preferred order of file selections.\nEach element is either a string with `.' as the first char, an empty\nstring matching files without extension, or t which is the default order\nfor files with an unlisted file extension." (repeat (choice string (const :tag "Default order" t))) ido-ignore-directories '("\\`CVS/" "\\`\\.\\./" "\\`\\./") "List of regexps or functions matching sub-directory names to ignore." (repeat (choice regexp function)) ido-ignore-directories-merge "List of regexps or functions matching directory names to ignore during merge.\nDirectory names matched by one of the regexps in this list are not inserted\nin merged file and directory lists." (repeat (choice regexp function)) ido-default-file-method 'raise-frame "How to visit a new file when using `ido-find-file'.\nPossible values:\n`selected-window' Show new file in selected window\n`other-window' Show new file in another window (same frame)\n`display' Display file in another window without selecting to it\n`other-frame' Show new file in another frame\n`maybe-frame' If a file is visible in another frame, prompt to ask if you\n you want to see the file in the same window of the current\n frame or in the other frame\n`raise-frame' If a file is visible in another frame, raise that\n frame; otherwise, visit the file in the same window" (choice (const :tag "Visit in selected window" selected-window) (const :tag "Visit in other window" other-window) (const :tag "Display (no select) in other window" display) (const :tag "Visit in other frame" other-frame) (const :tag "Ask to visit in other frame" maybe-frame) (const :tag "Raise frame if already visited" raise-frame)) ido-default-buffer-method 'raise-frame "How to switch to new buffer when using `ido-switch-buffer'.\nSee `ido-default-file-method' for details." (choice (const :tag "Show in selected window" selected-window) (const :tag "Show in other window" other-window) (const :tag "Display (no select) in other window" display) (const :tag "Show in other frame" other-frame) (const :tag "Ask to show in other frame" maybe-frame) (const :tag "Raise frame if already shown" raise-frame)) ido-enable-flex-matching "Non-nil means that `ido' will do flexible string matching.\nFlexible matching means that if the entered string does not\nmatch any item, any item containing the entered characters\nin the given sequence will match." ido-enable-regexp "Non-nil means that `ido' will do regexp matching.\nValue can be toggled within `ido' using `ido-toggle-regexp'." ido-enable-prefix "Non-nil means only match if the entered text is a prefix of file name.\nThis behavior is like the standard Emacs completion.\nIf nil, match if the entered text is an arbitrary substring.\nValue can be toggled within `ido' using `ido-toggle-prefix'." ido-enable-dot-prefix "Non-nil means to match leading dot as prefix.\nI.e. hidden files and buffers will match only if you type a dot\nas first char even if `ido-enable-prefix' is nil." ido-buffer-disable-smart-matches "Non-nil means not to re-order matches for buffer switching.\nBy default, ido arranges matches in the following order:\n\n full-matches > suffix matches > prefix matches > remaining matches\n\nwhich can get in the way for buffer switching." "24.3" ido-confirm-unique-completion "Non-nil means that even a unique completion must be confirmed.\nThis means that \\[ido-complete] must always be followed by \\[ido-exit-minibuffer]\neven when there is only one unique completion." ido-cannot-complete-command 'ido-completion-help "Command run when `ido-complete' can't complete any more.\nThe most useful values are `ido-completion-help', which pops up a\nwindow with completion alternatives, or `ido-next-match' or\n`ido-prev-match', which cycle the buffer list." function ido-record-commands "Non-nil means that `ido' will record commands in command history.\nNote that the non-ido equivalent command is recorded." ido-max-prospects 12 "Non-zero means that the prospect list will be limited to that number of items.\nFor a long list of prospects, building the full list for the minibuffer can take a\nnon-negligible amount of time; setting this variable reduces that time." integer ido-max-file-prompt-width 0.35 "Non-zero means that the prompt string be limited to that number of characters.\nIf value is a floating point number, it specifies a fraction of the frame width." (choice (integer :tag "Characters" :value 20) (restricted-sexp :tag "Fraction of frame width" :value 0.35 :match-alternatives (ido-fractionp))) ido-max-window-height "Non-nil specifies a value to override `max-mini-window-height'." (choice (const :tag "Don't override" nil) (integer :tag "Number of lines" :value 1) (restricted-sexp :tag "Fraction of window height" :value 0.25 :match-alternatives (ido-fractionp))) ido-enable-last-directory-history "Non-nil means that `ido' will remember latest selected directory names.\nSee `ido-last-directory-list' and `ido-save-directory-list-file'." ido-max-work-directory-list 50 "Maximum number of working directories to record.\nThis is the list of directories where files have most recently been opened.\nSee `ido-work-directory-list' and `ido-save-directory-list-file'." ido-work-directory-list-ignore-regexps "List of regexps matching directories which should not be recorded.\nDirectory names matched by one of the regexps in this list are not inserted in\nthe `ido-work-directory-list' list." (repeat regexp) ido-use-filename-at-point "Non-nil means that ido shall look for a filename at point.\nMay use `ffap-guesser' to guess whether text at point is a filename.\nIf found, use that as the starting point for filename selection." (choice (const :tag "Disabled" nil) (const :tag "Guess filename" guess) (other :tag "Use literal filename" t)) ido-use-url-at-point "Non-nil means that ido shall look for a URL at point.\nIf found, call `find-file-at-point' to visit it." ido-enable-tramp-completion "Non-nil means that ido shall perform tramp method and server name completion.\nA tramp file name uses the following syntax: /method:user@host:filename." ido-record-ftp-work-directories "Non-nil means record ftp file names in the work directory list." ido-merge-ftp-work-directories "If nil, merging ignores ftp file names in the work directory list." ido-cache-ftp-work-directory-time 1.0 "Maximum time to cache contents of an ftp directory (in hours).\nUse C-l in prompt to refresh list.\nIf zero, ftp directories are not cached." number ido-slow-ftp-hosts "List of slow ftp hosts where ido prompting should not be used.\nIf an ftp host is on this list, ido automatically switches to the non-ido\nequivalent function, e.g. `find-file' rather than `ido-find-file'." (repeat string) ido-slow-ftp-host-regexps "List of regexps matching slow ftp hosts (see `ido-slow-ftp-hosts')." (repeat regexp)] 18)
#@45 Cached value from `ido-unc-hosts' function.
(defvar ido-unc-hosts-cache t (#$ . 11114))
(byte-code "\300\301\302\303\304\305\306\307\310\311& \210\300\312\313\314\304\315\310\311&\210\300\316\302\317\304\320\310\311&\210\300\321\322\323\304\324\310\311&\210\300\325\326\327\304\330\310\311&\210\300\331\313\332\304\315\310\311&\210\300\333\334\335\304\330\310\311&\210\300\336\337\340\304\324\310\311&\210\300\341\342\343\304\344\310\311&\210\300\345\346\347\304\350\310\311&\210\300\351\352\353\304\330\310\311&\210\300\354\302\355\304\356\310\311&\210\300\357\302\360\304\315\310\311&\210\300\361\362\363\304\364\310\311&\210\300\365\366\367\304\370\310\311&\210\300\371\302\372\304\373\310\311&\210\300\374\302\375\304\376\310\311&\210\300\377\201@ \201A \304\201B \310\311&\210\300\201C \302\201D \201E \201F \304\315\310\311& \210\300\201G \313\201H \304\315\310\311&\210\201I \201J \201K \201L \310\311%\210\201I \201M \201N \201O \310\311%\210\201I \201P \201Q \201R \310\311%\210\201I \201S \201T \201U \201E \201F \310\311&\210\201I \201V \201W \201X \310\311%\210\201I \201Y \201Z \201[ \310\311%\210\300\201\\ \302\201] \304\373\310\311&\210\300\201^ \302\201_ \304\373\310\311&\210\300\201` \302\201a \304\373\310\311&\210\300\201b \302\201c \304\373\310\311&\207" [custom-declare-variable ido-unc-hosts nil "List of known UNC host names to complete after initial //.\nIf value is a function, that function is called to search network for\nhosts on first use of UNC path." :type (choice (repeat :tag "List of UNC host names" string) (function-item :tag "Use `NET VIEW'" :value ido-unc-hosts-net-view) (function :tag "Your own function")) :set #[(symbol value) " L\210\303\211\207" [symbol value ido-unc-hosts-cache t] 2] :group ido ido-downcase-unc-hosts t "Non-nil if UNC host names should be downcased." boolean ido-ignore-unc-host-regexps "List of regexps matching UNC hosts to ignore.\nCase is ignored if `ido-downcase-unc-hosts' is set." (repeat regexp) ido-cache-unc-host-shares-time 8.0 "Maximum time to cache shares of an UNC host (in hours).\nUse C-l in prompt to refresh list.\nIf zero, UNC host shares are not cached." number ido-max-work-file-list 10 "Maximum number of names of recently opened files to record.\nThis is the list of the file names (sans directory) which have most recently\nbeen opened. See `ido-work-file-list' and `ido-save-directory-list-file'." integer ido-work-directory-match-only "Non-nil means to skip non-matching directories in the directory history.\nWhen some text is already entered at the `ido-find-file' prompt, using\n\\[ido-prev-work-directory] or \\[ido-next-work-directory] will skip directories\nwithout any matching entries." ido-auto-merge-work-directories-length 0 "Automatically switch to merged work directories during file name input.\nThe value is number of characters to type before switching to merged mode.\nIf zero, the switch happens when no matches are found in the current directory.\nAutomatic merging is disabled if the value is negative." ido-auto-merge-delay-time 0.7 "Delay in seconds to wait for more input before doing auto merge." ido-auto-merge-inhibit-characters-regexp "[][*?~]" "Regexp matching characters which should inhibit automatic merging.\nWhen a (partial) file name matches this regexp, merging is inhibited." regexp ido-merged-indicator "^" "The string appended to first choice if it has multiple directory choices." string ido-max-dir-file-cache 100 "Maximum number of working directories to be cached.\nThis is the size of the cache of `file-name-all-completions' results.\nEach cache entry is time stamped with the modification time of the\ndirectory. Some systems, like Windows, have unreliable directory\nmodification times, so you may choose to disable caching on such\nsystems, or explicitly refresh the cache contents using the command\n`ido-reread-directory' command (C-l) in the minibuffer.\nSee also `ido-dir-file-cache' and `ido-save-directory-list-file'." ido-max-directory-size "Maximum size (in bytes) for directories to use ido completion.\nIf you enter a directory with a size larger than this size, ido will\nnot provide the normal completion. To show the completions, use C-a." (choice (const :tag "No limit" nil) (integer :tag "Size in bytes" 30000)) ido-rotate-file-list-default "Non-nil means that `ido' will always rotate file list to get default in front." ido-enter-matching-directory 'only "Additional methods to enter sub-directory of first/only matching item.\nIf value is 'first, enter first matching sub-directory when typing a slash.\nIf value is 'only, typing a slash only enters the sub-directory if it is\nthe only matching item.\nIf value is t, automatically enter a sub-directory when it is the only\nmatching item, even without typing a slash." (choice (const :tag "Never" nil) (const :tag "Slash enters first directory" first) (const :tag "Slash enters first and only directory" only) (other :tag "Always enter unique directory" t)) ido-create-new-buffer 'prompt "Specify whether a new buffer is created if no buffer matches substring.\nChoices are 'always to create new buffers unconditionally, 'prompt to\nask user whether to create buffer, or 'never to never create new buffer." (choice (const always) (const prompt) (const never)) ido-setup-hook "Hook run after the ido variables and keymap have been setup.\nThe dynamic variable `ido-cur-item' contains the current type of item that\nis read by ido; possible values are file, dir, buffer, and list.\nAdditional keys can be defined in `ido-completion-map'." hook ido-separator "String used by ido to separate the alternatives in the minibuffer.\nObsolete. Set 3rd element of `ido-decorations' instead." (choice string (const nil)) ido-decorations '("{" "}" " | " " | ..." "[" "]" " [No match]" " [Matched]" " [Not readable]" " [Too big]" " [Confirm]") "List of strings used by ido to display the alternatives in the minibuffer.\nThere are between 11 and 13 elements in this list:\n1st and 2nd elements are used as brackets around the prospect list,\n3rd element is the separator between prospects (ignored if `ido-separator' is set),\n4th element is the string inserted at the end of a truncated list of prospects,\n5th and 6th elements are used as brackets around the common match string which\ncan be completed using TAB,\n7th element is the string displayed when there are no matches, and\n8th element is displayed if there is a single match (and faces are not used),\n9th element is displayed when the current directory is non-readable,\n10th element is displayed when directory exceeds `ido-max-directory-size',\n11th element is displayed to confirm creating new file or buffer.\n12th and 13th elements (if present) are used as brackets around the sole\nremaining completion. If absent, elements 5 and 6 are used instead." (repeat string) ido-use-virtual-buffers "If non-nil, refer to past buffers as well as existing ones.\nEssentially it works as follows: Say you are visiting a file and\nthe buffer gets cleaned up by midnight.el. Later, you want to\nswitch to that buffer, but find it's no longer open. With\nvirtual buffers enabled, the buffer name stays in the buffer\nlist (using the `ido-virtual' face, and always at the end), and if\nyou select it, it opens the file back up again. This allows you\nto think less about whether recently opened files are still open\nor not. Most of the time you can quit Emacs, restart, and then\nswitch to a file buffer that was previously open as if it still\nwere.\n This feature relies upon the `recentf' package, which will be\nenabled if this variable is configured to a non-nil value." :version "24.1" ido-use-faces "Non-nil means use ido faces to highlighting first match, only match and\nsubdirs in the alternatives." custom-declare-face ido-first-match ((t :weight bold)) "Face used by ido for highlighting first match." ido-only-match ((((class color)) :foreground "ForestGreen") (t :slant italic)) "Face used by ido for highlighting only match." ido-subdir ((((min-colors 88) (class color)) :foreground "red1") (((class color)) :foreground "red") (t :underline t)) "Face used by ido for highlighting subdirs in the alternatives." ido-virtual ((t :inherit font-lock-builtin-face)) "Face used by ido for matching virtual buffer names." ido-indicator ((((min-colors 88) (class color)) :foreground "yellow1" :background "red1" :width condensed) (((class color)) :foreground "yellow" :background "red" :width condensed) (t :inverse-video t)) "Face used by ido for highlighting its indicators." ido-incomplete-regexp ((t :inherit font-lock-warning-face)) "Ido face for indicating incomplete regexps." ido-make-file-list-hook "List of functions to run when the list of matching files is created.\nEach function on the list may modify the dynamically bound variable\n`ido-temp-list' which contains the current list of matching files." ido-make-dir-list-hook "List of functions to run when the list of matching directories is created.\nEach function on the list may modify the dynamically bound variable\n`ido-temp-list' which contains the current list of matching directories." ido-make-buffer-list-hook "List of functions to run when the list of matching buffers is created.\nEach function on the list may modify the dynamically bound variable\n`ido-temp-list' which contains the current list of matching buffer names." ido-rewrite-file-prompt-functions "List of functions to run when the find-file prompt is created.\nEach function on the list may modify the following dynamically bound\nvariables:\n dirname - the (abbreviated) directory name\n to be modified by the hook functions\n max-width - the max width of the resulting dirname; nil means no limit\n prompt - the basic prompt (e.g. \"Find File: \")\n literal - the string shown if doing \"literal\" find; set to nil to omit\n vc-off - the string shown if version control is inhibited; set to nil to omit\n prefix - either nil or a fixed prefix for the dirname\n\nThe following variables are available, but should not be changed:\n `ido-current-directory' - the unabbreviated directory name\n item - equals `file' or `dir' depending on the current mode."] 10)
#@495 Alist of rewriting rules for directory names in ido prompts.
A list of elements of the form (FROM . TO) or (FROM . FUNC), each
meaning to rewrite the directory name if matched by FROM by either
substituting the matched string by TO or calling the function FUNC
with the current directory name as its only argument and using the
return value as the new directory name. In addition, each FUNC may
also modify the dynamic variables described for the variable
`ido-rewrite-file-prompt-functions'.
(defvar ido-rewrite-file-prompt-rules nil (#$ . 21338))
(byte-code "\300\301\302\303\304\305\306\307&\210\300\310\311\312\304\313\306\307&\210\300\314\315\316\304\317\306\307&\210\300\320\311\321\304\322\306\307&\210\300\323\324\325\304\305\306\307&\210\300\326\327\330\304\331\306\307&\210\300\332\333\334\304\335\306\307&\210\300\336\337\340\304\322\306\307&\207" [custom-declare-variable ido-completion-buffer "*Ido Completions*" "Name of completion buffer used by ido.\nSet to nil to disable completion buffers popping up." :type string :group ido ido-completion-buffer-all-completions nil "Non-nil means to show all completions in completion buffer.\nOtherwise, only the current list of matches is shown." boolean ido-all-frames 'visible "Argument to pass to `walk-windows' when Ido is finding buffers.\nSee documentation of `walk-windows' for useful values." (choice (const :tag "Selected frame only" nil) (const :tag "All existing frames" t) (const :tag "All visible frames" visible) (const :tag "All frames on this terminal" 0)) ido-minibuffer-setup-hook "Ido-specific customization of minibuffer setup.\n\nThis hook is run during minibuffer setup if `ido' is active.\nIt is intended for use in customizing ido for interoperation\nwith other packages. For instance:\n\n (add-hook 'ido-minibuffer-setup-hook\n (function\n (lambda ()\n (make-local-variable 'max-mini-window-height)\n (setq max-mini-window-height 3))))\n\nwill constrain Emacs to a maximum minibuffer height of 3 lines when\nido is running. Copied from `icomplete-minibuffer-setup-hook'." hook ido-save-directory-list-file (locate-user-emacs-file "ido.last" ".ido.last") "File in which the ido state is saved between invocations.\nVariables stored are: `ido-last-directory-list', `ido-work-directory-list',\n`ido-work-file-list', and `ido-dir-file-cache'.\nMust be set before enabling ido mode." ido-read-file-name-as-directory-commands 'nil "List of commands which uses `read-file-name' to read a directory name.\nWhen `ido-everywhere' is non-nil, the commands in this list will read\nthe directory using `ido-read-directory-name'." (repeat symbol) ido-read-file-name-non-ido 'nil "List of commands which shall not read file names the ido way.\nWhen `ido-everywhere' is non-nil, the commands in this list will read\nthe file name using normal `read-file-name' style." (repeat symbol) ido-before-fallback-functions 'nil "List of functions to call before calling a fallback command.\nThe fallback command is passed as an argument to the functions."] 8)
#@43 Currently active keymap for ido commands.
(defvar ido-completion-map nil (#$ . 24396))
#@30 Keymap for all ido commands.
(defvar ido-common-completion-map nil (#$ . 24489))
#@31 Keymap for ido file commands.
(defvar ido-file-completion-map nil (#$ . 24576))
#@45 Keymap for ido file and directory commands.
(defvar ido-file-dir-completion-map nil (#$ . 24662))
#@33 Keymap for ido buffer commands.
(defvar ido-buffer-completion-map nil (#$ . 24766))
#@50 History of files selected using `ido-find-file'.
(defvar ido-file-history nil (#$ . 24856))
#@56 History of buffers selected using `ido-switch-buffer'.
(defvar ido-buffer-history nil (#$ . 24954))
#@93 List of last selected directory names.
See `ido-enable-last-directory-history' for details.
(defvar ido-last-directory-list nil (#$ . 25060))
#@160 List of actual working directory names.
The current directory is inserted at the front of this list whenever a
file is opened with `ido-find-file' and family.
(defvar ido-work-directory-list nil (#$ . 25209))
#@187 List of actual work file names.
Opening a file with `ido-find-file' and similar functions
inserts the current file name (relative to its containing directory)
at the front of this list.
(defvar ido-work-file-list nil (#$ . 25425))
#@109 List of `file-name-all-completions' results.
Each element in the list is of the form (DIR (MTIME) FILE...).
(defvar ido-dir-file-cache nil (#$ . 25663))
#@150 List of items to ignore in current ido invocation.
Intended to be let-bound by functions which call ido repeatedly.
Should never be set permanently.
(defvar ido-ignore-item-temp-list nil (#$ . 25823))
#@96 Point where minibuffer input ends and completion info begins.
Copied from `icomplete-eoinput'.
(defvar ido-eoinput 1 (#$ . 26030))
(make-variable-buffer-local 'ido-eoinput)
#@57 Stores the string that is common to all matching files.
(defvar ido-common-match-string nil (#$ . 26209))
#@65 Non-nil means we need to regenerate the list of matching items.
(defvar ido-rescan nil (#$ . 26321))
#@48 Non-nil means we are rotating list of matches.
(defvar ido-rotate nil (#$ . 26428))
#@44 Stores the users string as it is typed in.
(defvar ido-text nil (#$ . 26518))
#@57 The initial string for the users string it is typed in.
(defvar ido-text-init nil (#$ . 26602))
#@50 Stores the users strings when user hits M-b/M-f.
(defvar ido-input-stack nil (#$ . 26704))
#@46 List of files currently matching `ido-text'.
(defvar ido-matches nil (#$ . 26801))
#@59 Report [No Match] when no completions matches `ido-text'.
(defvar ido-report-no-match t (#$ . 26890))
#@121 Flag to monitor how `ido-find-file' exits.
If equal to `takeprompt', we use the prompt as the file name to be
selected.
(defvar ido-exit nil (#$ . 26999))
#@40 Current directory for `ido-find-file'.
(defvar ido-current-directory nil (#$ . 27160))
#@29 Delay timer for auto merge.
(defvar ido-auto-merge-timer nil (#$ . 27253))
#@163 Non-nil means use `ido' completion feedback.
Is set by ido functions to the current `minibuffer-depth',
so that it doesn't interfere with other minibuffer usage.
(defvar ido-use-mycompletion-depth 0 (#$ . 27335))
#@45 Non-nil if an incomplete regexp is entered.
(defvar ido-incomplete-regexp nil (#$ . 27554))
#@125 Non-nil means to explicitly cursor on entry to minibuffer.
Value is an integer which is number of chars to right of prompt.
(defvar ido-initial-position nil (#$ . 27653))
#@175 List of virtual buffers, that is, past visited files.
This is a copy of `recentf-list', pared down and with faces applied.
Only used if `ido-use-virtual-buffers' is non-nil.
(defvar ido-virtual-buffers nil (#$ . 27831))
(defalias 'ido-active #[(&optional merge) "\203 \207\303\304!\205 \n\305 U\207" [merge ido-use-merged-list ido-use-mycompletion-depth boundp ido-completing-read minibuffer-depth] 2])
(defvar ido-trace-enable nil)
(defalias 'ido-trace #[(p &optional s retval) "\203# \306\307! \212\214\nq\210\310\f;\203 \f\202 \311\312\f\"\313\261\210,\207" [ido-trace-enable deactivate-mark b p s retval get-buffer-create " *IDO Trace*" ": " format "%S" "\n"] 5])
(defalias 'ido-toggle-trace #[(arg) "\206 ?\211\203 \304\305!\210\306\307!\211\205* \203! \310\n!\202* \311\n\312\211#\210\312\211)\207" [arg ido-trace-enable b truncate-lines message "IDO trace on" get-buffer " *IDO Trace*" kill-buffer pop-to-buffer t] 5 nil "P"])
#@30 Tell if FILE exists locally.
(defalias 'ido-local-file-exists-p #[(file) "\302\303 !)\207" [file-name-handler-alist file nil file-exists-p] 2 (#$ . 28791)])
#@32 Return list of UNC host names.
(defalias 'ido-unc-hosts #[(&optional query) "<\203 \202<