V urejevalnikih besedil
Samo omejeno število možnosti je mogoče namestiti prek modeline. Če je izraz podan kot vrednost možnosti, se izvede v načinu peskovnika, ki omogoča le najpreprostejše varne operacije. V tem primeru veljaven ukaz vključuje ukaz “:source”, v katerem lahko uporabite modifikator “!”. za zagon poljubnih ukazov iz določene datoteke. Tako je za izvedbo kode dovolj, da v vrstici modela navedete konstrukcijo, kot je "set foldexpr=execute('\:source! some_file'):". V Neovim je klicanje execute prepovedano, vendar se namesto tega lahko uporabi assert_fails.
Če želite na primer zagnati ukaz »uname -a«, preprosto odprite datoteko v Vimu ali Neovim, katere prva ali zadnja vrstica pravi:
:!uname -a||» vi:fen:fdm=expr:fde=assert_fails(“source\!\ \%”):fdl=0:fdt=”
Podjetje “vir! %" bo prebral ukaze iz trenutne datoteke in ustrezno izvedel ":!uname -a". Ubežna zaporedja se lahko uporabljajo za skrivanje dane vrstice pred izhodom pripomočka cat. Na primer v tem
Dejavnost načina modeline lahko preverite z ukazom “:set modeline?”. Če ga želite onemogočiti, lahko v vimrc dodate vrstico »set nomodeline«. V distribucijah je težava odpravljena v
Vir: opennet.ru