Vim Improve Sheet ๐Ÿฆ…

Vim Improve Sheet ๋ผ๊ณ  ์ž‘์„ฑํ–ˆ๋Š”๋ฐ, ์‚ฌ์‹ค ์•ˆ์ข‹์€ ์Šต๊ด€์„ ๊ณ ์น˜๊ธฐ ์œ„ํ•œ ์‹œํŠธ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋” ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. ๋ญ”๊ฐ€ ๋ถ„๋ช…ํžˆ ๋” ๋‚˜์€ ๋ฐฉ๋ฒ•์ด ์žˆ์„ ๊ฒƒ ๊ฐ™์€๋ฐ, ๋‹น์žฅ ์•Œ์•„๋ณด๊ธฐ ๊ท€์ฐฎ์•„์„œ ๊ทธ๋ƒฅ ๋„˜์–ด๊ฐ€๋Š” ์Šต๊ด€์„ ๊ณ ์น˜๊ธฐ ์œ„ํ•œ ์‹œํŠธ์ด๋‹ค.

01. Vim์œผ๋กœ ๋”ฐ์˜ดํ‘œ ์”Œ์šฐ๊ธฐ

  • nvim-surround ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์ด์šฉํ•œ๋‹ค (“kylechui/nvim-surround”)

  • ๋ณ„ ํ‘œ์‹œ๋œ ๋ถ€๋ถ„์ด ์ปค์„œ์˜ ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.

    Old text Command New text


surr*ound_words             ysiw)           (surround_words)
*make strings               ys$"            "make strings"
[delete ar*ound me!]        ds]             delete around me!
remove <b>HTML t*ags</b>    dst             remove HTML tags
'change quot*es'            cs'"            "change quotes"
<b>or tag* types</b>        csth1<CR>       <h1>or tag types</h1>
delete(functi*on calls)     dsf             function calls

02. [ ] ๋ณต์‚ฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ ๋‚จ๋“ค์€ ์–ด๋–ป๊ฒŒ ํŽธํ•˜๊ฒŒ ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ

04. ์ฃผ์„ ๊ด€๋ จ ์ปค๋งจ๋“œ

  • shift + v : ๋ธ”๋ก ์„ ํƒ
  • : + norm + i// : ๋ธ”๋ก ์ฃผ์„ ์ฒ˜๋ฆฌ
  • : + norm + x : ๋ธ”๋ก ์ฃผ์„ ํ•ด์ œ (์•ž์— ๊ธ€์ž ์‚ญ์ œ)

๋‹จ์ถ•ํ‚ค ํ•ฉ์น˜๋Š”์ค‘

Telescopeย ํŒŒ์ผ ๋ธŒ๋ผ์šฐ์ €

  • sfย - ํ˜„์žฌย ๋ฒ„ํผ์˜ย ๊ฒฝ๋กœ์—์„œ ํŒŒ์ผย ๋ธŒ๋ผ์šฐ์ € ์—ด๊ธฐ
  • ;fย - ํ˜„์žฌ ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์˜ ํŒŒ์ผย ์ฐพ๊ธฐย (.gitignoreย ์กด์ค‘)
  • fPย - ํ”Œ๋Ÿฌ๊ทธ์ธ ํŒŒ์ผย ์ฐพ๊ธฐ

ํŒŒ์ผย ๋ธŒ๋ผ์šฐ์ €ย ๋‚ด๋ถ€ย ๋‹จ์ถ•ํ‚ค

  • Nย - ์ƒˆ ํŒŒ์ผ ๋งŒ๋“ค๊ธฐ

  • hย - ์ƒ์œ„ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™

  • /ย - ๊ฒ€์ƒ‰ย ๋ชจ๋“œ ์‹œ์ž‘

  • ย - 10๊ฐœ ํ•ญ๋ชฉ ์œ„๋กœ ์ด๋™

  • ย -ย 10๊ฐœ ํ•ญ๋ชฉย ์•„๋ž˜๋กœย ์ด๋™

  • ย -ย ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์œ„๋กœ ์Šคํฌ๋กค

  • ย - ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์•„๋ž˜๋กœ ์Šคํฌ๋กค

์ฐฝ ๋ฐย ํƒญ ๊ด€๋ จ

  • teย - ์ƒˆย ํƒญ ์—ด๊ธฐ

  • ย - ๋‹ค์Œ ํƒญ์œผ๋กœ ์ด๋™

  • ย - ์ด์ „ย ํƒญ์œผ๋กœ ์ด๋™

  • ssย - ์ˆ˜ํ‰ ๋ถ„ํ• 

  • svย - ์ˆ˜์ง ๋ถ„ํ• 

  • shย -ย ์™ผ์ชฝย ์ฐฝ์œผ๋กœ ์ด๋™

  • skย - ์œ„์ชฝ ์ฐฝ์œผ๋กœ ์ด๋™

  • sjย - ์•„๋ž˜์ชฝ ์ฐฝ์œผ๋กœ ์ด๋™

  • slย - ์˜ค๋ฅธ์ชฝ ์ฐฝ์œผ๋กœ ์ด๋™

  • ย - ์ฐฝย ๋„ˆ๋น„ย ์ค„์ด๊ธฐ

  • ย - ์ฐฝ ๋„ˆ๋น„ย ๋Š˜๋ฆฌ๊ธฐ

  • ย - ์ฐฝย ๋†’์ดย ๋Š˜๋ฆฌ๊ธฐ

  • ย - ์ฐฝ ๋†’์ดย ์ค„์ด๊ธฐ

๊ฒ€์ƒ‰ ๊ด€๋ จย ๋‹จ์ถ•ํ‚ค

Telescope ๊ฒ€์ƒ‰

  • ;rย - ํ˜„์žฌย ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ์—์„œย ๋ฌธ์ž์—ด ์‹ค์‹œ๊ฐ„ ๊ฒ€์ƒ‰ย (ripgrep,ย .gitignoreย ์กด์ค‘)
  • ;tย - ๋„์›€๋ง ํƒœ๊ทธ ๊ฒ€์ƒ‰
  • ;;ย - ์ด์ „ย ํ…”๋ ˆ์Šค์ฝ”ํ”„ย ์„ ํƒ๊ธฐย ๋‹ค์‹œ ์‹œ์ž‘
  • ;eย - ๋ชจ๋“  ์—ด๋ฆฐ ๋ฒ„ํผย ๋˜๋Š” ํŠน์ • ๋ฒ„ํผ์˜ย ์ง„๋‹จย ๋ชฉ๋ก ํ‘œ์‹œ
  • ;sย - Treesitter๋ฅผ ํ†ตํ•œ ํ•จ์ˆ˜๋ช…, ๋ณ€์ˆ˜ย ๋“ฑ ๊ฒ€์ƒ‰
  • ;cย - ์ปค์„œ ์•„๋ž˜ ๋‹จ์–ด์—ย ๋Œ€ํ•œ LSP ๋“ค์–ด์˜ค๋Š” ํ˜ธ์ถœ ๋ชฉ๋ก
  • \ย - ์—ด๋ฆฐ ๋ฒ„ํผ ๋ชฉ๋ก ๋ณด๊ธฐ

LSP ๊ด€๋ จ

  • gdย - ์ •์˜๋กœ ์ด๋™ย (Telescopeย ์‚ฌ์šฉ)
  • ย - ๋‹ค์Œ ์ง„๋‹จ์œผ๋กœ ์ด๋™

๊ธฐํƒ€ ๋‹จ์ถ•ํ‚ค

  • thย -ย ์ˆจ๊ฒจ์ง„ ๋ฒ„ํผย ๋‹ซ๊ธฐ
  • tuย - ์ด๋ฆ„ย ์—†๋Š” ๋ฒ„ํผ ๋‹ซ๊ธฐ
  • zย - Zen ๋ชจ๋“œย ํ† ๊ธ€