Π ΡΠ΅ΠΊΡΡΠΎΠ²ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΈ
Π‘Π°ΠΌΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ Π±ΡΠΎΠΉ ΠΎΠΏΡΠΈΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π· modeline. ΠΠΊΠΎ Π΄Π°Π΄Π΅Π½ ΠΈΠ·ΡΠ°Π· Π΅ ΡΠΊΠ°Π·Π°Π½ ΠΊΠ°ΡΠΎ ΡΡΠΎΠΉΠ½ΠΎΡΡ Π½Π° ΠΎΠΏΡΠΈΡ, ΡΠΎΠΉ ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° Π² ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΏΡΡΡΡΠ½Π° ΡΡΠ΅Π΄Π°, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠ°ΠΌΠΎ Π½Π°ΠΉ-ΠΏΡΠΎΡΡΠΈΡΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ Π²Π°Π»ΠΈΠ΄Π½Π°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΠΊΠ»ΡΡΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° β:sourceβ, Π² ΠΊΠΎΡΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° β!β. Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΎΡ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ». ΠΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½, Π·Π° Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄Π°, Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΡΠ΅ Π² ΡΠ΅Π΄Π° Π½Π° modelline ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΊΠ°ΡΠΎ βset foldexpr=execute('\:source! some_file'):". Π Neovim ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° execute Π΅ Π·Π°Π±ΡΠ°Π½Π΅Π½ΠΎ, Π½ΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° assert_fails.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βuname -aβ, ΠΏΡΠΎΡΡΠΎ ΠΎΡΠ²ΠΎΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ» Π²ΡΠ² Vim ΠΈΠ»ΠΈ Neovim, ΡΠΈΠΉΡΠΎ ΠΏΡΡΠ²ΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π΅Π½ ΡΠ΅Π΄ ΠΊΠ°Π·Π²Π°:
:!uname -a||Β» vi:fen:fdm=expr:fde=assert_fails(βsource\!\ \%β):fdl=0:fdt=β
Π€ΠΈΡΠΌΠ° βΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ! %" ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ ΠΎΡ ΡΠ΅ΠΊΡΡΠΈΡ ΡΠ°ΠΉΠ» ΠΈ ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΎ ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΠΈ ":!uname -a". Escape ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡΠΈΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π·Π° ΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π΄Π΅Π½ ΡΠ΅Π΄ ΠΎΡ ΠΈΠ·Ρ
ΠΎΠ΄Π° ΠΎΡ ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° cat. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΡΠΎΠ²Π°
ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΠ΅ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° Π½Π° ΡΠ΅ΠΆΠΈΠΌΠ° modeline Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° β:set modeline?β. ΠΠ° Π΄Π° Π³ΠΎ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ ΡΠ΅Π΄Π° βset nomodelineβ ΠΊΡΠΌ vimrc. Π Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Π΅ ΡΠ΅ΡΠ΅Π½ Π²
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru