+1 cho câu trả lời của Peter, nhưng Vim cũng cung cấp một giải pháp khác. Nếu bạn muốn làm điều gì đó phức tạp hơn một setlocal
, giống như thiết lập một loạt các tùy chọn, lệnh và ánh xạ cùng một lúc, thì tính năng plugin của vim sẽ được giải cứu.
Bạn cần có filetype plugin on
hoặc filetype plugin indent on
trong .vimrc
và sau đó để tạo plugin cho ví dụ: ruby bạn có thể tạo ~/.vim/ftplugin/ruby.vim
. Về mặt kỹ thuật, bạn có thể sử dụng bất kỳ lệnh nào bạn thích ở đây, để chạy khi tệp Ruby được tải, nhưng các tệp được đề xuất bao gồm setlocal
, map <buffer>
, command -buffer
và xác định hàm. Rất nhiều thông tin có trong Hướng dẫn sử dụng; nếu bạn khá quen thuộc với kịch bản lệnh vim, hãy chuyển đến :help 41.11
, nếu không hãy đọc :help usr_40
và :help usr_41
.
thể trùng lặp của [Thay đổi Vim thụt đầu dòng hành vi theo loại file] (http://stackoverflow.com/questions/158968/change-vim-indentation-behavior-by-file-type) – acgtyrant
Tất cả những câu trả lời này chỉ khiến tôi bối rối hơn. Vấn đề là các tùy chọn tùy thuộc vào sở thích. Câu trả lời được chấp nhận có một cú pháp tốt đẹp mặc dù. Đây là một hướng dẫn tuyệt vời: http://vimcasts.org/transcripts/2/en/ – Mikuz