Gần đây tôi đã hỏi một câu hỏi trong đó tôi đã học được rằng không thể truyền bất cứ điều gì ngoại trừ các tham số vào :set
trong mô hình vim. Tôi hiểu các mối quan tâm về bảo mật, nhưng tôi tự hỏi liệu không có cách nào khác xung quanh vấn đề này. Một câu hỏi gần đây về SO về việc thiết lập các lô tham số lớn để tuân thủ tiêu chuẩn mã hóa khiến tôi phải suy nghĩ, liệu có thể định nghĩa một "nhóm" những thứ trong tệp RC của tôi có thể bật hoặc tắt từ modeline không?
Xin lỗi mã giả, nhưng có cách nào để tạo một hàm được kích hoạt từ một tham số đã đặt không?
set_function! codestyle()
if &1 == 'psr-2'
set ts=4
set sw=4
endfi
if &1 == 'drupal7'
set ts=2
set sw=2
iab D8 Drupal 8
endif
endset_function
Điều này sau đó có thể được kích hoạt bởi một modeline như
# vim: codestyle=psr-2
Điều này sẽ theo một số cách tương tự như khớp loại tệp, nhưng cho phép ghi đè thủ công. Nó cũng sẽ thiết lập môi trường theo các cách được xác định trước khác, tránh các vấn đề bảo mật khi có tệp chạy các lệnh tùy ý khác trong vim nhưng cho phép môi trường tùy chỉnh hơn. Có cách nào để làm việc này không?
set
; AFAIK, điều này là không thể trong Vim ...