Vim์—์„œ ๋ถ™์—ฌ ๋„ฃ๊ธฐ ์‹œ ๋“ค์—ฌ ์“ฐ๊ธฐ, ์ž๋™ ์ฃผ์„ ์ฒ˜๋ฆฌ ๋ฌธ์ œ

PROBLEM DESCRIPTION or QUESTION


Vi(Vim) ์‚ฌ์šฉ ์‹œ ๋ฌธ์žฅ์—ด์„ ๋ถ™์—ฌ ๋„ฃ๊ธฐ ํ•  ๋•Œ ๋“ค์—ฌ ์“ฐ๊ธฐ๊ฐ€ ์ œ๋Œ€๋กœ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์–ด๋–ค ๊ฒฝ์šฐ์—๋Š” ์ž๋™์œผ๋กœ ์ฃผ์„ ์ฒ˜๋ฆฌ๊นŒ์ง€ ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

RESOLUTION


๋ง์”€ํ•˜์‹  ํ˜„์ƒ์€ vim์ด ์ž๋™ ๋“ค์—ฌ ์“ฐ๊ธฐ(autoindent) ์„ค์ •์ด๋‚˜ ์ž๋™ ์ฃผ์„ ์ฒ˜๋ฆฌ ์„ค์ •์ด ๋˜์–ด ์žˆ์„ ๋•Œ ๋‚˜ํƒ€๋‚˜๋Š” ํ˜„์ƒ์ž…๋‹ˆ๋‹ค.
https://stackoverflow.com/questions/15503557/texts-distorted-after-pasting-on-vimย 
https://superuser.com/questions/271023/can-i-disable-continuation-of-comments-to-the-next-line-in-vim


ํ„ฐ๋ฏธ๋„ ๊ธฐ๋ฐ˜์˜ Vim์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์— ์˜ํ•œ ๋ฌธ์ž ์‚ฝ์ž…๊ณผ ๋ถ™์—ฌ ๋„ฃ๊ธฐ์— ๋”ฐ๋ฅธ ๋ฌธ์ž ์‚ฝ์ž…์„ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.ย 


์ž๋™ ๋“ค์—ฌ ์“ฐ๊ธฐ๊ฐ€ ์„ค์ •๋œ ์ƒํƒœ์—์„œ ํƒญ ๋ฌธ์ž๊ฐ€ ๋“ค์–ด ์žˆ๋Š” ๋ฌธ์ž์—ด์„ ๋ถ™์—ฌ ๋„ฃ๊ธฐํ•  ๋•Œ ์ด ๋ฌธ์ œ๊ฐ€ ์ƒ๊น๋‹ˆ๋‹ค.

ํƒญ์ด ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๋ฌธ์ž์—ด์„ ๋ถ™์—ฌ ๋„ฃ๊ณ ์ž ํ•  ๋•Œ, ๋‹ค์Œ ์˜ต์…˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‹คํ–‰ํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
:setย noai
:set formatoptons-=cro
๋˜๋Š”ย 
:setย paste


์œ„ ์„ค์ • ์ค‘ ':set paste' ๋ช…๋ น์„ ๊ถŒํ•ด ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์ž๋™ ๋“ค์—ฌ ์“ฐ๊ธฐ(smartindent)๋‚˜ ์ž๋™ ์ฃผ์„ ์ฒ˜๋ฆฌ ์„ค์ •(formatoptions) ๋“ฑ์œผ๋กœ๋„ ๋ถ™์—ฌ ๋„ฃ๊ธฐ ์‹œ ์›๋ž˜ ๋‚ด์šฉ๊ณผย  ๋‹ค๋ฅด๊ฒŒ ๋ถ™์—ฌ ๋„ฃ์–ด์ง€๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด๋Ÿฐ ๋ชจ๋“  ์ƒํ™ฉ์—์„œ๋„ :set paste๋กœ๋Š” ์›๋ณธ ๋‚ด์šฉ๋Œ€๋กœ ๋ถ™์—ฌ ๋„ฃ๊ธฐ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.
๋‹ค์Œ์€ Xshell์˜ ์Šคํฌ๋ฆฝํŠธ ๊ธฐ๋Šฅ๊ณผ ์‚ฌ์šฉ์ž ์ •์˜ ๋‹จ์ถ” ํ‚ค ์„ค์ • ๊ธฐ๋Šฅ์„ ์ด์šฉํ•˜์—ฌ ๋ถ™์—ฌ ๋„ฃ๊ธฐ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•œ VB ์Šคํฌ๋ฆฝํŠธ์ž…๋‹ˆ๋‹ค.
Sub Main
	Set objHTML = CreateObject("htmlfile")
	txt = objHTML.ParentWindow.ClipboardData.GetData("text")
	txt = replace(txt, chr(13)+chr(10), chr(10))
	xsh.Screen.Send chr(27)
	xsh.Screen.Send ":set paste"+vbCr
	xsh.Screen.Send "a"
	xsh.Screen.Send txt
	xsh.Screen.Send chr(27)
	xsh.Screen.Send ":set nopaste"+vbCr
	xsh.Screen.Send "a"
End Sub

์ด ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ์„ '๋„๊ตฌย โ†’ ์˜ต์…˜'์˜ 'ํ‚ค๋ณด๋“œ์™€ ๋งˆ์šฐ์Šค'ย  ๋‚ด 'ํ‚ค ๋งคํ•‘'์—์„œ ์›ํ•˜๋Š” ํ‚ค์— ๋“ฑ๋กํ•˜๊ฑฐ๋‚˜ ๋น ๋ฅธ ๋ช…๋ น ๋ฒ„ํŠผ์— ๋“ฑ๋กํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

: ๋‹จ์ถ• ํ‚ค์— ๋“ฑ๋ก


: ๋น ๋ฅธ ๋ช…๋ น ๋ฒ„ํŠผ์— ๋“ฑ๋ก