Vi & Vim

vi 및 Vim 계열의 텍스트 편집기를 사용하는 사람들을위한 Q & A

1
Vim 정규 표현식 리터럴을 다른 마법 모드로 변환하는 방법이 있습니까?
문자열 리터럴에 magic Vim 정규식이 있으면 전체 정규식을 다른 마법 모드를 사용하는 대체 표현으로 변환하는 방법이 있습니까? 그래서 해당 정규식을 소스 코드에 붙여 넣을 수 있습니까? 예를 들어,이 마법 모드 패턴을 변환하려면 다음을 수행하십시오. '\m-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>' 매우 읽기 쉬운 모드로 만들기 : '\v-=<\d+L=>|0[xX][0-9a-fA-F]+>' 나는 종종 그것을 손으로 변환하려고 실수를합니다.


1
왜 창문이 함께 스크롤됩니까?
같은 버퍼에 두 개의 창이 열려 있고 같은 파일의 두 부분을 동시에 편집하고 싶습니다. 창문이 스크롤되어 있기 때문에 나는 할 수 없습니다. 나는 noscrollbind이것으로 혼란스러워했다. 그 밖의 원인은 무엇입니까? 새 세션을 시작하면 문제가 해결됩니다. 모든 버퍼 번호를 기억했기 때문에 세션을 닫지 않아도됩니다.

1
quiting insert 모드없이 커서를 올바른 들여 쓰기 수준으로 옮기는 방법은 무엇입니까?
예를 들어이 JavaScript 코드가 있습니다. |문자가 커서 위치를 나타내며, 그것은 빈 줄에 있습니다. function a() { console.log("a"); function b() { console.log("b"); function c() { console.log("c"); } | c(); } b(); } 요청 된 작업 후 내용은 다음과 같습니다. function a() { console.log("a"); function b() { console.log("b"); function c() { console.log("c"); …

1
: search () 호출 후 일치하는 문자열을 얻을 수 있습니까?
vimscript-function에서 l:matched호출 후 변수에 일치하는 문자열을 할당해야하며 search()현재하고있는 것보다 짧은 방법이 있는지 궁금합니다. let l:pattern = '\v^Foo: \zs.*' let l:line = search(l:pattern) let l:line_text = getline(l:line) let l:matched = matchstr(l:line, l:pattern) 이상적으로는 다음과 같은 것을 원합니다. let l:matched = search_text(l:pattern) 에 의지하지 않고 getline(). 찾을 수없는 vim 기능이 있습니까?
14 vimscript  search 

1
ftplugin의 autocmd의 경우 패턴 일치 또는 <buffer>를 사용해야합니까?
파일을 자동으로 저장하는 TeX 및 Markdown 파일에 대한 autocmd가 있습니다. 특이한 것은 없습니다 : autocmd CursorHold *.tex,*.md w 이러한 파일에 대한 사용자 지정 설정이 증가하지만, 난으로 그들을 분할 ftplugin/tex.vim과 ftplugin/markdown.vim: " ftplugin/tex.vim autocmd CursorHold *.tex w " ftplugin/markdown.vim autocmd CursorHold *.md w 이제 이러한 파일은 해당 파일에 대해서만 소스되므로 패턴 …
14 autocmd  filetype 


2
vim + tmux에서 커서 모양
cygwin에서 tmux 내에서 vim을 실행할 때 어떻게 다른 커서 모양을 가질 수 있습니까? tmux가 없으면이 라인은 내가 원하는 것을 달성하기에 충분합니다. let &amp;t_SI = "\e[5 q" let &amp;t_EI = "\e[2 q" 그러나 어떻게 든 내 TMUX가 그것을 깨뜨립니다-커서는 내가 어떤 vim 모드에 관계없이 블록 모양을 갖습니다. 내 사양 : 윈도우 …
14 tmux  cygwin 

3
여러 단어를 선택하여 Sublime Text와 같은 줄로 다른 단어를 동시에 편집하십시오.
같은 줄에있는 둘 이상의 단어를 동시에 편집 할 수 있습니까? 예를 들어 내가 이것을 가지고 있다고 가정 해 봅시다. Spam and Eggs is all you need for a healthy breakfast 그리고 줄을 다음과 같이 변경하고 싶습니다. organic_Spam and organic_Eggs is all you need for a healthy breakfast "Spam"및 "Eggs"를 강조 …

1
선택한 줄 접기
비주얼 모드에서 선택한 선을 어떻게 접고 펼칠 수 있습니까? 세 개의 단락이 있고 첫 번째 또는 마지막 두 단락을 한 줄로 접고 싶다고 가정 해 보겠습니다. Test ==== Lorem Ipsum es simplemente el texto de relleno de las imprentas y archivos de texto. Lorem Ipsum ha sido el texto de …


1
특정 파일 확장자를 완료에서 제외하려면 어떻게합니까?
어떤 파일 형식을 열 때 "적합한"것으로 간주되는지 vim을 구성하는 방법이 있습니까? 예를 들어 설명하겠습니다. 라텍스 문서를 만들고 있다고 상상해보십시오. 파일을 빌드하면 디렉토리에 다음이 있습니다 (빌드와 관련된 다른 파일과 함께). X.aux X.log X.out X.pdf X.tex 이제 다른 파일 (예 :)을 작업 중이고 Y.tex원하는 :sp X.tex경우 &lt;Tab&gt;가능한 파일을 순환 하는 데 사용할 …

3
Vim이 "작은 삭제"를 레지스터 "1에 저장할 수 있습니까?
최근에 매크로에서 일부 문제가 발생했기 때문에 YankRing 플러그인을 설치에서 부분적으로 제거했지만 Vim의 레지스터를 대신 사용하도록 훈련하는 것이 더 낫다는 결론을 내 렸습니다. 특히 삭제 된 텍스트가 레지스터에 초기에 저장되는 방식 "1다음 통해 이동 "2, "3등 상기 결실이 이루어로서 매우 유용하다. 그러나 삭제 / 변경으로 인해 한 줄 미만의 텍스트가 제거되면 …
14 register 


2
커서를 삽입 할 때 닫는 "또는 '를 자동으로 추가하지만 커서가 이미 문자열 안에없는 경우에만
vimrc으로 여는 괄호와 괄호를 자동으로 입력하도록 매핑을 정의 했습니다 inoremap ( ()&lt;esc&gt;i. "and에 대해 동일한 작업을 수행하고 싶지만 '커서가 현재 문자열 안에없는 경우에만-문자열 내부 '는 문자열 구분 기호가 아닌 아포스트로피 일 수 있습니다. 어떻게해야합니까?

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.