다른 사람들이 vi / Vim을 사용하도록 어떻게 영감을 줄 수 있습니까?


37

나는 그것을 사용한 상반기부터 vi의 힘에 매우 감동했습니다. 그런 다음 일부 작업 환경에는 빅토 터를 실행하지 않고 "너무 복잡해"라고 피하는 많은 사람들 (기술자 및 시스템 관리자)이 있으며 여전히 삽입 모드에서만 vi를 사용하는 다른 사람들이 있습니다. 모달 편집의 요점을 놓치십시오.

배우고 사용하도록 영감을주는 방식으로 다른 사람들에게 vi / Vim의 힘을 어떻게 증명할 수 있습니까?

특히 Vim을 배우고 사용하기 위해 다른 사람들 (또는 자신)에게 성공한 것에 대한 실제 역사에 관심이 있습니다.


4
주관적인 질문에 대한 지침을 읽었으며 이것이 적합하다고 생각합니다.
와일드 카드

@Wildcard는 아마도 주관적인 질문에 적합하지만 실제로 너무 광범위합니다. 비슷한 "주관적인"질문에 대한 토론 은 meta.vi.stackexchange.com/q/1278/205 를 참조하십시오 .
muru

너의 의도를 알 겠어. 나는 그 토론과 여러 개의 연결된 토론을 읽었습니다. 나는 여전히이 질문이 적절하다고 생각하지만 여기서 논의 할 생각은 없다. 메타에서 논의해야 할 곳이 있습니까?
와일드 카드

@Wildcard 당신은 항상이 질문에 대해 Vi와 Vim Meta 에 질문을 게시 할 수 있습니다 .
muru

1
@Rich 다음과 같은 중간 게시물의 예가 있습니다. Vim을 좋아하는 이유 :이 기능을 잘 알려지지 않은 기능입니다 .
Sroo Stroobandt

답변:


54

Vim과 그 생태계에 약간의 노력을 기울 였지만 적극적으로 다른 사람들을 개조하려고 시도하지는 않습니다. 내가 함께 일한 대부분의 사람들은 자신의 작업에 만족하기 때문에 워크 플로 및 도구 집합을 개선하는 데 많은 시간을 투자하지 않습니다. 나는 그것이 완벽하게 훌륭하다는 것을 알았습니다 ... 그리고 나는 지속적인 편집자 관련 proselytizing의 목표가되는 것을 싫어 해서 다른 사람들에게 그것을 강요하지 않습니다.

하지만 때로는 동료가 내 인생에 흥미를 느끼고 몇 가지 질문을 할 수도 있습니다. 그 드문 사건이 발생하면 주제에 대해 토론하고 멋진 트릭을 시연하며 유용한 자료를 알려주는 것이 행복합니다.

마지막 직장에서, 동료는 Vim에게 매우 관심이 있었고 기초를 아주 잘 알고있었습니다 ( vimtutor). 그는 빠른 편집을 수행하기에 충분했지만 실제로 Vim (실제로 원하는 것)으로 전환 할 수있는 자신감과 노하우가 부족했습니다. 어느 시점에서 그는 큰 JSON 파일을 수동으로 반복 편집해야했습니다. 그는 한 시간을 낭비한다는 생각에 괴로워하고 더 빠르고 똑똑한 솔루션을 찾고 나에게 왔습니다. 물론 간단한 매크로가 기록을 포함하여 1 분 이내에 작업을 수행하여 몇 가지 주요 개념을 설명 할 수있었습니다.

새로 온 사람들이 직면 한 한 가지 문제는 "지금 무엇?" 바로 그 순간 vimtutor. Vim은 그 아름다움을 잘 숨기고 많은 사람들이 도움없이 그 껍질을 깨 뜨리려는 의지가 없습니다. 필요한 경우 도움을 줄 수는 있지만 Vim을 다른 사람에게 강요하지는 않습니다.


20

나는 Vim을 모든 것에 사용합니다. 나는 모든 것을 의미합니다. 프로그래밍, 워드 프로세싱, 소설 쓰기 등 모든 것. Vim과 함께 Linux Virtual Box 를 실행 하는 Surface Pro 3을 사용하여 자동차 대리점에 앉아 있었고 사람들이 내가하고있는 일에 대해 나와 대화를 나누도록했습니다.

Vim을 사용하십시오. 사람들이 당신에게 무엇을하고 있는지, 왜 그런지 알아 내기 위해 무리를 지을 것입니다. 나는 보통 이런 식으로 설명합니다-

Vim은 설치 공간이 매우 작기 때문에 사용합니다. Microsoft Word는 몇 기가 바이트이며 내 Surface의 공간은 128GB입니다. 공간을 최대한 활용해야하는데 Vim이 도와줍니다. 또한 확장 가능하며 집중력을 유지하는 데 도움이됩니다. 여기 봐 내 플러그인 중 일부를 시연하고 Vim이 전체 화면으로 본질적으로 모든 것을 다루는 방법을 보여줄 수 있습니다 .

나는 종종 ViT 와 함께 LaTeX 를 보여줍니다 . LaTeX 파일을 작성한 다음 가지고있는 템플릿을 사용하여 아름다운 PDF로 컴파일합니다. 또한 내 편지를 시연하고 템플릿을 재개합니다. 콘텐츠에서 스타일을 구분하는 것이 얼마나 중요한지 강조합니다. 이 시점에서 사람들은 더 이상 내가 말해야하는 것에 관심이없고 나에게 말하는 것을 후회합니다.

그들은 대화에서 벗어날 길을 찾고, 나는 글로 돌아갑니다. Vim은 워드 프로세서 이상의 종교적 경험입니다.


3
궁금한 점은 vim으로 이메일을 작성합니까? (I do!)
Oliphaunt

5
@Oliphaunt VIM에서 이메일을 작성합니다. 선택한 전자 메일 클라이언트는 MUTT이며 새 전자 메일을 편집하거나 만들면 선택한 편집기가 열립니다. RSS 피드 리더 (newsbeuter)에 URL을 추가하기 위해 VIM을 사용하기도합니다.
ILikeTurtles

7
일부 사람들은 Visual Basic을 사용한다고 말함으로써 답변을 편집하기로 결정했습니다. Virtual Box를 사용하고 Windows에서 Linux를 실행합니다. 그러나 이러한 편집 내용은 매우 흥미 롭기 때문에 그대로 두겠습니다. 편집을 통해 전화를하는 것과 같습니다. 이야기는 사람들이 편집할수록 계속 바뀌고 있습니다. 장난.
ILikeTurtles

2
@ 윌 p. 2GB 이하를 차지하는 VM이 ​​있습니다. 4GB 또는 다른 Microsoft Tools 복사본을 설치하는 것보다 전체 운영 체제, VIM 및 기타 모든 도구를 설치하고 싶습니다. 필요한 경우 VM 자체를 확장 할 수는 있지만 특정 컴퓨터를 처리 할 때 주로 텍스트 파일로 작업하기 때문에 아직 발생하지 않았습니다. FreeBSD를 사용했다면 잠재적으로 더 작은 풋 프린트를 실행하고 전체 VM을 공연으로 실행할 수 있습니다.
ILikeTurtles

3
Office 365에는 최대 6GB의 하드 드라이브 공간과 최대 4GB의 램이 필요합니다. 4GB의 HD 공간과 1028MB의 램을 사용하여 전체 Linux OS를 실행할 수 있습니다. 내가 물건을 밀고 싶다면 덜. VM에서 FREEBSD를 실행했으며 256MB의 램만 제공했습니다. 나를위한 VIM은 Office를 대체하지만 전체 OS를 설치하면 Office가 제공하는 것보다 훨씬 많은 도구를 제공합니다. 나는 그것이 의미가 있기를 바랍니다.
ILikeTurtles


13

마지막 직장에서 Vim을 배워야했던 사람으로서, 가장 큰 장애물은 옵션이 설정되지 않은 "기본" 설치 앞에 놓여 졌다고 말할 것 입니다. 나는 대부분의 시간을 "모든 사람들이 반대 방향으로 행동 할 것으로 기대할 때 왜 이런 식으로 행동 하는가?"라고 말했습니다.

다른 모든 사람들은 이미 "위생성" 기본값을 설정 한 것으로 나타났습니다 . 일단 알아 낸 후에는 훨씬 더 행복했고 더 많은 것을 배울 수있는 기회를주었습니다 . 며칠 동안 숫자 패드가 작동하지 않고 탭이 잘못되었거나 검색이 제대로 작동하지 않는 등 수건에 넣을 준비가되어 다시는 돌아 보지 않았습니다.

당신이 정말로 그것을 충분히 좋아하는 사람하려면 시도 및 고급 기능을 배우고, 그들이해야 할 일의 종류에 최적화 된 설정 파일과 오른발을 시작합니다.


4
참조, 나는 당신이 언급 한 이러한 성가신 기대 중 하나도없이 그것에 접근했습니다. 이것은 일반 사용자가 요즘 익숙한 제품이 수십 년 전에 태어났다는 인식에 의해 도움을 받았습니다. 나는 익숙한 지 여부에 관계없이 더 나은 작업 방법에 열려 있습니다. 실제로 자신의 설정 파일로 초보자를 슬쩍하는 것은 좋은 자습서가 아닙니다!
underscore_d

+1. 나는 같은 경험을했고 더 이상 동의 할 수 없었습니다. 완료 할 작업이 있으면 새 편집기로 전환하는 것이 고통 스럽거나 불가능할 수 있습니다. .vimrc를 넘겨주는 것에 대해 모르지만 그것이 무엇인지 설명하고 새로운 사용자가 자신의 작업 스타일에 대한 몇 가지 기본값을 설정하도록 돕는 것은 생산성을 높이는 데 도움이 될뿐만 아니라 vi의 일부를 노출시키는 방법으로도 사용됩니다 (m)의 마술.

1
.vimrc유용한 기본값 으로 파일을 읽는 것이 실제로 유용합니다. github.com/amix/vimrc
icc97에서

완전히 동의 해. 더 많은 배터리가 포함되어 있다면 Vim은 더 인기가있을 것입니다. 예를 들어 단어 교체 작업 을 수행하기 위해해야했던 작업을 살펴보십시오 . 현재 상태 그대로, 항상 꿈꿔 왔던 텍스트 편집기를 구성 / 프로그래밍 vim해야하는 기본 빌딩 블록제공합니다 .
Sroo Stroobandt

9

오래된 개에게 새로운 트릭을 사용하도록 영감을주는 가장 좋은 방법은 자신이하고있는 일을하고 다른 방법으로 더 빠르고 쉽게 / 더 나은 방법으로 쉽게 수행 할 수있는 방법을 보여주는 것입니다.

그럼에도 불구하고 일부 사람들을 끄는 학습 곡선이 분명히 있습니다. 농담 하나

어떻게 무작위 문자열을 생성합니까? 새로 온 사람에게 vim을 닫으라고 요청하십시오.


1
좋은 지적. 마우스보다는 키보드 지향적 인 경향이있는 사람으로서 vi/ m많은 상황에서 나에게 속도 향상을 제공하고 /하거나 입력 장치 사이의 플립을 피합니다. 또한, 나는 꽤 많은 명령 프롬프트 작업 (Linux, Cygwin)을 수행하며 vi항상 있습니다 .
underscore_d

8

가장 좋은 방법은 Vim 을 스스로 배우고 다른 사람들에게 그 힘을 보여주는 것입니다. 당신이 할 필요조차 없습니다 (실증하십시오)-그것은 스스로 승진합니다. 일부 hackish 같은 터미널 배경에 일부 멋진 구문 색상을 사용하고 나면, 사람들은 호기심 얻고 자주 물어 - 도대체 당신이 무엇을하고 있는지 . 그런 다음 그들에게 보여주십시오.

페어 프로그래밍을하고 다른 개발자가 Sisyphean 작업처럼 느껴지는 반복 가능한 작업을 시작한 것을 보았을 때 ( 백 스페이스 나 화살표를 수백 번 누르는 것과 같이) Vim 에서 키를 몇 번만 눌렀을 때 얼마나 귀찮은 지를 말해줍니다 . 1 초 미만

또한 유용한 Vim 트릭에 대해서는 다음 페이지를 확인하십시오.


1
두 번째 단락은 현장에 있습니다. 당신이 그들을 볼 때 통증을 제외하고도 나쁘다 정력을 사용 에서, 삽입 모드 , 그리고 눌러 화살표 키를 오른쪽으로 이동하는 라인의 끝에 . 아아! (나는 이것을 만들고 있지 않다.)
Wildcard

1
@Wildcard와 일치하여 키 누르기계산 하여 고정 너비 데이터를 구문 분석하려고하는 동료를보고 미치게 만들었 습니다. 몇 주가 걸렸으므로 도움이 거부되었습니다. 한숨
roblogic

7

가장 중요한 것은 밀지 말고 전도하지 마십시오. 당신의 동기에 대해 절대적으로 확신하십시오. 선교 사업에 대한 힌트가 있다면 시작하지 마십시오. 압도적 인 대다수의 사람들은 다른 워크 플로우를 확인하라는 단순한 제안이 비판의 저류를 전달하기 때문에 성가 시거나 공격적으로 반응합니다. 귀하의 작업 흐름이 작업 흐름보다 낫습니다. 많은 사람들이 문을 닫습니다. 실제로 이것은 환경에 관계없이 작동하는 일반적인 원칙입니다 (채식주의 자 / 고기를 먹는 사람, 민주당 / 공화당, 자동차 브랜드, 레시피 등을 생각하십시오).

당신 편의 비판이 처음에는 의도되지 않았을 수도 있지만, 이것은 다른 쪽에서 발생하며 당신이 할 수있는 일은 없습니다. 그것은 당신을위한 인간입니다.

편안한 환경에서 마감일이 없을 때 주제를 제시하는 것이 좋습니다. 에서 토크 당신의 방식으로 경험을 어떻게 감동 있었다 얼마나 더 효율적으로 당신이 지금 생각합니다. 절대 비교하지 마십시오. "더 나은 것"이라고 말하지 마십시오. 도전을 요구하는 절대적인 진술 일 것입니다. 항상 "나는이 방식으로 더 생산적입니다"로 가십시오. 이런 식으로 상대방은 당신 이 실제로 더 생산적이고 압력을 가하지 않는다는 것을 무시할 수 없습니다 . 다른 사람이 주제를 선택하고, 친절하게 링크를 공유 할 것을 제안한다면 Vimcasts는 훌륭한 리소스입니다.

Vim을 배우는 것은 어려운 일입니다. 특히 첫 번째 설정을 올바르게하기 위해 투자하는 미친 시간을 고려하십시오. 나는 그 시간 동안 머리에 물음표가 너무 많았고 매 순간마다 무의미하거나 적대적으로 보였다. 직관적 인 것과 반대입니다. 누군가가 그것을 고수하고 점점 더 "아하!" 좀 더 단어 같은 편집기를 위해 그것을 떨어 뜨릴 것입니다. 뭐든간에

결국 그것은 논쟁의 가치가 없습니다. 모두가 일을 끝내는 것을 사용합니다. 이것이 소스 코드의 아름다움입니다. 보편적입니다.


7

vi를 처음 사용한 것은 "Intro to Unix"클래스였습니다. 선생님은 그것을 잘 몰랐고 매우 어수선한 방법으로 그것을 소개했습니다. 우리는 다른 것을 설치하지 않은 시스템에 갇혀 있으면 돌아 다닐 수있을만큼 충분히 외워야했습니다. 나는 그 학기를 다시 보지 않았다. 그것이 vi를 복음화 하지 않는 방법이며, 많은 사람들이 첫 경험을했던 방식이라고 생각합니다.

몇 년 후, 나는 Perl에 관한 기업 평생 교육 수업에 참여했습니다. 강사는 데모에서 vim을 사용하여 수업의 주요 목적은 아니지만 측면에서 사람들을 도울 것을 제안했습니다.

Perl의 비공식 모토는 TMTOWTDI입니다 (여러 가지 방법이 있습니다). 수업에서 질문을 할 때 강사는 편집 내용을 단어로 표현할 수있는 것보다 빠르게 대안을 보여주기 위해 편집 할 있습니다. 편집 할 때 코드를 읽을 수있는 것에 익숙했지만 그에게 편집은 여러 번의 키로 발생했으며 그 다음 설명은 빙하 속도로 진행되었습니다. 그가 편집 내용을 설명하지 않아도된다면 이미 다음 작업으로 넘어 갔을 것입니다.

vim을 보여줄 수있는 몇 가지 비슷한 기회가 있습니다.

  • 스크럼 회의
  • 페어 프로그래밍
  • 기술 회담
  • 소프트웨어 데모

배운 후에 사람들에게 잠재력을 보여주는 것이 초기의 어리 석음을 지나치도록 영감을 줄 것이라고 생각합니다.


vi에 대한 두 가지 다른 노출에 의해 생성 된 노출을 비교하는 것은 매우 귀중한 교훈이라고 생각합니다. 나는 그것을 읽은 후 이것을 여러 번 생각했습니다 ... 내 마음에 붙어 있습니다. 감사합니다.
와일드 카드

6

Vim의 눈이 떠 다니는 것은 내면의 움직임 이었습니다 . .반복과 카운트로 물건을 접두하는 것 외에도 내부 동작을 보여주는 것은 누군가가 vim에 대해 나에게 물었을 때 보여 주거나 공유하는 것 중 하나입니다. ci(또는 gUi>diw.

g;그리고 g,당신이 수정 한 곳으로 주변에 이동하는 것은 눈 확대 또는 두 일반적으로 좋다.


2

vi컴퓨팅 역사에서 존경받는 가계도를 가지고 있지만에 초점을 두는 것이 좋습니다 vim. 뛰어난 기능을 갖춘 모든 기능을 갖춘 편집기로 경쟁사와 일치합니다. 유일한 단점은 학습 곡선입니다. "Vim 사고 방식"과 근육 기억력을 얻는 데 시간이 걸립니다. 노력할만한 가치가 있다고 생각합니다. 에 능숙 해지면 귀하의 처분에 많은 힘이 있습니다 vim.

  1. 지루한 텍스트 처리 작업을 자동화하는 vimscript의 힘을 보여줍니다.
  2. vim-airline모두가 좋은 UI를 좋아하기 때문에 와 같은 멋진 플러그인을 설치하십시오 .
  3. 이와 같은 무료 튜토리얼 이 많이 있습니다.
  4. vi/ vim는 모든 Unix 기반 시스템에 설치됩니다. 따라서 모든 전문적인 sysdamin은 그것에 대한 실무 지식이 있어야합니다.

내 질문의 진정한 요점은 귀하의 답변 1 지점에 관한 "방법"입니다. 이것을 다른 사람들에게 보여 주거나 자신을 보여준 경험이 있습니까?
와일드 카드

그다지 시연,하지만 난 텍스트를 정리하기 위해 정기적으로 작은 정력 스크립트를 사용하지만, 당신처럼 나는 동료 없습니다 많은 관심 (그들은 아무도 읽어 없다고 대규모 문서로 출력을 덤프하는 것을 선호)이
roblogic

0

저는 VIM을 좋아하지만 학습 곡선은 가파 릅니다.

아직 VIM을 채택하지 않은 전문가는 인수에 의해 설득되지 않을 것 입니다. 필요에 의해서만.

VIM을 정기적으로 사용한다고 말하는 사람들의 의견을 들어, 가장 큰 사용 사례는 SSH를 통해 CLI를 사용하여 여러 * NIX 시스템을 원격으로 관리하는 관리자의 경우입니다.

VIM은 문자 그대로 지구상의 거의 모든 * NIX 시스템에 설치됩니다.

VIM은 25 세 이상이며 1998 년에 사용하기 시작한 이후로 변경되지 않았습니다.


0

학생들에게 두 단어 를 자신의 Word ™ 프로세서와 바꾸도록 요청하십시오 .

… 그러면 마스터가 어떻게이 작업을 수행하는지 보여줍니다 vim. (그러한 매핑여기에 있습니다 .)

마지막으로, 학생은 지금까지 워드 프로세서 로 작업 해 왔는지 생각하게합니다 .


1
영리하지만 control-backspace는 거의 모든 Windows 편집기에서 단어를 삭제하고 alt-backspace는 거의 모든 Mac 편집기에서 단어를 삭제합니다.
와일드 카드

@Wildcard 삭제 와 첫 번째 아이디어 선택 사이에 의문이 생겼습니다 . 물론 당신은 절대적으로 옳습니다. 따라서 다시 선택
Sroo Stroobandt

여전히 — 왼쪽 / 오른쪽 화살표 (또는 Mac의 경우 Alt-Shift)를 Ctrl-Shift로 이동하십시오. :)
와일드 카드

@Wildcard 나는 지금 그것을 얻었다 고 생각합니다. 과거의 추론을 재구성해야했습니다. ;)
Stroobandt Serge.

@Wildcard 고맙습니다. 나는 내가 과감한 변화를 일으킨 원인을 기억하는 데 어려움을 겪었다 gvim. 지금, 나는 잘 기억합니다. 비영어권 사용자로서 영어 텍스트를 쓸 때 문장에서 단어를 바꾸거나 움직였습니다. 정확히 그렇게하기 위해 고유 한 vimscript 매핑 을 작성 했습니다.
Sroo Stroobandt

0

Vim은 일반 텍스트 파일의 재평가에 관한 것이기도합니다

문서 작성의 맥락에서 그 가치 vim는 멋진 단어 편집 기술에만 국한되지 않습니다. 또한 Vim은 유비쿼터스 일반 텍스트 파일의 가치를 복원하고 이전 버전과의 호환성을 보장합니다.

Vim은 또한 컨텐츠에만 집중합니다. 형식이 아님

웹 페이지 편집에 익숙하지 않은 경우 컨텐츠를 형식에서 분리 하는 것은 일반 회사 직원에게 패러다임 산산조각이 될 수 있습니다. 이러한 이유로 Pandoc 및 아마도 a 와 함께 Markdown 편집기 gvim로 표시하고 싶습니다 .makefile

이것은 단지 한 가지에 아주 좋은 프로그램을 결합하고 파이핑하는 유닉스 또는 GNU / Linux 철학을 잘 보여줍니다 .

또한 기본 vim키 조합은 다른 많은 GNU / Linux 프로그램에서 사용됩니다.


0

인간 공학

올바른 설정으로 어깨 나 허리 통증없이 몇 시간 동안 일할 수 있습니다.

오른쪽 설정은 모든 사람을위한 코스 다른입니다 만, 터미널, 매핑 빔을 사용 Esc하는 Capslock마우스 커서 키를 비활성화하는 것은 좋은 시작이다.

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