코어 Vim 운동으로 빠르게 이동

11181 단어 vimproductivityvscode

This is a chapter Moving Blazingly Fast with The Core Vim Motions from the book Boosting Your Coding Fu with VSCode and Vim.


동작(예: 동작 중)은 Vim에서 이동하는 방식입니다.이 명령들은 입력할 때 커서를 신속하고 정확하게 이동할 수 있다.그것들은 여러 가지가 있는데, 각각 다른 유형과 길이의 운동에 가장 적합하다.나는 그것들이 Visual Studio 코드의 본체 Go-To 기능(예를 들어 Go-To-File과 Go-To-Symbol)과 잘 어울려 사용되는 것을 발견했다.
다음은 가장 유용한 도구의 간략한 목록과 언제 어떻게 사용하는지입니다.

한 글자씩 수평으로 이동하다


단어 운동은 한 단어에서 다른 단어로 뛰어내릴 수 있다. (왼쪽에서 오른쪽 또는 오른쪽에서 왼쪽)따라서 기본 수평 운동 hl 보다 빠른 속도로 이동할 수 있습니다.
다음과 같이 w (word) 명령을 사용하여 다음 단어의 시작으로 이동할 수 있습니다.

다음과 같이 할 수 있습니다.
  • 사용b(후퇴) 단어의 첫머리로 뒤로 뛰기
  • 사용e(end)단어
  • 의 끝으로 건너뛰기
  • 사용ge 단어 끝으로 뒤로 이동
  • 조기법 을 빌려 명령 을 배우다

    Vim has a humongous amount of commands. In time, when you become an experienced Vim user, the commands will become second nature, reflexive and automatic. At the beginning though, you'll need to learn them one by one.

    A great way to learn Vim commands is by using mnemonics like associating a letter to a word that is easier to remember. For instance, you can remember that w lets you move from word to word by associating it with word, or that b lets you move word to word backwards by associating it with back.

    Following this technique, you'll find that you can learn and recall a lot of commands with little effort.


    문자와 문자

    w, b, e, ge. 우리는Vim에서 한 글자씩 이동합니다.그런데 한 단어가 도대체 뭐예요?Vim의 한 단어는 다음과 같습니다.
  • 알파벳, 숫자, 숫자의 서열
  • 기타 비공백 문자 시퀀스
  • these are 4 words
    and these below too
    ,,, ..... ((((( ,.(
    
    그러나 Vim도 특수한 유형의 단어(자모, 숫자, 숫자 포함)라는 개념을 가지고 있다. 이 단어들은 특수한 문자도 포함한다. 예를 들어 (, {, W 등이다.

    문자는 우리 프로그래머에게 특히 유용하다. 왜냐하면 코드에는 항상 많은 문자가 있기 때문이다.
    this is a WORD: Iam_A_WORD(WORD)
    this function call sum(2,3) is also a WORD
    this array [1,2,3,4,5] is a WORD as well
    
    한 글자씩 이동하려면 앞에서 설명한 운동의 대문자 등가물(B, E, gE, f{character}, f"을 사용할 수 있다.
    일반적으로 문자 동작은 더 정확한 변경을 허용하고 문자 동작은 더 빠른 이동을 허용합니다.
    wwww ==> v   v v   v   v
             word. are two words
             word. is one WORD
    WWW  ==> ^     ^  ^   ^
    

    특정 역할로 이동


    역할 찾기 동작(Find character motions)을 사용하면 빠르고 정밀하게 수평으로 이동할 수 있습니다.
  • F{character}(찾기)를 사용하여 행의 문자의 다음 일치 항목으로 이동합니다.예를 들어, f 는 다음에 나타나는 큰따옴표로 보냅니다.
  • 커서 뒤에 대상이 있는 경우 f 를 사용하여 이전에 표시된 문자를 찾을 수 있습니다

  • 하나의 예에서 우리는 문자 운동을 사용하는 것보다 t 더 빠르고 정확하게 한 문자 운동을 다른 문자 운동에 상대적으로 배치함으로써 알 수 있다.
    f(   ==> v                        v
             const fireball = function(target){
    wwww ==> ^     ^        ^ ^       ^
    
    Vim은 t{character} 외에도 다음과 같은 명령을 제공합니다.
  • 다음 문자가 나타나기 전에 커서를 이동합니다t{character}.
  • 마찬가지로 T{character} 를 사용하여 t{character} 과 동일한 작업을 수행할 수 있지만 뒤로
  • ft 명령 간의 차이가 명확하지 않은 경우 다음 예제에서는 두 명령을 비교합니다.
    t(   ==> v                       v
             const fireball = function(target){
    f(   ==> ^                        ^
    
    t 동작과 연산자를 결합하여 텍스트 변경을 수행할 때 유용합니다. 예를 들어 ( 때까지 모든 내용을 삭제한 다음 다른 내용으로 변경할 수 있습니다.f{character}를 사용하면 ; 문자의 다음 일치 항목으로 이동하거나 , 이전 일치 항목으로 이동할 수 있습니다.;,을 마지막 문자 검색을 반복하는 명령으로 간주할 수 있습니다.동일한 검색을 반복해서 입력하는 것을 피할 수 있기 때문에 좋습니다.
    fdfdfd ==> v   v               v        v
               let damage = weapon.damage * d20();
               let damage = weapon.damage * d20();
    fd;;   ==> v   v               v        v
    

    음표, 선율과 코드를 논하다

    Vim is quite special. If you have used other editors you're probably accustomed to typing chords of keys. That is, typing a combination of keys at the same time. For instance, CTRL-C to copy and CTRL-V to paste. Although Vim is no stranger to chords, it relies even more on melodies of keys.

    A melody is a series of notes played one after the other. If you think of keys as notes, then melodies of keys are keys that are pressed one after the other in rapid succession. So, when you read that you need to type f{character} to find a character in a line, it means that first you type f, and then you type the character {character}. These two keys are, thus, played as a melody.

    Using melodies of keys is the most common way in which you interact with Vim. And, although unfamiliar and kind of strange, it is very convenient because controlling the editor suddenly feels like you're just typing text. It is also marvellous for your wrists' health because you no longer need to rely of complex and unnatural key combinations that strain your poor joints1.


    수평 이동이 굉장히 심해요.


    수평으로 이동하려면 다음을 사용하십시오.
  • 0: 행으로 이동하는 첫 번째 문자
  • ^: 행으로 이동하는 첫 번째 비공백 문자
  • $: 행 끝으로 이동
  • g_: 행 끝으로 이동하는 비공백 문자
  • 수직 이동

    kj부터 우리는 더욱 빠른 수직 기동 방식으로 전환한다.
  • } 전체 단락 아래로 건너뛰기
  • { 비슷하지만 위로
  • CTRL-D 페이지 스크롤
  • 을 통해 절반 아래로 이동할 수 있음
  • CTRL-U 또는 스크롤
  • 을 통해 반 페이지를 위로 이동할 수 있습니다.
    이것들은 모두 내가 가장 좋아하는 것은 아니지만, 당분간은 괜찮다.'사용자 정의 맵'장에서 최종 중주파 수직 동작을 위한 사용자 정의 키프레임 귀속을 만드는 방법을 배울 것입니다.

    검색 모드가 있는 고정밀 수직 동작


    마음속에 목표가 있을 때 더 빨리 수직으로 이동하려면 /{pattern}?{pattern} 명령을 사용하여 목표를 검색하는 것이 가장 좋습니다.
  • 사용 /{pattern} 파일
  • 내 검색
  • 사용?{pattern} 뒤로 검색
  • 그 중 {pattern} 부분은 일반적으로 문자열 문자(방법, 클래스 또는 변수의 이름)이지만 정규 표현식일 수도 있다.
    만약 당신이 컴퓨터 근처에 있다면, 즉시 검색 명령을 입력하십시오.검색 명령을 입력하면 패턴과 일치하는 모든 텍스트 위치가 파일에 강조 표시됩니다.패턴을 계속 입력하면 강조 표시된 영역이 업데이트되고 새 일치 항목이 반영됩니다.찾을 내용을 찾으면 <Enter> 을 입력하면 커서가 문서의 첫 번째 일치 항목으로 이동합니다.필요한 경우 편집을 수행한 다음 n 다음 일치로 건너뛰기 (또는 N 이전 일치로 건너뛰기) 를 사용할 수 있습니다.n를 중복 검색으로 볼 수 있습니다.

    강조 표시 검색 활성화

    For some reason unbeknownst to me, highlighted search isn't enabled by default in VSCodeVim. To remedy that, go to Preferences and enable the Vim: Hlsearch option (or, alternatively, use the vim.hlsearch option in the json version of the configuration).


    Vim은 마지막 검색을 실행하기 위해 언제든지 /<Enter> 또는 ?<Enter> 을 입력하여 시간을 절약하는 것을 좋아합니다.또는 * 검색 커서 아래의 단어 # 를 사용하여 뒤로 검색합니다.

    계수를 사용하여 이동 속도 향상


    계수는 명령 효과를 배가시키는 숫자다.명령 앞에 다음 수를 추가하여 사용할 수 있습니다.
    {count}{command}
    
    예:
  • 2w 커서 두 글자를 앞으로 이동할 수 있습니다.
  • 5j 커서 위치를 아래 5줄로 변경합니다.
  • 3; 역할의 다음 세 번째 일치 항목으로 이동할 수 있습니다.
  • 2/baby 문서baby의 두 번째 일치 항목으로 보냅니다.
  • 일반적으로 {count}{motion} 를 사용하여 운동{count}을 곱합니다.

    상대 행 번호

    A great way to move vertically within Vim is by using counts in combination with the j and k motions. But sometimes it can be hard to know how many lines you need to jump to get to the desired position. That's where relative line numbers can come in quite handy.

    Relative line numbers show line numbers in relation to your current line: If the current line is where your cursor is resting, the line below would have line number 1, the next one line number 2, and so on. Using relative line numbers, it is very straightforward to see how many lines you need to jump to get to where you want to go. Just take a sneak peek at the relative line number and use it as a count.

    You can enable relative line numbers in VSCode by going to Preferences (Remember! Use the command palette with CMD-SHIFT-P or CTRL-SHIFT-P), searching for the line numbers configuration and setting it to relative.


    의미 이동


    이전에 코드의 의미를 진정으로 고려하지 않았던 동작을 제외하고Vim은 추가 귀속을 제공하여 코드의 의미를 고려했다.
  • gd를 사용하여 커서 아래의 정의로 이동합니다.
  • 을(를) 사용하여 가져오는 파일로 이동합니다.
  • 그리고 예쁜 핵심 동작들이 있어요.


    그리고 더 많은 동작은 언제든지 유용하게 사용할 수 있다.
  • 파일 맨 위로 gf 를 입력합니다.
  • 를 사용하여 gg 특정 행으로 이동합니다.
  • 사용{line}gg을 사용하여 파일 끝으로 이동합니다.
  • 입력G을 일치%로 이동합니다.
  • 총결산


    동작은 Vim에서 고속, 고정밀로 이동할 수 있는 명령입니다.그것들은 멜로디로 입력된 하나 이상의 키로 구성되어 있다.그것들은 너로 하여금 서로 다른 길이와 정밀도로 서로 다른 유형의 동작을 실행하게 할 수 있다.
    가장 기본적인 것은 ({[]}) 작은 수정에 좋다.그리고 우리는 문자와 단락 운동 hjkl, w 을 가지고 있어서 코드를 더 빨리 조회할 수 있다.그 후에 우리는 고정밀의 유사한 검색 운동{을 가지게 되었고 f을 통해 캐릭터나 검색 모델로 신속하게 전송할 수 있었다.
    Find character와 search motions는 중복기(/,n를 가지고 있습니다. 마지막 검색을 한 글자만 입력하면 중복할 수 있습니다.우리는 그것들을 사용하여 한 경기에서 다른 경기로 빠르게 뛸 수 있다.반복기의 개념은Vim에서 흔히 볼 수 있는 주제입니다. 이 책에서 그 중의 많은 내용을 배울 것입니다.복독자에게 의지하도록 훈련하면 너는 더욱 효과적으로 변할 것이다.
    계수와 운동을 결합하여 더 큰 효과를 얻을 수 있습니다.우리의 대뇌 계수는 매우 느리기 때문에 너는 계수의 사용을 짧은 점프로 제한해야 한다.수직 동작에서 계수를 사용할 때, 상대적인 숫자를 사용하면 좋습니다. 왜냐하면 이것은 목표에 대한 명확한 참고를 제공하기 때문입니다.상대 수가 설정되지 않은 경우 상대 수 설정을 고려하십시오.
    이제 Vim의 다른 기본 블록으로 넘어가 마술처럼 텍스트: 연산자를 편집할 수 있습니다.
    만약 당신이 완관증후군이나 다른 완관절 문제를 겪은 적이 있다면, 이것은 매우 좋다.자신을 도와 인체공학에 적합한 키보드를 하나 사다.너는 장기적으로 그 안에 참여할 것이다. 

    좋은 웹페이지 즐겨찾기