fuzzyfinder_textmate

一个扩展fuzzyfinder插件的vim脚本,支持TextMate样式文件搜索(例如cmd-T)。【A vim script that extends the fuzzyfinder plugin to support TextMate style file searches (e.g. cmd-T) 】

Github星跟蹤圖

FuzzyFinder: TextMate

This is an extension to Takeshi NISHIDA's excellent Fuzzyfinder VIM script[1]. It adds a TextMate mode, for completing file names in a similar fashion to how TextMate[2] does file completion in its cmd-T window.

This extension is partially written in Ruby[3], and it depends on a separate Ruby module (fuzzy_file_finder[4]), so you'll need Vim to be compiled with Ruby support.

Usage

Usage is almost identical to the Fuzzyfinder script, so you should check out the documentation[1] for that (which is very good). The only difference is that to start TextMate mode, you just invoke the :FuzzyFinderTextMate command. It is recommended to map that command to something more agile, e.g.:

map t :FuzzyFinderTextMate

Once in TextMate mode, completion is done against the entire directory tree at once, using partial matches. Results are sorted by "score", which is a measure of how closely the file matches the text you entered.

There are several different variables that you may set in your .vimrc file that can be used to tweak the finder's behavior:

  • g:fuzzy_roots - this defaults to the current directory, but may be set to an array of paths that you want the finder to search.
  • g:fuzzy_ceiling - this defaults to 10,000, and is the maximum number of files that the finder will scan before it raises an error. To use the finder on larger trees, set this variable to a value larger than the number of files you expect to scan.
  • g:fuzzy_ignore - this is a delimited list of file glob patterns to ignore. Entries may be delimited using either semi-colons or commas.
  • g:fuzzy_matching_limit - this is the maximum number of items that will be matched, and defaults to 200. If the finder feels sluggish to you, you can reduce this to something smaller (100, or 50).

Installation

First, make sure you have the Fuzzyfinder script[1]. Install that as per the instructions for that script.

Then, you'll need to install the fuzzy_file_finder[4] Ruby module. The simplest way to do this is via Rubygems:

gem install --source=http://gems.github.com jamis-fuzzy_file_finder

Alternatively, you can take the lib/fuzzy_file_finder.rb file from that project and put it in ~/.vim/ruby.

Lastly, you'll need to install this extension script. Take the fuzzyfinder_textmate.vim script and put it under ~/.vim/plugin.

License

Most of this script and its supporting documentation is made available in the PUBLIC DOMAIN. It may be used, modified, and redistributed, almost without exception. The only exceptions are those parts of the code that were copied from NISHIDA's original script; those parts are distributed under the MIT license, as indicated by NISHIDA's code. The parts that were copied are indicated thus by comments.

References

[1] http://www.vim.org/scripts/script.php?script_id=1984
[2] http://www.macromates.com
[3] http://www.ruby-lang.org
[4] http://github.com/jamis/fuzzy_file_finder/tree/master

主要指標

概覽
名稱與所有者jamis/fuzzyfinder_textmate
主編程語言Vim Script
編程語言Vim script (語言數: 1)
平台Mac
許可證
所有者活动
創建於2008-10-10 05:50:02
推送於2008-12-31 23:40:48
最后一次提交2008-12-31 16:36:04
發布數0
用户参与
星數214
關注者數2
派生數28
提交數13
已啟用問題?
問題數0
打開的問題數0
拉請求數0
打開的拉請求數0
關閉的拉請求數0
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?