Ngừng vim khỏi làm rối tung ý kiến ​​của tôi về ý kiến


12

Vì một số lý do, Vim nghĩ rằng tất cả các bình luận của tôi nên xóa tất cả các vết lõm. Nếu tôi thêm #vào đầu một dòng, đột nhiên tất cả các khoảng trắng hàng đầu bị xóa. Làm thế nào tôi có thể ngăn chặn điều này?

Tôi đã cài đặt Janus và NERDtree, trong trường hợp nó phù hợp, cùng với nhiều cấu hình cá nhân khác trong tôi .vimrc, nhưng không có gì (theo như tôi biết) sẽ gây ra hành vi như vậy.

Câu trả lời:


3

Tôi không bao giờ hài lòng với câu trả lời "đặt tất cả những điều này trong trường hợp". Tôi khăng khăng muốn biết cái nào trong số những thứ đó được đặt sai và cách chúng được đặt. Đây là một lệnh sẽ cho bạn thấy các giá trị của tất cả các cài đặt có liên quan được đề cập ở đây, cũng như nơi chúng được đặt lần cuối. Nếu không có Last set fromdòng nào theo sau, nó là một giá trị mặc định. Không có điểm nào trong setcác giá trị mặc định chính xác.

:verbose set autoindent? smartindent? cindent? cinkeys? indentexpr?

noautoindent
nosmartindent
  cindent
        Last set from ~/.vim/vimrc
  cinkeys=0{,0},0),:,!^F,o,O,e
        Last set from ~/.vim/vimrc
  indentexpr=
Press ENTER or type command to continue

Xem: http://vimdoc.sourceforge.net/htmldoc/options.html#:set-verbose

Tất cả những gì tôi phải làm để làm việc đó là xóa set smartindentkhỏi plugin và thêm vào ~/.vim/vimrc:

set cindent cinkeys-=0#
set expandtab shiftwidth=4 tabstop=4 softtabstop=4

Ồ OP đã thay đổi câu trả lời được chọn của họ. Tôi rất vinh dự.
Bruno Bronosky

6

Đây là một trận chiến tôi cũng đã chiến đấu và nghĩ rằng cuối cùng tôi đã thắng. Vấn đề là có hàng tá cách khác nhau mà hành vi có thể bị ghi đè (bằng plugin / cú pháp).
Đây là tất cả các cài đặt tôi phải sử dụng để chiến thắng trận chiến:

set nosmartindent
set cindent
filetype plugin indent on
set cinkeys-=0#
set indentkeys-=0#
autocmd FileType * set cindent "some file types override it

Với autocmd, điều đầu tiên set cindentkhông cần thiết, nhưng đây là một trong những điều mà tôi tiếp tục thêm các dòng cho đến khi hành vi biến mất.


Tôi đã có thể bỏ qua hai dòng cuối cùng và vẫn giải quyết được vấn đề
iconoclast

1
@iconoclast lưu ý rằng bạn vẫn có thể gặp sự cố với một số loại tệp. Dòng cuối cùng là do một số tệp cú pháp ghi đè cài đặt thụt lề.
Patrick

1
CHÚA ƠI!!! set indentkeys-=0#!! CUỐI CÙNG TÔI BẮT ĐẦU HƠN !!!!!!!!
Kasapo



-1

Tôi đã giải quyết vấn đề bằng cách bình luận set smartindent.

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.