vi를 마스터하도록 강요하는 가장 좋은 방법은 무엇입니까? [닫은]


205

얼마 전 저는 viemu 제작자가 작성한 기사를 읽고 vi에 대한 많은 오해를 없애고 그것이 왜 좋은 아이디어인지 (그리고 왜 지난 30 년 동안 매우 인기가 있었는지) 설명했습니다. 같은 사람도 한 번에 몇 가지 기본 사항을 가르치는 훌륭한 그래픽 치트 시트 가 있습니다.

확신합니다.

나는 지난 2 년 동안 실제로 확신했다. 그러나 나는 여전히 내 주요 편집자로서 vi를 배우도록 강요받지 못했습니다. 학습 곡선이 너무 높습니다. 내가 일을 시작했을 때, 수용 가능하지만 즉각적인 생산성 (현재 편집자 사용)은 지금까지 훨씬 더 많은 생산성 (vi 사용)을 넘어 섰습니다.

학습 곡선을 극복하는 데 도움이되는 좋은 팁이 있습니까? 그것은 바로 팁, 다른 튜토리얼 또는 기사 일 수 있습니다.

편집 : vi 의 vim / gVim , CreamMacVim 등을 알고 있습니다. 나는 vi에 대한 질문을 계속하여 vi 가족을 전체적으로 언급했습니다. 모든 위대한 답변에 감사드립니다.

업데이트 (2009 년 4 월)

저는 지난 12 월부터 매일 매일 프로 생활에서 Vim (보다 정확하게는 MacVim)을 사용하고 있습니다. 나는 돌아 가지 않을 것이다 :-)

Vim 숙달의 모든 사람에게 행운을 빕니다


14
몇 년 전에 기본 편집기를 변경하는 방법을 몰랐기 때문에 vim을 배웠습니다. ;)
존재하지 않음

시간이 지남에 따른 지식 흡수의 측정치이므로 가파른 학습 곡선이 일반적으로 좋은 것입니다. 즉, 빠르게 학습하고 있음을 의미합니다. :)
converter42

오늘 아침에 vi로 고생하고 있었고 스택 오버플로를 탐색하여 나를 산만하게하고 보았습니다. 이것은 정상에 가깝습니다! 아직도 사용 중이라고 들었는데, 4 개월 만에 신발을 신 었으면 좋겠습니다.
Greg Noe


3
부수적으로 : 거의 모든 것을 위해 vim 플러그인을 얻을 수 있다는 것을 알고 있습니까?! 모든 텍스트 상자가 vim처럼 작동하도록 firefox 용 vim 플러그인을 얻을 수 있습니다! 그러나 이것은 더 흥미롭고 유용합니다. 유용한 것은 (아직 다운로드하지는 않았지만) 일 식용 vim 플러그인입니다. 이제 유용한 것 같습니다!
sixtyfootersdude

답변:


125

우선, Vim을 선택하고 싶을 수도 있습니다. vi가 가진 모든 기능과 함께 뛰어난 기능을 갖추고 있습니다.

즉, 배우는 훈련이 필요합니다. 당신이 직업을 가지고 있고 (해고 당하지 않고) 생산성을 감당할 수 없다면, 나는 편집자를 배우기위한 주말 프로젝트를 제안하는 것이 좋습니다. 작업 할 때 문서를 열어두고, 치킨을 먹지 않도록 충분히 훈련하십시오. 더 많은 것을 배우고, 효율적이되고 근육 기억에 의존하기 시작하면, 그것을 고수하기가 어렵지 않습니다.

나는 오랫동안 Vim을 사용하여 검색하거나 탐색하거나 저장하기 위해 어떤 키를 눌러야할지조차 생각하지 않았습니다. 그리고 내 손은 절대 키보드를 떠나지 않습니다. Vim을 사용하는 것은 프로그래밍 경력에서 선택한 최고의 선택 중 하나입니다.


15
직장에서 배웠고 생산성 저하를 피할 수 없었습니다. 내 옆에 짐승이있어 계속 질문을하는 것이 도움이되었습니다. vim을 잘 아는 사람을 찾아 친구들과 사귀십시오! 탐색 키를 빠르게보고 모드를 처리하십시오. 15 분 안에 시도해보십시오.
camflan

4
동의합니다. 그대로 두십시오. 당신은 당신이 나노 또는 메모장을 사용해야하고 그것이 당신을 미치게되면 당신은 거기에 알 수 있습니다!
Kyle Walsh

3
Vim 사용을 1 년 동안 시작하고 중단 한 후에 Vim 책을 구입하고 그것을 통해 진행하는 것이 상당히 도움이된다는 것을 알았습니다. 또한 "이 작업을 더 빠르게 수행 할 수있는 방법이 있어야합니다"라는 사고 방식을 유지하고 지속적으로 작업을 개선하는 방법에 대한 : help를 계속 살펴 봅니다.
JD Frias

2
또한 편안하게 사용하고 싶은 편리한 기능 목록을 유지하십시오. 저는 5 년 넘게 vim을 사용해 왔으며, 여전히 기억하고 싶다는 새로운 것들을 Tomboy 메모에 보관합니다.
Lucas Oman

65

가장 먼저 할 일은 화살표 키와 ins / home / end / pgup / down 키 위에 종이나 책을 놓는 것입니다. Vi에서는 필요하지 않습니다.

다음으로 탈출을하라는 지시가있을 때마다 ctrl + [를 누르는 것에 익숙해집니다. 훨씬 빠르며 키보드에서 손을 떼지 않아도됩니다.

그런 다음 스크린 캐스트를 시청했습니다.

http://www.youtube.com/watch?v=FcpQ7koECgk

http://www.youtube.com/watch?v=c6WCm6z5msk

http://www.youtube.com/watch?v=BPDoI7gflxM

http://www.youtube.com/watch?v=J1_CfIb-3X4

그런 다음 연습 연습을 연습하십시오.

편집 화살표 키를 피하는 이유는 속도가 느려지기 때문입니다. Vim의 가장 큰 장점 중 하나는 속도입니다. 화살표 키를 사용하면 모달 특성을 실제로 수용 할 수 없으므로 마스터 할 때 매우 강력합니다.


현대 Vi / Vim 사용자는 커서 키를 피해야한다고 생각하지 않습니다. 커서 키가없는 시스템에서는 Vi를 사용하지 않을 것이므로이를 피하는 법을 배우는 것은 불필요하며 잘 작동합니다 (요즘).
tialaramex

24
키보드의 Caps-Lock 키를 Escape로 다시 매핑했습니다. Ctrl + [!보다 빠름
Chris AtLee

커서 키를 피하는 데 동의합니다. Vi의 움직임에 대한 접근 방식의 장점 중 하나는 일단 익숙해지면 모든 상황에 맞게 설정된다는 것입니다 (읽기 : 비좁은 랩탑 레이아웃 또는 오래된 Unices 또는 이상한 터미널을 통한 이상한 OS의 원격 세션)
webmat

8
.vimrc에서 커서를 비활성화 할 때까지 커서를 사용했습니다. map <Up> ""map <Down> ""map <Right> ""map <Left> ""손목이 그 습관을 제거해 주셔서 감사합니다!
요한 Kotlinski

2
Joey, 화살표 키는 실제로 유용하지만 삽입 모드를 종료하고 원하는 위치로 이동하여 삽입 또는 변경을 다시 입력하거나 원하는 모드를 수행하는 모든 모드를 사용하는 것이 거의 항상 좋습니다. 탈출이나 ^ [를 치면 손을 앞뒤로 움직이는 것보다 빠릅니다.
Aaron Jensen

39

0 단계 : 터치 방식 배우기 진지하게-당신의 손가락이 열쇠가 어디에 있는지 모른다면 vim은 고통 스러울 것입니다. vim을 거부하더라도 터치 타이핑은 링크 마찰을 자유롭게 모니터링 할 수 있도록 하여 프로그래밍향상시킵니다 ( Steve Yegge 에게 문의 ). 이 많은소프트웨어 당신이 당신의 입력을 향상시킬 수 있습니다.

1 단계 : vimtutor 를 사용 하여 시작하십시오. gvim (도움말 메뉴 아래에 있음)에 있거나 명령 줄에 'vimtutor'를 입력하면됩니다. 30-45 분의 시간이 소요되며 손가락으로 vi / vim의 기본 사항을 알 수 있으므로 키보드를 창 밖으로 던지지 않고도 파일을 편집 할 수 있습니다.

2 단계 : 어디서나 vim을 사용하십시오. IDE에서 이메일을 작성하기 위해 명령 줄, 웹 브라우저에서 vim 및 vi 키 바인딩을 사용 하기 위한 팁과 링크는 이 질문 을 참조하십시오. vim을 사용하여 키 바인딩을 근육 메모리에 포함시켜야합니다.

3 단계 : vim에 대해 자세히 알아보십시오. 당신은 단지 vimtutor로 표면을 긁었을 것입니다. 당신은 할 수 있습니다 이 비디오를 시청 또는 읽기 이 문서 "유효 텍스트 편집의 일곱 습관"에 대한 (모두 당신은 할 수 있습니다. 읽기 에 대한 트릭StackOverflow의 당신은 찾아 볼 수 있습니다. vimtips을 내 조언을 자주 할 것 저 작은 알아보기 -. 너무 많이있다 한 입 크기의 덩어리를 고집하는 것이 지식을 고수하는 가장 좋은 방법이 될 것입니다.

4 단계 : 이익 :)


2
어느 정도 숙달하려면 터치 타이핑이 필수입니다. 그러나 당신이 정말로이 컴퓨터를 잘 활용하고 싶다면, 누군가 당신에게 그 사실을 말해 줄 필요는 없습니다. 당신은 그것을 쉽게 알아낼 것입니다. =)
sjas

vimtutor is great :-)
user454083

접근하기 쉽고 과학적인 방법으로 vim을 마스터 할 수 있습니다. 나는 이것을 vim으로가는 길로 안내해 줄 것입니다.
YinchaoOnline

26

나는 수년 동안 vim을 자주 사용하는 사용자였습니다 (때때로 시스템 관리 작업을 수행함). 최근에 프로그래밍 작업에 더 많은 시간을 투자하기 시작했습니다. 나는 gvim으로 시작하는 것이 좋습니다. 그것은 대부분의 OS 환경과 잘 통합되며, 더 좋을지라도 필요할 때 마우스로 돌아갈 수 있습니다. :)

vim 을 사용하려면 vitutor (gVim과 함께 제공)를 한두 번 (1 시간 정도 소요) 실행하십시오. 나는 그것이 나에게 얼마나 도움이되었는지 말할 수 없다! 특히 문서를 이동하는 여러 가지 방법과 모션 명령 등으로 편집 동작이 기록되는 방법에 대한 첫 번째 부분은 훨씬 명확합니다.

그런 다음, 빠른 클립에서 유용한 편집 작업을 수행 할 수있을 때까지 신속하게 사소한 편집 (메모장 교체 작업)을 시작하십시오. 그런 다음 일상적인 일을 해보십시오. 다른 편집자에서도 "마지막 반복 작업"명령을 바로 사용할 수 있습니다.


": set mouse = a"를 실행하면 일반 vim에서 마우스를 사용할 수 있습니다.
Stephen Paulger 2009

19

vi 텍스트 편집기에서 학습 곡선을 극복하는 데 도움이되는 유용한 팁을 요청했습니다. 이전 답변 중 많은 사람들이 다른 편집기를 사용하지 말 것을 제안합니다. 좋은 조언이라고 생각합니다. 보다 그래픽 편집기에서 vi로 전환하려면 사고 방식을 변경해야합니다. 시각적 변화보다는 명령의 관점에서 생각해야합니다.

나는 오랫동안 vi를 사용하지 않았으며 생산성을 높일 수있는 유일한 방법은 정기적으로 사용하는 명령을 외우는 것 뿐이라고 생각합니다. 내가 한 방법은 가장 일반적인 키보드 명령의 짧은 목록을 만드는 것입니다. 커서 이동, 편집, 검색 등 기능별로 이러한 명령을 그룹화하고 색상으로 구분했습니다 . 내가 모르는 가장 일반적으로 사용되는 명령 만 포함하도록주의를 기울였습니다. 아이디어는 사용 가능한 도움말 화면을 대체하지 않고 암기하는 데 도움이되는 빠른 참조를 작성하는 것입니다. 그런 다음이 목록을 인쇄하여 모니터 뒤에있는 벽에 테이프로 붙여서 쉽게 볼 수 있도록했습니다. (당신이 언급 한 그래픽 치트 시트는 일부에게는 더 효과적 일 수 있지만, 아마도 암기 도구보다 더 나은 참조 소스 일 것입니다.)

여기 열쇠가 있습니다. 명령 중 하나에 익숙해 지자 연필로 그 선을 그렸습니다. 필요한 경우 여전히 볼 수 있지만 그 명령을 숙달 한 것은 나에게 상징적이었습니다. 정기적 인 진전을 볼 수 있었기 때문에 자신감과 동기가 부여되었습니다. 일단 대부분의 문제가 해결되면, 나는 그것들을 제거하고 거의 사용되지 않는 몇 가지 명령을 추가했습니다. vi 명령에 만족할 때까지이 과정을 계속했습니다. 나는 내가 명령을 넘지 않았거나 오랫동안 목록을 보지 못했다는 것을 깨달았을 때 그 시점에 도달했다는 것을 알았습니다.

몇 년 전에 vi가 유일하게 사용 가능한 편집기 인 UNIX 플랫폼에서 작업해야했습니다. vi에서 작은 포켓 참조 서를 구입했지만 거의 사용하지 않았습니다. vi를 처음 사용할 때처럼 목록을 작성하고 벽에 게시했습니다. 첫 주가 끝날 무렵 vi를 사용한 지 5 년이 지났지 만 매우 편안했습니다.


2
나는 이것이 훌륭한 조언이라고 생각하며 IDE, 디버거 또는 Excel과 같은 다른 도구를 배우는 데 똑같이 적용됩니다.
davidavr

11

저에게 VI는 훌륭한 비상 편집자이지만, 다른 대안이 있다면 사용하고 싶은 것이 아닙니다. 나는 이것이 모든 사람을위한 것이 아니라는 것을 알고 있습니다. 나는 그것이 끔찍하거나 아무것도 말하지 않고, 개인적으로 검색 가능한 UI를 선호합니다.

그러나 리눅스에서 중요한 일을한다면 VI를 알아야합니다!

i = 삽입 모드 esc = leave insert mode : wq = save and quit : q! = 저장하지 않고 종료하지 않음 x = 삽입 모드가 아닌 경우 문자를 삭제하십시오. / = 검색

편집 비상 상황이 발생할 수 있습니다. 그 몇 가지 명령 (및 탐색)으로 할 수있는 일은 없습니다. 나머지는 필요에 따라 "고착"할 수 있습니다.

그래도 VI를 사용해야 할 때는 참조 나 책을 계속 사용하십시오. 웹을 탐색 할 수는 없지만 매뉴얼 페이지는 다소 유용 할 수 있습니다.


4
: help 명령은 처음에 배울 수있는 가장 유용한 명령 중 하나입니다. 편집자에 내장 된 참고서 또는 웹이 필요한 사람은 누구입니까?
zigdon

2
: help 사용법을 배우면 참고서가 필요하지 않습니다. "아마도 웹을 탐색 할 수 없을 것"에 대해 lynx 및 링크 브라우저에 익숙해 지십시오. 조금이라도 파일 시스템을 찾아 볼 수도 있습니다.
converter42

11

자신을 강요하지 마십시오. 숙달 된 사랑으로가는 길입니다.


11

vim (Vi IMproved) 및 특히 GUI- gVim으로 시작해야합니다 . GUI에는 메뉴가 있으며 Windows에서는 복사, 잘라 내기 및 붙여 넣기 바로 가기를 사용할 수 있으므로 메모장을 즉시 바꿀 수 있습니다. 메뉴에 바로 가기 (vim 명령)가 표시되므로 많은 것을 배울 수 있습니다.

처음부터해야 할 또 다른 일은 필요에 따라 vi를 구성하는 것입니다. 예를 들어, vim을 Python IDE 로 변환 할 수 있습니다 . 이 작업을 수행하면 vi가 필요한 모든 것을 제공하기 때문에 다른 편집기를 사용할 이유가 없습니다.


터미널 에뮬레이터에 따라 GUI를 사용하는 것이 더 빠릅니다. :)
Arafangion

10

다른 모든 텍스트 편집기 앱을 삭제하십시오.

그럼 당신은 그것을 배워야 할 것입니다.


9

자신 을 강요 하는 가장 간단한 방법 은 컴퓨터에서 다른 모든 편집기를 제거하는 것입니다. 유혹을 제거하십시오 :)


9

복잡한 편집 작업을 수행 할 때마다 더 효율적인 방법이 있는지 궁금해하십시오. 대부분의 경우 "텍스트 단락 바꾸기"또는 "주석 된 행에서 X 문자 뒤의 모든 항목 삭제"와 같이 간단한 용어로 설명 할 수있는 경우 vim에서 몇 번의 키 입력으로 수행 할 수 있습니다.

매우 유용한 몇 가지 주요 기능이 있으며 항상 사용을 중단합니다. 내가 가장 사랑하는 것은 :

  • 블록 선택 (Ctrl-V)
  • 매크로 기록 (q)
  • 가상 편집 (: set ve = all)
  • 정규식
  • 외부 유닉스 프로그램으로 파이프
  • 키 매핑
  • 자동 완성 (Cp, Cx Cp, Cx Cf)
  • 조작 + 운동 조합 (놀랍게도 강력합니다)

다른 프로그래머에게 가장 유용한 기능을 찾고 뇌에 더 적합한 기능을 채택하십시오. 다른 사람들의 아이디어를 훔치십시오 .vimrc( 여기는 내 것입니다 )


8

편집 : 당신이 관심이있는 경우, 온라인 간격 반복 사이트 flashcarddb.com에 플래시 카드 세트를 만들었습니다 ...

  1. mnemosyne , supermemo 또는 anki 와 같은 간격이있는 반복 플래시 카드 프로그램을 사용하여 학습 및 유지하는 새로운 명령을 일상에 통합하십시오. vim을 일일 편집자로 사용하는 것만으로는 충분하지 않습니다. 그것을 마스터하기 위해서는 해당 코드를 머릿속에 저장해야하며, 현재 작업에 이상적인 솔루션이 될 때까지 기다리십시오.
  2. 사용자 정의로 .vimrc 유지 보수
  3. vim 플러그인 작성 또는 편집

8

Vim 을 사용한 효율적인 편집에 대한 가이드를 작성 했습니다. 도움이 될 수 있습니다.

잠시 물러서서 "이 편집기를 배우고 싶은 이유는 무엇입니까? 현재 텍스트 편집기보다 더 빠르거나 나을 것이라고 생각하는 이유는 무엇입니까?" 그런 다음 Vi (m)을 필수 불가결하게 만드는 기능을 학습하십시오.

예를 들어, Vim의 CTags 통합은 필연적으로 필연적입니다. 나는 매우 큰 코드베이스로 작업하고 하나의 키 입력 (파일이있는 파일에 관계없이)으로 함수 또는 클래스 정의로 건너 뛸 수있는 기능은 절대적으로 킬러 기능입니다.

.vimrc 파일을 사용하여 일반적인 작업을 자동화하는 매크로를 만드십시오.

자동 조종 장치 편집자-선택자는 최소한의 정신적 노력으로 가장 빠르게 작업을 수행 할 편집기를 선택합니다. 약간의 준비 작업을 수행하면 편집기가 Vim이됩니다. :-)


1
링크가 더 이상 작동하지 않습니다
eugenevd


6

내 제안 : 작은 시작. 가장 유용한 작은 명령들을 기억하는 것부터 시작하십시오. vi를 시작했을 때 이것들은 내 상위 10 위였습니다.

  • (Esc) 명령 모드로 돌아 가기 (가장 중요합니다!)
  • a 커서 뒤에 텍스트를 추가
  • 현재 줄의 끝에 텍스트를 추가하는 A
  • 1 문자를 삭제하려면 x
  • 한 줄을 삭제하려면 dd
  • 텍스트를 대체하는 R (덮어 쓰기)
  • 실행 취소
  • :큐! 저장하지 않고 종료하려면 (Enter)
  • : w (Enter)를 눌러 저장
  • 저장하고 종료하는 ZZ

이 명령 만 사용하여 많은 기본 편집을 수행 할 수 있습니다. 편안 해지면 나머지는 그리 어렵지 않습니다.

BTW, 나는 기본 텍스트 편집기에 vi를 사용했지만 이제는 필요할 때만 사용한다고 덧붙이고 싶습니다. 필자의 경우 Emacs 또는 Visual Studio와 같은 도구를 사용하면 생산성이 향상됩니다 ( "내 경우"참고). 하나 이상의 도구를 사용해보고 생산성을 가장 높이는 도구를 선택하십시오. 행운을 빕니다!


ZZ 명령은 macvim에서 작동하지 않습니다
innuendoreplay

5

어리석은 소리가 들리지만 Nethack 또는 Angband 와 같은 악성 게임을 하는 것은 커서 탐색에 / / / 키를 사용하는 데 익숙한 재미있는 방법 입니다.hjkl


4

직장에서 사용하는 동안 현재 편집기에서 사용하는 모든 단축키와 기능을 기록하십시오. 그런 다음 토요일 아침에 앉아서 Google을 사용하여 vi에서 각 작업을 수행하는 방법을 찾으십시오. 이를 위해 한 장의 종이를 사용하는 것이 가장 좋습니다.

이제 작업중인 다른 편집기를 비활성화 / 삭제하여 비교 시트를 살펴 보는 것보다 편집기를 찾아 다시 설치하는 데 시간이 더 걸리므로 선택하지 않아도됩니다.

마지막으로, 이전 편집기에서 블로그의 새 바로 가기로 크로스 오버 단축키 목록을 게시하십시오.

행운을 빕니다!


4

X11을 사용하지 않습니까?

$ sudu rm /usr/local/bin/emacs

로그인 쉘을 vi로 변경 하시겠습니까?

먼저, ed 를 사용하도록 강요 하면 vi 는 사치처럼 보일 것입니까?

bash 에서 vi 키 바인딩을 사용 하시겠습니까?

항상 vi를 사용하기 시작 합니까?

편집자를 배우는 것이 언어를 배우는 것과 크게 다르지 않은 것 같습니다. 침수가 가장 효과적입니다.

내가 사용하는 VI를 정말 빠른 편집하거나 내가 사용할 수 없습니다에 대한 X11을 어떤 이유로,하지만 난에 살고 이맥스 . 정말 강력한 편집자는 시간을내어 배우는 것이 좋습니다.


3

내 추천은 간단한 프로그램을 만들어서 작성하고, VI를 사용하여 끝내기 시작하는 것입니다.

확률은 학습 곡선에 의해 처음에는 너무 좌절되어 직장이나 시간에 민감한 환경에서 사용하게됩니다.

환경 / 편집자에 익숙해지기 전에이 작업을 수행했으며 꽤 잘 작동합니다.

글을 작성하는 데 문제가있는 경우 학교에서 수행 한 프로젝트 (또는 이전에 수행 한 다른 작업)를 다시 실행하는 것이 좋습니다. 이 방법을 사용하면 더 나은 개발자가 몇 명인지 알 수 있습니다. :)

편집 : 마우스 사용에 대한 유혹을 피하기 위해 콘솔에서 완전히 수행해야한다는 것을 언급하지 않았습니다!


3

내가 처음으로 emacs를 배우기 시작했을 때, 나는 이미 Vim에 매우 익숙해 졌을 때였고, 나는 당신이했던 것과 같은 또는 비슷한 보트에 있었고, 나는 다른 편집기에서 많은 일을하는 방법을 알고 있었기 때문에 시작했다. 이맥스를 사용하면 항상 고통스럽게 느려졌습니다.

그러나, 나는 당신이해야 할 것이다 무슨 생각 고통의 조금을 흡수, 항상, 항상, 항상 당신이 그 일을 위해 문서를 찾아 볼 있는지 확인 알고 , 그런 당신이 이전 편집기에서 할 수있는 줄 끝으로 이동하거나 텍스트 영역을 선택합니다.

또한 현지 Vi-expert 전문가가 있으면 질문을 할 수 있거나 회사와 같은 경우 페어 프로그래밍을 홍보하는 데 도움이됩니다. 그렇게하면 쉬운 일을하려고 할 때 간단히 누군가에게 물어볼 수 있고, 방법을 보여줄 것이며, 몇 주 동안 정기적으로 편집기를 사용한다면 더 이상 묻지 않아도됩니다. 두 번째 자연이되기 전에 몇 번.

지역 자원이없는 경우 대부분의 질문에 대답 할 수있는 많은 서적 / 자습서 / 참조 시트가 온라인에 있습니다.

궁극적으로 Vi를 배우는 것은 다른 기술을 배우는 것과 같고, 은총 알이 없으며, 잠시 동안 현재 편집자보다 생산성이 떨어질 것이라는 점을 인정해야합니다. "다른 사람들이 Vi를 배울 수 있었고, 적어도 그들만큼 똑똑해"라고 스스로에게 계속 말하십시오.


3

내가 사용하는 주된 이유 vissh(또는 Windows의 Putty) : Unix 서버에 원격으로 로그인하면 vi항상 사용할 수 있습니다. 그리고 커서 키나 백 스페이스 / 삭제가 매핑되지 않은 경우 VT100과 함께 작동합니다.

또한 VI Editor Pocket Reference 와 같은 책을 갖는 것이 큰 도움이됩니다.


3

gVIM에는 정말 좋은 튜토리얼이 있습니다 (시작 메뉴 그룹의 링크).

나는 그것을 통해 일하는 것이 초기 학습 혹을 극복하는 데 도움이된다는 것을 알았습니다. Visual Studio를 ViEMU로 전환하면 VI 기술을 연마하는 데 도움이되었습니다.

또한 http://vimcasts.org/ 의 스크린 캐스트 는 훌륭합니다!


2

원본 Happy Hacker 키보드 (화살표 키 없음) 중 하나에 손을 대고 편집을 시작할 때마다 (무선) 마우스를 손이 닿지 않는 곳에 둘 수 있습니다.


2

많은 명령 / 바로 가기 목록을 작성하는 것은 쉽지만 연습없이 모두 기억하기는 어렵습니다.

한 번에 하나의 새로운 명령에 집중하십시오. 자동으로 변하면 1 ~ 2 주간 사용한 후 레퍼토리에 다른 것을 추가하십시오.

단기간에 특정 작업을 수행하기 위해 많은 시간을 할애 할 것입니다. 새로운 바로 가기를 배울 수있는 확실한 기회입니다.

내 경험상 한 번에 너무 많이 복용하지 않으려 고 할 때 더 쉬웠다.


2

저의 제 1 제안 : 키보드를 보지 않고도 빠르게 타이핑하는 법을 배우십시오.

유형을 만질 수없고 항상 콜론이나 hjkl 또는 : % s / foo / bar를 사냥하고 삐걱 거리는 경우 잊어 버리십시오. 입력 하는 것이 마우스를 사용하는 것보다 빠를 있지만, 그렇지 않은 경우 vi가 작동하지 않습니다.

그러나 좋은 타이핑 기술, ssh 및 screen을 결합 하면 vi는 자연 스럽습니다.


2

즉각적인 성능 저하를 일으킬 것이라는 사실에 직면하십시오. 새로운 도구를 배울 때는 다른 도구를 사용하는 방법을 알고있는 문제를 해결할 수 있어야합니다. 새 도구를 사용하면 잠시 후에 사라지고 근본적인 문제에만 집중하게됩니다.

vim과 같은 것 (다른 사람들이 말했듯이 vim이 vi보다 훨씬 우수합니다)을 정기적으로 다시 읽고 찾아 보는 것이 중요합니다. 인터페이스가 없으면 인터페이스를 완전히 발견 할 수 없습니다. 각각의 새로운 독서와 함께 당신은 기능을보고 "아하, 그것은 지난주에 알아 내려고이 문제를 해결했을 것"이라고 말하고, 당신의 두뇌에 그것을 멀리합니다. 실제 문제와 관련된 솔루션은 무작위 단축키보다 기억하기가 훨씬 쉽습니다.

결국 vim을 기능의 작은 부분 집합과 함께 사용할 수 있으므로 모든 종소리와 휘파람에 압도되지 마십시오. Word의 모든 기능을 생각하면 99 %의 사람들이 사용합니까?


2

ESC gg=G코드를 다시 들여 쓰기하고 :retab탭을 공백으로 또는 공백을 탭으로 변환하는 것이 vim에 매료되었습니다. 따라서 실제로 사용하도록 강요 할 필요는 없으며 속도를 높이는 데 도움이 될 수있는 시점을 알아야합니다.

을 통해 이동하십시오 vimtutor.

설정 파일이나 html과 같은 간단한 편집을 위해 vim을 사용하십시오. 필요에 따라 명령을 학습하십시오.

귀하의 툴체인을 사용하는 사람이 사용하는 좋은 .vimrc를 Google에서 검색하십시오. 구문 강조를 켭니다. 좋은 색 구성표를 찾으십시오.

Vim은 복잡한 XML 태그로 몇 단어를 형식화하거나 CSV를 HTML 테이블로 변환하는 것과 같이 자동화 된 작업 및 스 니펫 삽입에 가장 적합하므로 매크로를 배우십시오.


2

크림으로 시작하고 싶을 수도 있습니다. 크림 자체는 vim의 "현대 구성"이라고 설명합니다. 기본적으로, 그것은 모든 실제적인 목적을 위해 다른 텍스트 편집기처럼 보이고 느껴지는 특별한 버전의 vim입니다. 그러나 "전문가 모드"를 활성화하면 vim의 모든 힘과 동작을 갖게됩니다.

따라서 일반 텍스트 편집기로 Cream을 사용하여 vim으로 완전히 전환 할 수있을 때까지 "전문가 모드"를 실험 해 볼 수 있습니다.


2

gVim사용하는 모든 플랫폼에 설치하십시오 .

그런 다음, 검사기를 통해 ( :help vimtutor또는 vimtutor명령 행에서) 실행하십시오.

다음 강의를보고 조언을 따르십시오. 효과적인 텍스트 편집을위한 7 가지 습관 2.0

나는 당신이 모든 편집에 그것을 사용하기 시작하고 싶다고 말합니다. 생산성 손실을 두려워하는 경우 주말에 견실하게 연습하십시오 (한 번은 쿼티에서 드보 크로 전환하고 월요일까지 생산성이 높았으며 그 후에도 계속 고수했습니다).

노력할 가치가 있으며 뒤돌아 보지 않을 것입니다!


1

개인적으로해야 할 일은 여러 응용 프로그램에서 Vim 키 바인딩을 사용할 수 있는지 확인하는 것입니다. 편집기를 변경할 때마다 텍스트를 편집 한 방식을 완전히 전환해야했기 때문에 근육 메모리에 Vim 편집 스타일을 적용하기가 너무 어려워졌습니다.

필자의 경우 Viemu + vimperator가 트릭을 수행했습니다.


vi 바인딩이 내장 된 Komodo Edit를 사용하므로 그 스위치로 전환하고 진동기 설치가 크게 도움이되었습니다. 이제 내가
급류
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.