vim - deptno/deptno.github.io GitHub Wiki

vim

ํ˜„์žฌ(2023-10-08)๋Š” neovim ์™€ ๋™์ด์–ด๊ฐ€ ๋˜์„œ ๋ฌธ์„œ๊ฐ€ ํŒŒํŽธํ™” ๋˜์—ˆ์œผ๋‹ˆ ๋‘˜๋‹ค ์ฐธ์กฐ๊ฐ€ ํ•„์š”ํ•˜๋‹ค reference, back link ํฌํ•จ

" ex command ๊ฒฐ๊ณผ๋ณด๊ธฐ
:messages

font ์„ค์ •

์—ด๊ธฐ ์˜ต์…˜

$ vim -c "24" file.txt
$ vim --clean "24" file.txt
  • -c : ์ฒซ ๋ฒˆ์งธ ํŒŒ์ผ์ด ์—ด๋ฆฐ ํ›„ ex ๋ช…๋ น์–ด๋กœ ์‹คํ–‰
  • -R : ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ์—ด๊ธฐ
  • +[LINE_NUM] : ํ•ด๋‹น ๋ผ์ธ์—์„œ ์—ด๊ธฐ
  • +/[TEXT] : ํ…์ŠคํŠธ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ์—ด๊ธฐ
  • - : stdin ์œผ๋กœ ์ž…๋ ฅ์„ ๋ฐ›๋Š” ๊ฒฝ์šฐ| ์‚ฌ์šฉ์œผ๋กœ ๋ฐ›๋Š” ๊ฒฝ์šฐ๋“ฑ์— ์‚ฌ์šฉ๋œ๋‹ค.
  • -r : ์Šค์™‘ํŒŒ์ผ ๋ฆฌ์ŠคํŠธ ์ถœ๋ ฅ vim-autoswap ์ฐธ๊ณ 
  • -O : ์—ฌ๋Ÿฌ ํŒŒ์ผ์„ ์ œ๊ณตํ•˜๋ฉด ์ฐฝ์„ ๋ถ„ํ• ํ•˜์—ฌ ๋ณด์—ฌ์ค€๋‹ค. ์ˆ˜ํ‰/์ˆ˜์ง ๋ถ„ํ• (o/O)
    $ vim -o $(git status -s | awk '{print $2}') # ์ƒํƒœ๊ฐ€ ๋ณ€ํ•œ ์• ๋“ค ๋ชจ๋‘ ์—ฐ๋‹ค.
  • --clean : ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์ • ๋กœ๋“œ ์—†์ด ์—ฐ๋‹ค.
  • -M : ์ˆ˜์ • ๋ถˆ๊ฐ€ ์ „์šฉ์œผ๋กœ ์—ฐ๋‹ค

registers

  • i : ์ตœ๊ทผ input text

  • : : ์ตœ๊ทผ ๋ช…๋ น์–ด

  • % : ํ˜„์žฌ ํŒŒ์ผ๋ช…

  • : ์ด์ „ ๋ฒ„ํผ๋ช…

  • [0-9] : ์ž…๋ ฅ ๋ชจ๋“œ์—์„œ ctrl + r + [0-9] ๋กœ ์ ‘๊ทผ๊ฐ€๋Šฅ

  • [az] : ๋งคํฌ๋กœ์— ์‚ฌ์šฉ

  • [AZ] : ๋งคํฌ๋กœ์— append ๊ฐ€ ๊ฐ€๋Šฅ :let @A=normal_command

ex-mode

  • move 0 : ๊ฐ€์žฅ ์œ„๋กœ ์ด๋™
  • move +1 : ํ˜„์žฌ ๋ผ์ธ ์•„๋ž˜๋กœ ์ด๋™
  • move -1 : ํ˜„์žฌ ๋ผ์ธ ์œ„๋กœ ์ด๋™
  • copy 0 : ๊ฐ€์žฅ ์œ„๋กœ ๋ณต์‚ฌ
  • copy +0 : ํ˜„์žฌ ๋ผ์ธ ์•„๋ž˜์— ๋ณต์‚ฌ yyp
  • copy +1 : ํ˜„์žฌ ๋ผ์ธ ์•„๋ž˜์— ๋ณต์‚ฌ

copy ๋Š” t ๋กœ ์‚ฌ์šฉ๊ฐ€๋Šฅ move ๋Š” m ๋กœ ์‚ฌ์šฉ๊ฐ€๋Šฅ.

vim <-> os

ํŒŒ์ผ๋ช… ๋ณต์‚ฌ

+ ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ํด๋ฆฝ๋ณด๋“œ(mac)์ธ๊ฑธ ์ด์šฉํ•˜์—ฌ ์•„๋ž˜์™€ ๊ฐ™์ด ์ „๋‹ฌ ํ•œ๋‹ค.

" ํ˜„์žฌ ํŒŒ์ผ ๊ฒฝ๋กœ
:let @+ = expand("%")
" ์ ˆ๋Œ€๊ฒฝ๋กœ
:let @+ = expand("%:p")
" ๋””๋ ‰ํ† ๋ฆฌ ๊นŒ์ง€
:let @+ = expand("%:h")

๋ณ€์ˆ˜

" ํ™•์ธ
:set clipboard?
" prepend
:set clipboard^=unnamed
" append
:set clipboard+=unnamed
" override
:set clipboard=unnamed

์›Œํ‚น ๋””๋ ‰ํ† ๋ฆฌ ๋ณ€๊ฒฝ

" ํ˜„์žฌ ํŒŒ์ผ์˜ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๋ณ€๊ฒฝ
cd %:p:h

normal-mode

  • gf : ํ˜„์žฌ ์œˆ๋„์šฐ์—์„œ ํŒŒ์ผ์„ ๋”ฐ๋ผ๊ฐ„๋‹ค. ๋‹จ @ ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ visual-mode ์—์„œ ๋”ฐ๋ผ๊ฐ€๋„๋กํ•œ๋‹ค.

key-binding

ํ”Œ๋Ÿฌ๊ทธ์ธ์—์„œ ๋ฐ”์ธ๋”ฉ ์ „์šฉ์œผ๋กœ ๋‚ด๋ณด๋‚ด๋Š” ๊ฒƒ ๊ฐ™๊ธฐ๋„??

  • :VimwikiToggleListItem
  • VimwikiToggleListItem

ํŠน์ • ํŒŒ์ผ ํƒ€์ž…์—์„œ๋งŒ ๋ฐ”์ธ๋”ฉ์„ ์›ํ•˜๋Š” ๊ฒฝ์šฐ

autocmd FileType vimwiki nmap x <Plug>VimwikiToggleListItem

ํŒจํ„ด ๊ฒ€์ƒ‰

/ ๋กœ ์‹œ์ž‘

" ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ ์•ˆํ•จ
:set ignorecase
" ๋Œ€๋ฌธ์ž๊ฐ€ ํฌํ•จ๋œ ๊ฒฝ์šฐ ๊ตฌ๋ถ„ / ํฌํ•จ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๊ตฌ๋ถ„ ์—†์ด ๊ฒ€์ƒ‰
:set smartcase
# regexp
/\v[SEARCH_TEXT]
# ์ผ๋ฐ˜ ๋ฌธ์ž์—ด ๊ฒ€์ƒ‰
/\V[SEARCH_TEXT]
# ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ ์•ˆํ•จ
/\c[SEARCH_TEXT]
# ๋Œ€๋ฌธ์ž ๊ตฌ๋ถ„
/\C[SEARCH_TEXT]

์ •๋ ฌ

visual ๋ชจ๋“œ์—์„œ ์‚ฌ์šฉ ์˜ˆ,

:'<,'>sort   # ์ •๋ ฌ
:'<,'>sort!  # ์—ญ์ˆœ ์ •๋ ฌ
:'<,'>sort n # ๋„˜๋ฒ„ ์ •๋ ฌ

์™ธ๋ถ€ ํ”„๋กœ๊ทธ๋žจ

:%!jq

๋ฌธ๋ฒ• ๊ฒ€์‚ฌ

z=

plugins

Vim:E117: Unknown function: netrw#CheckIfRemote

releated

โš ๏ธ **GitHub.com Fallback** โš ๏ธ