Vim을 배우면 어떤 이점이 있습니까? [닫은]


467

프로그래머로서 저는 키보드에서 많은 시간을 보냈으며 지난 12 년 동안 그 일을 해왔습니다. 이 모든 시간 동안 내가 본 적이없는 것이 있다면, 가장 일반적인 코드 편집 작업으로 인해 코딩하는 동안 경험하는 성 가시고 거의 무의식적 인 미세한 중단이 발생합니다. 다른 줄 (또는 동일한 줄)에서 간단한 복사 및 붙여 넣기 또는 현재 위치에서 1 또는 2 줄을 위 또는 아래로 이동하는 것은 너무 많은 타이핑이 필요하거나 화살표 키를 사용합니다 ... 더 멀리 나아가고 싶을 때-마우스를 사용하게됩니다. 이제이 같은 시나리오를 랩톱에서 상상해보십시오.

나는 항상 VIM을 배우는 것을 고려했지만 그것을 마스터하는 데 필요한 시간은 항상 물러서 고 싶었습니다.

나는 그것을 배운 사람들로부터 듣고 싶습니다. 그리고 그것이 없으면 당신이 없이는 살 수없는 것들 중 하나가됩니다.

직장에서 VS2008, C # 및 R #을 사용하여 코드를 훨씬 빠르고 쉽게 편집 할 수 있지만 마우스를 전혀 사용할 필요가 없다고 생각합니다.

그리고 화살표 키조차도 아닙니다.


7
키보드와 마우스를 전환 할 필요가 없습니다. Mac에서는 BBEdit 또는 Xcode와 같은 GUI 편집기에서도 마우스로 추가 이동을 피하기 위해 emacs 탐색 키 (예 : Ctrl-A)를 사용했습니다.
Craig S

236
노력의 가치가 있습니다. vim;)
Kyle Walsh

20
몇 분 안에 기본 vim (vi를 잊어 버림)을 배울 수 있습니다. 터미널에 vimtutor를 입력하면 기본으로 설정됩니다. 향후 20 년 동안 배우는 것은 모두 귀하에게 달려 있습니다. VS2008, C # 및 R #이 키보드와 화살표 키 / 마우스 사이를 이동하면서 생명을 낭비해야하는 문제에 어떻게 도움이되는지 궁금합니다.
stefanB

43
내가 한 최고의 투자 중 하나.
Johnsyweb

10
내 칠년 된 조카가 빔에 신속하게 이동할 배울 수 있도록이 게임을 만든 : kikuchiyo.org 베타 버전이 광선으로 적을 공격 할 수 있습니다 왼쪽 공격 '난', 그리고 'A', 권리 : PI는 빔을 배웠다 같은 이유로 나는 익숙해지기 가장 어려운 부분을 돌아 다니는 것을 발견했습니다. 도움이 필요하면 게임 속도가 향상되기를 바랍니다. :) 행운을 빌어 요! :)
kikuchiyo

답변:


249

나는 약 20 년 동안 vi와 vim을 사용해 왔으며 여전히 새로운 것을 배우고 있습니다.

David Rayner의 Best of Vim Tips 사이트는 훌륭한 목록이지만 vim에 익숙해지면 더 유용 할 것입니다.

vi / vim 팁 과 특히 기사에 왜 그 너트가 vi를 사용 하는가? 에 대한 훌륭한 정보가 있는 ViEmu 사이트 를 언급하고 싶습니다 . ( 아카이브 버전 )


8
예, 저는 항상 새로운 것을 배우고 있습니다. 여전히 내가 좋아하는 편집기도 있습니다.
Craig S

20
그것이 좋은 것인지 나쁜 것인지 궁금합니다. 끊임없이 새로운 것을 배우면 학습 곡선이 엄청나게 가파르고, 기능이 거의 숨겨져 있으며 숙 달력이 없습니다. 어쨌든 RISC를 원한다면 vim 대신 vi를 사용하십시오.
bastibe

7
@ Paperflyer : 나는 같은 생각을했다. 20 년이 지난 후에도 여전히 숙달되지 않았다면, 그것이 두통입니다.
Dinah

7
어떻게 요? 그것은 당신이 계속 배울 수있는 많은 기능을 가지고 있지만 더 생산적 이도록 모든 것을 배울 필요는 없다는 것을 의미합니다.
Arda Xi

5
"왜, 왜 그 너트 헤드가 vi를 사용합니까?" -특히 질문에 대한 좋은 링크

184

그것없이 살 수 있을까? 용이하게.

유용합니까? 예.

학습 이유

  • vi는 모든 Unix 시스템에 존재하며 대부분의 Linux 시스템에도 존재합니다. 이러한 종류의 광범위한 적용 범위는 학습 가치가 있습니다.

  • vi를 사용하여 sudo편집 하는 것이 훨씬 빠릅니다 .

    $ sudo vi

  • 또한 Gmail은 이메일을 선택하고 이동하기 위해 viishish 명령을 사용합니다!

당신은 주인이 될 필요가 없습니다.

그냥 배우십시오

기본 사항 :

  • 명령 모드에서 삽입 모드로 전환하는 방법 i
  • 삽입 모드에서 명령 모드로 전환하는 방법 Esc
  • 명령 모드에서 라인을 탐색하는 방법 k
  • 명령 모드에서 줄을 탐색하는 방법 j
  • 명령 모드에서 문자를 왼쪽으로 탐색하는 방법 h
  • 캐릭터를 올바르게 탐색하는 방법 l
  • 파일을 저장하는 방법 :wEnter(쓰기)
  • 저장하지 않고 종료하는 방법 (명령 모드) :q!Enter
  • 실행 취소하는 방법 u
  • 다시 실행하는 방법 Ctrl+r
  • 명령 모드에서 쓰기와 종료를 결합 할 수 있습니다. :wqEnter

거기에서 나머지는 당신을 더 빨리 만들 것입니다.


나는 항상 "vi는 쉽다; 당신은 커서 키를 사용하여 커서를 오른쪽으로 움직인다"는 것을 유머러스 한 방법으로 사용했다. 그러나 나는 그것을 오랫동안 사용 해 왔으며 없을 것입니다. 하지만 다른 부부에게는 25 년 이상을 청구 할 수는 없지만 새로운 대답은 없습니다.
Jonathan Leffler

16
이것이 내가 배운 방법입니다. 최소부터 시작하여 매일 조금씩 만드십시오. 시간을 내서 과제를 달성하는 약간 더 나은 방법을 배우십시오. 영감을 얻으려면 "높은 텍스트 편집 습관"을 참조하십시오.
Ben

Gmail, Google 실험용 검색 키보드 단축키, Slashdot 키보드 단축키, 사람 등은 모두 vim과 유사한 바인딩을 사용합니다. vim을 모르고 실수로 이것을 배웠다는 것을 알게되어 놀랐습니다! Firefox조차도 증분 검색을 위해 /를 사용합니다 (Ctrl + F와 의미가 약간 다름).
Adam Rosenfield

29
[:] [X] [Enter]는 [:] [W] [Q] [Enter]와 동일
Vitalii Fedorenko

20
[Z] [Z]는 [:] [X] [Enter]와 동일
Kos

138

vimtutor를 실행하는 데 30 분 밖에 걸리지 않아서 vim에 익숙해졌습니다. 그것은 매 초 가치가 있었다.


더 나은 설명 링크를 알고 있다면 내 것을 변경하십시오 :)
Blorgbeard는

43
vimtutor는 바로 그 튜토리얼입니다. 나는 매일 10 일 정도했습니다. 처음에는 30 분, 그 다음 날 20, 15 일이 걸렸습니다. 일주일이 끝날 무렵에는 대부분의 명령이 내 마음에 새겨졌습니다. 암기하기보다는 반복이 Vim에 접근하는 가장 좋은 방법이라고 생각합니다. 일주일 동안 매일 15 분은 정말 작은 가격 인 것 같습니다.
Michael Ekoka

28
일단 VIMTUTOR를 마치면 어떨까요? 더 배우려면 다음 단계는 무엇입니까?
privatehuff

3
@privatehuff : 효과적인 텍스트 편집의 7 가지 습관을 읽고 적용하십시오 .
Frank Kusters

1
와! 이것은 게임에서 숨겨진 항목 중 하나와 같습니다. 그것은 내 시스템에 있었고 그것이 존재하는지 몰랐습니다. 가장 유용하고 빠른 vim 자습서 중 하나입니다. 한동안 vim을 사용하면서 나는 알지 못하는 몇 가지 기본 트릭을 계속 배웠습니다. 모두에게 추천합니다. 또한 약간의 제안 : 터치 패드가 있고 제스처를 지원하는 랩톱에서 vim을 사용하는 경우 실수로 터치하면 커서가 예기치 않은 장소로 이동하여 때로는 전체 편집을 낭비 할 수 있기 때문에 vim을 사용하기 전에 사용하지 않도록 설정하십시오.
바라쿠다

69

많은 텍스트를 편집하는 프로그래머라면 심각한 텍스트 편집기를 배우는 것이 중요합니다. 어떤 심각한 텍스트 편집기를 배우는지는별로 중요하지 않으며 편집하려는 환경 유형에 크게 의존합니다.

그 이유는 이러한 편집기가 많은 작업을 수행하도록 최적화되어 있기 때문입니다. 예를 들어, 모든 줄의 끝에 같은 비트의 텍스트를 추가하는 것을 고려하십시오. 이것은 심각한 텍스트 편집기에서 사소한 것이지만 엄청나게 번거 롭습니다.

일반적으로 vim의 킬러 기능은 다음과 같습니다. A) 거의 모든 유닉스에서 사용할 수 있으며 B) 손가락이 홈 행을 거의 떠나지 않아도되므로 텍스트를 매우 빠르게 편집 할 수 있습니다. . 또한 대용량 파일을 편집 할 때도 매우 빠르고 가볍습니다.

그러나 많은 대안이 있습니다. 물론 이맥스는 가장 일반적인 예이며, 실제로 파고 들어 본다면 고급 텍스트 편집기 그 이상입니다. 나는 개인적으로 매우 행복한 TextMate입니다vim / gvim을 사용한 지 몇 년이 지난 지금 사용자입니다.

이들 중 하나로 전환하는 요령은 자신이 의도 한대로 사용하도록 강요하는 것입니다. 예를 들어, vim에서 다단계 프로세스의 모든 단계를 수동으로 수행하거나 화살표 키 또는 마우스를 사용하는 경우 더 나은 방법이 있습니다. 하고있는 일을 멈추고 찾아보십시오.

다른 작업을 수행하지 않으면 vim 및 Emacs에 대한 기본 탐색 컨트롤이 모든 곳에서 팝업되므로 배우십시오. 예를 들어, 당신은에 정력 스타일의 컨트롤을 사용할 수있는 등, 이클립스에서, 대부분의 유닉스 쉘에서, 맥 OS에서 텍스트 입력 필드에 이맥스 스타일의 컨트롤을 사용할 수 있습니다 이하 에, (1) 명령 슬래시닷 (Slashdot) 에서, Gmail은 , 기타

즐기세요!


7
여기에는 많은 사람들이 간과하는 점이 있습니다. 거의 모든 반복 작업에는 바로 가기가 있습니다. 개발자들은 지름길을 좋아합니다. rbright가 말했듯이, 반복적으로 단계를 수행하는 것을 발견하면 누군가가 이미 바로 가기를 문서화했는지 중지하고 확인하십시오.
아바타 카바

A) VIM을 사용하는 가장 큰 이유 중 하나였습니다. 원래는 emacs 사용자 였지만 모든 시스템에 해당되는 것은 아니 었습니다. VIM은 어디에나 있고 작으며 빠릅니다.
jpeacock

3
내 편집자는 끊임없이 나쁜 농담을하고 있습니다. 전환해야합니다.
Greg Graham

"많은 텍스트를 편집하는 프로그래머라면 심각한 텍스트 편집기를 배우는 것이 중요합니다." 최악의 부분은 거의 정의에 따라 두 가지 (훨씬 더 적은) 내부와 외부를 배우는 것이 불가능 해 보인다는 것입니다. 어느 시점에서 엣지 케이스를 연구하고 있으며, 태스크 X를 한 번에 수행하는 방법에 대한 지식은 일반적으로 번역되지 않습니다. 그리고 "fringe"편집기에서 항상하는 일이 있습니다. 예를 들어 JTidy, J2idy 용 JEdit를 사용하여 여러 파일을 검색합니다. 당신의 메인은 주사위의 롤이며,은 총알은 없지만, 물론 하나를 배우고 많은 사람들과 놀아보십시오. ; ^)
ruffin 2016 년

1
@ruffin 사실, 당신은 실제로 두 개의 다른 에디터를 동시에 마스터 할 수는 없습니다 : 하나의 에디터를 마스터하면 많은 명령을 무의식적 으로 사용할 것입니다. 다른 편집기를 사용하는 경우 동일한 명령. 간단한 <esc> >i{입력으로 들여 쓰기를 수정하지 못하도록 브라우저를 저주 한 횟수는 ... 터치 입력과 동일합니다. 하나의 키보드 레이아웃을 배우면 절대 멈추지 않을 수 있기 때문에 다른 레이아웃에서 잘못된 키를 입력 할 때 손가락이
cmaster-monica reinstate

36

그것은이다 확실히 노력이 가치.

사용하는 사람 Vi(m)이 당신에게 말할 한 가지 분명한 이유가 있습니다.

여기에 분명한 것이 있습니다 :

  1. vi 한 번에 유비쿼터스하고 믿을 수 없을 정도로 강력하며, 한 번만 익히면 키보드가있는 거의 모든 컴퓨터에서 그 힘을 발휘할 수 있습니다.

그리고 이것들은 덜 알려진 이유입니다 Vim.

  1. 당신이 생각하는 것만 큼 절반의 노력은 아닙니다. 관통 실행 빔 교사 번 ( vimtutor쉘에서, 또는 Windows의 시작 메뉴에서 빔 폴더에서 실행), 당신은 이미 능력에 당신의 방법에 잘있을거야, 그리고 거기에서 내리막 전부입니다. 나는 Vim일주일의 점심 시간 내에 눈에 띄는 생산성 저하없이 직장에서 사용할 수있는 수준까지 올라갔습니다 .

  2. 그건 재미 ! 텍스트 편집은 이제 게임 과 같습니다 . 나는 그것을 적극적으로 즐깁니다.

배워야 할 두 가지 이유가 있습니다 Vim.

  1. 중독성이 Vim있으며 모든 컴퓨팅 에서 명령을 사용할 수 있기를 원 하고 할 수 없을 때마다 저주를 받는다는 것을 알게 될 것입니다. 다행히도, 어떤 상황 적어도 거기 방법 얻기 위해 .

  2. 다시 말하지만 중독성이 있으며 실제로를 사용하여 생산성을 잃지 않더라도 경험을 향상 Vim시킬 수있는 좋은 팁을 찾고 스택 오버플로 Vim에서 Vim 태그 를 읽는 데 몇 시간이 낭비됩니다 .


12
VIM을 배우지 않는 이유에 대한 하하 넘버 2가 옳습니다. 텍스트 편집을 저장할 때마다 텍스트 편집에 대해 읽습니다. 어리석은.
Karl Floersch

네, hjkl을 사용하여 stardew valley를 할 수 있기를 바랍니다 ...
xis

32

vim이나 emacs를 배우는 것이 좋습니다. 터치 타입을 배우는 것도 가치가 있습니다. 두 경우 모두 이유는 같습니다. 코드를 화면으로 가져 오는 기계적인 프로세스로 인해 더 이상 생각이 중단되지 않습니다 .

시작하는 방법에 관해서는 모든 것을 위해 뛰어 들어 vim을 사용하십시오.

PS emacs-vs-vi 토론은 끝이 없습니다. 저는 26 년 동안 이맥스를 사용해 왔습니다. 오늘 다시 시작하면 (a) 더 좋아지고 (b) 수정 자 키 (Ctl-Alt-V, 누군가)가 훨씬 적고 vim 사용자가 타이핑 부상을 덜받는 것처럼 보이기 때문에 vim을 배울 것입니다.


RSI는 개발자의 직업 상 위험 중 하나입니다. 나는 그런 식으로 생각하지 않았지만 이것이 정말 좋은 지적이라고 확신합니다. 근육의 관점에서 코드를 입력하는 것이 훨씬 어렵습니다. vi를 사용해야 할 킬러 이유가 있다는 것을 알고있었습니다!
DigitalRoss

1
나는 두 가지를 모두 사용했고, vim으로 "침례를 받았으며"몇 달 전에 emacs를 배웠습니다. 나는 작업이 깨지기 때문에 vim을 선호합니다. 둘 다하지 않고 편집하거나 삽입하고 있습니다. 이 구별은 내가하고있는 일에 대해 생각하고 "정상적인"명령을 2-4 대신 1-2 개의 키 스트로크로 만드는 데 도움이됩니다. vim이 Lisp 기반 이었으면 좋겠다. (그리고 viper 모드가 모든 vim 표준 기능을 지원하지 못한다. 네, 내 자신을 굴릴 수는 있지만 새로운 컴퓨터 / 시스템을 만질 때마다 빠질 것이다)
Wayne Werner

1
@WayneWerner 정말 구식이지만 모든 elisp의 버전을 제어하여 컴퓨터를 통해 동기화 할 수 있습니다.
YuriAlbuquerque

@ YuriAlbuquerque, 실제로 자동 환경 설정 스크립트를 만드는 것에 대해 매우 진지하게 생각하기 시작했습니다.
Wayne Werner

17

16 개의 키만 의미를 학습하여 vim에서 우수한 기능을 얻을 수 있습니다 ijkdbw9:q!%s/nNEsc. 맨손으로 뼈를 할 수 있습니다 i:wqEsc.

알아야 할 처음 두 키는 다음과 같습니다. Esc명령 모드 (시작 모드)로 이동하고 i삽입 모드 (일반 입력)로 이동합니다.


당신을 저장하려면

  1. 입력 모드를 종료합니다 ( Esc)
  2. 콜론을 입력 :
  3. 소문자 w를 입력 한 다음Enter

저장하고 종료하려면

  1. 입력 모드를 종료합니다 ( Esc)
  2. 콜론을 입력 :
  3. 소문자 wq를 입력 한 다음Enter

저장하고 강제 종료하지 않으려면

  1. 입력 모드를 종료합니다 ( Esc)
  2. 콜론을 입력 :
  3. 소문자 q!를 입력 한 다음Enter

자세한 내용 vimtutor은 명령 줄에서 실행할 수 있습니다 . 중간 길이의 체계적인 수업입니다.

저쪽 iEsc: 당신이 복제하거나 단지와 일부 MS 워드의 기능을 능가 할 수 있습니다 jkwbd3:%s/nN.

  1. b단어를 되찾아줍니다 ( Ctrl+ )
  2. w당신에게 단어를 전달합니다 ( Ctrl+ )
  3. 9w 당신에게 아홉 단어를 전달합니다
  4. db선행 단어를 삭제합니다 ( Ctrl+ Backspace)
  5. d3b 앞의 세 단어를 삭제합니다
  6. 9j 9 줄 아래로 이동
  7. / ornithopter Enter다음 단어 "ornithopter"의 다음 인스턴스로 이동 n하고 N각각 "ornithopter"의 다음 및 이전 발생에.
  8. :%s/confounded/dangfangled/ Enter모든 "혼란 된"을 "dangfangled"로 대체합니다 ( find and replace allMS Word에서 와 같이 ).

Esc삽입 모드 ( i)가 아닌 "명령"모드 ( ) 에서 실행해야합니다 .


16

최근에 VIM으로 전환했는데 그만한 가치가 있다고 생각합니다. "무엇을해야 하는가"가 필요한 경우 vim이 (일반적으로) 일반 텍스트 편집기와 같은 삽입 모드를 항상 유지할 수 있습니다.

나는 화살표 키에 도달하는 것과 같이 나를 귀찮게하는 데 사용하지 않는 것들이 잘못되고 너무 많은 노력을 기울인 것을 알았습니다. 내 손 동작과 마우스 사용이 확실히 줄어 인체 공학과 생산성 모두에 좋습니다.


12

VIM으로 무엇을하고 싶은지에 달려 있습니다. 많은 사람들이 그것 없이는 살 수 없기 때문에 그것을 배우는 것은 이치에 맞지 않습니다.

유닉스 환경에서 많은 일을 할 때, 나는 그것 없이는 살 수 없었습니다. UNIX 시스템에 VIM이 설치되지 않은 경우에도 최소한 vi를 사용할 수 있습니다. 기계가 고객이 아니더라도 항상 신뢰할 수 있습니다.

이제 C #으로 프로그래밍하고 주로 Windows 환경에서 작업합니다. 내 PC에 VIM을 설치했는데 필요하지 않습니다.

VIM이 정말로 필요한지, 그리고 "작업 흐름"에서 VIM을 지원하는지 평가하십시오. 사용해보십시오. 그것을 가지고 놀아 라. 당신이 필요하다고 생각한다면, 그것을 고수하십시오 ... 학습 곡선은 매우 가파 릅니다.


VIM 사용자를위한 비주얼 스튜디오 확장에서 그것을보고,이 visualstudiogallery.msdn.microsoft.com/...
요엘 halb은

10

내가해야했기 때문에 vi를 배웠습니다.

저의 미친 선생님은 우리에게 AIX 시스템 터미널을 사용하여 C로 프로그래밍하는 법을 배웠습니다.

정말 고통 스러웠지만 그만한 가치가있었습니다.

오늘은 vi를 빠른 편집이나 작은 프로그램에만 사용합니다.

프로젝트를 가야 할 때 IDE를 사용합니다. 필자의 경우 IntelliJ 아이디어는 마우스를 잡지 않고 몇 시간 동안 코딩 할 수 있기 때문에 작업에 매우 좋습니다.

VS2008에 얼마나 많은 단축키가 있는지 모르겠지만 Eclipse만큼 검색 가능한 경우 vi가 문제가 있다고 생각합니다.

IDE 외부에서 코드를 편집하지 않고 IDE에 좋은 지름길이 있다면 더 잘 배우고 어쨌든 vi를 배우십시오.

:)


그는 의견이 아닌 VIM의 이점을 요구했습니다.
Blaze349

@ Blaze349 nope, 그는 사람들이 그것에 대해 어떻게 배웠는지 (여기에서 원래 게시물 참조) 들었습니다 . 이 질문은 거의 8 살이었고 몇 년 동안 여러 번의 검토를 거쳐 왔으며 내 대답은 원래 질문과 일치했습니다. 주석을 달면서 이것을 고려하십시오.
OscarRyz

9

저는 25 년 이상 vi / vim을 사용해 왔습니다. 명령 행 편집기를 이미 알고 있다면 vi / vim을 배울 필요가 없습니다. 그러나 다른 명령 줄 편집기를 잘 모르면 배우는 것이 좋습니다. 적은 노력으로 vi / vim에서 생산성을 유지하는 것은 매우 쉽습니다.


6

저는 VIM을 거의 독점적으로 사용합니다.

편집에는 Vim을 사용하고 디버깅에는 VS Editor를 사용했습니다. 이것은 아마도 약간 미친 것처럼 보이지만 Vi의 패러다임 (매크로, 홈 키 기반 편집 등)이 내 생산성을 향상시키는 것으로 나타났습니다 .VS에서의 편집은 그림이 많았습니다.

Viemu 덕분에 더 이상 스위칭을 할 필요조차 없습니다. 아직 완벽한 솔루션은 아니지만 (코드 완성이 기본 vim 에서처럼 우아하지 않고 매크로 기록이 완벽하지 않은 경우도 있음) 지속적으로 전환하는 것보다 훨씬 낫습니다.

Vim의 학습 곡선은 아마도 과장된 것 같습니다. 일단 당신이 그것에 들어가면, 그것은 매우 직관적이라고 생각합니다.


5

나의 직업은 나에게 vim을 집어 들게했다. 이제 내 불만은 vim 에뮬레이션이나 플러그인이없는 IDE에 관한 것입니다. esc 키가 vim 외부의 적이되었습니다.

Visual Studio에서 vi에 대한 여러 에뮬레이터를 찾았습니다.

http://code.google.com/p/vim-visual-studio/


4

우선 vi (m)에 대한 지식이 있으면 서버에서 구성 파일을 긴급하게 편집하기 위해 시간을 절약 할 수 있습니다. 게으른 ssh 연결을 유지할 수 있습니다.

인체 공학적 키보드로 효과적으로 사용하는 경우 vim의 입력 방법을 제쳐두고 관리하는 것이 손목 관절에 대한 최선의 방어책입니다.

vim의 요점을 확인하는 가장 좋은 방법은 집에서 간단한 프로젝트를 시작하고 마우스를 뽑고 화살표 키로 테이프를 벗기는 것입니다.

그리고 도움을 읽으십시오


4
또한 수근관 증후군으로부터 몸을 보호하기 위해 Vi 입력 모델이 훌륭하다는 것을 알았습니다 ...
CMS

화살표 키? vimrc에서 시도하십시오 : map <up> <nop> map <down> <nop> map <left> <nop> map <right> <nop> imap <up> <nop> imap <down> <nop> imap < left> <nop> imap <right> <nop>
sjas

1
나는 nanovim보다 사용하기가 훨씬 쉽고 거의 똑같이 널리 퍼져 있다고 지적했다 .
MightyPork

4

vi / vim의 두 가지 장점 :

  • 매우 가볍습니다

  • 거의 모든 * NIX 시스템에 설치됩니다.


8
왜 U 대신 *를 넣었습니까?
Kamran Bigdely

4
@kami : 조금 늦었지만 여기에 있습니다 : en.wikipedia.org/wiki/Unix-like
orlp

Vim은 다른 대부분의 텍스트 편집기와 비교할 때 실제로 "가벼운"입니까?
Ben

4

원격 컴퓨터에서 매우 큰 Linux 프로젝트를 유지 관리하고 있습니다. Eclipse 또는 유사한 GTK 기반 IDE를 사용하는 선택은 없습니다. 나는 3 년 동안 그곳에서 일해 왔습니다. 그리고 나는이 프로젝트를 위해 vim을 설정했습니다. 그리고 여전히 조정 중입니다.

이제 Vim에서 소스 제어, sql, 디버그, 컴파일, 브라우징-1Gb 소스 코드를 통한 빠른 브라우징을 수행 할 수 있습니다.

Visual Studio 또는 Eclipse가이 모든 것을 처리하지 못했습니다. 그리고 선택을했다면 Vim을 다른 에디터 나 IDE로 바꿀 것입니다.


4

나는 Vim을 배웠다. 너무 많은 노력이 아니었다. 이제 나는 절대적으로 ci "를 좋아한다. ci"


3

vim은 확실히 배울 가치가 있다고 말하고 싶습니다. 나는 지난 여름에 그것을 집어 들고 이제는 거의 모든 것에 대한 나의 편집자입니다 (자바는 확장되었지만 광범위한 분석 지원이 필요하지 않을 때 가능합니다). 모두가 이미 확인했듯이, 그것은 매우 효율적인 도구입니다.

가치있는 것을 위해, 나는 그래픽 튜토리얼 에서 상당히 작은 vim 기능 (하루 이틀 걸렸습니다) 과 여기 에서 몇 가지 확률과 끝 (긴 읽기)과 검색 및 바꾸기 기능을 배웠습니다. 푹. 그때부터 배웠지 만 여가 시간에는 배웠습니다. 이 시점에서 학습 곡선이 평평 해 졌다고 말했지만 꽤 많이 사용하고 있었고 다른 사람들에게도 둘러싸여있었습니다.


3

나는 당신과 같은 상황에 처해 있으며 Vim의 초보자로서 처음에는 조금 어려웠습니다. 학습 곡선이 가파르게 보입니다. 몇 시간 만에 배운 내용에서 나는 그것 없이는 살 수 없다고 이미 느낍니다.

여기에 있습니다 몇 가지 링크 유용한 빔의 스크린 캐스트는이 할 수있는 무엇을 보여 위해 내가 찾은 그게.

브람 물레 나르 (Bram Moolenaar, Vim의 자비로운 독재자)가 마지막 링크에서했던 좋은 조언은 모든 단일 명령과 기능을 배우는 것이 비효율적이라는 것입니다. 잘 작동하려면 더 효율적으로 만들고 습관을들이는 방법을 찾으십시오.


3

예, 적어도 약간의 'vi'와 'vim'을 배우는 데 시간이 걸립니다. 아주 잘 여행합니다.

설치 기능이없는 고객 유닉스 / 리눅스 / 맥 시스템에 직면했을 때 절대 멈추지 않을 것입니다. Windows에서도 (설치 기능이있는 경우) 'Vim'은 무료이며 설치가 쉽습니다. (우수한 편집기를 항상 사용할 수는 없지만 UltraEdit과 같은 것에 학습 곡선을 투자하는 것과는 대조적으로 ...).

vi 학습은 'sed'와 같은 다른 도구와 일반적으로 정규식과 같은 다른 도구를 학습하도록 설정할 수 있습니다.

또한 적절한 괴짜가되고 싶다면 단순히 'vi / m'을 알아야하거나 가짜처럼 보일 것입니다. ;-)


2

vim을 배우는 데 시간과 노력을 들일 가치가 있다고 생각합니다. 나에게 텍스트를 입력하고 탐색하는 것이 너무 효율적이므로 emacs 또는 ctrl / shift / alt / meta 키 콤보로 돌아가는 것을 상상하기가 어렵습니다.

vim의 모든 멋진 기능에 겁 먹지 마십시오. 충분히 사용하면 가장 많이 사용하는 명령을 파악하고 잊을 수있는 사항을 파악하게됩니다.


2

유닉스 시스템에서만 볼 수있는 Vim의 놀라운 편재성, 그리고 Vi-clones의 일반적인 편재성만으로도 학습 가치가 있습니다.

그뿐만 아니라 Vi 스타일의 전체 사고 방식은 실제로 좀 더 생산적이라고 생각합니다. 명령 모드 및 삽입 모드와 같은 모드에 익숙하지 않은 사람에게는 텍스트를 삽입하기 위해 모드를 입력 해야하는 것이 약간 과도하게 보입니다. 그러나 몇 달 동안 Vim을 사용하고 있으며 몇 가지 팁과 요령을 배운 Vim은 그만한 가치가있는 자산 인 것처럼 보입니다.

물론, 이맥스 관중들은 이맥스 스타일 사고에 대해 똑같은 말을하지만 Vim이 더 단순하고 저를 위해 일을했기 때문에 이맥스 학습을 포기했습니다.


2

나는 매우 숙련 된 사람이 엄청나게 빠른 클립으로 편집 할 수 있도록 탐색 한 후 vi를 좋아하는 법을 배웠습니다. 정말 빠르게 코딩 할 수 있습니다. 내가 좋아하는 또 다른 이유는 때로는 IDE에서 마우스를 움직이면 잠시 후에 손이 아프고 vi가 멋진 변화를 제공한다는 것을 알기 때문입니다. 다른 사람들이 언급했듯이 유닉스 시스템에서도 거의 항상 사용할 수 있으며 거친 연결에서도 잘 작동합니다.

내가 언급하지 않은 한 가지는 vi를 아는 것이 일부 서클에서 "geek cred"의 추가 이점을 가지고 있다는 것입니다. 나는 새로운 프로그래머가 파일을 약간 변경하기 위해 nedit을 실행하는 것을 볼 때 괴롭히는 사람들을 적어도 생각할 수 있습니다.


2

명령의 수에 겁내지 마십시오. 나는 최대 12 명 이상을 사용한 사람을 만난 적이 없습니다. 코드에 대해 생각할 때 텍스트에 대해 생각하고 마우스에 대한 생각으로 이동하면 나를 엉망으로 만들기 때문에 필연적입니다. 큰 트릭은 한 번에 조금 배우는 것입니다.

또한, 그것에 깊이 들어가면 vim은 스크립팅 가능합니다. 가능성은 문자 그대로 끝이 없습니다.

(예,이 모든 것이 emacs에도 적용됩니다 ...)


2

나는 리눅스에서 실행되는 서버로 작업을 시작해야 할 때까지 텍스트 패드와 ecplise 세계에 만족했습니다. 원격 스크립팅 및 구성 파일 설정이 필요했습니다!

처음에는 어려웠지만 이제는 서버를 쉽게 설정하고 조정할 수 있습니다.


2

이미 사용중인 편집기에 만족하지 않을 수 있으므로 vim을 배우고 싶을 수도 있습니다.

많은 사람들이 차가워서 vim을 배우고 싶을 수도 있습니다. 이 질문에 대한 답변이 몇 개인 지보십시오.

vim을 배우는 또 다른 이유를 알려 드리겠습니다. 문서의 품질과 완전성으로 유명합니다. 따라서 도움말 쿼리에서 적절한 키워드를 고수하자마자 도움말 시스템에서 질문에 대한 대부분의 답변을 찾을 수 있습니다.


2

vi (m) 빨리 배우려면 먼저 전체 디자인을 이해해야합니다. Vim은 훌륭한 커서 이동 명령을 가지고 있습니다. 몇 가지를 확인하십시오 (X는 문자, 숫자는 #입니다).

jk 엔터 화살표 0 $ w W b 크롤러 크롤링 크롤러 HML fX FX tX TX; % gg G n N mX 'X' '

그리고 더 많은 것은 열거하는 것이 지루할 것입니다. 이들 중 다수는 4 줄을 위로 이동하기 위해 4j와 같이 명령 이전의 개수를 지원합니다.

이제 디자인으로 돌아가서 delete에 d와 같은 명령을 입력 한 다음 커서 이동을 수행하면 명령은 커서 위치에서 이동 끝까지 텍스트에 적용됩니다. 예를 들어 H는 화면 상단으로 이동하고 dH는 화면 상단으로 삭제하고 cH는 화면 상단으로 변경 (대체)합니다.

이 디자인은 매우 강력합니다. 또한 배워야 할 내용을 줄이거 나 구성합니다. 확실히 첫 번째 단계는 몇 가지 커서 이동 명령을 배우는 것입니다. 처음에 8 또는 10이라고 말하십시오. 그런 다음 거의 끝났습니다.


2

IMHO는 새로운 것을 배우는 것이 항상 가치가 있습니다. 치트 시트를 인쇄하여 하루 종일 사용하도록 강요하십시오.


중국어로 누군가가 선생님으로부터 용을 도살하는 법을 배우는 이야기가 있습니다. 그가 공부를 마치고 나면 정육점에서 진짜 용을 찾을 수 없습니다. 나는 vi를 말하지는 않지만 때로는 무언가를 배우는 것이 시간 낭비라는 것은이 이야기의 도덕입니다.
어스 엔진

2

Vim은 이전에 여기에 언급 된 주요 원인을 부분적으로 요약하여 학습 할 가치가 있습니다.

  • Vi / Vim은 대부분의 유닉스 시스템에서 찾을 수 있습니다.
  • Vim을 사용하면 키보드에서 손을 떼지 않고도 쉽게 코딩 할 수 있습니다.
  • 유닉스 기반 시스템에서 구성 할 가능성이 있다면 몇 가지 구성 파일을 편집 할 것이므로 vim이 가장 좋은 터미널 기반 편집기를 배우는 것이 좋습니다 (죄송한 emacs).
  • Vim은 거의 모든 OS에 대해 바이너리를 컴파일 / 컴파일했습니다. 게시 할 필요가 없습니다. "[insert OS]에 대한 대체 텍스트가 필요합니다."대신 Vim을 사용하게됩니다!
  • 에디터 내 cvs diffs와 같은 많은 기능을 추가하기 위해 좋은 플러그인이 많이 있지만, 이들 중 일부는 상당한 양의 땜질이 필요합니다.

또한 Vim 키 바인딩이 마음에 들면 간단한 명령을 위해 편집기에 vim 바인딩을 포함하는 IDE도 있습니다 (예 : Komodo Edit) .

Vim 학습에 도움이 필요하면 터미널에 'vimtutor'를 입력하고 지침을 따르십시오. 특히 좋은 해킹 Vim 책이 있습니다


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