2012-03-02 21 views
15

Tôi muốn sử dụng :vimdiff file1 file2 để phân biệt các tệp này trong chế độ lệnh VIM, nhưng tôi nhận được thông báo lỗi E492: Not an editor command: vimdiff. tôi có quên gì không làm thế nào để giải quyết nó?cách sử dụng vimdiff trong chế độ lệnh VIM?

Theo Vim dẫn sử dụng, lệnh vimdiff nên có sẵn

+0

có lẽ bạn có thể liên kết đến tài liệu của mình. Tôi khá chắc chắn bạn đang sai về tài liệu – sehe

Trả lời

5

vimdiff là một lệnh dòng lệnh, hãy thử nó như thế này từ bên trong vim

:!vimdiff file1 file2 

Các! yêu cầu vim thực thi lệnh thông thường.

+4

Cũng có thể ': diffsplit', mà làm điều tương tự nhưng bên trong Vim đã mở. Tuy nhiên, tệp đầu tiên cần phải được mở. – Matej

+7

Tôi không bao giờ chạy vim từ bên trong vim ... – Benoit

+0

tốt, cảm ơn câu trả lời của bạn! – stackFish

24

tôi sẽ làm:

:tabe file1 
:vert diffsplit file2 

nếu bạn đã góa phụ với bộ đệm khác mở trong tab hiện tại. Nếu không:

:e file1 
:vert diffsplit file2 

Nếu bạn có hai hoặc ba cửa sổ đang mở trong tab hiện tại của bạn và họ hiển thị các bộ đệm mà bạn muốn diff, bạn có thể muốn bật chế độ khác cho mỗi cửa sổ:

:windo diffthis 

hoặc, từ đồng nghĩa: windo set diff.

Cập nhật - với vim-unimpaired bạn có thể sử dụng cod để thay đổi cài đặt cửa sổ diff. Vì vậy, hãy sử dụng cod trên cả hai cửa sổ mà bạn muốn phân biệt.

+1

đừng quên điều rất hữu ích ': diffthis' – sehe

+0

@sehe, vâng. Làm xong. – Benoit

+2

Sau khi bạn đã hoàn tất việc phát hành ': diffoff!', Điều này sẽ tắt chế độ khác cho tất cả các cửa sổ trong trang tab hiện tại. –