În editorii de text
Doar un număr limitat de opțiuni pot fi instalate prin modeline. Dacă o expresie este specificată ca valoare de opțiune, aceasta este executată în modul sandbox, care permite doar cele mai simple operațiuni sigure. În acest caz, comanda validă include comanda „:source”, în care puteți folosi modificatorul „!”. pentru a rula comenzi arbitrare din fișierul specificat. Astfel, pentru a executa codul, este suficient să indicați în linia modelinei o construcție de genul „set foldexpr=execute('\:source! some_file'):”. În Neovim, apelarea execute este interzisă, dar assert_fails poate fi folosit în schimb.
De exemplu, pentru a rula comanda „uname -a”, pur și simplu deschideți un fișier în Vim sau Neovim a cărui primă sau ultima linie spune:
:!uname -a||» vi:fen:fdm=expr:fde=assert_fails(„sursa\!\ \%”):fdl=0:fdt="
Compania „sursa! %" va citi comenzile din fișierul curent și, în consecință, va executa ":!uname -a". Secvențele de evacuare pot fi folosite pentru a ascunde o linie dată de la ieșirea de către utilitarul cat. De exemplu, în asta
Puteți verifica activitatea modului modeline cu comanda „:set modeline?”. Pentru a o dezactiva, puteți adăuga linia „set nomodeline” la vimrc. În distribuții problema este rezolvată în
Sursa: opennet.ru