: 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

네, 차이가 많지 않아요.

좋은 웹페이지 즐겨찾기