]> git.r.bdr.sh - rbdr/dotfiles/blame - vim/doc/command-t.txt
Merge branch 'master' of github.com:benbeltran/dotfiles
[rbdr/dotfiles] / vim / doc / command-t.txt
CommitLineData
0d23b6e5
BB
1*command-t.txt* Command-T plug-in for Vim *command-t*
2
3CONTENTS *command-t-contents*
4
5 1. Introduction |command-t-intro|
6 2. Requirements |command-t-requirements|
7 3. Installation |command-t-installation|
8 3. Managing using Pathogen |command-t-pathogen|
9 4. Trouble-shooting |command-t-trouble-shooting|
10 5. Usage |command-t-usage|
11 6. Commands |command-t-commands|
12 7. Mappings |command-t-mappings|
13 8. Options |command-t-options|
14 9. Authors |command-t-authors|
1510. Website |command-t-website|
1611. Donations |command-t-donations|
1712. License |command-t-license|
1813. History |command-t-history|
19
20
21INTRODUCTION *command-t-intro*
22
23The Command-T plug-in provides an extremely fast, intuitive mechanism for
24opening files and buffers with a minimal number of keystrokes. It's named
25"Command-T" because it is inspired by the "Go to File" window bound to
26Command-T in TextMate.
27
28Files are selected by typing characters that appear in their paths, and are
29ordered by an algorithm which knows that characters that appear in certain
30locations (for example, immediately after a path separator) should be given
31more weight.
32
33To search efficiently, especially in large projects, you should adopt a
34"path-centric" rather than a "filename-centric" mentality. That is you should
35think more about where the desired file is found rather than what it is
36called. This means narrowing your search down by including some characters
37from the upper path components rather than just entering characters from the
38filename itself.
39
40Screencasts demonstrating the plug-in can be viewed at:
41
42 https://wincent.com/products/command-t
43
44
45REQUIREMENTS *command-t-requirements*
46
47The plug-in requires Vim compiled with Ruby support, a compatible Ruby
48installation at the operating system level, and a C compiler to build
49the Ruby extension.
50
51
521. Vim compiled with Ruby support
53
54You can check for Ruby support by launching Vim with the --version switch:
55
56 vim --version
57
58If "+ruby" appears in the version information then your version of Vim has
59Ruby support.
60
61Another way to check is to simply try using the :ruby command from within Vim
62itself:
63
64 :ruby 1
65
66If your Vim lacks support you'll see an error message like this:
67
68 E319: Sorry, the command is not available in this version
69
70The version of Vim distributed with Mac OS X does not include Ruby support,
71while MacVim does; it is available from:
72
73 http://github.com/b4winckler/macvim/downloads
74
75For Windows users, the Vim 7.2 executable available from www.vim.org does
76include Ruby support, and is recommended over version 7.3 (which links against
77Ruby 1.9, but apparently has some bugs that need to be resolved).
78
79
802. Ruby
81
82In addition to having Ruby support in Vim, your system itself must have a
83compatible Ruby install. "Compatible" means the same version as Vim itself
84links against. If you use a different version then Command-T is unlikely
85to work (see TROUBLE-SHOOTING below).
86
87On Mac OS X Snow Leopard, the system comes with Ruby 1.8.7 and all recent
88versions of MacVim (the 7.2 snapshots and 7.3) are linked against it.
89
90On Linux and similar platforms, the linked version of Ruby will depend on
91your distribution. You can usually find this out by examining the
92compilation and linking flags displayed by the |:version| command in Vim, and
93by looking at the output of:
94
95 :ruby puts RUBY_VERSION
96
97A suitable Ruby environment for Windows can be installed using the Ruby
981.8.7-p299 RubyInstaller available at:
99
100 http://rubyinstaller.org/downloads/archives
101
102If using RubyInstaller be sure to download the installer executable, not the
1037-zip archive. When installing mark the checkbox "Add Ruby executables to your
104PATH" so that Vim can find them.
105
106
1073. C compiler
108
109Part of Command-T is implemented in C as a Ruby extension for speed, allowing
110it to work responsively even on directory hierarchies containing enormous
111numbers of files. As such, a C compiler is required in order to build the
112extension and complete the installation.
113
114On Mac OS X, this can be obtained by installing the Xcode Tools that come on
115the Mac OS X install disc.
116
117On Windows, the RubyInstaller Development Kit can be used to conveniently
118install the necessary tool chain:
119
120 http://rubyinstaller.org/downloads/archives
121
122At the time of writing, the appropriate development kit for use with Ruby
1231.8.7 is DevKit-3.4.5r3-20091110.
124
125To use the Development Kit extract the archive contents to your C:\Ruby
126folder.
127
128
129INSTALLATION *command-t-installation*
130
131Command-T is distributed as a "vimball" which means that it can be installed
132by opening it in Vim and then sourcing it:
133
134 :e command-t.vba
135 :so %
136
137The files will be installed in your |'runtimepath'|. To check where this is
138you can issue:
139
140 :echo &rtp
141
142The C extension must then be built, which can be done from the shell. If you
143use a typical |'runtimepath'| then the files were installed inside ~/.vim and
144you can build the extension with:
145
146 cd ~/.vim/ruby/command-t
147 ruby extconf.rb
148 make
149
150Note: If you are an RVM user, you must perform the build using the same
151version of Ruby that Vim itself is linked against. This will often be the
152system Ruby, which can be selected before issuing the "make" command with:
153
154 rvm use system
155
156
157MANAGING USING PATHOGEN *command-t-pathogen*
158
159Pathogen is a plugin that allows you to maintain plugin installations in
160separate, isolated subdirectories under the "bundle" directory in your
161|'runtimepath'|. The following examples assume that you already have
162Pathogen installed and configured, and that you are installing into
163~/.vim/bundle. For more information about Pathogen, see:
164
165 http://www.vim.org/scripts/script.php?script_id=2332
166
167If you manage your entire ~/.vim folder using Git then you can add the
168Command-T repository as a submodule:
169
170 cd ~/.vim
171 git submodule add git://git.wincent.com/command-t.git bundle/command-t
172 git submodule init
173
174Or if you just wish to do a simple clone instead of using submodules:
175
176 cd ~/.vim
177 git clone git://git.wincent.com/command-t.git bundle/command-t
178
179Once you have a local copy of the repository you can update it at any time
180with:
181
182 cd ~/.vim/bundle/command-t
183 git pull
184
185Or you can switch to a specific release with:
186
187 cd ~/.vim/bundle/command-t
188 git checkout 0.8b
189
190After installing or updating you must build the extension:
191
192 cd ~/.vim/bundle/command-t
193 rake make
194
195While the Vimball installation automatically generates the help tags, under
196Pathogen it is necessary to do so explicitly from inside Vim:
197
198 :call pathogen#helptags()
199
200
201TROUBLE-SHOOTING *command-t-trouble-shooting*
202
203Most installation problems are caused by a mismatch between the version of
204Ruby on the host operating system, and the version of Ruby that Vim itself
205linked against at compile time. For example, if one is 32-bit and the other is
20664-bit, or one is from the Ruby 1.9 series and the other is from the 1.8
207series, then the plug-in is not likely to work.
208
209As such, on Mac OS X, I recommend using the standard Ruby that comes with the
210system (currently 1.8.7) along with the latest version of MacVim (currently
211version 7.3). If you wish to use custom builds of Ruby or of MacVim (not
212recommmended) then you will have to take extra care to ensure that the exact
213same Ruby environment is in effect when building Ruby, Vim and the Command-T
214extension.
215
216For Windows, the following combination is known to work:
217
218 - Vim 7.2 from http://www.vim.org/download.php:
219 ftp://ftp.vim.org/pub/vim/pc/gvim72.exe
220 - Ruby 1.8.7-p299 from http://rubyinstaller.org/downloads/archives:
221 http://rubyforge.org/frs/download.php/71492/rubyinstaller-1.8.7-p299.exe
222 - DevKit 3.4.5r3-20091110 from http://rubyinstaller.org/downloads/archives:
223 http://rubyforge.org/frs/download.php/66888/devkit-3.4.5r3-20091110.7z
224
225If a problem occurs the first thing you should do is inspect the output of:
226
227 ruby extconf.rb
228 make
229
230During the installation, and:
231
232 vim --version
233
234And compare the compilation and linker flags that were passed to the
235extension and to Vim itself when they were built. If the Ruby-related
236flags or architecture flags are different then it is likely that something
237has changed in your Ruby environment and the extension may not work until
238you eliminate the discrepancy.
239
240
241USAGE *command-t-usage*
242
243Bring up the Command-T file window by typing:
244
245 <Leader>t
246
247This mapping is set up automatically for you, provided you do not already have
248a mapping for <Leader>t or |:CommandT|. You can also bring up the file window
249by issuing the command:
250
251 :CommandT
252
253A prompt will appear at the bottom of the screen along with a file window
254showing all of the files in the current directory (as returned by the
255|:pwd| command).
256
257For the most efficient file navigation within a project it's recommended that
258you |:cd| into the root directory of your project when starting to work on it.
259If you wish to open a file from outside of the project folder you can pass in
260an optional path argument (relative or absolute) to |:CommandT|:
261
262 :CommandT ../path/to/other/files
263
264Type letters in the prompt to narrow down the selection, showing only the
265files whose paths contain those letters in the specified order. Letters do not
266need to appear consecutively in a path in order for it to be classified as a
267match.
268
269Once the desired file has been selected it can be opened by pressing <CR>.
270(By default files are opened in the current window, but there are other
271mappings that you can use to open in a vertical or horizontal split, or in
272a new tab.) Note that if you have |'nohidden'| set and there are unsaved
273changes in the current window when you press <CR> then opening in the current
274window would fail; in this case Command-T will open the file in a new split.
275
276The following mappings are active when the prompt has focus:
277
278 <BS> delete the character to the left of the cursor
279 <Del> delete the character at the cursor
280 <Left> move the cursor one character to the left
281 <C-h> move the cursor one character to the left
282 <Right> move the cursor one character to the right
283 <C-l> move the cursor one character to the right
284 <C-a> move the cursor to the start (left)
285 <C-e> move the cursor to the end (right)
286 <C-u> clear the contents of the prompt
287 <Tab> change focus to the file listing
288
289The following mappings are active when the file listing has focus:
290
291 <Tab> change focus to the prompt
292
293The following mappings are active when either the prompt or the file listing
294has focus:
295
296 <CR> open the selected file
297 <C-CR> open the selected file in a new split window
298 <C-s> open the selected file in a new split window
299 <C-v> open the selected file in a new vertical split window
300 <C-t> open the selected file in a new tab
301 <C-j> select next file in the file listing
302 <C-n> select next file in the file listing
303 <Down> select next file in the file listing
304 <C-k> select previous file in the file listing
305 <C-p> select previous file in the file listing
306 <Up> select previous file in the file listing
307 <C-c> cancel (dismisses file listing)
308
309The following is also available on terminals which support it:
310
311 <Esc> cancel (dismisses file listing)
312
313Note that the default mappings can be overriden by setting options in your
314~/.vimrc file (see the OPTIONS section for a full list of available options).
315
316In addition, when the file listing has focus, typing a character will cause
317the selection to jump to the first path which begins with that character.
318Typing multiple characters consecutively can be used to distinguish between
319paths which begin with the same prefix.
320
321
322COMMANDS *command-t-commands*
323
324 *:CommandT*
325|:CommandT| Brings up the Command-T file window, starting in the
326 current working directory as returned by the|:pwd|
327 command.
328
329 *:CommandTBuffer*
330|:CommandTBuffer|Brings up the Command-T buffer window.
331 This works exactly like the standard file window,
332 except that the selection is limited to files that
333 you already have open in buffers.
334
335 *:CommandTJumps*
336|:CommandTJump| Brings up the Command-T jumplist window.
337 This works exactly like the standard file window,
338 except that the selection is limited to files that
339 you already have in the jumplist. Note that jumps
340 can persist across Vim sessions (see Vim's |jumplist|
341 documentation for more info).
342
343 *:CommandTFlush*
344|:CommandTFlush|Instructs the plug-in to flush its path cache, causing
345 the directory to be rescanned for new or deleted paths
346 the next time the file window is shown. In addition, all
347 configuration settings are re-evaluated, causing any
348 changes made to settings via the |:let| command to be picked
349 up.
350
351
352MAPPINGS *command-t-mappings*
353
354By default Command-T comes with only two mappings:
355
356 <Leader>t bring up the Command-T file window
357 <Leader>b bring up the Command-T buffer window
358
359However, Command-T won't overwrite a pre-existing mapping so if you prefer
360to define different mappings use lines like these in your ~/.vimrc:
361
362 nnoremap <silent> <Leader>t :CommandT<CR>
363 nnoremap <silent> <Leader>b :CommandTBuffer<CR>
364
365Replacing "<Leader>t" or "<Leader>b" with your mapping of choice.
366
367Note that in the case of MacVim you actually can map to Command-T (written
368as <D-t> in Vim) in your ~/.gvimrc file if you first unmap the existing menu
369binding of Command-T to "New Tab":
370
371 if has("gui_macvim")
372 macmenu &File.New\ Tab key=<nop>
373 map <D-t> :CommandT<CR>
374 endif
375
376When the Command-T window is active a number of other additional mappings
377become available for doing things like moving between and selecting matches.
378These are fully described above in the USAGE section, and settings for
379overriding the mappings are listed below under OPTIONS.
380
381
382OPTIONS *command-t-options*
383
384A number of options may be set in your ~/.vimrc to influence the behaviour of
385the plug-in. To set an option, you include a line like this in your ~/.vimrc:
386
387 let g:CommandTMaxFiles=20000
388
389To have Command-T pick up new settings immediately (that is, without having
390to restart Vim) you can issue the |:CommandTFlush| command after making
391changes via |:let|.
392
393Following is a list of all available options:
394
395 *g:CommandTMaxFiles*
396 |g:CommandTMaxFiles| number (default 10000)
397
398 The maximum number of files that will be considered when scanning the
399 current directory. Upon reaching this number scanning stops. This
400 limit applies only to file listings and is ignored for buffer
401 listings.
402
403 *g:CommandTMaxDepth*
404 |g:CommandTMaxDepth| number (default 15)
405
406 The maximum depth (levels of recursion) to be explored when scanning the
407 current directory. Any directories at levels beyond this depth will be
408 skipped.
409
410 *g:CommandTMaxCachedDirectories*
411 |g:CommandTMaxCachedDirectories| number (default 1)
412
413 The maximum number of directories whose contents should be cached when
414 recursively scanning. With the default value of 1, each time you change
415 directories the cache will be emptied and Command-T will have to
416 rescan. Higher values will make Command-T hold more directories in the
417 cache, bringing performance at the cost of memory usage. If set to 0,
418 there is no limit on the number of cached directories.
419
420 *g:CommandTMaxHeight*
421 |g:CommandTMaxHeight| number (default: 0)
422
423 The maximum height in lines the match window is allowed to expand to.
424 If set to 0, the window will occupy as much of the available space as
425 needed to show matching entries.
426
427 *g:CommandTAlwaysShowDotFiles*
428 |g:CommandTAlwaysShowDotFiles| boolean (default: 0)
429
430 When showing the file listing Command-T will by default show dot-files
431 only if the entered search string contains a dot that could cause a
432 dot-file to match. When set to a non-zero value, this setting instructs
433 Command-T to always include matching dot-files in the match list
434 regardless of whether the search string contains a dot. See also
435 |g:CommandTNeverShowDotFiles|. Note that this setting only influences
436 the file listing; the buffer listing treats dot-files like any other
437 file.
438
439 *g:CommandTNeverShowDotFiles*
440 |g:CommandTNeverShowDotFiles| boolean (default: 0)
441
442 In the file listing, Command-T will by default show dot-files if the
443 entered search string contains a dot that could cause a dot-file to
444 match. When set to a non-zero value, this setting instructs Command-T to
445 never show dot-files under any circumstances. Note that it is
446 contradictory to set both this setting and
447 |g:CommandTAlwaysShowDotFiles| to true, and if you do so Vim will suffer
448 from headaches, nervous twitches, and sudden mood swings. This setting
449 has no effect in buffer listings, where dot files are treated like any
450 other file.
451
452 *g:CommandTScanDotDirectories*
453 |g:CommandTScanDotDirectories| boolean (default: 0)
454
455 Normally Command-T will not recurse into "dot-directories" (directories
456 whose names begin with a dot) while performing its initial scan. Set
457 this setting to a non-zero value to override this behavior and recurse.
458 Note that this setting is completely independent of the
459 |g:CommandTAlwaysShowDotFiles| and |g:CommandTNeverShowDotFiles|
460 settings; those apply only to the selection and display of matches
461 (after scanning has been performed), whereas
462 |g:CommandTScanDotDirectories| affects the behaviour at scan-time.
463
464 Note also that even with this setting off you can still use Command-T to
465 open files inside a "dot-directory" such as ~/.vim, but you have to use
466 the |:cd| command to change into that directory first. For example:
467
468 :cd ~/.vim
469 :CommandT
470
471 *g:CommandTMatchWindowAtTop*
472 |g:CommandTMatchWindowAtTop| boolean (default: 0)
473
474 When this setting is off (the default) the match window will appear at
475 the bottom so as to keep it near to the prompt. Turning it on causes the
476 match window to appear at the top instead. This may be preferable if you
477 want the best match (usually the first one) to appear in a fixed location
478 on the screen rather than moving as the number of matches changes during
479 typing.
480
481 *g:CommandTMatchWindowReverse*
482 |g:CommandTMatchWindowReverse| boolean (default: 0)
483
484 When this setting is off (the default) the matches will appear from
485 top to bottom with the topmost being selected. Turning it on causes the
486 matches to be reversed so the best match is at the bottom and the
487 initially selected match is the bottom most. This may be preferable if
488 you want the best match to appear in a fixed location on the screen
489 but still be near the prompt at the bottom.
490
491As well as the basic options listed above, there are a number of settings that
492can be used to override the default key mappings used by Command-T. For
493example, to set <C-x> as the mapping for cancelling (dismissing) the Command-T
494window, you would add the following to your ~/.vimrc:
495
496 let g:CommandTCancelMap='<C-x>'
497
498Multiple, alternative mappings may be specified using list syntax:
499
500 let g:CommandTCancelMap=['<C-x>', '<C-c>']
501
502Following is a list of all map settings and their defaults:
503
504 Setting Default mapping(s)
505
506 *g:CommandTBackspaceMap*
507 |g:CommandTBackspaceMap| <BS>
508
509 *g:CommandTDeleteMap*
510 |g:CommandTDeleteMap| <Del>
511
512 *g:CommandTAcceptSelectionMap*
513 |g:CommandTAcceptSelectionMap| <CR>
514
515 *g:CommandTAcceptSelectionSplitMap*
516 |g:CommandTAcceptSelectionSplitMap| <C-CR>
517 <C-s>
518
519 *g:CommandTAcceptSelectionTabMap*
520 |g:CommandTAcceptSelectionTabMap| <C-t>
521
522 *g:CommandTAcceptSelectionVSplitMap*
523 |g:CommandTAcceptSelectionVSplitMap| <C-v>
524
525 *g:CommandTToggleFocusMap*
526 |g:CommandTToggleFocusMap| <Tab>
527
528 *g:CommandTCancelMap*
529 |g:CommandTCancelMap| <C-c>
530 <Esc> (not on all terminals)
531
532 *g:CommandTSelectNextMap*
533 |g:CommandTSelectNextMap| <C-n>
534 <C-j>
535 <Down>
536
537 *g:CommandTSelectPrevMap*
538 |g:CommandTSelectPrevMap| <C-p>
539 <C-k>
540 <Up>
541
542 *g:CommandTClearMap*
543 |g:CommandTClearMap| <C-u>
544
545 *g:CommandTCursorLeftMap*
546 |g:CommandTCursorLeftMap| <Left>
547 <C-h>
548
549 *g:CommandTCursorRightMap*
550 |g:CommandTCursorRightMap| <Right>
551 <C-l>
552
553 *g:CommandTCursorEndMap*
554 |g:CommandTCursorEndMap| <C-e>
555
556 *g:CommandTCursorStartMap*
557 |g:CommandTCursorStartMap| <C-a>
558
559In addition to the options provided by Command-T itself, some of Vim's own
560settings can be used to control behavior:
561
562 *command-t-wildignore*
563 |'wildignore'| string (default: '')
564
565 Vim's |'wildignore'| setting is used to determine which files should be
566 excluded from listings. This is a comma-separated list of glob patterns.
567 It defaults to the empty string, but common settings include "*.o,*.obj"
568 (to exclude object files) or ".git,.svn" (to exclude SCM metadata
569 directories). For example:
570
571 :set wildignore+=*.o,*.obj,.git
572
573 A pattern such as "vendor/rails/**" would exclude all files and
574 subdirectories inside the "vendor/rails" directory (relative to
575 directory Command-T starts in).
576
577 See the |'wildignore'| documentation for more information.
578
579
580AUTHORS *command-t-authors*
581
582Command-T is written and maintained by Wincent Colaiuta <win@wincent.com>.
583Other contributors that have submitted patches include (in alphabetical
584order):
585
586 Anthony Panozzo
587 Daniel Hahler
588 Lucas de Vries
589 Marian Schubert
590 Matthew Todd
591 Mike Lundy
592 Scott Bronson
593 Steven Moazami
594 Sung Pae
595 Victor Hugo Borja
596 Woody Peterson
597 Zak Johnson
598
599As this was the first Vim plug-in I had ever written I was heavily influenced
600by the design of the LustyExplorer plug-in by Stephen Bach, which I understand
601is one of the largest Ruby-based Vim plug-ins to date.
602
603While the Command-T codebase doesn't contain any code directly copied from
604LustyExplorer, I did use it as a reference for answers to basic questions (like
605"How do you do 'X' in a Ruby-based Vim plug-in?"), and also copied some basic
606architectural decisions (like the division of the code into Prompt, Settings
607and MatchWindow classes).
608
609LustyExplorer is available from:
610
611 http://www.vim.org/scripts/script.php?script_id=1890
612
613
614WEBSITE *command-t-website*
615
616The official website for Command-T is:
617
618 https://wincent.com/products/command-t
619
620The latest release will always be available from there.
621
622Development in progress can be inspected via the project's Git repository
623browser at:
624
625 https://wincent.com/repos/command-t
626
627A copy of each release is also available from the official Vim scripts site
628at:
629
630 http://www.vim.org/scripts/script.php?script_id=3025
631
632Bug reports should be submitted to the issue tracker at:
633
634 https://wincent.com/issues
635
636
637DONATIONS *command-t-donations*
638
639Command-T itself is free software released under the terms of the BSD license.
640If you would like to support further development you can make a donation via
641PayPal to win@wincent.com:
642
643 https://wincent.com/products/command-t/donations
644
645
646LICENSE *command-t-license*
647
648Copyright 2010-2011 Wincent Colaiuta. All rights reserved.
649
650Redistribution and use in source and binary forms, with or without
651modification, are permitted provided that the following conditions are met:
652
6531. Redistributions of source code must retain the above copyright notice,
654 this list of conditions and the following disclaimer.
6552. Redistributions in binary form must reproduce the above copyright notice,
656 this list of conditions and the following disclaimer in the documentation
657 and/or other materials provided with the distribution.
658
659THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
660AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
661IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
662ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
663LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
664CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
665SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
666INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
667CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
668ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
669POSSIBILITY OF SUCH DAMAGE.
670
671HISTORY *command-t-history*
672
6731.3.1 (18 December 2011)
674
675- fix jumplist navigation under Ruby 1.9.x (patch from Woody Peterson)
676
6771.3 (27 November 2011)
678
679- added the option to maintain multiple caches when changing among
680 directories; see the accompanying |g:CommandTMaxCachedDirectories| setting
681- added the ability to navigate using the Vim jumplist (patch from Marian
682 Schubert)
683
6841.2.1 (30 April 2011)
685
686- Remove duplicate copy of the documentation that was causing "Duplicate tag"
687 errors
688- Mitigate issue with distracting blinking cursor in non-GUI versions of Vim
689 (patch from Steven Moazami)
690
6911.2 (30 April 2011)
692
693- added |g:CommandTMatchWindowReverse| option, to reverse the order of items
694 in the match listing (patch from Steven Moazami)
695
6961.1b2 (26 March 2011)
697
698- fix a glitch in the release process; the plugin itself is unchanged since
699 1.1b
700
7011.1b (26 March 2011)
702
703- add |:CommandTBuffer| command for quickly selecting among open buffers
704
7051.0.1 (5 January 2011)
706
707- work around bug when mapping |:CommandTFlush|, wherein the default mapping
708 for |:CommandT| would not be set up
709- clean up when leaving the Command-T buffer via unexpected means (such as
710 with <C-W k> or similar)
711
7121.0 (26 November 2010)
713
714- make relative path simplification work on Windows
715
7161.0b (5 November 2010)
717
718- work around platform-specific Vim 7.3 bug seen by some users (wherein
719 Vim always falsely reports to Ruby that the buffer numbers is 0)
720- re-use the buffer that is used to show the match listing, rather than
721 throwing it away and recreating it each time Command-T is shown; this
722 stops the buffer numbers from creeping up needlessly
723
7240.9 (8 October 2010)
725
726- use relative paths when opening files inside the current working directory
727 in order to keep buffer listings as brief as possible (patch from Matthew
728 Todd)
729
7300.8.1 (14 September 2010)
731
732- fix mapping issues for users who have set |'notimeout'| (patch from Sung
733 Pae)
734
7350.8 (19 August 2010)
736
737- overrides for the default mappings can now be lists of strings, allowing
738 multiple mappings to be defined for any given action
739- <Leader>t mapping only set up if no other map for |:CommandT| exists
740 (patch from Scott Bronson)
741- prevent folds from appearing in the match listing
742- tweaks to avoid the likelihood of "Not enough room" errors when trying to
743 open files
744- watch out for "nil" windows when restoring window dimensions
745- optimizations (avoid some repeated downcasing)
746- move all Ruby files under the "command-t" subdirectory and avoid polluting
747 the "Vim" module namespace
748
7490.8b (11 July 2010)
750
751- large overhaul of the scoring algorithm to make the ordering of returned
752 results more intuitive; given the scope of the changes and room for
753 optimization of the new algorithm, this release is labelled as "beta"
754
7550.7 (10 June 2010)
756
757- handle more |'wildignore'| patterns by delegating to Vim's own |expand()|
758 function; with this change it is now viable to exclude patterns such as
759 'vendor/rails/**' in addition to filename-only patterns like '*.o' and
760 '.git' (patch from Mike Lundy)
761- always sort results alphabetically for empty search strings; this eliminates
762 filesystem-specific variations (patch from Mike Lundy)
763
7640.6 (28 April 2010)
765
766- |:CommandT| now accepts an optional parameter to specify the starting
767 directory, temporarily overriding the usual default of Vim's |:pwd|
768- fix truncated paths when operating from root directory
769
7700.5.1 (11 April 2010)
771
772- fix for Ruby 1.9 compatibility regression introduced in 0.5
773- documentation enhancements, specifically targetted at Windows users
774
7750.5 (3 April 2010)
776
777- |:CommandTFlush| now re-evaluates settings, allowing changes made via |let|
778 to be picked up without having to restart Vim
779- fix premature abort when scanning very deep directory hierarchies
780- remove broken |<Esc>| key mapping on vt100 and xterm terminals
781- provide settings for overriding default mappings
782- minor performance optimization
783
7840.4 (27 March 2010)
785
786- add |g:CommandTMatchWindowAtTop| setting (patch from Zak Johnson)
787- documentation fixes and enhancements
788- internal refactoring and simplification
789
7900.3 (24 March 2010)
791
792- add |g:CommandTMaxHeight| setting for controlling the maximum height of the
793 match window (patch from Lucas de Vries)
794- fix bug where |'list'| setting might be inappropriately set after dismissing
795 Command-T
796- compatibility fix for different behaviour of "autoload" under Ruby 1.9.1
797- avoid "highlight group not found" warning when run under a version of Vim
798 that does not have syntax highlighting support
799- open in split when opening normally would fail due to |'hidden'| and
800 |'modified'| values
801
8020.2 (23 March 2010)
803
804- compatibility fixes for compilation under Ruby 1.9 series
805- compatibility fixes for compilation under Ruby 1.8.5
806- compatibility fixes for Windows and other non-UNIX platforms
807- suppress "mapping already exists" message if <Leader>t mapping is already
808 defined when plug-in is loaded
809- exclude paths based on |'wildignore'| setting rather than a hardcoded
810 regular expression
811
8120.1 (22 March 2010)
813
814- initial public release
815
816------------------------------------------------------------------------------
817vim:tw=78:ft=help: