ํ
์คํธ ํธ์ง๊ธฐ์์
์ ํ๋ ์์ ์ต์ ๋ง modeline์ ํตํด ์ค์นํ ์ ์์ต๋๋ค. ์ต์ ๊ฐ์ผ๋ก ํํ์์ ์ง์ ํ๋ฉด ๊ฐ์ฅ ๊ฐ๋จํ ์์ ์์ ๋ง ํ์ฉํ๋ ์๋๋ฐ์ค ๋ชจ๋๋ก ์คํ๋ฉ๋๋ค. ์ด ๊ฒฝ์ฐ ์ ํจํ ๋ช ๋ น์๋ "!" ์์ ์๋ฅผ ์ฌ์ฉํ ์ ์๋ ":source" ๋ช ๋ น์ด ํฌํจ๋ฉ๋๋ค. ์ง์ ๋ ํ์ผ์์ ์์์ ๋ช ๋ น์ ์คํํฉ๋๋ค. ๋ฐ๋ผ์ ์ฝ๋๋ฅผ ์คํํ๋ ค๋ฉด ๋ชจ๋ธ๋ผ์ธ ์ค์ "setfoldexpr=execute('\:source!some_file'):"๊ณผ ๊ฐ์ ๊ตฌ์ฑ์ ํ์ํ๋ ๊ฒ์ผ๋ก ์ถฉ๋ถํฉ๋๋ค. Neovim์์๋ Execute ํธ์ถ์ด ๊ธ์ง๋์ด ์์ง๋ง ๋์ Assert_fails๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, "uname -a" ๋ช ๋ น์ ์คํํ๋ ค๋ฉด Vim ๋๋ Neovim์์ ์ฒซ ๋ฒ์งธ ๋๋ ๋ง์ง๋ง ์ค์ ๋ค์๊ณผ ๊ฐ์ ํ์ผ์ ์ด๋ฉด ๋ฉ๋๋ค.
:!uname -a||ยป vi:fen:fdm=expr:fde=assert_fails(โ์์ค\!\ \%โ):fdl=0:fdt=โ
ํ์ฌ โ์์ค! %"๋ ํ์ฌ ํ์ผ์์ ๋ช
๋ น์ ์ฝ๊ณ ๊ทธ์ ๋ฐ๋ผ ":!uname -a"๋ฅผ ์คํํฉ๋๋ค. ์ด์ค์ผ์ดํ ์ํ์ค๋ฅผ ์ฌ์ฉํ๋ฉด cat ์ ํธ๋ฆฌํฐ์ ์ถ๋ ฅ์์ โโํน์ ํ์ ์จ๊ธธ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ด
โ:set modeline?โ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ๋ชจ๋ธ๋ฆฐ ๋ชจ๋์ ํ๋์ ํ์ธํ ์ ์์ต๋๋ค. ์ด๋ฅผ ๋นํ์ฑํํ๋ ค๋ฉด vimrc์ "set nomodeline" ์ค์ ์ถ๊ฐํ๋ฉด ๋ฉ๋๋ค. ๋ฐฐํฌํ์์ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru