====== FuzzyFinder ====== 파일 이름으로 빠르게 탐색하여 파일을 연다. 버퍼, 디렉토리, 태그, 북마크 등도 지원한다. * [[vim:ctrlp|Vim CtrlP]]가 나은듯. * http://www.vim.org/scripts/script.php?script_id=1984 * 설치하려면 [[http://www.vim.org/scripts/script.php?script_id=3252|L9 Library]]도 먼저 설치해야 한다. * 기본적으로 Vim을 실행한 디렉토리를 기준으로 파일을 탐색한다. 아래난 Partial Matching을 한다. Fuzzy Matching은 끝의 **!**를 빼야한다. * map ff :FufCoverageFile! map fb :FufBuffer! map fd :FufDir! " 파일명 탐색시 제외할 파일 이름 패턴 지정 let g:fuf_coveragefile_exclude = '\v\~$|\.(o|exe|dll|bak|orig|swp|class)$|(^|[/\\])\.(hg|git|bzr)($|[/\\])' ===== 검색 패턴 ===== * Fuzzy Patthern : "abc"를 입력하면 "a*b*c*"를 찾는다. * Partial Pattern : "abc"를 입력하면 "*abc*"를 찾는다. * 검색어 입력 : 기본적으로 primarypattern으로 검색하고, ; 뒤의 값들로 검색결과를 줄여나간다. * MruFile>primarypatterh.vim;refining1/;refining2 ===== 검색중 단축키 ===== * ''Ctrl-\ Ctrl-\'' : Fuzzy/Partial Matching 전환 * ''Ctrl-w'' : 한 단어 삭제 * ''Ctrl-s |g:fuf_keyPrevPattern|, Ctrl-^ |g:fuf_keyNextPattern|'' : 검색 히스토리 * '''' : 선택한 파일 열기 * ''Ctrl-j'' : 창을 분할하고 열기 * ''Ctrl-k'' : 창을 세로 분할하고 열기 * ''Ctrl-l'' : 새 탭에 열기 * ''Ctrl-t, Ctrl-y'' : 모드 변환 이전/다음 * ''Ctrl-@'' : 프리뷰 가능한 모드에서 프리뷰를 보여줌. ===== 주요 모드 ===== * Buffer Mode : 버퍼 목록을 보여주고 검색/선택. * ''Ctrl-]'' : 선택한 버퍼 삭제 * File Mode : 파일 목록 * Coverage-File Mode : 지정된 커버리지의 파일 목록을 보여주고 검색/선택 * 기본 검색 대상 : 워킹 디렉토리 이하의 모든 파일 * Directory Mode : 디렉토리 목록을 보여주고, 해당 디렉토리로 이동. * MRU File Mode : 최근 사용 파일 목록 * Bookmark File Mode : 북마크 목록을 보여주고, 해당 파일의 해당 위치로 이동 * :FufBookmarkFileAdd : 북마크 추가 * ''Ctrl-]'' : 북마크 삭제 * Bookmark Dir Mode : 디렉토리 북마크 목록을 보여주고, 선택하면 해당 디렉토리로 이동 * :FufBookmarkDirAdd : 디렉토리 북마크 * 기타 등등... ===== 축약 Abbreviation ===== * 검색 대상 영역을 미리 정의해 둘 수 있다. * let g:fuf_abbrevMap = { \ "^doc:" : [ \ "~/project/**/doc/", \ ".vim/doc/", \ ], \ } * 위와 같이 설정하면, "doc:txt" 로 검색시에 다음을 검색 대상으로 한다. * "~/project/**/doc/*t*x*t*" ".vim/doc/*t*x*t*" ===== 데이터 파일 ===== * ''g:fuf_dataDir'' 디렉토리에 FuzzyFinder 관련 데이터 파일을 저장한다. ===== 명령어 ===== * 명령어 뒤에 **!**를 붙이면 Partial matching으로 작동한다.