2011-12-29 11 views

Trả lời

64

Sử dụng :syntax sync fromstart

Tôi có mẹo từ http://vim.wikia.com/wiki/Fix_syntax_highlighting

Điều đó cũng đề nghị tạo ra một bản đồ cho lệnh đó ví dụ để lập bản đồ F12:

noremap <F12> <Esc>:syntax sync fromstart<CR> 
inoremap <F12> <C-o>:syntax sync fromstart<CR> 
+0

Tác phẩm này hoạt động nhưng loại bỏ gạch dưới để kiểm tra lỗi chính tả. Bất kỳ cách nào để ngăn chặn điều đó? –

+1

Xin lỗi tôi không biết. Tôi không có gì để kiểm tra chính tả. Nó có thể phụ thuộc vào addon cụ thể của bạn. Nếu không có ai khác trả lời, nó có thể có giá trị soạn một câu hỏi w/tất cả các thông tin có liên quan. –

+0

Tôi kết thúc bằng cách sử dụng '' autocmd BufEnter, InsertLeave *: cú pháp đồng bộ từ đầu'' để buộc đồng bộ cú pháp sau khi tôi nhập bộ đệm. Đồng bộ cú pháp cũng được kích hoạt khi có sự kiện '' InsertLeave'' xảy ra. –

30

Hãy thử:

:e 

Nếu bạn không có những thay đổi chưa được lưu vào file.

Hoặc:

:syn off | syn on 
+0

: e làm việc nhưng điều này là bất tiện – tomekfranek

+0

Tạo một bản đồ để xoa dịu nỗi đau, một cái gì đó như '' nmap : Rmodel | e '' – holygeek

+2

Có vẻ như cần có một số lệnh nội trang để làm mới tô sáng cú pháp. Một cái gì đó khác mà dường như làm việc là để nhảy đến một phần khác của tập tin, như bắt đầu hoặc kết thúc, và nhảy trở lại, ví dụ: 'gg \' \ '' –

-1

Hãy thử:

:Rrefresh! 

Lệnh này làm mới thiết lập được lưu trữ nhất định và cũng reload rails.vim.
Nó giúp tôi làm nổi bật cú pháp tô sáng trong Rails.

+0

_only_ này áp dụng cho 'rails.vim' và không phải là giải pháp chung. Không có plugin đó, lệnh này không tồn tại. – wchargin

3

lựa chọn khác là:

doautocmd Syntax 
8

Đôi khi cú pháp là OK, nhưng tất cả những gì bị phá vỡ là foldings. Trong trường hợp đó zx giúp rất nhiều.

Từ tài liệu VIM:

zx

Cập nhật nếp gấp: Undo nếp gấp tay mở và đóng cửa: tái áp dụng 'foldlevel', sau đó làm "ZV": Xem con trỏ dòng. Cũng buộc các nếp gấp recomputing. Điều này rất hữu ích khi sử dụng 'foldexpr' và bộ đệm được thay đổi theo cách dẫn đến kết quả là nếp gấp không được cập nhật đúng cách.

3

Đã thử tất cả những điều trên - không có tác dụng đối với tôi.

Điều duy nhất mà không làm việc là: :filetype detect vì vậy tôi ánh xạ một phím tắt nhanh chóng :noremap <Leader> :filetype detect