Sự thay đổi làm gì trong trình soạn thảo VIM


2

Tôi đã đọc điều này về tùy chọn dịch chuyển trên Google: Để thay đổi số lượng ký tự khoảng trắng được chèn để thụt lề, hãy sử dụng tùy chọn 'shift'.

Ok Ok, nhưng những gì chính xác hơn? Làm thế nào tôi có thể thử điều này để xem những gì thực sự xảy ra? Tôi đã tạo một tệp C mới sau đó thêm một liên kết IF, nhưng không có gì xảy ra trong quá trình xác định:

if (a> 0) {không có gì xảy ra ở đây}

Cảm ơn bạn!


1
Vim đi kèm với một tài liệu phong phú, hãy thử :h shiftwidth.
romainl

Câu trả lời:


2

Hãy nói rằng bạn đã đặt shift thong = 2

Trước tiên, bạn cần đảm bảo rằng tệp có phần mở rộng .c. Hoặc bằng cách sử dụng

$ vim foo.c

cho một tệp mới hoặc lưu tệp với phần mở rộng .c.

Bây giờ gõ

if (a > 0) {

và nhấn enter. Dòng tiếp theo sẽ tự động được thụt lề.

if (a > 0) {
  foo();

khi bạn đặt kết quả khớp '}', vim sẽ thụt lề đúng cách.

if (a > 0) {
  foo();
}

Đọc tài liệu này để rõ ràng hơn.


1
Tôi đã thử nó, nhưng nhấn enter vào dấu ngoặc nhọn, nó đặt con trỏ đến đầu dòng.
dùng223787

bạn đang gõ dấu ngoặc nhọn đóng trước khi nhấn enter? Có một plugin tự động đóng ngoặc được kích hoạt?
Drainxxxeus

Đúng. Không có plugin
user223787

Đừng gõ kết thúc }. Nó được hiểu là phần cuối của câu lệnh và do đó vim không tự động thụt lề.
Drainxxxeus

Tôi không gõ đóng}. Dù sao, cảm ơn sự giúp đỡ của bạn. Tôi không biết tùy chọn đó làm gì, nhưng tôi sẽ thêm nó vào .vimrc :)
user223787

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.