2011-01-31 22 views
6

Trong một số khoảnh khắc, vim hoạt động chậm đáng chú ý. Khi tôi ở chế độ bình thường trong tệp 100 dòng, nhập "O" (chữ hoa o)xuất hiện khoảng 1-2 giây và chỉ sau đó trên dòng hiện tại dòng trống mới được tạo ở chế độ chèn (đó là hành vi bình thường). Và tôi muốn biết các lý do có thể xảy ra tại sao điều này xảy ra ...Trong một số khoảnh khắc, vim hoạt động chậm đáng chú ý

Tôi có máy tính khá mạnh, Vì vậy, vấn đề không có trong máy tính.

+4

Đối với người đã bỏ phiếu cho câu hỏi này 'tắt chủ đề': diễn đàn nào sẽ là chủ đề nhiều hơn và tại sao nó không liên quan đến lập trình? - Có những người kiếm sống với lập trình, và vim là công cụ của họ để đạt được những gì họ được cho là đạt được, và nếu vim chậm thì chắc chắn nó liên quan đến lập trình. –

+0

có bất kỳ tin nhắn đáng chú ý nào ('': tin nhắn') không? Nếu vim của bạn được xây dựng với hỗ trợ lược tả, bạn có thể thử ': prof start' để xem hoạt động nào mất nhiều thời gian nhất ... Thông thường, tính năng này không được biên soạn, nhưng bạn có thể xây dựng vim rất dễ dàng ... – eckes

Trả lời

8

Bạn có đang đánh <Esc> sau đó O trong lần tiếp theo rất nhanh không? Nếu vậy, bạn sẽ thấy sự chậm trễ do một số chuỗi thoát khỏi thiết bị đầu cuối bắt đầu bằng <Esc>O. Vim phải chờ xem bạn có thực sự gõ một trong những chuỗi đó hay không.

Để xem điều này cho chính bạn, trong loại chế độ chèn <Esc>OA và con trỏ của bạn sẽ di chuyển lên. Nhấn <Ctrl-v><Up> ở chế độ chèn sẽ hiển thị cho bạn mã thoát được tạo.

+0

Có, tôi đang nhập quá nhanh. Tôi đã thử nghiệm tình huống đó và bạn hoàn toàn đúng. Cảm ơn nhiều. – Zango

1

Có thể bạn có một định nghĩa lại chính ràng buộc mà bắt đầu với "O" ... do đó, VIM phải chờ đợi để xem nếu bạn đang đi để gõ các phím sau

8

Loại :map O

Nếu bạn có một lập bản đồ bình thường bắt đầu với một thủ đô O, có thể là Vim đang chờ một thời gian chờ để chắc chắn rằng bạn không bắt đầu gõ một lệnh phức tạp.

Thông thường, thời gian chờ mặc định là 1 giây.

Xem :help timeout:help timeoutlen.

Nếu bạn có ánh xạ bắt đầu bằng O, bạn có thể tìm thấy vị trí được xác định bằng :verbose map. Sau đó bạn có thể vô hiệu hóa nó hoặc sửa đổi nó (hoặc loại bỏ các plugin xác định ánh xạ).

+1

Trong trường hợp này loại: bản đồ O – skeept

+0

@ skeept: nhận xét tốt, tôi không biết điều đó là có thể. Tôi đã cập nhật câu trả lời của mình. –

+0

Cảm ơn bạn đã trả lời thú vị, nhưng "Không tìm thấy bản đồ". Không phải lúc nào cũng xuất hiện O nhưng đôi khi ... Nếu tôi đã lập bản đồ nó sẽ luôn luôn. – Zango

Các vấn đề liên quan