I teksteditorer
Kun et begrænset antal optioner kan installeres via modeline. Hvis et udtryk er angivet som en option-værdi, udføres det i sandbox-tilstand, som kun tillader de enkleste sikre operationer. I dette tilfælde inkluderer den gyldige kommando kommandoen ":source", hvor du kan bruge "!"-modifikatoren. at køre vilkårlige kommandoer fra den angivne fil. For at udføre koden er det således nok at angive i modellinjen en konstruktion som "set foldexpr=execute('\:source! some_file'):". I Neovim er det forbudt at kalde execute, men assert_fails kan bruges i stedet.
For at køre kommandoen "uname -a" skal du blot åbne en fil i Vim eller Neovim, hvis første eller sidste linje siger:
:!uname -a||» vi:fen:fdm=expr:fde=assert_fails(“kilde\!\ \%”):fdl=0:fdt=”
Firma "kilde! %" vil læse kommandoerne fra den aktuelle fil og følgelig udføre ":!uname -a". Escape-sekvenser kan bruges til at skjule en given linje fra output fra cat-værktøjet. For eksempel i denne
Du kan kontrollere aktiviteten af modeline-tilstand med kommandoen ":set modeline?". For at deaktivere det, kan du tilføje linjen "set nomodeline" til vimrc. I distributioner er problemet løst i
Kilde: opennet.ru