: Vfind – 확장:Vedit
3903 단어 vim-scriptease
묘사
나는 명령:Vfind
이나 $ which -a vim
의 정신에 부합되는)을 사용하여 모든vim인식의 하위 폴더를 검색하는 것이 더 편리하다고 생각한다.This is a list of directories which will be searched for runtime
files:
filetype.vim filetypes by file name |new-filetype|
scripts.vim filetypes by file contents |new-filetype-scripts|
autoload/ automatically loaded scripts |autoload-functions|
colors/ color scheme files |:colorscheme|
compiler/ compiler files |:compiler|
doc/ documentation |write-local-help|
ftplugin/ filetype plugins |write-filetype-plugin|
indent/ indent scripts |indent-expression|
keymap/ key mapping files |mbyte-keymap|
lang/ menu translations |:menutrans|
menu.vim GUI menus |menu.vim|
plugin/ plugin scripts |write-plugin|
print/ files for printing |postscript-print-encoding|
spell/ spell checking files |spell|
syntax/ syntax files |mysyntaxfile|
tutor/ files for vimtutor |tutor|
때때로 사용자가 생각하는 파일이 ftplugin
, plugin
, autoload
, scriptease.vim
중 하나인지, 아니면 폴더 plugin
중 하나인지 알 수 없기 때문에 예상한 foldername를 미리 입력할 필요가 없습니다.:Ve plugin/scriptease.vim
대신 :Vf scriptease.vim
를 입력할 수 있습니다.토론 #1
여러 폴더에 같은 파일 이름이 있는 것은 매우 흔한 일이기 때문에 나는 이것이 유용한지 의심스럽다.토론 #2
물론 네가 옳다. 같은 파일 이름이 여러 폴더에 자주 나타난다.그러나, 이것은
:Vedit
에 이미 적용되었고, 만약 그 중 하나의 파일이 있다면, 그것도 여러 개의 파일을 되돌려줄 것이다1.
$HOME/.vim
,2.
$VIM/vimfiles
,3.
$VIMRUNTIME
,4.
$VIM/vimfiles/after
,5.
$HOME/.vim/after
,6. 병원체나 기타
rtp
관리자(vim plug, vundle 등) 확장rtp
을 사용할 경우 더 많을 수 있습니다.실제로 같은 파일 이름이 여러 폴더에 나타나는 경우도 생각해 봤습니다.
사용자는 자신이 찾고 있는 내용과 관련이 있는 파일을 찾고 모든 파일의 목록을 얻기를 원합니다.
:Vfind
는 단일 파일, 짧은 파일 또는 긴 파일 목록을 되돌릴 수 있다:Vedit
와 같다.현재 나는 이것이 다음과 같은 상황에서 유용하다고 생각한다. (다른 사람들이 진일보한 용례를 가지고 있을 수도 있다.)
1. vim이 인식하는 rtp의 모든 위치에 대한 파일 목록
2. 사용자가 파일의 위치를 잊어버렸다(전역/로컬, 후면/비후면, 플러그인/자동 불러오기)
3. 위에서 설명한 대로 고유 파일을 여는 명령을 줄입니다.
예를 들어
vinegar.vim
도netrw 문법 설정이 있는데 이걸 검색하기 전에 몰랐어요.내 말은 모든 문법과 관련된 것이 반드시 syntax/<netrw>.vim
에 있어야 하는 것은 아니지만 다른 곳에 있을 수 있다는 것이다.문법과 무관한 내용은 syntax/<netrw>.vim
에서 찾을 수 있다.어쨌든vim는 명확한 분리를 실시하지 않았다.내가 이 점을 생각했을 때 a
:Vgrep
도 매우 유용할 것이다.토론 #셋
의 다른 점은 문서가 $HOME/.vim
와 $VIMRUNTIME
에 동시에 나타날 때 전자가 우선이라는 것이다.주요 예외는 after/
파일이지만 미리 접두사after/
를 붙여서 이 파일에 현시적으로 접근할 수 있다.만약 네가 정말로 생각한다면, 너는
:Vedit */ruby.vim
모든 파일을 이렇게 명명할 수 있다.나는 정말 단독으로 명령을 내리는 것이 합리적이라고 생각하지 않는다.나는 과거에
:Vgrep
하나를 만들어 보았지만, 어떤 실행 중에는 다른 디렉터리에 디렉터리를 끼워 넣는 방식이 이상해졌다.좀 더 조사해 주세요.토론 #4
를 보면:Vfind
에 가깝다:Vedit
.사실 내가 말하고 싶은 것은 상반된 것이다.그러나, 나는 여전히 rtp의 파일 검색이 완전히 쓸모없는 것은 아니라고 생각한다.모든 파일이 하위 폴더에 있다는 것을 거의 확신할 수 있기 때문에,
*/filename
는 Vfind의 제안을 모방할 수 있습니다.그래서 나는 네가 새로운 명령에 대한 반대를 이해할 수 있다.이 일을 일깨워 주셔서 감사합니다.
vgrep에 관해서: 당신은 나에게 당신의 실험을 보여주고 왜 어떤 실행 시 디렉터리의 삽입 방식이 이상하게 변하는지 구체적으로 설명해 줄 수 있습니까?
그러나 이것은 나에게 있어서 결코 우선적으로 고려할 문제가 아니다. 게다가 너의 지식이 나보다 훨씬 낫다. 이것은 나로 하여금 이 일을 조사하는 데 망설이게 한다.
Vfind가 토론 범위에 없기 때문에, 나는 이 문제를 끝냈다.Vgrep을 조사할 시간이 있을 때, 나는 단독 문제를 열 것이다.
토론 #5
나는 이미 실험의 사본이 없다고 생각한다.문제는 런타임 경로에.vim
와 .vim/bundle/vim-scriptease
가 모두 포함되면 중복 결과가 나온다는 것입니다.토론 #6
따라서 rtp는 흔히 볼 수 있는 가장 긴 경로로 줄여야 한다. 참고.http://superuser.com/a/1042593/161119.토론 #7
네, 차이가 많지 않아요.Reference
이 문제에 관하여(: Vfind – 확장:Vedit), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://github.com/tpope/vim-scriptease/issues/26텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)