[[TableOfContents]] == vi (visual interface) editor == >> vi[ë·”]ì•„ì´ëŠ” 광범위하게 사용ë˜ëŠ” ìœ ë‹‰ìŠ¤ ê¸°ë°˜ì˜ ìœ ëª…í•œ í…스트 편집기ì´ë‹¤. ëŒ€ë¶€ë¶„ì˜ ìœ ë‹‰ìŠ¤ 시스템 ì¸í„°íŽ˜ì´ìŠ¤ ë° ë‹¤ë¥¸ í…스트 편집기들과 마찬가지로, vi는 사용ìžê°€ ì‹œìŠ¤í…œì„ ì œì–´í•˜ê¸° 위해 키보드를 사용한다. viì˜ ê°„ê²°í•œ ì¸í„°íŽ˜ì´ìŠ¤ëŠ”, í”„ë¡œê·¸ëž˜ë° ì–¸ì–´ë¥¼ ìž…ë ¥í•˜ê±°ë‚˜ ìˆ˜ì •í•˜ëŠë¼ í•˜ë£¨ì¢…ì¼ ì»´í“¨í„° ì•žì—ì„œ ì¼í•´ì•¼í•˜ëŠ” 사람들, 특히 프로그래머들ì—게 매우 ì¸ê¸°ê°€ 높다. vi는 Emacsê°€ 나오기 ì „ì— ê°œë°œë˜ì—ˆëŠ”ë°, Emacs는 viì˜ ì¸ê¸° 있는 대안으로서, ë” ë§Žì€ ê¸°ëŠ¥ì„ ê°€ì¡Œìœ¼ë©°, ì¢€ë” ë³µìž¡í•˜ê³ , ì†ë„ê°€ 다소 ëŠë¦° í…스트 편집기ì´ë‹¤. vi는 í”„ë¡œê·¸ëž˜ë° ì–¸ì–´ë¥¼ ìž…ë ¥í•˜ê³ íŽ¸ì§‘í•˜ëŠ”ë°, ê·¸ë¦¬ê³ ì „ìžìš°íŽ¸ì„ í¬í•¨í•´ ì§§ì€ ê¸€ì„ ì“°ëŠ”ë°, 가장 ì¼ë°˜ì 으로 사용ëœë‹¤. vi는 대개 ìœ ë‹‰ìŠ¤ ì‹œìŠ¤í…œì˜ ì¼ë¶€ë¡œ ë”°ë¼ ë‚˜ì˜¨ë‹¤. ─ [http://www.terms.co.kr/vi.htm 텀즈] == 기본ì ì¸ ì¡°ìž‘ ë° ëª…ë ¹ == === 대기모드 === ||<tablewidth="70%"><rowbgcolor="#F8F8F8"> 키 ||<rowbgcolor="#F8F8F8"> 기능 ||<rowbgcolor="#F8F8F8"> 키 ||<rowbgcolor="#F8F8F8"> 기능 || || h ||{{{{color:red}왼쪽으로 ì´ë™}}} || b ||한단어 뒤로 ì´ë™ || || j ||{{{{color:red}아래로 ì´ë™}}} || B ||특수문ìž, 기호 ì œì™¸ 한단어 뒤로 ì´ë™ || || k ||위로 ì´ë™ || w ||한단어 앞으로 ì´ë™ || || l ||오른쪽으로 ì´ë™ || W ||특수문ìž, 기호 ì œì™¸ 한단어 앞으로 ì´ë™ || || 0 ||ë¼ì¸ì˜ 시작으로 ì´ë™ || G ||{{{{color:red}파ì¼ì˜ 마지막 행으로 ì´ë™}}} || || $ ||{{{{color:red}ë¼ì¸ì˜ ë으로 ì´ë™}}} || + ||ë‹¤ìŒ ë¼ì¸ì˜ 처ìŒìœ¼ë¡œ ì´ë™ || || ^ ||ë¼ì¸ì˜ 첫번째 단어로 ì´ë™ || - ||ì´ì „ ë¼ì¸ì˜ 처ìŒìœ¼ë¡œ ì´ë™ || || H ||{{{{color:red}í™”ë©´ì˜ ë§¨ìœ„ë¡œ ì´ë™}}} || ^F ||{{{{color:red}í•œ 화면 앞으로 ì´ë™}}} || || M ||{{{{color:red}í™”ë©´ì˜ ì¤‘ê°„ìœ¼ë¡œ ì´ë™}}} || ^D ||í•œ í™”ë©´ì˜ ë°˜ë§Œí¼ ì•žìœ¼ë¡œ ì´ë™ || || L ||{{{{color:red}í™”ë©´ì˜ ë으로 ì´ë™}}} || ^B ||{{{{color:red}í•œ í™”ë©´ì˜ ë’¤ë¡œ ì´ë™}}} || || / ||/[keyword] 검색([ì •ê·œí‘œí˜„ì‹]) || ^U ||í•œ í™”ë©´ì˜ ë°˜ë§Œí¼ ë’¤ë¡œ ì´ë™ || || n ||(/ 검색 ê²°ê³¼)ë‹¤ìŒ ì°¾ê¸° || N ||(/ 검색 ê²°ê³¼)ì´ì „ 찾기 || === ìž…ë ¥/편집 모드 === ||<tablewidth="70%"><rowbgcolor="#F8F8F8"> 키 ||<rowbgcolor="#F8F8F8"> 기능 ||<rowbgcolor="#F8F8F8"> 키 ||<rowbgcolor="#F8F8F8"> 기능 || || i ||{{{{color:red}현재 ë¬¸ìž ì•žì—서부터 ìž…ë ¥}}} || dw ||í•œ 단어 ì‚ì œ || || I ||현재 문장 ì•žì—서부터 ìž…ë ¥ || dd ||{{{{color:red}í•œ ë¼ì¸ ì‚ì œ}}} || || a ||현재 ë¬¸ìž ë’¤ì—서부터 ìž…ë ¥ || cw ||í•œ 단어 바꾸기 || || A ||현재 문장 ë’¤ì—서부터 ìž…ë ¥ || x ||{{{{color:red}í•œ ë¬¸ìž ì‚ì œ}}} || || o ||í–‰ì˜ ì•„ëž˜ì— ìž…ë ¥ || v ||{{{{color:red}복사 범위 ì§€ì •}}} || || O ||í–‰ì˜ ìœ„ì— ìž…ë ¥ || y ||{{{{color:red}ë¬¸ìž ë³µì‚¬}}} || || r ||곂ì³ì“°ê¸° || p ||{{{{color:red}현재 줄 다ìŒì— 버í¼ì˜ ë‚´ìš©ì„ ë¶™ìž„}}} || || R ||í˜„ìž¬ë¬¸ìž ì´í›„부터 ê²¹ì³ì“°ê¸° || P ||현재 줄 ì•žì— ë²„í¼ì˜ ë‚´ìš©ì„ ë¶™ìž„ || || D ||{{{{color:red}í˜„ìž¬ë¬¸ìž ì´í›„ ëª¨ë‘ ì‚ì œ}}} || u ||{{{{color:red}취소}}} || === ëª…ë ¹ëª¨ë“œ === ||<tablewidth="70%"><rowbgcolor="#F8F8F8"> 키 ||<rowbgcolor="#F8F8F8"> 기능 || || :0 ||ë¬¸ì„œì˜ ë§¨ 앞으로 ì´ë™ || || :$ ||ë¬¸ì„œì˜ ë§¨ 뒤로 ì´ë™ || || :(숫ìž) ||ìˆ«ìž ë¼ì¸ìœ¼ë¡œ ì´ë™ || || :+(숫ìž) ||현재 ë¼ì¸ì—ì„œ 숫ìžë§Œí¼ ë‹¤ìŒ ë¼ì¸ìœ¼ë¡œ ì´ë™ || || :-(숫ìž) ||현재 ë¼ì¸ì—ì„œ 숫ìžë§Œí¼ ì´ì „ ë¼ì¸ìœ¼ë¡œ ì´ë™ || || :set number ||í–‰ì— ë²ˆí˜¸ 부여 || || :set nonumber ||í–‰ì— ë¶€ì—¬ëœ ë²ˆí˜¸ ì œê±° || || :set (option) ||아래 참조 || || :ZZ or :wq ||ì €ìž¥í•˜ê³ vi ì—디터 종료 || || :w [filename] ||주어진 íŒŒì¼ ì´ë¦„으로 ì €ìž¥ || || :w! [filename] ||주어진 íŒŒì¼ ì´ë¦„으로 ì €ìž¥/ë®ì–´ì“°ê¸° || || :q ||ì €ìž¥í•˜ì§€ ì•Šê³ vi ì—디터 종료 || || :q! ||ì €ìž¥í•˜ê¸° ì•Šê³ vi ì—디터 ê°•ì œì¢…ë£Œ || || :e ||vi ì—디터 종료하지 ì•Šê³ ë‹¤ë¥¸ íŒŒì¼ íŽ¸ì§‘ || || :e! ||편집한 ë‚´ìš© ì €ìž¥í•˜ì§€ ì•Šê³ ìµœì¢… ì €ìž¥ëœ ìƒíƒœë¡œ íŒŒì¼ ì—´ê¸° || == 기타 ì¡°ìž‘ ë° ëª…ë ¹ == === ì°½ ë¶„í• === || ctrl+wf ||ì°½ì„ ìˆ˜í‰ìœ¼ë¡œ ë‚˜ëˆ„ê³ ì»¤ì„œ ìœ„ì¹˜ì˜ íŒŒì¼ì„ 오픈 || ctrl+ww ||ì°½ì´ë™ || || {{{:sp[lit]}}} ||현재 파ì¼ì„ ë‘ ê°œì˜ ìˆ˜í‰ ì°½ìœ¼ë¡œ 나눔 || ctrl+wv ||현재 파ì¼ì„ ë‘ ê°œì˜ ìˆ˜ì§ ì°½ìœ¼ë¡œ 나눔 || || ctrl+wn ||ë¶„í• ìƒˆ ì°½ 열기 || ctrl+we ||현재 ì°½ì—ì„œ 다른 íŒŒì¼ ì½ê¸° || || ctrl+wo ||현재 창만 ë‚¨ê¸°ê³ ëª¨ë‘ ë‹«ê¸° || {{{:clo[se]}}} ||현재 ì°½ 닫기 || || {{{:res[ize] N}}} ||ì°½ì˜ í¬ê¸°ë¥¼ N으로 변경(ìˆ˜í‰ ì°½ë§Œ 해당) || || {{{:res[ize][+-]N}}} ||ì°½ì˜ í¬ê¸°ë¥¼ Në§Œí¼ ì¦ê°€(ê°ì†Œ)(ìˆ˜í‰ ì°½ë§Œ 해당) || === ì „ì²´ 지우기 === {{{ gg 첫줄으로 ì´ë™ dG 현재 줄부터 마지막까지 ì‚ì œ }}} == 옵션 == /root/.vimrc {{{ set tabstop=2 íƒ ê°„ê²©ì„ 2칸으로 ì§€ì •í•œë‹¤. set shiftwidth=2 >>나 << 사용시 들여쓰기 ê°„ê²©ì„ ì§€ì •í•œë‹¤. set expandtab íƒ ë¬¸ìžë¥¼ 공백문ìžë¡œ 변환한다. set softtabstop=2 íƒ ê°„ê²©ì„ ê³µë°±ë¬¸ìžë¡œ 변환하면 ì‚ì œí• ë•Œ íƒ ê°„ê²©ë§Œí¼ ì‚ì œí•˜ì§€ ì•Šê³ , 마치 íƒ ë¬¸ìžë¥¼ ì‚ì œí•˜ëŠ” 것처럼 ì„¤ì •í•˜ë©°, ë‘ ì¹¸ 단위로 ì‚ì œí•œë‹¤. set visualbell ì‚¬ìš©ìž ì‹¤ìˆ˜ë¥¼ ê²½ê³ í• ë•Œ ë¹„í”„ìŒ ëŒ€ì‹ ì— í™”ë©´ì„ í•œ 번 번ì©ì´ëŠ” 비주얼 벨로 ê²½ê³ í•œë‹¤. set nobackup 백업 파ì¼ì„ ìƒì„±í•˜ì§€ 않는다. set cindent C 언어 스타ì¼ì˜ 들여쓰기를 사용한다. set autoindent ìžë™ 들여쓰기를 사용한다. set smartindent 좀 ë” ì§€ëŠ¥ì ì¸ ë“¤ì—¬ì“°ê¸°ë¥¼ 사용한다. set enc=utf-8 편집 ì¸ì½”ë”©ì„ utf-8ë¡œ ì§€ì •í•œë‹¤. set incsearch 키워드를 ìž…ë ¥í• ë•Œë§ˆë‹¤ 검색하는 ì 진 검색(incremental search)ì„ ì‚¬ìš©í•œë‹¤. set number ë¼ì¸ 넘버를 사용한다. set ruler 화면 오른쪽 ì•„ëž˜ì— ë¼ì¸, 컬럼 수를 표시한다. syntax on 구문강조 ê¸°ëŠ¥ì„ ì‚¬ìš©í•œë‹¤. filetype on íŒŒì¼ ì¢…ë¥˜ì— ë”°ë¼ êµ¬ë¬¸ì„ ê°•ì¡°í•œë‹¤. set background=dark ë°°ê²½ìƒ‰ì„ ì–´ë‘ìš´ 색으로 ì„¤ì •í•œë‹¤. colorscheme evening VI ìƒ‰ìƒ í…Œë§ˆë¥¼ evening으로 ì„¤ì •í•œë‹¤. set backspace=eol,start,indent ì¤„ì˜ ë, 시작, 들여쓰기ì—ì„œ 백스페ì´ìŠ¤ë¥¼ 사용하면 ì´ì „ 줄과 ì—°ê²°ëœë‹¤. set history=1000 VI 편집 기ë¡ì„ 1,000개까지 기억한다. set hlsearch 검색어 ê°•ì¡° ê¸°ëŠ¥ì„ ì‚¬ìš©í•œë‹¤. set ignorecase 검색, 편집, 치환 ì‹œì— ëŒ€ì†Œë¬¸ìžë¥¼ 구분하지 않는다. set showmatch (), []ì—ì„œ 닫는 괄호를 ìž…ë ¥í• ë•Œ ì¼ì¹˜í•˜ëŠ” 괄호를 보여준다. hi MatchParen cterm=none ctermbg=green ctermfg=blue 괄호 하ì´ë¼ì´íŠ¸ ìƒ‰ì„ ë³€ê²½í•œë‹¤. set cc=51,81 ì§€ì •í•œ 컬럼 ìœ„ì¹˜ì— ë¼ì¸ì„ 그어준다. highlight ColorColumn ctermbg=Red guibg=Blue 컬럼 하ì´ë¼ì´íŠ¸ ìƒ‰ì„ ë³€ê²½í•œë‹¤. set list Whitespace를 보여준다. set nolist Whitespace를 보여주지 않는다. map <F5> :w<CR>:!gcc -w %<CR> 간단한 ì»´íŒŒì¼ ë‹¨ì¶•í‚¤ map <F6> :!./a.exe<CR> 실행 단축키 }}} $ wget hyacinth.byus.net/.vimrc [http://hyacinth.byus.net/.vimrc] === vim63 기본 컬러 스킴 === {{{ [hyacinth@power colors]$ ls README.txt default.vim elflord.vim morning.vim peachpuff.vim torte.vim blue.vim delek.vim evening.vim murphy.vim ron.vim zellner.vim darkblue.vim desert.vim koehler.vim pablo.vim shine.vim }}} === ìžë™ì™„성 === vimì—ì„œ ìžë™ì™„ì„±ì„ ì‚¬ìš©í•˜ëŠ” ë°©ë²•ì€ ì—„ì²ë‚˜ê²Œ 많다. 여기서는 기본 ìžë™ì™„ì„±ë§Œì„ ì†Œê°œí•œë‹¤. * <C-p>, <C-n> 사용 (<C-p>: ctrl + p 를 ì˜ë¯¸í•œë‹¤. <C-n>: ctrl + n ì„ ì˜ë¯¸í•œë‹¤.) vimì˜ ê¸°ë³¸ ìžë™ì™„성ì´ë©°, ì–´ë–¤ 플러그ì¸ë„ 없는 기본 vimì—ì„œë„ ì‚¬ìš©í• ìˆ˜ 있다. == 기타 == === 윈ë„ìš°ìš© vim === || [http://www.vim.org] || === --Cygwin + vim-- === || [http://www.cygwin.com] || --윈ë„ìš°ì—ì„œ vi와 gcc를 ì‚¬ìš©í•˜ê³ ì‹¶ë‹¤ë©´ Cygwin ë„ìž…ì„ ì ê·¹ 권장.-- 3~4ë…„ ì „ì—” ê·¸ë ‡ê²Œ ìƒê°í–ˆëŠ”ë° Cygwinì€ '''굉장히''' 무ê²ê³ , ì§€ê¸ˆì— ì™€ì„ vi+gcc만 쓰기 위해서 ì¢‹ì€ ì„ íƒì€ 아니다. ìµœê·¼ì€ Cygwin gcc ëŒ€ì‹ MinGW를 ì‚¬ìš©í•˜ê³ ìžˆë‹¤. ì°¸ê³ : [wiki:"EditPlus+MinGW+gcc ì»´íŒŒì¼ ì„¤ì •"] -- [hyacinth] [[DateTime(2014-05-23T15:05:06)]] ~ ...ë¼ê³ 8ë…„ ì „ì—” ìƒê°í–ˆëŠ”ë° WSLì´ë©´ ìœˆë„ ì•ˆì—ì„œ '''다''' ëœë‹¤... ì„¸ìƒ ì°¸ 좋아진다... -_- [[code(> wsl.exe --install -d Ubuntu)]] [[code($ sudo apt install build-essential)]] -- [hyacinth] [[DateTime(2022-05-04T07:49:33)]] ---- CategoryDocument