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

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

확신합니다.

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

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

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

업데이트 (2009 년 4 월)

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

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



답변

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

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

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


답변

가장 먼저 할 일은 화살표 키와 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의 가장 큰 장점 중 하나는 속도입니다. 화살표 키를 사용하면 모달 특성을 실제로 수용 할 수 없으므로 마스터 할 때 매우 강력합니다.


답변

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 단계 : 이익 🙂


답변

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

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

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


답변

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

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

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

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


답변

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

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

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

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

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


답변

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