2013-02-21 9 views
9

Khi chạy conque trong VIM, thông điệp cảnh báo nhắc nhở ra mỗi khi:Cảnh báo giữ popping khi chạy conque trong VIM

Warning: 
Global CursorHoldI and CursorMovedI autocommands may cause ConqueTerm to run slowly 

Tôi tìm thấy một phương pháp để loại bỏ các cảnh báo là nhận xét ra các cảnh báo chức năng trong conque_term.vim, nhưng tôi không nghĩ đó là một cách tốt và an toàn để giải quyết vấn đề.

Tôi mới làm quen với VIM, vì vậy, tôi không tìm thấy cách nào để tự mình xác định nguồn gốc của vấn đề. Bất cứ ai có thể giúp đỡ? Cảm ơn rất nhiều!

+0

Một số plugin của bạn có thể xác định 'autocmd's trên những sự kiện này. Một plugin tự động hoàn thành, có thể, hoặc một plugin tạo thẻ… Grep thư mục '~/.vim /' của bạn cho 'CursorHoldI' và/hoặc' CursorMovedI' hoặc làm ': verbose autocmd' để xem chúng được định nghĩa ở đâu. – romainl

+1

HÃY CẨN THẬN ... autocommands có thể gây ra vấn đề lớn với ConqueTerm, nó có thể gây ra bộ đệm mở được ghi đè với đầu ra của nó và tất cả các loại điều khó chịu khác. Nó có thể là nguy hiểm bên phải. Tôi không thể khuyên bạn nên nó cho bất cứ ai sử dụng rất nhiều plugin ngăn chặn các lệnh tự động Cursor, vì nó có vẻ như ngay cả khi trộn với một số lượng nhỏ trong số này, những điều xấu xảy ra. Chỉ cần nhớ không vô tình lưu bất kỳ thay đổi xấu nào, nếu chúng xảy ra. Hãy thử tắt plugin và bật lại từng plugin một để tìm thủ phạm. Hy vọng rằng sử dụng pm như vundle mà làm cho nó dễ dàng để làm điều này !!! – osirisgothra

Trả lời

6

Một điểm tích hợp vào Vim là thông qua các sự kiện, có thể kích hoạt các lệnh tự động; chính các plugin Conque sử dụng các plugin này để thực hiện chức năng của nó. Các sự kiện như CursorMovedI được kích hoạt bất cứ khi nào bạn nhập thứ gì đó hoặc di chuyển con trỏ ở chế độ chèn; điều này có thể có tác động đến hiệu suất, và đó là những gì cảnh báo là về.

Bạn có thể liệt kê tất cả các lệnh tự động như vậy qua:

:verbose autocmd CursorHoldI,CursorMovedI 

Chừng nào Conque hoạt động tốt cho bạn, nó là tốt để bỏ qua (và ngăn chặn) cảnh báo. Nhưng nếu bạn thực sự gặp sự cố, bạn cần kiểm tra các nguồn autocmd khác và có thể vô hiệu hóa một hoặc một plugin khác (ít nhất là cho bộ đệm Conque). (Xem :help autocmd-remove để biết cách thực hiện điều này.)

+4

Bạn cũng có thể chặn cảnh báo này bằng 'let g: ConqueTerm_StartMessages = 0' (xem https://code.google.com/p/conque/wiki/Usage#3.1.8_Hide_start_messages) –

2

Tắt chủ đề, nhưng sử dụng Ctrl + Z để quay lại trình bao và fg để quay lại vim dường như hoạt động tốt hơn Conque. Đó là nếu bạn đang sử dụng vim từ thiết bị đầu cuối, mà bạn nên.

Một số nguồn cảm hứng: http://statico.github.com/vim.html

+1

Nó không" làm việc tốt hơn ", nó là một công cụ khác cho một kịch bản khác. Tôi muốn bắt đầu vim ngay sau khi mở một thiết bị đầu cuối, để tôi có thể chạy các lệnh đầu cuối của mình từ bên trong conque để chúng nằm trong bộ đệm vim. Điều này cho phép tôi sử dụng các lệnh vim bình thường để tìm kiếm thông qua, sao chép từ và nhảy xung quanh trong đầu ra của đầu cuối. Một khi bạn thích khả năng làm những điều này trong vim, bạn muốn làm chúng ở khắp mọi nơi, đặc biệt là thiết bị đầu cuối. Thông thường, tôi chỉ quay trở lại terminal bình thường nếu tôi cần chạy một instance vim riêng biệt vì chạy vim bên trong vim thông qua conque không hoạt động tốt. –