Trong trình soạn thảo văn bản
Chỉ có thể cài đặt một số tùy chọn giới hạn thông qua modeline. Nếu một biểu thức được chỉ định làm giá trị tùy chọn, thì biểu thức đó sẽ được thực thi ở chế độ hộp cát, chế độ này chỉ cho phép thực hiện các thao tác an toàn đơn giản nhất. Trong trường hợp này, lệnh hợp lệ bao gồm lệnh “:source”, trong đó bạn có thể sử dụng từ bổ nghĩa “!”. để chạy các lệnh tùy ý từ tệp được chỉ định. Vì vậy, để thực thi mã, chỉ cần chỉ ra trong dòng mô hình một cấu trúc như “set Foldexpr=execute('\:source! some_file'):". Trong Neovim, việc gọi lệnh thực thi bị cấm, nhưng thay vào đó, có thể sử dụng khẳng định_fails.
Ví dụ: để chạy lệnh “uname -a”, chỉ cần mở một tệp trong Vim hoặc Neovim có dòng đầu tiên hoặc cuối cùng cho biết:
:!uname -a||» vi:fen:fdm=expr:fde=assert_fails(“nguồn\!\ \%”):fdl=0:fdt=”
Công ty “nguồn! %" sẽ đọc các lệnh từ tệp hiện tại và thực thi ":!uname -a". Trình tự thoát có thể được sử dụng để ẩn một dòng nhất định khỏi đầu ra của tiện ích cat. Ví dụ, trong này
Bạn có thể kiểm tra hoạt động của chế độ modeline bằng lệnh “:set modeline?”. Để tắt nó, bạn có thể thêm dòng “set nomodeline” vào vimrc. Trong các bản phân phối, vấn đề được khắc phục ở
Nguồn: opennet.ru