Mở rộng về câu trả lời zoul của:
Nếu bạn muốn thiết lập Vim sử dụng cài đặt cụ thể khi chỉnh sửa một filetype cụ thể, bạn sẽ muốn sử dụng autocommands:
autocmd Filetype css setlocal tabstop=4
Điều này sẽ làm cho nó để các tab được hiển thị là 4 dấu cách. Thiết lập expandtab
sẽ khiến Vim thực sự chèn dấu cách (số lượng chúng được kiểm soát bởi tabstop
) khi bạn nhấn tab; bạn có thể muốn sử dụng softtabstop
để làm cho backspace hoạt động đúng cách (có nghĩa là, giảm thụt đầu dòng khi đó là những gì sẽ xảy ra nên các tab được sử dụng, thay vì luôn luôn xóa một char tại một thời điểm).
Để đưa ra quyết định được đào tạo đầy đủ về cách thiết lập mọi thứ, bạn cần đọc tài liệu Vim trên tabstop
, shiftwidth
, softtabstop
và expandtab
. Bit thú vị nhất được tìm thấy dưới expandtab
(:help 'expandtab
):
Có bốn cách chính để sử dụng các tab trong Vim:
Luôn giữ 'tabstop' lúc 8, thiết lập 'softtabstop' và ' shiftwidth 'đến 4 (hoặc 3 hoặc bất cứ điều gì bạn thích) và sử dụng' noexpandtab '. Sau đó, Vim sẽ sử dụng kết hợp các tab và dấu cách, nhưng nhập và sẽ hoạt động giống như một tab xuất hiện cứ 4 (hoặc 3) ký tự.
Đặt 'tabstop' và 'shiftwidth' thành bất kỳ thứ gì bạn thích và sử dụng 'expandtab'. Bằng cách này, bạn sẽ luôn chèn khoảng trắng. Định dạng sẽ không bao giờ bị sai lầm khi 'tabstop' được thay đổi.
Đặt 'tabstop' và 'shiftwidth' thành bất kỳ thứ gì bạn thích và sử dụng | modeline | để đặt các giá trị này khi chỉnh sửa lại tệp. Chỉ hoạt động khi sử dụng Vim để chỉnh sửa tệp.
Luôn đặt 'tabstop' và 'shiftwidth' thành cùng một giá trị và 'noexpandtab'. Điều này sau đó sẽ hoạt động (chỉ dành cho các lần thụt lề đầu tiên) cho bất kỳ cài đặt tabstop nào mà mọi người sử dụng. Nó có thể là tốt đẹp để có các tab sau khi không đầu tiên trống chèn vào không gian nếu bạn làm điều này mặc dù. Nếu không, nhận xét được căn chỉnh sẽ bị sai khi 'tabstop' được thay đổi.
Nguồn
2010-01-13 06:03:00
Bạn có muốn một tab có chiều rộng 4 không gian không? Bốn không gian? Hoặc bốn tab của 1 chiều rộng không gian? Họ là những thứ khác nhau, và bạn không rõ ràng. Trong mọi trường hợp, bắt đầu bằng việc đọc: he ts,: he sw, và: anh ta mở rộng – abeyer