Coder Social home page Coder Social logo

vim-seminar's Introduction

vim-seminar

vim 편집기를 소개하고 사용법을 공유하기 위한 seminar

스토리라인 및 포함되어야 할 내용(지시사항)

  • 설정파일(.vimrc)
  • 다음주 교안 완성 및 훈련까지 진행
  • 터미널 브아이아이 안끄고 파이썬코드 실행하는 환경 공유
  • 찾기, 검색, 복사, 붙여넣기, 쉽고 아주빠르게
  • 실행취소 이동, 등등등 추가 기능
  • 4시간정도에 끝낼수 있는 것
  • 반복적인 미션 줘서 훈련할 수 있도록
    • VI 튜토리얼 따라해볼까?
    • VI 게임?????
  • 왜 VI를 써야하는지, 왜 커맨드라인인지, 역사 살짝
    • 에디터 전쟁.. 빌조이
  • VI는 전투력측정의 지표이다. 이사람이 얼마나
    • 우리는 뻥투력을 올리고 실제 전투력은 차차 올라가겠습니다.
  • VI 편집기를 이용해서 10초 걸릴일이 1초 걸리도록
  • SED

실습 목차

LESSON 1

  • 1.1 : 커서 움직이기
  • 1.2 : 빔을 시작하고 끝내기
  • 1.3 : 텍스트 편집 - 지우기
  • 1.4 : 텍스트 편집 - 삽입 (INSERTION)
  • 1.5 : 택스트 편집 - 추가 (APPENDING)
  • 1.6 : 파일 편집

[LESSON 1 요약]

1. 커서를 움직일 때에는 화살표 키나 hjkl 키를 이용합니다.
    h (왼쪽)       j (아래)       k (위)       l (오른쪽)

2. 쉘 프롬프트에서 빔을 시작하려면 vim FILENAME <ENTER>

3. 수정한 내용을 무시한 채로 빔에서 빠져나가려면   <ESC>   :q!   <ENTER>
    저장한 후 빔에서 빠져나가려면   <ESC>   :wq   <ENTER>

4. 명령 모드에서 커서가 위치한 곳의 글자를 지우려면   x  를 입력합니다.

5. 명령 모드에서 커서가 위치한 곳에 텍스트를 삽입하려면
    i   를 누른 후 텍스트를 입력하고  <ESC>      커서 앞에 삽입합니다. 
    A   를 누른 후 텍스트를 입력하고  <ESC>     문장 뒤에 추가 합니다.

참고: <ESC>는 명령 모드로 돌아가는 데 쓰며, 원치 않는 명령이나 완전히 입력되지 않은 명령을 취소하는 데에도 씁니다.

LESSON 2 : 삭제(반복삭제, 삭제취소)

  • 2.1 : 삭제(DELETION) 명령 : dw
  • 2.2 : 지금부터 줄끝까지 삭제 명령 : d$
  • 2.3 : 명령과 적용 대상에 대해 : dd,dw,de,d$
  • 2.4 : 대상에 반복 적용하기 : 2w, 3e
  • 2.5 : 삭제에 반복 적용하기 : d2w
  • 2.6: 줄 전체 조작하기 : dd, 2dd

LESSON 2 요약

1. 커서가 위치한 곳부터 단어의 끝까지 지우려면:    dw

2. 커서가 위치한 곳부터 줄 끝까지 지우려면:    d$

3. 줄 전체를 지우려면:    dd

4. 횟수와 함께 대상을 반복 시키려면:    2w

5. 명령 모드에서 내리는 명령의 형식은 다음과 같습니다:
     [횟수]   명령   대상    또는    명령   [횟수]   대상
   여기서:
     횟수 - 그 명령을 몇 번 반복할 것인가
     명령 - 어떤 명령을 내릴 것인가 ( 예를 들어, 삭제인 경우는 d )
     대상 - 명령이 동작할 대상, 예를 들어 w (단어), $ (줄의 끝) 등.

6. 커서를 문장 맨 앞으로 옮기려면:    0 

7. 이전 행동을 취소하려면:                 u   (소문자 u)
   한 줄에서 수정한 것을 모두 취소하려면:  U   (대문자 U)
   취소한 것을 다시 실행하려면:            CTRL-R

LESSON 3

  • 3.1: 붙이기(PUT) 명령 : dd로 삭제 후 p를 입력하여 지운내용을 커서 뒤에 붙인다.
  • 3.2: 치환(REPLACE) 명령 : 커서 아래의 글자 하나를 바꾸려면, r 을 누른 후 바꿀 글자를 입력
  • 3.3: 변환(CHANGE) 명령 : ce 한단어의 전체(클리어+edit), 자동으로 삽입모드
  • 3.4: c 를 이용한 다른 변환 명령 : [횟수] c 대상 // c [횟수] 대상
    • 적용 가능한 대상 역시 같습니다. w (단어), $ (줄의 끝)

LESSON 3 요약

1. 이미 지운 내용을 되돌리려면,  p  를 누르십시오. 이 명령은 커서 *다음에*
   지워진 내용을 붙입니다(PUT). (한 줄을 지운 경우에는 커서 다음 줄에
   지워진 내용이 붙습니다.)

2. 커서 아래의 글자를 치환하려면(REPLACE),  r  을 누른 후 원래 글자 대신
   바꾸어 넣을 글자를 입력합니다.

3. 변환 명령(CHANGE)은 커서에서 부터 지정한 대상의 끝까지 바꿀 수 있는
   명령입니다. 예를 들어, 커서 위치에서 단어의 끝까지 바꾸려면  ce  를
   입력하면 되며,  c$  는 줄 끝까지 바꾸는 데 쓰입니다.

4. 변환 명령의 형식은 다음과 같습니다:
       [횟수]   c   대상       또는       c   [횟수]   대상\

LESSON 4 :

  • Lesson 4.1: 위치와 파일의 상태 : CTRL-G
    • G 를 누르면 파일 내의 마지막 줄
    • gg 를 누르면 맨 처음 줄
    • 특정 번호의 줄로 이동 : <줄번호>
  • 찾기 명령 : /<찾을단어>
    • ex : /errroorr
    • n키를 눌러 다음항목
    • shift+N
  • n : 다음것 / shift+N 이전항목 : 변수 등을 찾을때 편리(복사-> 컨트롤F ->붙여넣기 탐색보다 훨씬 빠름)
  • :s/thee/the/g 줄 (globally)를 치환함(thee->the로)
  • 문자열에 대해 치환하려면 다음과 같이 합니다, :#,#s/old/new/g #,# 는 두 줄의 줄번호를 뜻합니다. :%s/old/new/g 파일 전체에서 발견된 모든 것을 치환하는 경우입니다. :%s/old/new/gc 파일 전체에서 발견된 모든 것을 찾고, 치환여부를 프롬프트로 명령

LESSON 4 요약

1. CTRL-G  파일의 상태와 파일 내에서의 현재 위치를 표시합니다.
           G  파일의 끝으로 이동합니다.
      숫자  G  해당 줄로 이동합니다. 
          gg  첫 번째 라인으로 이동합니다. 

2.  / 를 입력한 후 문구를 입력하면 그 문구를 아랫방향으로 찾습니다.
    ? 를 입력한 후 문구를 입력하면 윗방향으로 찾습니다.
   검색 후, n 을 입력하면 같은 방향으로 다음 문구를 찾으며,
   Shift-N 을 입력하면 반대 방향으로 찾습니다.
   CTRL-O 는 과거의 위치로, CTRL-I는 새로운 위치로 옮겨줍니다. 

3. 커서가 (,),[,],{,} 위에 있을 때에  % 를 입력하면 상응하는 짝을
   찾아갑니다.

4. 어떤 줄에 처음 등장하는 old를 new로 바꾸려면          :s/old/new
   한 줄에 등장하는 모든 old를 new로 바꾸려면            :s/old/new/g
   두 줄 #,# 사이에서 치환을 하려면                      :#,#s/old/new/g
   파일 내의 모든 문구를 치환하려면                      :%s/old/new/g
   바꿀 때마다 확인을 거치려면 'c'를 붙여서              :%s/old/new/gc

창 분할

  • vsplit : 좌우 분할 -> 010
  • sp : 위아래 분할 -> 응
  • Ctrl + w,w
  • Ctrl + w,W (shift+w)
  • :q 현재 화면 닫기
  • :qa 모두 닫기

vim-seminar's People

Contributors

moto6 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.