IT story

Vim에서 대괄호 (또는 따옴표 또는 ...)를 선택하는 방법은 무엇입니까?

hot-time 2020. 4. 30. 07:37
반응형

Vim에서 대괄호 (또는 따옴표 또는 ...)를 선택하는 방법은 무엇입니까?


나는이 종류의 물건을위한 플러그인이 있었을 것이라고 확신하지만, 이제는 그것을 필요로하므로 (자연적으로) 그것을 찾을 수없는 것 같아서 간단하고 간단하게 물어볼 것입니다.

대괄호, 따옴표 또는 일반적으로 일치하는 문자 목록 중에서 선택하는 가장 쉬운 방법은 무엇입니까?

   write ( *, '(a)' ) 'Computed solution coefficients:'

예를 들어, 여기에 내가 선택하고 싶은 (a), 또는 Computed solution coefficients:.

나는 여러 줄에 관심이 없으며 한 줄에서 발생하는 경우에만 관심이 있습니다.


괄호 안에 넣고 싶은 탐색 키를 사용하고 나면 일치하는 구획 내에있는 모든 항목을 복사 yi(하거나 yi)복사 할 수 있습니다 . 대괄호 (예 yi]:) 및 중괄호 와도 작동합니다 . 또한합니다 y, 당신은 또한 삭제 또는 변경 텍스트 (예를 들어 ci), di]).

나는 큰 따옴표와 작은 따옴표로 이것을 시도했고 거기에서도 효과가있는 것으로 보입니다. 귀하의 데이터를 위해, 나는 :

write (*, '(a)') 'Computed solution coefficients:'

커서를로 이동 C한 다음을 입력하십시오 yi'. 빈 줄, 히트로 커서를 이동 p하고, GET

Computed solution coefficients:

으로 CMS가 언급 뿐만 아니라 시각적 모드 선택이 작품 - 단지 사용 vi), vi}, vi', 등


작은 따옴표를 선택하기 위해 나는 보통 vi'""내부 작은 따옴표를 선택하십시오 ".

괄호 블록 안에 사용합니다 vib( "내부 블록 선택")

중괄호 블록 안에서 사용할 수 있습니다 viB( "자본 B")

"포함"을 선택하려면 (따옴표, 괄호 또는 중괄호도 선택) a대신을 사용할 수 있습니다 i.

매뉴얼 또는 vim 내 에서 텍스트 개체 선택대한 자세한 내용을 읽을 수 있습니다 :help text-objects.


이 선택 방법은 내장되어 있으며 Vim 도움말에 잘 설명되어 있습니다. XML 태그 등을 다룹니다.

참조하십시오 :help text-objects.


작은 따옴표 내에서 선택하려면을 사용하십시오 vi'.

괄호 안에서 선택하려면를 사용하십시오 vi(.


화살표를 사용하거나 hjkl대괄호 표현식 중 하나를 찾은 다음 v시각적 (예 : 선택) 모드를 선택한 다음 %다른 대괄호로 이동하십시오.


searchpair내장 함수를 사용하여 .vimrc에 Vim 함수를 작성하십시오 .

searchpair({start}, {middle}, {end} [, {flags} [, {skip}
            [, {stopline} [, {timeout}]]]])
    Search for the match of a nested start-end pair.  This can be
    used to find the "endif" that matches an "if", while other
    if/endif pairs in between are ignored.
    [...]

( http://vimdoc.sourceforge.net/htmldoc/eval.html )


가장 투표가 많은 답변에 세부 사항을 추가합니다.

gvim을 사용하고 있고 클립 보드에 복사하려면

"+<command>

대괄호 (또는 괄호 또는 중괄호) 사이의 모든 내용을 복사하려면

예를 들어 : "+yi}커서가있는 중괄호 사이의 모든 내용을 클립 보드에 복사합니다.


플러그인을 만들었습니다 vim-textobj-quotes: https://github.com/beloglazov/vim-textobj-quotes

모든 유형의 가장 가까운 따옴표 쌍에 대한 텍스트 개체를 제공합니다. 단지 사용 iq또는 aq그것은 (선호도 순으로) 현재 서라운드 뒤에 커서, 또는 앞에 커서됩니다 ( ') 따옴표 (') 단일 따옴표 ( "), 또는 뒷면의 내용을 조작 할 수 있습니다 즉, 따옴표에 도달해야 할 때 앞으로 또는 뒤로 점프합니다.

예제를 보면 이해하기가 더 쉽습니다 (커서가로 표시됨 |).

  1. 전 : foo '1, |2, 3' bar; 누른 후 diq:foo '|' bar
  2. 전 : foo| '1, 2, 3' bar; 누른 후 diq:foo '|' bar
  3. 전 : foo '1, 2, 3' |bar; 누른 후 diq:foo '|' bar
  4. 전 : foo '1, |2, 3' bar; 누른 후 daq:foo | bar
  5. 전 : foo| '1, 2, 3' bar; 누른 후 daq:foo | bar
  6. 전 : foo '1, 2, 3' |bar; 누른 후 daq:foo | bar

The examples above are given for single quotes, the plugin works exactly the same way for double (") and back (`) quotes.

You can also use any other operators: ciq, diq, yiq, viq, etc.

Please have a look at the github page linked above for more details.


A simple keymap in vim would solve this issue. map viq F”lvf”hh This above command maps viq to the keys to search between quotes. Replace " with any character and create your keymaps. Stick this in vimrc during startup and you should be able to use it everytime.

참고URL : https://stackoverflow.com/questions/1061933/how-to-select-between-brackets-or-quotes-or-in-vim

반응형