Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

Jun Station 준스테이션

Vi / Vim 키워드 본문

Editor 사용법/Vi, VIM 을 마스터해보자

Vi / Vim 키워드

julyjuny 2023. 3. 28. 13:54
명령어 행동 비고
: vs (vsp) 화면 세로 분할  
: sp 화면 가로 분할  
Ctrl + w + = 분할된 화면 창 넓이(width) 동일하게 변경 https://seulcode.tistory.com/129
Ctrl + ww vim 분할된 화면 창 커서 이동 https://m.blog.naver.com/sw4r/221615294671
Ctrl + w + h / j / k / l vim 분할된 화면 창 커서가
h(왼) / j(좌) / k(위) / l(우) 방향대로 이동
 
u 실행 취소  
Ctrl + r 다시 실행  
:e [파일명] [파일명] 을 불러오기 Tab키로 자동완성 가능
:E gvim 에서 다시 디렉토리 모드로 바꿀 때  
:new 새 빈 파일 만들기 Ctrl + wn
:e [새파일이름] [새파일이름] 이라는 이름으로 새 파일 작성  
<일반모드> / [검색단어]  [검색단어] 를 검색 - n : 다음 단어
- N (Shift + n): 이전단어
y 복사

yy: 해당 line 복사
[숫자]y: 커서가 위치한 line에서 시작해서 [숫자]만큼 복사
(예: 5y -> 5줄 복사)
y$: 커서에서 줄 끝까지 모든 것을 복사
y^: 커서에서부터 줄 시작까지 모든 것을 복사
yw: 다음 단어의 시작 부분에 복사
yew: 현재 단어를 복사

Y: 행 단위 복사
p 커서 이후에 붙여넣기 P: 커서 이전에 붙여넣기
1. v: visual mode
2. 커서를 이동하여 블럭 설정
3. 블럭 설정 후 ':' 입력
4. '<,'> 이 나타나면
'norm i[원하는 문자]' 입력
여러줄 한꺼번에 주석처리
[원하는 문자] = '//' 또는 '#'
norm 1x : 앞쪽 1개의 문자가 삭제
/ [검색어] (다음)

? [검색어] (이전)
보기모드에서 / 타이핑 이후 [검색어] 를 치면 해당 단어 검색 출처: https://gracefulprograming.tistory.com/118 [Peter의 우아한 프로그래밍:티스토리]
(시작줄), (끝줄)s/찾을패턴/바꿀문자열/옵션 슬래시 [ / ] 대신, [ @, #, % ] 으로 사용해도 됨 (바꿔야 할 문자열에 슬래시 [ / ]  가 포함되어 있는 경우) 출처: https://gracefulprograming.tistory.com/118 [Peter의 우아한 프로그래밍:티스토리]
tab  사실 tab 자체가 tab 기능을 하지는 않는다. 대신 space 공백 4개로 설정하는 방법은 다음과 같다:
1: .vimrc 을 켠다.
2: 아래와 같이 설정해준다.

set smartindent
set tabstop=4
set expandtab
set shiftwidth=4 " >> 또는 << 키로 들여 쓰기 할때 스페이스의 갯수. 기본값 8
https://roadtosuccess.tistory.com/22
* [검색어] (다음)

# [검색어] (이전)
기존에 있는 단어를 검색 (커서가 위치해 있는 단어) https://jjeongil.tistory.com/1999
 ctrl + v + 위/아래 방향키 세로줄 블록 https://chancoding.tistory.com/134
ctrl + v + 위/아래 방향키
 + Shift + i 입력 (대문자 I 입력) 
세로 방향에 특정 문자열 수정하기

ESC 2번 누르기 / 선택한 세로줄 수정적용
https://chancoding.tistory.com/134
`resetall  When the `resetall compiler directive is encountered during compilation, all compiler directives are set to their default values.

This is useful for ensuring that only those directives that are desired when compiling a particular source file are active. To do so, place `resetall at the beginning of each source text file, followed immediately by the directives desired in the file.

directives 개념은 verilog 개념쪽에: https://julyjuny.tistory.com/89
https://verilogams.com/refman/basics/directives.html
 shift + v + g 커서 시점부터 맨 아래까지 전체 선택
-> 이후에 아래의 키 추가하면
+ y: 전체 복사
+ d: 전체 삭제

https://wonos.tistory.com/354
: (시작줄),(끝줄)s/찾을패턴/바꿀문자열/옵션  s: substitute 의 약자
문서 전체: (시작줄),(끝줄) 대신  " % " 사용

g: 매칭되는 문자열을 물어보지 않고 변경
i: 대소문자를 구분하지 않고 변경 (ignore cases)
c: 매칭되는 문자열마다 바꿀 것인지 물어보고 변경
https://gracefulprograming.tistory.com/118
 visual mode에서

1. zf
2. zc
3. zo
4. zd
1. 코드 접기 생성 (Folding Create)
2. 코드 접기 (Folding)
3. 접은 코드 열기 (Folding open)
4. 접기 삭제 (Folding 삭제)
https://m31phy.tistory.com/228
 Shift + i 줄 맨 앞쪽에서 insert mode 켜짐  
커서에 위치한 필요 없는 글자 삭제  
 gf 어느 경로에 커서를 두고 "gf" 이라고 치면
해당 경로로 바로 이동
다시 이전 상태로
돌아오려면
ctrl + o
 Ctrl + Shift + w + 화살표키 vim 내에 vsp 또는 sp 상황에서 입력창 이동  
 diffthis 해당 창을 vim diff 하기

-----  보통 사용 법 ------
1. vsp 를 한다
2. :E를 이용하여 2개 의 vim 파일로 이동
3. 한쪽 vim 에서 :diffthis 입력
4. Ctrl + Shift + w (두번) 으로 이동
5. 움직인 창에서도 :diffthis 입력
6. 다 비교한 다음 diffoff 으로 끄기
 
     
     

 

 

https://jjeongil.tistory.com/1801

 

Linux : Vim / Vi : 복사, 잘라내기, 붙여넣기 방법, 예제, 명령어

텍스트 파일로 작업할 때 텍스트 복사, 잘라내기 및 붙여넣기는 가장 일반적으로 수행되는 작업 중 하나입니다. Vim 또는 Vi의 전구체는 macOS 및 거의 모든 Linux 배포판에 사전 설치되어 제공됩니

jjeongil.tistory.com

 

Comments